diff --git a/.clang-format b/.clang-format
index 53f0da3..6fdf1dc 100644
--- a/.clang-format
+++ b/.clang-format
@@ -6,17 +6,3 @@
 # 'vector<vector<int>>'. ('Auto' means that clang-format will only use
 # 'int>>' if the file already contains at least one such instance.)
 Standard: Cpp11
-
----
-Language: Java
-# See http://crbug.com/429372 for information about this section.
-IndentWidth: 4
-ContinuationIndentWidth: 8
-ColumnLimit: 100
-AllowShortBlocksOnASingleLine: false
-AllowShortFunctionsOnASingleLine: None
-AllowShortIfStatementsOnASingleLine: true
-BinPackArguments: true
-BinPackParameters: true
-BreakBeforeBinaryOperators: NonAssignment
-Cpp11BracedListStyle: false  # but see http://llvm.org/PR21457
diff --git a/DEPS b/DEPS
index 879dac9..26d4a5a 100644
--- a/DEPS
+++ b/DEPS
@@ -22,11 +22,11 @@
   'libcxx_revision': '48198f9110397fff47fe7c37cbfa296be7d44d3d',
   'libcxxabi_revision': '4ad1009ab3a59fa7a6896d74d5e4de5885697f95',
   'sfntly_revision': '1bdaae8fc788a5ac8936d68bf24f37d977a13dac',
-  'skia_revision': '947556f6583e62b1ae19dcda94e0dea78babda2b',
+  'skia_revision': '2dd1ae016d7f297b433c3ea3a771ef8e01657c1f',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling Skia
   # and V8 without interference from each other.
-  'v8_revision': '43c0584a4b83eefc27c519f577b62f3960a1772d',
+  'v8_revision': 'dfec52e2f3e073cfe28d0041f6d7c657d9b9486f',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling ANGLE
   # and whatever else without interference from each other.
@@ -34,15 +34,15 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling build tools
   # and whatever else without interference from each other.
-  'buildtools_revision': '6ea835db27479b9a5742e48b5e4466af7c2534ff',
+  'buildtools_revision': 'ded32942a1ebfddff0ba1231898fc4f6c7faacec',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling PDFium
   # and whatever else without interference from each other.
-  'pdfium_revision': '1dc4f4112d72c63e465d6f09695ebea1119d39a6',
+  'pdfium_revision': 'ef619d0562b39f30943cfdc4985a0df233d00e42',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling BoringSSL
   # and whatever else without interference from each other.
-  'boringssl_revision': '69a01608f33ab6fe2c3485d94aef1fe9eacf5364',
+  'boringssl_revision': '00505ec2e1e4c3047b4f61a306f2ac1372fa7640',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling lss
   # and whatever else without interference from each other.
@@ -50,7 +50,7 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling nss
   # and whatever else without interference from each other.
-  'nss_revision': '258342ecf9c65105189092ef6339dc4e7779a7ae',
+  'nss_revision': 'bb4e75a43d007518ae7d618665ea2f25b0c60b63',
 }
 
 # Only these hosts are allowed for dependencies in this DEPS file.
@@ -78,7 +78,7 @@
    Var('chromium_git') + '/angle/angle.git' + '@' +  Var('angle_revision'),
 
   'src/third_party/icu':
-   Var('chromium_git') + '/chromium/deps/icu52.git' + '@' + 'dd727641e190d60e4593bcb3a35c7f51eb4925c5', # from svn revision 292996
+   Var('chromium_git') + '/chromium/deps/icu52.git' + '@' + '866ff696e9022a6000afbab516fba62cfa306075', # from svn revision 293126
 
   'src/third_party/libc++/trunk':
    Var('chromium_git') + '/chromium/llvm-project/libcxx.git' + '@' +  Var('libcxx_revision'),
@@ -102,10 +102,10 @@
     Var('chromium_git') + '/external/ots.git' + '@' + '98897009f3ea8a5fa3e20a4a74977da7aaa8e61a',
 
   'src/third_party/brotli/src':
-   Var('chromium_git') + '/external/font-compression-reference.git' + '@' + '65cb3326e30ef8a67eb1d4411ec563e91be6e9ae',
+   Var('chromium_git') + '/external/font-compression-reference.git' + '@' + '8c9c83426beb4a58da34be76ea1fccb4054c4703',
 
   'src/third_party/yasm/source/patched-yasm':
-   Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + 'c960eb11ccda80b10ed50be39df4f0663b371d1d',
+   Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + '4671120cd8558ce62ee8672ebf3eb6f5216f909b',
 
   'src/third_party/libjpeg_turbo':
    Var('chromium_git') + '/chromium/deps/libjpeg_turbo.git' + '@' + '034e9a9747e0983bc19808ea70e469bc8342081f',
@@ -126,7 +126,7 @@
    'https://boringssl.googlesource.com/boringssl.git' + '@' +  Var('boringssl_revision'),
 
   'src/tools/gyp':
-    Var('chromium_git') + '/external/gyp.git' + '@' + 'b13d8f243da15ded051e87e663c4f2c2fcc5804c', # from svn revision 1994
+    Var('chromium_git') + '/external/gyp.git' + '@' + 'fe00999dfaee449d3465a9316778434884da4fa7', # from svn revision 2010
 }
 
 
@@ -152,7 +152,7 @@
         Var('chromium_git') + '/external/jsr-305.git' + '@' + '642c508235471f7220af6d5df2d3210e3bfc0919',
 
     'src/third_party/android_tools':
-     Var('chromium_git') + '/android_tools.git' + '@' + 'ea50cccc11657404ce22cf928062ed1a3927eb39',
+     Var('chromium_git') + '/android_tools.git' + '@' + '4f723e2a5fa5b7b8a198072ac19b92344be2b271',
 
     'src/third_party/freetype':
        Var('chromium_git') + '/chromium/src/third_party/freetype.git' + '@' + 'a2b9955b49034a51dfbc8bf9f4e9d312149cecac',
diff --git a/base/BUILD.gn b/base/BUILD.gn
index 2cce16c..9128488 100644
--- a/base/BUILD.gn
+++ b/base/BUILD.gn
@@ -146,6 +146,7 @@
     "debug/dump_without_crashing.h",
     "debug/gdi_debug_util_win.cc",
     "debug/gdi_debug_util_win.h",
+
     # This file depends on files from the "allocator" target,
     # but this target does not depend on "allocator" (see
     # allocator.gyp for details).
@@ -760,9 +761,7 @@
     "sys_info_openbsd.cc",
   ]
 
-  defines = [
-    "BASE_IMPLEMENTATION",
-  ]
+  defines = [ "BASE_IMPLEMENTATION" ]
 
   deps = [
     ":base_static",
@@ -774,10 +773,10 @@
 
   if (is_android) {
     sources += [
-       "memory/discardable_memory_ashmem_allocator.cc",
-       "memory/discardable_memory_ashmem_allocator.h",
-       "memory/discardable_memory_ashmem.cc",
-       "memory/discardable_memory_ashmem.h",
+      "memory/discardable_memory_ashmem_allocator.cc",
+      "memory/discardable_memory_ashmem_allocator.h",
+      "memory/discardable_memory_ashmem.cc",
+      "memory/discardable_memory_ashmem.h",
     ]
     sources -= [
       "base_paths_posix.cc",
@@ -802,21 +801,17 @@
     deps += [
       ":base_jni_headers",
       "//third_party/ashmem",
-      "//third_party/android_tools:cpu_features"
+      "//third_party/android_tools:cpu_features",
     ]
 
     # logging.cc uses the Android logging library.
     libs = [ "log" ]
 
-    sources -= [
-      "debug/stack_trace_posix.cc",
-    ]
+    sources -= [ "debug/stack_trace_posix.cc" ]
   }
 
   if (is_chromeos) {
-    sources -= [
-      "power_monitor/power_monitor_device_source_posix.cc",
-    ]
+    sources -= [ "power_monitor/power_monitor_device_source_posix.cc" ]
   }
 
   if (is_nacl) {
@@ -853,6 +848,7 @@
       "event_recorder_stubs.cc",
       "message_loop/message_pump_libevent.cc",
       "strings/string16.cc",
+
       # Not using sha1_win.cc because it may have caused a
       # regression to page cycler moz.
       "sha1_win.cc",
@@ -880,8 +876,8 @@
   # Mac.
   if (is_mac) {
     sources += [
-       "memory/discardable_memory_mach.cc",
-       "memory/discardable_memory_mach.h",
+      "memory/discardable_memory_mach.cc",
+      "memory/discardable_memory_mach.h",
     ]
     sources -= [
       "base_paths_posix.cc",
@@ -902,9 +898,7 @@
   # Linux.
   if (is_linux) {
     # TODO(brettw) this will need to be parameterized at some point.
-    linux_configs = [
-      "//build/config/linux:glib",
-    ]
+    linux_configs = [ "//build/config/linux:glib" ]
 
     configs += linux_configs
     all_dependent_configs = linux_configs
@@ -1066,7 +1060,9 @@
 
   defines = [ "BASE_PREFS_IMPLEMENTATION" ]
 
-  deps = [ ":base" ]
+  deps = [
+    ":base",
+  ]
 
   if (is_android && !is_debug) {
     configs -= [ "//build/config/compiler:optimize" ]
@@ -1087,9 +1083,11 @@
     "prefs/testing_pref_store.h",
   ]
 
+  public_deps = [
+    ":prefs",
+  ]
   deps = [
     ":base",
-    ":prefs",
     "//testing/gmock",
     "//testing/gtest",
   ]
@@ -1118,6 +1116,7 @@
 test("base_unittests") {
   sources = [
     "android/application_status_listener_unittest.cc",
+    "android/content_uri_utils_unittest.cc",
     "android/jni_android_unittest.cc",
     "android/jni_array_unittest.cc",
     "android/jni_string_unittest.cc",
@@ -1403,9 +1402,7 @@
   }
 
   if (is_android) {
-    deps += [
-      "//testing/android:native_test_native_code",
-    ]
+    deps += [ "//testing/android:native_test_native_code" ]
     set_sources_assignment_filter([])
     sources += [ "debug/proc_maps_linux_unittest.cc" ]
     set_sources_assignment_filter(sources_assignment_filter)
@@ -1453,7 +1450,7 @@
     ]
 
     deps = [
-      "//third_party/jsr-305:jsr_305_javalib"
+      "//third_party/jsr-305:jsr_305_javalib",
     ]
 
     DEPRECATED_java_in_dir = "android/java/src"
@@ -1509,10 +1506,11 @@
 
   # GYP: //base.gyp:base_java_unittest_support
   android_library("base_java_unittest_support") {
-    deps = [":base_java"]
-    java_files = [
-      "test/android/java/src/org/chromium/base/ContentUriTestUtils.java"
+    deps = [
+      ":base_java",
     ]
+    java_files =
+        [ "test/android/java/src/org/chromium/base/ContentUriTestUtils.java" ]
   }
 
   # GYP: //base.gyp:base_unittests_apk
diff --git a/base/allocator/BUILD.gn b/base/allocator/BUILD.gn
index d9ff4c5..09d4f85 100644
--- a/base/allocator/BUILD.gn
+++ b/base/allocator/BUILD.gn
@@ -10,7 +10,9 @@
 # to the build settings.
 group("allocator") {
   if (use_allocator == "tcmalloc") {
-    deps = [ ":tcmalloc" ]
+    deps = [
+      ":tcmalloc",
+    ]
   }
 }
 
@@ -54,6 +56,7 @@
       "$tcmalloc_dir/src/base/abort.cc",
       "$tcmalloc_dir/src/base/abort.h",
       "$tcmalloc_dir/src/base/arm_instruction_set_select.h",
+
       # We don't list dynamic_annotations.c since its copy is already
       # present in the dynamic_annotations target.
       "$tcmalloc_dir/src/base/elf_mem_image.cc",
@@ -79,6 +82,7 @@
       "$tcmalloc_dir/src/central_freelist.h",
       "$tcmalloc_dir/src/common.cc",
       "$tcmalloc_dir/src/common.h",
+
       # #included by debugallocation_shim.cc
       #"$tcmalloc_dir/src/debugallocation.cc",
       "$tcmalloc_dir/src/deep-heap-profile.cc",
@@ -120,13 +124,13 @@
       "$tcmalloc_dir/src/symbolize.h",
       "$tcmalloc_dir/src/system-alloc.cc",
       "$tcmalloc_dir/src/system-alloc.h",
+
       # #included by debugallocation_shim.cc
       #"$tcmalloc_dir/src/tcmalloc.cc",
       "$tcmalloc_dir/src/thread_cache.cc",
       "$tcmalloc_dir/src/thread_cache.h",
       "$tcmalloc_dir/src/windows/port.cc",
       "$tcmalloc_dir/src/windows/port.h",
-
       "allocator_shim.cc",
       "allocator_shim.h",
       "debugallocation_shim.cc",
@@ -186,9 +190,7 @@
 
       public_configs = [ ":nocmt" ]
 
-      deps += [
-        ":prep_libc",
-      ]
+      deps += [ ":prep_libc" ]
     }
 
     if (is_linux || is_android) {
@@ -215,6 +217,7 @@
         # Don't let linker rip this symbol out, otherwise the heap&cpu
         # profilers will not initialize properly on startup.
         "-Wl,-uIsHeapProfilerRunning,-uProfilerStart",
+
         # Do the same for heap leak checker.
         "-Wl,-u_Z21InitialMallocHook_NewPKvj,-u_Z22InitialMallocHook_MMapPKvS0_jiiix,-u_Z22InitialMallocHook_SbrkPKvi",
         "-Wl,-u_Z21InitialMallocHook_NewPKvm,-u_Z22InitialMallocHook_MMapPKvS0_miiil,-u_Z22InitialMallocHook_SbrkPKvl",
@@ -229,9 +232,7 @@
       configs += [ "//build/config/compiler:optimize_max" ]
     }
 
-    deps += [
-      "//base/third_party/dynamic_annotations",
-    ]
+    deps += [ "//base/third_party/dynamic_annotations" ]
 
     if (is_win) {
       ldflags = [ "/ignore:4006:4221" ]
diff --git a/base/android/content_uri_utils.cc b/base/android/content_uri_utils.cc
index 0e0c0ea..0482fee 100644
--- a/base/android/content_uri_utils.cc
+++ b/base/android/content_uri_utils.cc
@@ -35,4 +35,14 @@
   return File(fd);
 }
 
+std::string GetContentUriMimeType(const FilePath& content_uri) {
+  JNIEnv* env = base::android::AttachCurrentThread();
+  ScopedJavaLocalRef<jstring> j_uri =
+      ConvertUTF8ToJavaString(env, content_uri.value());
+  ScopedJavaLocalRef<jstring> j_mime =
+      Java_ContentUriUtils_getMimeType(
+          env, base::android::GetApplicationContext(), j_uri.obj());
+  return base::android::ConvertJavaStringToUTF8(env, j_mime.obj());
+}
+
 }  // namespace base
diff --git a/base/android/content_uri_utils.h b/base/android/content_uri_utils.h
index 827ec92..e66b770 100644
--- a/base/android/content_uri_utils.h
+++ b/base/android/content_uri_utils.h
@@ -16,13 +16,17 @@
 
 bool RegisterContentUriUtils(JNIEnv* env);
 
-// Opens a content uri for read and returns the file descriptor to the caller.
-// Returns -1 if the uri is invalid.
+// Opens a content URI for read and returns the file descriptor to the caller.
+// Returns -1 if the URI is invalid.
 BASE_EXPORT File OpenContentUriForRead(const FilePath& content_uri);
 
-// Check whether a content uri exists.
+// Check whether a content URI exists.
 BASE_EXPORT bool ContentUriExists(const FilePath& content_uri);
 
+// Gets MIME type from a content URI. Returns an empty string if the URI is
+// invalid.
+BASE_EXPORT std::string GetContentUriMimeType(const FilePath& content_uri);
+
 }  // namespace base
 
 #endif  // BASE_ANDROID_CONTENT_URI_UTILS_H_
diff --git a/base/android/content_uri_utils_unittest.cc b/base/android/content_uri_utils_unittest.cc
new file mode 100644
index 0000000..c762035
--- /dev/null
+++ b/base/android/content_uri_utils_unittest.cc
@@ -0,0 +1,37 @@
+// Copyright 2014 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.
+
+#include "base/android/content_uri_utils.h"
+#include "base/files/file_util.h"
+#include "base/path_service.h"
+#include "base/test/test_file_util.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace base {
+namespace android {
+
+TEST(ContentUriUtilsTest, ContentUriMimeTest) {
+  // Get the test image path.
+  FilePath data_dir;
+  ASSERT_TRUE(PathService::Get(DIR_TEST_DATA, &data_dir));
+  data_dir = data_dir.AppendASCII("file_util");
+  ASSERT_TRUE(PathExists(data_dir));
+  FilePath image_file = data_dir.Append(FILE_PATH_LITERAL("red.png"));
+
+  // Insert the image into MediaStore. MediaStore will do some conversions, and
+  // return the content URI.
+  FilePath path = base::InsertImageIntoMediaStore(image_file);
+  EXPECT_TRUE(path.IsContentUri());
+  EXPECT_TRUE(PathExists(path));
+
+  std::string mime = GetContentUriMimeType(path);
+  EXPECT_EQ(mime, std::string("image/png"));
+
+  FilePath invalid_path("content://foo.bar");
+  mime = GetContentUriMimeType(invalid_path);
+  EXPECT_TRUE(mime.empty());
+}
+
+}  // namespace android
+}  // namespace base
diff --git a/base/android/java/src/org/chromium/base/ApiCompatibilityUtils.java b/base/android/java/src/org/chromium/base/ApiCompatibilityUtils.java
index 8b2438c..c03cad2 100644
--- a/base/android/java/src/org/chromium/base/ApiCompatibilityUtils.java
+++ b/base/android/java/src/org/chromium/base/ApiCompatibilityUtils.java
@@ -6,18 +6,26 @@
 
 import android.animation.ValueAnimator;
 import android.annotation.TargetApi;
+import android.app.Activity;
+import android.app.ActivityManager;
 import android.app.ActivityOptions;
 import android.app.PendingIntent;
+import android.content.ContentResolver;
 import android.content.Context;
 import android.content.Intent;
 import android.content.res.Configuration;
+import android.graphics.Bitmap;
+import android.graphics.Color;
 import android.graphics.drawable.Drawable;
 import android.os.Build;
 import android.os.Bundle;
+import android.os.PowerManager;
 import android.provider.Settings;
 import android.view.View;
 import android.view.ViewGroup.MarginLayoutParams;
 import android.view.ViewTreeObserver;
+import android.view.Window;
+import android.view.WindowManager;
 import android.widget.ImageView;
 import android.widget.RemoteViews;
 import android.widget.TextView;
@@ -25,6 +33,7 @@
 /**
  * Utility class to use new APIs that were added after ICS (API level 14).
  */
+@TargetApi(Build.VERSION_CODES.LOLLIPOP)
 public class ApiCompatibilityUtils {
     private ApiCompatibilityUtils() {
     }
@@ -375,4 +384,107 @@
         return Settings.Global.getInt(
                 context.getContentResolver(), Settings.Global.DEVICE_PROVISIONED, 0) != 0;
     }
+
+    /**
+     * @see android.app.Activity#finishAndRemoveTask()
+     */
+    public static void finishAndRemoveTask(Activity activity) {
+        if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) {
+            activity.finishAndRemoveTask();
+        } else if (Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP) {
+            // crbug.com/395772 : Fallback for Activity.finishAndRemoveTask() failing.
+            new FinishAndRemoveTaskWithRetry(activity).run();
+        } else {
+            activity.finish();
+        }
+    }
+
+    private static class FinishAndRemoveTaskWithRetry implements Runnable {
+        private static final long RETRY_DELAY_MS = 500;
+        private static final long MAX_TRY_COUNT = 3;
+        private final Activity mActivity;
+        private int mTryCount;
+
+        FinishAndRemoveTaskWithRetry(Activity activity) {
+            mActivity = activity;
+        }
+
+        @Override
+        public void run() {
+            mActivity.finishAndRemoveTask();
+            mTryCount++;
+            if (!mActivity.isFinishing()) {
+                if (mTryCount < MAX_TRY_COUNT) {
+                    ThreadUtils.postOnUiThreadDelayed(this, RETRY_DELAY_MS);
+                } else {
+                    mActivity.finish();
+                }
+            }
+        }
+    }
+
+    /**
+     * @return Whether the screen of the device is interactive.
+     */
+    @SuppressWarnings("deprecation")
+    public static boolean isInteractive(Context context) {
+        PowerManager manager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT_WATCH) {
+            return manager.isInteractive();
+        } else {
+            return manager.isScreenOn();
+        }
+    }
+
+    @SuppressWarnings("deprecation")
+    public static int getActivityNewDocumentFlag() {
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+            return Intent.FLAG_ACTIVITY_NEW_DOCUMENT;
+        } else {
+            return Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET;
+        }
+    }
+
+    /**
+     * @see android.provider.Settings.Secure#SKIP_FIRST_USE_HINTS
+     */
+    public static boolean shouldSkipFirstUseHints(ContentResolver contentResolver) {
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+            return Settings.Secure.getInt(
+                    contentResolver, Settings.Secure.SKIP_FIRST_USE_HINTS, 0) != 0;
+        } else {
+            return false;
+        }
+    }
+
+    /**
+     * @param activity Activity that should get the task description update.
+     * @param title Title of the activity.
+     * @param icon Icon of the activity.
+     * @param color Color of the activity.
+     */
+    public static void setTaskDescription(Activity activity, String title, Bitmap icon, int color) {
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+            ActivityManager.TaskDescription description =
+                    new ActivityManager.TaskDescription(title, icon, color);
+            activity.setTaskDescription(description);
+        }
+    }
+
+    /**
+     * @see android.view.Window#setStatusBarColor(int color).
+     */
+    public static void setStatusBarColor(Activity activity, int statusBarColor) {
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+            // If both system bars are black, we can remove these from our layout,
+            // removing or shrinking the SurfaceFlinger overlay required for our views.
+            Window window = activity.getWindow();
+            if (statusBarColor == Color.BLACK && window.getNavigationBarColor() == Color.BLACK) {
+                window.clearFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
+            } else {
+                window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
+            }
+            window.setStatusBarColor(statusBarColor);
+        }
+    }
 }
diff --git a/base/android/java/src/org/chromium/base/ContentUriUtils.java b/base/android/java/src/org/chromium/base/ContentUriUtils.java
index 70c27ed..ef527e1 100644
--- a/base/android/java/src/org/chromium/base/ContentUriUtils.java
+++ b/base/android/java/src/org/chromium/base/ContentUriUtils.java
@@ -12,6 +12,7 @@
 import android.util.Log;
 
 import java.io.File;
+import java.io.FileNotFoundException;
 
 /**
  * This class provides methods to access content URI schemes.
@@ -26,11 +27,11 @@
      */
     public interface FileProviderUtil {
         /**
-         * Generate a content uri from the given file.
+         * Generate a content URI from the given file.
          * @param context Application context.
          * @param file The file to be translated.
          */
-        public Uri getContentUriFromFile(Context context, File file);
+        Uri getContentUriFromFile(Context context, File file);
     }
 
     // Prevent instantiation.
@@ -54,7 +55,7 @@
      *
      * @param context {@link Context} in interest
      * @param uriString the content URI to open
-     * @returns file desciptor upon sucess, or -1 otherwise.
+     * @return file desciptor upon sucess, or -1 otherwise.
      */
     @CalledByNative
     public static int openContentUriForRead(Context context, String uriString) {
@@ -70,23 +71,34 @@
      *
      * @param context {@link Context} in interest.
      * @param uriString the content URI to query.
-     * @returns true if the uri exists, or false otherwise.
+     * @return true if the URI exists, or false otherwise.
      */
     @CalledByNative
     public static boolean contentUriExists(Context context, String uriString) {
-        ParcelFileDescriptor pfd = getParcelFileDescriptor(context, uriString);
-        if (pfd == null) {
-            return false;
-        }
-        return true;
+        return getParcelFileDescriptor(context, uriString) != null;
     }
 
     /**
-     * Helper method to open a content URI and return the ParcelFileDescriptor.
+     * Retrieve the MIME type for the content URI.
+     *
+     * @param context {@link Context} in interest.
+     * @param uriString the content URI to look up.
+     * @return MIME type or null if the input params are empty or invalid.
+     */
+    @CalledByNative
+    public static String getMimeType(Context context, String uriString) {
+        ContentResolver resolver = context.getContentResolver();
+        if (resolver == null) return null;
+        Uri uri = Uri.parse(uriString);
+        return resolver.getType(uri);
+    }
+
+    /**
+     * Helper method to open a content URI and returns the ParcelFileDescriptor.
      *
      * @param context {@link Context} in interest.
      * @param uriString the content URI to open.
-     * @returns ParcelFileDescriptor of the content URI, or NULL if the file does not exist.
+     * @return ParcelFileDescriptor of the content URI, or NULL if the file does not exist.
      */
     private static ParcelFileDescriptor getParcelFileDescriptor(Context context, String uriString) {
         ContentResolver resolver = context.getContentResolver();
@@ -95,8 +107,12 @@
         ParcelFileDescriptor pfd = null;
         try {
             pfd = resolver.openFileDescriptor(uri, "r");
-        } catch (java.io.FileNotFoundException e) {
+        } catch (FileNotFoundException e) {
             Log.w(TAG, "Cannot find content uri: " + uriString, e);
+        } catch (SecurityException e) {
+            Log.w(TAG, "Cannot open content uri: " + uriString, e);
+        } catch (IllegalArgumentException e) {
+            Log.w(TAG, "Unknown content uri: " + uriString, e);
         }
         return pfd;
     }
@@ -107,7 +123,7 @@
      * @param uri the content URI to be resolved.
      * @param contentResolver the content resolver to query.
      * @param columnField the column field to query.
-     * @returns the display name of the @code uri if present in the database
+     * @return the display name of the @code uri if present in the database
      *  or an empty string otherwise.
      */
     public static String getDisplayName(
diff --git a/base/android/java/src/org/chromium/base/SysUtils.java b/base/android/java/src/org/chromium/base/SysUtils.java
index 1c8378c..0d04204 100644
--- a/base/android/java/src/org/chromium/base/SysUtils.java
+++ b/base/android/java/src/org/chromium/base/SysUtils.java
@@ -4,6 +4,8 @@
 
 package org.chromium.base;
 
+import android.app.ActivityManager;
+import android.content.Context;
 import android.os.Build;
 import android.os.StrictMode;
 import android.util.Log;
@@ -22,7 +24,10 @@
             Build.VERSION_CODES.JELLY_BEAN_MR2;
 
     // A device reporting strictly more total memory in megabytes cannot be considered 'low-end'.
-    private static final long ANDROID_LOW_MEMORY_DEVICE_THRESHOLD_MB = 512;
+    private static final int ANDROID_LOW_MEMORY_DEVICE_THRESHOLD_MB = 512;
+
+    // Number of kilobytes in a megabyte.
+    private static final int KBS_IN_MB = 1024;
 
     private static final String TAG = "SysUtils";
 
@@ -35,7 +40,7 @@
      * @return Amount of physical memory in kilobytes, or 0 if there was
      *         an error trying to access the information.
      */
-    private static int amountOfPhysicalMemoryKB() {
+    private static int amountOfPhysicalMemoryMB() {
         // Extract total memory RAM size by parsing /proc/meminfo, note that
         // this is exactly what the implementation of sysconf(_SC_PHYS_PAGES)
         // does. However, it can't be called because this method must be
@@ -68,12 +73,12 @@
 
                         int totalMemoryKB = Integer.parseInt(m.group(1));
                         // Sanity check.
-                        if (totalMemoryKB <= 1024) {
+                        if (totalMemoryKB <= KBS_IN_MB) {
                             Log.w(TAG, "Invalid /proc/meminfo total size in kB: " + m.group(1));
                             break;
                         }
 
-                        return totalMemoryKB;
+                        return totalMemoryKB / KBS_IN_MB;
                     }
 
                 } finally {
@@ -115,7 +120,22 @@
             return false;
         }
 
-        int ramSizeKB = amountOfPhysicalMemoryKB();
-        return (ramSizeKB > 0 && ramSizeKB / 1024 < ANDROID_LOW_MEMORY_DEVICE_THRESHOLD_MB);
+        Context context = ApplicationStatus.getApplicationContext();
+        if (context != null) {
+            ActivityManager activityManager = (ActivityManager)
+                    context.getSystemService(Context.ACTIVITY_SERVICE);
+            if (activityManager.isLowRamDevice()) {
+                return true;
+            }
+        } else {
+            Log.e(TAG, "ApplicationContext is null in ApplicationStatus");
+        }
+
+        int ramSizeMB = amountOfPhysicalMemoryMB();
+        if (ramSizeMB <= 0) {
+            return false;
+        }
+
+        return ramSizeMB < ANDROID_LOW_MEMORY_DEVICE_THRESHOLD_MB;
     }
 }
diff --git a/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java b/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java
index 28c688d..89cb5bb 100644
--- a/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java
+++ b/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java
@@ -67,11 +67,6 @@
     // directly from the APK file but it was compressed or not aligned.
     private static boolean sLibraryIsMappableInApk = true;
 
-    // One-way switch becomes true if the system library loading failed,
-    // and the right native library was found and loaded by the hack.
-    // The flag is used to report UMA stats later.
-    private static boolean sNativeLibraryHackWasUsed = false;
-
     /**
      * The same as ensureInitialized(null, false), should only be called
      * by non-browser processes.
@@ -87,27 +82,20 @@
      *
      *  @param context The context in which the method is called, the caller
      *    may pass in a null context if it doesn't know in which context it
-     *    is running, or it doesn't need to work around the issue
-     *    http://b/13216167.
+     *    is running.
      *
-     *    When the context is not null and native library was not extracted
-     *    by Android package manager, the LibraryLoader class
-     *    will extract the native libraries from APK. This is a hack used to
-     *    work around some Sony devices with the following platform bug:
-     *    http://b/13216167.
-     *
-     *  @param shouldDeleteOldWorkaroundLibraries The flag tells whether the method
-     *    should delete the old workaround and fallback libraries or not.
+     *  @param shouldDeleteFallbackLibraries The flag tells whether the method
+     *    should delete the fallback libraries or not.
      */
     public static void ensureInitialized(
-            Context context, boolean shouldDeleteOldWorkaroundLibraries)
+            Context context, boolean shouldDeleteFallbackLibraries)
             throws ProcessInitException {
         synchronized (sLock) {
             if (sInitialized) {
                 // Already initialized, nothing to do.
                 return;
             }
-            loadAlreadyLocked(context, shouldDeleteOldWorkaroundLibraries);
+            loadAlreadyLocked(context, shouldDeleteFallbackLibraries);
             initializeAlreadyLocked();
         }
     }
@@ -139,15 +127,15 @@
      * See the comment in doInBackground() for more considerations on this.
      *
      * @param context The context the code is running, or null if it doesn't have one.
-     * @param shouldDeleteOldWorkaroundLibraries The flag tells whether the method
-     *   should delete the old workaround and fallback libraries or not.
+     * @param shouldDeleteFallbackLibraries The flag tells whether the method
+     *   should delete the old fallback libraries or not.
      *
      * @throws ProcessInitException if the native library failed to load.
      */
-    public static void loadNow(Context context, boolean shouldDeleteOldWorkaroundLibraries)
+    public static void loadNow(Context context, boolean shouldDeleteFallbackLibraries)
             throws ProcessInitException {
         synchronized (sLock) {
-            loadAlreadyLocked(context, shouldDeleteOldWorkaroundLibraries);
+            loadAlreadyLocked(context, shouldDeleteFallbackLibraries);
         }
     }
 
@@ -164,7 +152,7 @@
 
     // Invoke System.loadLibrary(...), triggering JNI_OnLoad in native code
     private static void loadAlreadyLocked(
-            Context context, boolean shouldDeleteOldWorkaroundLibraries)
+            Context context, boolean shouldDeleteFallbackLibraries)
             throws ProcessInitException {
         try {
             if (!sLoaded) {
@@ -261,29 +249,14 @@
                 } else {
                     // Load libraries using the system linker.
                     for (String library : NativeLibraries.LIBRARIES) {
-                        try {
-                            System.loadLibrary(library);
-                        } catch (UnsatisfiedLinkError e) {
-                            if (context != null
-                                    && LibraryLoaderHelper.tryLoadLibraryUsingWorkaround(context,
-                                                                                         library)) {
-                                sNativeLibraryHackWasUsed = true;
-                            } else {
-                                throw e;
-                            }
-                        }
+                        System.loadLibrary(library);
                     }
                 }
 
-                if (context != null && shouldDeleteOldWorkaroundLibraries) {
-                    if (!sNativeLibraryHackWasUsed) {
-                        LibraryLoaderHelper.deleteLibrariesAsynchronously(
-                                context, LibraryLoaderHelper.PACKAGE_MANAGER_WORKAROUND_DIR);
-                    }
-                    if (!fallbackWasUsed) {
-                        LibraryLoaderHelper.deleteLibrariesAsynchronously(
-                                context, LibraryLoaderHelper.LOAD_FROM_APK_FALLBACK_DIR);
-                    }
+                if (!fallbackWasUsed && context != null
+                        && shouldDeleteFallbackLibraries) {
+                    LibraryLoaderHelper.deleteLibrariesAsynchronously(
+                            context, LibraryLoaderHelper.LOAD_FROM_APK_FALLBACK_DIR);
                 }
 
                 long stopTime = SystemClock.uptimeMillis();
@@ -373,7 +346,6 @@
     // Called after all native initializations are complete.
     public static void onNativeInitializationComplete(Context context) {
         recordBrowserProcessHistogram(context);
-        nativeRecordNativeLibraryHack(sNativeLibraryHackWasUsed);
     }
 
     // Record Chromium linker histogram state for the main browser process. Called from
@@ -452,6 +424,4 @@
     // Get the version of the native library. This is needed so that we can check we
     // have the right version before initializing the (rest of the) JNI.
     private static native String nativeGetVersionNumber();
-
-    private static native void nativeRecordNativeLibraryHack(boolean usedHack);
 }
diff --git a/base/android/java/src/org/chromium/base/library_loader/LibraryLoaderHelper.java b/base/android/java/src/org/chromium/base/library_loader/LibraryLoaderHelper.java
index c185fad..7dd1a29 100644
--- a/base/android/java/src/org/chromium/base/library_loader/LibraryLoaderHelper.java
+++ b/base/android/java/src/org/chromium/base/library_loader/LibraryLoaderHelper.java
@@ -6,7 +6,6 @@
 package org.chromium.base.library_loader;
 
 import android.content.Context;
-import android.os.Build;
 import android.util.Log;
 
 import java.io.BufferedOutputStream;
@@ -19,7 +18,6 @@
 import java.io.OutputStream;
 import java.util.Collection;
 import java.util.Collections;
-import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
 import java.util.Map.Entry;
@@ -44,94 +42,16 @@
 /**
  * The class provides helper functions to extract native libraries from APK,
  * and load libraries from there.
- *
- * The class should be package-visible only, but made public for testing
- * purpose.
  */
-public class LibraryLoaderHelper {
+class LibraryLoaderHelper {
     private static final String TAG = "LibraryLoaderHelper";
 
-    // Workaround and fallback directories.
-    // TODO(petrcermak): Merge the directories once refactored.
-    public static final String PACKAGE_MANAGER_WORKAROUND_DIR = "lib";
-    public static final String LOAD_FROM_APK_FALLBACK_DIR = "fallback";
+    // Fallback directories.
+    static final String LOAD_FROM_APK_FALLBACK_DIR = "fallback";
 
     private static final int BUFFER_SIZE = 16384;
 
     /**
-     * One-way switch becomes true if native libraries were unpacked
-     * from APK.
-     */
-    private static boolean sLibrariesWereUnpacked = false;
-
-    /**
-     * Loads native libraries using workaround only, skip the library in system
-     * lib path. The method exists only for testing purpose.
-     * Caller must ensure thread safety of this method.
-     * @param context
-     */
-    public static boolean loadNativeLibrariesUsingWorkaroundForTesting(Context context) {
-        // Although tryLoadLibraryUsingWorkaround might be called multiple times,
-        // libraries should only be unpacked once, this is guaranteed by
-        // sLibrariesWereUnpacked.
-        for (String library : NativeLibraries.LIBRARIES) {
-            if (!tryLoadLibraryUsingWorkaround(context, library)) {
-                return false;
-            }
-        }
-        return true;
-    }
-
-    /**
-     * Try to load a native library using a workaround of
-     *   http://b/13216167.
-     *
-     * Workaround for b/13216167 was adapted from code in
-     * https://googleplex-android-review.git.corp.google.com/#/c/433061
-     *
-     * More details about http://b/13216167:
-     *   PackageManager may fail to update shared library.
-     *
-     * Native library directory in an updated package is a symbolic link
-     * to a directory in /data/app-lib/<package name>, for example:
-     * /data/data/com.android.chrome/lib -> /data/app-lib/com.android.chrome[-1].
-     * When updating the application, the PackageManager create a new directory,
-     * e.g., /data/app-lib/com.android.chrome-2, and remove the old symlink and
-     * recreate one to the new directory. However, on some devices (e.g. Sony Xperia),
-     * the symlink was updated, but fails to extract new native libraries from
-     * the new apk.
-     *
-     * We make the following changes to alleviate the issue:
-     *  1) name the native library with apk version code, e.g.,
-     *     libchrome.1750.136.so, 1750.136 is Chrome version number;
-     *  2) first try to load the library using System.loadLibrary,
-     *     if that failed due to the library file was not found,
-     *     search the named library in a /data/data/com.android.chrome/app_lib
-     *     directory. Because of change 1), each version has a different native
-     *     library name, so avoid mistakenly using the old native library.
-     *
-     *  If named library is not in /data/data/com.android.chrome/app_lib directory,
-     *  extract native libraries from apk and cache in the directory.
-     *
-     * This function doesn't throw UnsatisfiedLinkError, the caller needs to
-     * check the return value.
-     */
-    static boolean tryLoadLibraryUsingWorkaround(Context context, String library) {
-        assert context != null;
-        String libName = System.mapLibraryName(library);
-        File libFile = new File(getLibDir(context, PACKAGE_MANAGER_WORKAROUND_DIR), libName);
-        if (!libFile.exists() && !unpackWorkaroundLibrariesOnce(context)) {
-            return false;
-        }
-        try {
-            System.load(libFile.getAbsolutePath());
-            return true;
-        } catch (UnsatisfiedLinkError e) {
-            return false;
-        }
-    }
-
-    /**
      * Returns the directory for holding extracted native libraries.
      * It may create the directory if it doesn't exist.
      *
@@ -139,57 +59,14 @@
      * @param dirName The name of the directory containing the libraries.
      * @return The directory file object.
      */
-    public static File getLibDir(Context context, String dirName) {
+    static File getLibDir(Context context, String dirName) {
         return context.getDir(dirName, Context.MODE_PRIVATE);
     }
 
-    @SuppressWarnings("deprecation")
-    private static String getJniNameInApk(String libName) {
-        // TODO(aurimas): Build.CPU_ABI has been deprecated. Replace it when final L SDK is public.
-        return "lib/" + Build.CPU_ABI + "/" + libName;
-    }
-
-    /**
-     * Unpack native libraries from the APK file. The method is supposed to
-     * be called only once. It deletes existing files in unpacked directory
-     * before unpacking.
-     *
-     * @param context
-     * @return true when unpacking was successful, false when failed or called
-     *         more than once.
-     */
-    private static boolean unpackWorkaroundLibrariesOnce(Context context) {
-        if (sLibrariesWereUnpacked) {
-            return false;
-        }
-        sLibrariesWereUnpacked = true;
-
-        deleteLibrariesSynchronously(context, PACKAGE_MANAGER_WORKAROUND_DIR);
-        File libDir = getLibDir(context, PACKAGE_MANAGER_WORKAROUND_DIR);
-
-        try {
-            Map<String, File> dstFiles = new HashMap<String, File>();
-            for (String library : NativeLibraries.LIBRARIES) {
-                String libName = System.mapLibraryName(library);
-                String pathInZipFile = getJniNameInApk(libName);
-                dstFiles.put(pathInZipFile, new File(libDir, libName));
-            }
-            unpackLibraries(context, dstFiles);
-            return true;
-        } catch (UnpackingException e) {
-            Log.e(TAG, "Failed to unpack native libraries", e);
-            deleteLibrariesSynchronously(context, PACKAGE_MANAGER_WORKAROUND_DIR);
-            return false;
-        }
-    }
-
     /**
      * Delete libraries and their directory synchronously.
-     * For testing purpose only.
-     *
-     * @param context
      */
-    public static void deleteLibrariesSynchronously(Context context, String dirName) {
+    private static void deleteLibrariesSynchronously(Context context, String dirName) {
         File libDir = getLibDir(context, dirName);
         deleteObsoleteLibraries(libDir, Collections.<File>emptyList());
     }
@@ -197,8 +74,6 @@
     /**
      * Delete libraries and their directory asynchronously.
      * The actual deletion is done in a background thread.
-     *
-     * @param context
      */
     static void deleteLibrariesAsynchronously(
             final Context context, final String dirName) {
@@ -220,7 +95,7 @@
      * @param library Library name.
      * @return name of the fallback copy of the library.
      */
-    public static String buildFallbackLibrary(Context context, String library) {
+    static String buildFallbackLibrary(Context context, String library) {
         try {
             String libName = System.mapLibraryName(library);
             File fallbackLibDir = getLibDir(context, LOAD_FROM_APK_FALLBACK_DIR);
diff --git a/base/android/javatests/src/org/chromium/base/LibraryLoaderHelperTest.java b/base/android/javatests/src/org/chromium/base/LibraryLoaderHelperTest.java
deleted file mode 100644
index 6abdb89..0000000
--- a/base/android/javatests/src/org/chromium/base/LibraryLoaderHelperTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright 2014 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.
-
-package org.chromium.base;
-
-import android.content.Context;
-import android.test.InstrumentationTestCase;
-import android.test.suitebuilder.annotation.MediumTest;
-
-import org.chromium.base.library_loader.LibraryLoaderHelper;
-
-import java.io.File;
-
-/**
- * Test class for the native library hack.
- */
-public class LibraryLoaderHelperTest extends InstrumentationTestCase {
-    private static final String TAG = "LibraryLoaderHelperTest";
-
-    @Override
-    public void setUp() throws Exception {
-        Context context = getInstrumentation().getTargetContext();
-        LibraryLoaderHelper.deleteLibrariesSynchronously(
-                context, LibraryLoaderHelper.PACKAGE_MANAGER_WORKAROUND_DIR);
-    }
-
-    @MediumTest
-    public void testLoadNativeLibraries() {
-        getInstrumentation().runOnMainSync(new Runnable() {
-            @Override
-            public void run() {
-                Context context = getInstrumentation().getTargetContext();
-                File libDir = LibraryLoaderHelper.getLibDir(context,
-                        LibraryLoaderHelper.PACKAGE_MANAGER_WORKAROUND_DIR);
-                assertTrue(libDir.exists());
-                assertTrue(libDir.isDirectory());
-                assertEquals(libDir.list().length, 0);
-
-                assertTrue(LibraryLoaderHelper.loadNativeLibrariesUsingWorkaroundForTesting(
-                        context));
-
-                assertTrue(libDir.list().length > 0);
-            }
-        });
-    }
-
-    @Override
-    public void tearDown() throws Exception {
-        Context context = getInstrumentation().getTargetContext();
-        LibraryLoaderHelper.deleteLibrariesSynchronously(
-                context, LibraryLoaderHelper.PACKAGE_MANAGER_WORKAROUND_DIR);
-        super.tearDown();
-    }
-}
diff --git a/base/android/library_loader/library_loader_hooks.cc b/base/android/library_loader/library_loader_hooks.cc
index 809275d..965d030 100644
--- a/base/android/library_loader/library_loader_hooks.cc
+++ b/base/android/library_loader/library_loader_hooks.cc
@@ -136,9 +136,5 @@
   return ConvertUTF8ToJavaString(env, g_library_version_number).Release();
 }
 
-static void RecordNativeLibraryHack(JNIEnv*, jclass, jboolean usedHack) {
-  UMA_HISTOGRAM_BOOLEAN("LibraryLoader.NativeLibraryHack", usedHack);
-}
-
 }  // namespace android
 }  // namespace base
diff --git a/base/android/linker/BUILD.gn b/base/android/linker/BUILD.gn
index b26e3b0..4817d88 100644
--- a/base/android/linker/BUILD.gn
+++ b/base/android/linker/BUILD.gn
@@ -9,11 +9,16 @@
 
 # GYP: //base/base.gyp:chromium_android_linker
 shared_library("chromium_android_linker") {
-  sources = [ "linker_jni.cc" ]
+  sources = [
+    "linker_jni.cc",
+  ]
+
   # The NDK contains the crazy_linker here:
   #   '<(android_ndk_root)/crazy_linker.gyp:crazy_linker'
   # However, we use our own fork.  See bug 384700.
-  deps = [ "//third_party/android_crazy_linker" ]
+  deps = [
+    "//third_party/android_crazy_linker",
+  ]
 
   # TODO(GYP):
   # The crazy linker is never instrumented.
diff --git a/base/base.gyp b/base/base.gyp
index e31cf18..64f88db 100644
--- a/base/base.gyp
+++ b/base/base.gyp
@@ -447,6 +447,7 @@
       'type': '<(gtest_target_type)',
       'sources': [
         'android/application_status_listener_unittest.cc',
+        'android/content_uri_utils_unittest.cc',
         'android/jni_android_unittest.cc',
         'android/jni_array_unittest.cc',
         'android/jni_string_unittest.cc',
@@ -911,6 +912,8 @@
         'test/expectations/expectation.h',
         'test/expectations/parser.cc',
         'test/expectations/parser.h',
+        'test/gtest_util.cc',
+        'test/gtest_util.h',
         'test/gtest_xml_util.cc',
         'test/gtest_xml_util.h',
         'test/launcher/test_launcher.cc',
diff --git a/base/base.gypi b/base/base.gypi
index 39bb08b..f945166 100644
--- a/base/base.gypi
+++ b/base/base.gypi
@@ -244,6 +244,7 @@
           'hash.cc',
           'hash.h',
           'id_map.h',
+          'ios/block_types.h',
           'ios/device_util.h',
           'ios/device_util.mm',
           'ios/ios_util.h',
diff --git a/base/bind.h b/base/bind.h
index b14f70c..7874656 100644
--- a/base/bind.h
+++ b/base/bind.h
@@ -1,8 +1,3 @@
-// This file was GENERATED by command:
-//     pump.py bind.h.pump
-// DO NOT EDIT BY HAND!!!
-
-
 // Copyright (c) 2011 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.
@@ -46,10 +41,9 @@
 //
 // TODO(ajwong): We might be able to avoid this now, but need to test.
 //
-// It is possible to move most of the COMPILE_ASSERT asserts into BindState<>,
-// but it feels a little nicer to have the asserts here so people do not
-// need to crack open bind_internal.h.  On the other hand, it makes Bind()
-// harder to read.
+// It is possible to move most of the static_assert into BindState<>, but it
+// feels a little nicer to have the asserts here so people do not need to crack
+// open bind_internal.h.  On the other hand, it makes Bind() harder to read.
 
 namespace base {
 
@@ -58,8 +52,7 @@
     typename internal::BindState<
         typename internal::FunctorTraits<Functor>::RunnableType,
         typename internal::FunctorTraits<Functor>::RunType,
-        void()>
-            ::UnboundRunType>
+        void()>::UnboundRunType>
 Bind(Functor functor) {
   // Typedefs for how to store and run the functor.
   typedef typename internal::FunctorTraits<Functor>::RunnableType RunnableType;
@@ -67,19 +60,18 @@
 
   typedef internal::BindState<RunnableType, RunType, void()> BindState;
 
-
   return Callback<typename BindState::UnboundRunType>(
       new BindState(internal::MakeRunnable(functor)));
 }
 
-template <typename Functor, typename P1>
+template <typename Functor, typename... Args>
 base::Callback<
     typename internal::BindState<
         typename internal::FunctorTraits<Functor>::RunnableType,
         typename internal::FunctorTraits<Functor>::RunType,
-        void(typename internal::CallbackParamTraits<P1>::StorageType)>
+        void(typename internal::CallbackParamTraits<Args>::StorageType...)>
             ::UnboundRunType>
-Bind(Functor functor, const P1& p1) {
+Bind(Functor functor, const Args&... args) {
   // Typedefs for how to store and run the functor.
   typedef typename internal::FunctorTraits<Functor>::RunnableType RunnableType;
   typedef typename internal::FunctorTraits<Functor>::RunType RunType;
@@ -87,423 +79,34 @@
   // Use RunnableType::RunType instead of RunType above because our
   // checks should below for bound references need to know what the actual
   // functor is going to interpret the argument as.
-  typedef internal::FunctionTraits<typename RunnableType::RunType>
-      BoundFunctorTraits;
+  typedef typename RunnableType::RunType BoundRunType;
 
   // Do not allow binding a non-const reference parameter. Non-const reference
   // parameters are disallowed by the Google style guide.  Also, binding a
   // non-const reference parameter can make for subtle bugs because the
   // invoked function will receive a reference to the stored copy of the
   // argument and not the original.
-  COMPILE_ASSERT(
-      !(is_non_const_reference<typename BoundFunctorTraits::A1Type>::value ),
-      do_not_bind_functions_with_nonconst_ref);
+  static_assert(!internal::HasNonConstReferenceParam<BoundRunType>::value,
+                "do_not_bind_functions_with_nonconst_ref");
+
+  const bool is_method = internal::HasIsMethodTag<RunnableType>::value;
 
   // For methods, we need to be careful for parameter 1.  We do not require
   // a scoped_refptr because BindState<> itself takes care of AddRef() for
   // methods. We also disallow binding of an array as the method's target
   // object.
-  COMPILE_ASSERT(
-      internal::HasIsMethodTag<RunnableType>::value ||
-          !internal::NeedsScopedRefptrButGetsRawPtr<P1>::value,
-      p1_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::HasIsMethodTag<RunnableType>::value ||
-                     !is_array<P1>::value,
-                 first_bound_argument_to_method_cannot_be_array);
-  typedef internal::BindState<RunnableType, RunType,
-      void(typename internal::CallbackParamTraits<P1>::StorageType)> BindState;
+  static_assert(!internal::BindsArrayToFirstArg<is_method, Args...>::value,
+                "first_bound_argument_to_method_cannot_be_array");
+  static_assert(
+      !internal::HasRefCountedParamAsRawPtr<is_method, Args...>::value,
+      "a_parameter_is_refcounted_type_and_needs_scoped_refptr");
 
+  typedef internal::BindState<RunnableType, RunType,
+      void(typename internal::CallbackParamTraits<Args>::StorageType...)>
+      BindState;
 
   return Callback<typename BindState::UnboundRunType>(
-      new BindState(internal::MakeRunnable(functor), p1));
-}
-
-template <typename Functor, typename P1, typename P2>
-base::Callback<
-    typename internal::BindState<
-        typename internal::FunctorTraits<Functor>::RunnableType,
-        typename internal::FunctorTraits<Functor>::RunType,
-        void(typename internal::CallbackParamTraits<P1>::StorageType,
-            typename internal::CallbackParamTraits<P2>::StorageType)>
-            ::UnboundRunType>
-Bind(Functor functor, const P1& p1, const P2& p2) {
-  // Typedefs for how to store and run the functor.
-  typedef typename internal::FunctorTraits<Functor>::RunnableType RunnableType;
-  typedef typename internal::FunctorTraits<Functor>::RunType RunType;
-
-  // Use RunnableType::RunType instead of RunType above because our
-  // checks should below for bound references need to know what the actual
-  // functor is going to interpret the argument as.
-  typedef internal::FunctionTraits<typename RunnableType::RunType>
-      BoundFunctorTraits;
-
-  // Do not allow binding a non-const reference parameter. Non-const reference
-  // parameters are disallowed by the Google style guide.  Also, binding a
-  // non-const reference parameter can make for subtle bugs because the
-  // invoked function will receive a reference to the stored copy of the
-  // argument and not the original.
-  COMPILE_ASSERT(
-      !(is_non_const_reference<typename BoundFunctorTraits::A1Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A2Type>::value ),
-      do_not_bind_functions_with_nonconst_ref);
-
-  // For methods, we need to be careful for parameter 1.  We do not require
-  // a scoped_refptr because BindState<> itself takes care of AddRef() for
-  // methods. We also disallow binding of an array as the method's target
-  // object.
-  COMPILE_ASSERT(
-      internal::HasIsMethodTag<RunnableType>::value ||
-          !internal::NeedsScopedRefptrButGetsRawPtr<P1>::value,
-      p1_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::HasIsMethodTag<RunnableType>::value ||
-                     !is_array<P1>::value,
-                 first_bound_argument_to_method_cannot_be_array);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P2>::value,
-                 p2_is_refcounted_type_and_needs_scoped_refptr);
-  typedef internal::BindState<RunnableType, RunType,
-      void(typename internal::CallbackParamTraits<P1>::StorageType,
-      typename internal::CallbackParamTraits<P2>::StorageType)> BindState;
-
-
-  return Callback<typename BindState::UnboundRunType>(
-      new BindState(internal::MakeRunnable(functor), p1, p2));
-}
-
-template <typename Functor, typename P1, typename P2, typename P3>
-base::Callback<
-    typename internal::BindState<
-        typename internal::FunctorTraits<Functor>::RunnableType,
-        typename internal::FunctorTraits<Functor>::RunType,
-        void(typename internal::CallbackParamTraits<P1>::StorageType,
-            typename internal::CallbackParamTraits<P2>::StorageType,
-            typename internal::CallbackParamTraits<P3>::StorageType)>
-            ::UnboundRunType>
-Bind(Functor functor, const P1& p1, const P2& p2, const P3& p3) {
-  // Typedefs for how to store and run the functor.
-  typedef typename internal::FunctorTraits<Functor>::RunnableType RunnableType;
-  typedef typename internal::FunctorTraits<Functor>::RunType RunType;
-
-  // Use RunnableType::RunType instead of RunType above because our
-  // checks should below for bound references need to know what the actual
-  // functor is going to interpret the argument as.
-  typedef internal::FunctionTraits<typename RunnableType::RunType>
-      BoundFunctorTraits;
-
-  // Do not allow binding a non-const reference parameter. Non-const reference
-  // parameters are disallowed by the Google style guide.  Also, binding a
-  // non-const reference parameter can make for subtle bugs because the
-  // invoked function will receive a reference to the stored copy of the
-  // argument and not the original.
-  COMPILE_ASSERT(
-      !(is_non_const_reference<typename BoundFunctorTraits::A1Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A2Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A3Type>::value ),
-      do_not_bind_functions_with_nonconst_ref);
-
-  // For methods, we need to be careful for parameter 1.  We do not require
-  // a scoped_refptr because BindState<> itself takes care of AddRef() for
-  // methods. We also disallow binding of an array as the method's target
-  // object.
-  COMPILE_ASSERT(
-      internal::HasIsMethodTag<RunnableType>::value ||
-          !internal::NeedsScopedRefptrButGetsRawPtr<P1>::value,
-      p1_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::HasIsMethodTag<RunnableType>::value ||
-                     !is_array<P1>::value,
-                 first_bound_argument_to_method_cannot_be_array);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P2>::value,
-                 p2_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P3>::value,
-                 p3_is_refcounted_type_and_needs_scoped_refptr);
-  typedef internal::BindState<RunnableType, RunType,
-      void(typename internal::CallbackParamTraits<P1>::StorageType,
-      typename internal::CallbackParamTraits<P2>::StorageType,
-      typename internal::CallbackParamTraits<P3>::StorageType)> BindState;
-
-
-  return Callback<typename BindState::UnboundRunType>(
-      new BindState(internal::MakeRunnable(functor), p1, p2, p3));
-}
-
-template <typename Functor, typename P1, typename P2, typename P3, typename P4>
-base::Callback<
-    typename internal::BindState<
-        typename internal::FunctorTraits<Functor>::RunnableType,
-        typename internal::FunctorTraits<Functor>::RunType,
-        void(typename internal::CallbackParamTraits<P1>::StorageType,
-            typename internal::CallbackParamTraits<P2>::StorageType,
-            typename internal::CallbackParamTraits<P3>::StorageType,
-            typename internal::CallbackParamTraits<P4>::StorageType)>
-            ::UnboundRunType>
-Bind(Functor functor, const P1& p1, const P2& p2, const P3& p3, const P4& p4) {
-  // Typedefs for how to store and run the functor.
-  typedef typename internal::FunctorTraits<Functor>::RunnableType RunnableType;
-  typedef typename internal::FunctorTraits<Functor>::RunType RunType;
-
-  // Use RunnableType::RunType instead of RunType above because our
-  // checks should below for bound references need to know what the actual
-  // functor is going to interpret the argument as.
-  typedef internal::FunctionTraits<typename RunnableType::RunType>
-      BoundFunctorTraits;
-
-  // Do not allow binding a non-const reference parameter. Non-const reference
-  // parameters are disallowed by the Google style guide.  Also, binding a
-  // non-const reference parameter can make for subtle bugs because the
-  // invoked function will receive a reference to the stored copy of the
-  // argument and not the original.
-  COMPILE_ASSERT(
-      !(is_non_const_reference<typename BoundFunctorTraits::A1Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A2Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A3Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A4Type>::value ),
-      do_not_bind_functions_with_nonconst_ref);
-
-  // For methods, we need to be careful for parameter 1.  We do not require
-  // a scoped_refptr because BindState<> itself takes care of AddRef() for
-  // methods. We also disallow binding of an array as the method's target
-  // object.
-  COMPILE_ASSERT(
-      internal::HasIsMethodTag<RunnableType>::value ||
-          !internal::NeedsScopedRefptrButGetsRawPtr<P1>::value,
-      p1_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::HasIsMethodTag<RunnableType>::value ||
-                     !is_array<P1>::value,
-                 first_bound_argument_to_method_cannot_be_array);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P2>::value,
-                 p2_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P3>::value,
-                 p3_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P4>::value,
-                 p4_is_refcounted_type_and_needs_scoped_refptr);
-  typedef internal::BindState<RunnableType, RunType,
-      void(typename internal::CallbackParamTraits<P1>::StorageType,
-      typename internal::CallbackParamTraits<P2>::StorageType,
-      typename internal::CallbackParamTraits<P3>::StorageType,
-      typename internal::CallbackParamTraits<P4>::StorageType)> BindState;
-
-
-  return Callback<typename BindState::UnboundRunType>(
-      new BindState(internal::MakeRunnable(functor), p1, p2, p3, p4));
-}
-
-template <typename Functor, typename P1, typename P2, typename P3, typename P4,
-    typename P5>
-base::Callback<
-    typename internal::BindState<
-        typename internal::FunctorTraits<Functor>::RunnableType,
-        typename internal::FunctorTraits<Functor>::RunType,
-        void(typename internal::CallbackParamTraits<P1>::StorageType,
-            typename internal::CallbackParamTraits<P2>::StorageType,
-            typename internal::CallbackParamTraits<P3>::StorageType,
-            typename internal::CallbackParamTraits<P4>::StorageType,
-            typename internal::CallbackParamTraits<P5>::StorageType)>
-            ::UnboundRunType>
-Bind(Functor functor, const P1& p1, const P2& p2, const P3& p3, const P4& p4,
-    const P5& p5) {
-  // Typedefs for how to store and run the functor.
-  typedef typename internal::FunctorTraits<Functor>::RunnableType RunnableType;
-  typedef typename internal::FunctorTraits<Functor>::RunType RunType;
-
-  // Use RunnableType::RunType instead of RunType above because our
-  // checks should below for bound references need to know what the actual
-  // functor is going to interpret the argument as.
-  typedef internal::FunctionTraits<typename RunnableType::RunType>
-      BoundFunctorTraits;
-
-  // Do not allow binding a non-const reference parameter. Non-const reference
-  // parameters are disallowed by the Google style guide.  Also, binding a
-  // non-const reference parameter can make for subtle bugs because the
-  // invoked function will receive a reference to the stored copy of the
-  // argument and not the original.
-  COMPILE_ASSERT(
-      !(is_non_const_reference<typename BoundFunctorTraits::A1Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A2Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A3Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A4Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A5Type>::value ),
-      do_not_bind_functions_with_nonconst_ref);
-
-  // For methods, we need to be careful for parameter 1.  We do not require
-  // a scoped_refptr because BindState<> itself takes care of AddRef() for
-  // methods. We also disallow binding of an array as the method's target
-  // object.
-  COMPILE_ASSERT(
-      internal::HasIsMethodTag<RunnableType>::value ||
-          !internal::NeedsScopedRefptrButGetsRawPtr<P1>::value,
-      p1_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::HasIsMethodTag<RunnableType>::value ||
-                     !is_array<P1>::value,
-                 first_bound_argument_to_method_cannot_be_array);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P2>::value,
-                 p2_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P3>::value,
-                 p3_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P4>::value,
-                 p4_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P5>::value,
-                 p5_is_refcounted_type_and_needs_scoped_refptr);
-  typedef internal::BindState<RunnableType, RunType,
-      void(typename internal::CallbackParamTraits<P1>::StorageType,
-      typename internal::CallbackParamTraits<P2>::StorageType,
-      typename internal::CallbackParamTraits<P3>::StorageType,
-      typename internal::CallbackParamTraits<P4>::StorageType,
-      typename internal::CallbackParamTraits<P5>::StorageType)> BindState;
-
-
-  return Callback<typename BindState::UnboundRunType>(
-      new BindState(internal::MakeRunnable(functor), p1, p2, p3, p4, p5));
-}
-
-template <typename Functor, typename P1, typename P2, typename P3, typename P4,
-    typename P5, typename P6>
-base::Callback<
-    typename internal::BindState<
-        typename internal::FunctorTraits<Functor>::RunnableType,
-        typename internal::FunctorTraits<Functor>::RunType,
-        void(typename internal::CallbackParamTraits<P1>::StorageType,
-            typename internal::CallbackParamTraits<P2>::StorageType,
-            typename internal::CallbackParamTraits<P3>::StorageType,
-            typename internal::CallbackParamTraits<P4>::StorageType,
-            typename internal::CallbackParamTraits<P5>::StorageType,
-            typename internal::CallbackParamTraits<P6>::StorageType)>
-            ::UnboundRunType>
-Bind(Functor functor, const P1& p1, const P2& p2, const P3& p3, const P4& p4,
-    const P5& p5, const P6& p6) {
-  // Typedefs for how to store and run the functor.
-  typedef typename internal::FunctorTraits<Functor>::RunnableType RunnableType;
-  typedef typename internal::FunctorTraits<Functor>::RunType RunType;
-
-  // Use RunnableType::RunType instead of RunType above because our
-  // checks should below for bound references need to know what the actual
-  // functor is going to interpret the argument as.
-  typedef internal::FunctionTraits<typename RunnableType::RunType>
-      BoundFunctorTraits;
-
-  // Do not allow binding a non-const reference parameter. Non-const reference
-  // parameters are disallowed by the Google style guide.  Also, binding a
-  // non-const reference parameter can make for subtle bugs because the
-  // invoked function will receive a reference to the stored copy of the
-  // argument and not the original.
-  COMPILE_ASSERT(
-      !(is_non_const_reference<typename BoundFunctorTraits::A1Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A2Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A3Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A4Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A5Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A6Type>::value ),
-      do_not_bind_functions_with_nonconst_ref);
-
-  // For methods, we need to be careful for parameter 1.  We do not require
-  // a scoped_refptr because BindState<> itself takes care of AddRef() for
-  // methods. We also disallow binding of an array as the method's target
-  // object.
-  COMPILE_ASSERT(
-      internal::HasIsMethodTag<RunnableType>::value ||
-          !internal::NeedsScopedRefptrButGetsRawPtr<P1>::value,
-      p1_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::HasIsMethodTag<RunnableType>::value ||
-                     !is_array<P1>::value,
-                 first_bound_argument_to_method_cannot_be_array);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P2>::value,
-                 p2_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P3>::value,
-                 p3_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P4>::value,
-                 p4_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P5>::value,
-                 p5_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P6>::value,
-                 p6_is_refcounted_type_and_needs_scoped_refptr);
-  typedef internal::BindState<RunnableType, RunType,
-      void(typename internal::CallbackParamTraits<P1>::StorageType,
-      typename internal::CallbackParamTraits<P2>::StorageType,
-      typename internal::CallbackParamTraits<P3>::StorageType,
-      typename internal::CallbackParamTraits<P4>::StorageType,
-      typename internal::CallbackParamTraits<P5>::StorageType,
-      typename internal::CallbackParamTraits<P6>::StorageType)> BindState;
-
-
-  return Callback<typename BindState::UnboundRunType>(
-      new BindState(internal::MakeRunnable(functor), p1, p2, p3, p4, p5, p6));
-}
-
-template <typename Functor, typename P1, typename P2, typename P3, typename P4,
-    typename P5, typename P6, typename P7>
-base::Callback<
-    typename internal::BindState<
-        typename internal::FunctorTraits<Functor>::RunnableType,
-        typename internal::FunctorTraits<Functor>::RunType,
-        void(typename internal::CallbackParamTraits<P1>::StorageType,
-            typename internal::CallbackParamTraits<P2>::StorageType,
-            typename internal::CallbackParamTraits<P3>::StorageType,
-            typename internal::CallbackParamTraits<P4>::StorageType,
-            typename internal::CallbackParamTraits<P5>::StorageType,
-            typename internal::CallbackParamTraits<P6>::StorageType,
-            typename internal::CallbackParamTraits<P7>::StorageType)>
-            ::UnboundRunType>
-Bind(Functor functor, const P1& p1, const P2& p2, const P3& p3, const P4& p4,
-    const P5& p5, const P6& p6, const P7& p7) {
-  // Typedefs for how to store and run the functor.
-  typedef typename internal::FunctorTraits<Functor>::RunnableType RunnableType;
-  typedef typename internal::FunctorTraits<Functor>::RunType RunType;
-
-  // Use RunnableType::RunType instead of RunType above because our
-  // checks should below for bound references need to know what the actual
-  // functor is going to interpret the argument as.
-  typedef internal::FunctionTraits<typename RunnableType::RunType>
-      BoundFunctorTraits;
-
-  // Do not allow binding a non-const reference parameter. Non-const reference
-  // parameters are disallowed by the Google style guide.  Also, binding a
-  // non-const reference parameter can make for subtle bugs because the
-  // invoked function will receive a reference to the stored copy of the
-  // argument and not the original.
-  COMPILE_ASSERT(
-      !(is_non_const_reference<typename BoundFunctorTraits::A1Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A2Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A3Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A4Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A5Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A6Type>::value ||
-          is_non_const_reference<typename BoundFunctorTraits::A7Type>::value ),
-      do_not_bind_functions_with_nonconst_ref);
-
-  // For methods, we need to be careful for parameter 1.  We do not require
-  // a scoped_refptr because BindState<> itself takes care of AddRef() for
-  // methods. We also disallow binding of an array as the method's target
-  // object.
-  COMPILE_ASSERT(
-      internal::HasIsMethodTag<RunnableType>::value ||
-          !internal::NeedsScopedRefptrButGetsRawPtr<P1>::value,
-      p1_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::HasIsMethodTag<RunnableType>::value ||
-                     !is_array<P1>::value,
-                 first_bound_argument_to_method_cannot_be_array);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P2>::value,
-                 p2_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P3>::value,
-                 p3_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P4>::value,
-                 p4_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P5>::value,
-                 p5_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P6>::value,
-                 p6_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P7>::value,
-                 p7_is_refcounted_type_and_needs_scoped_refptr);
-  typedef internal::BindState<RunnableType, RunType,
-      void(typename internal::CallbackParamTraits<P1>::StorageType,
-      typename internal::CallbackParamTraits<P2>::StorageType,
-      typename internal::CallbackParamTraits<P3>::StorageType,
-      typename internal::CallbackParamTraits<P4>::StorageType,
-      typename internal::CallbackParamTraits<P5>::StorageType,
-      typename internal::CallbackParamTraits<P6>::StorageType,
-      typename internal::CallbackParamTraits<P7>::StorageType)> BindState;
-
-
-  return Callback<typename BindState::UnboundRunType>(
-      new BindState(internal::MakeRunnable(functor), p1, p2, p3, p4, p5, p6,
-          p7));
+      new BindState(internal::MakeRunnable(functor), args...));
 }
 
 }  // namespace base
diff --git a/base/bind.h.pump b/base/bind.h.pump
deleted file mode 100644
index 2cdd7d5..0000000
--- a/base/bind.h.pump
+++ /dev/null
@@ -1,153 +0,0 @@
-$$ This is a pump file for generating file templates.  Pump is a python
-$$ script that is part of the Google Test suite of utilities.  Description
-$$ can be found here:
-$$
-$$ http://code.google.com/p/googletest/wiki/PumpManual
-$$
-
-$$
-$$ MAX_ARITY controls the number of arguments that Bind() supports.
-$$ The amount of code, and more importantly, the number of template types
-$$ generated by pump grows at O(MAX_ARITY^2).
-$$
-$$ We tried going to 11 and found it imposed an extra 10 penalty on windows
-$$ cycle times compared to our original baseline of 6.
-$$
-$$ Currently 7 is chosen as a compromise between supporting a convenient
-$$ number of arguments and keeping compile times low.  At 7, we have 115
-$$ templates being generated by pump.
-$$
-$$ Be careful when adjusting this number.  If people find a need to bind
-$$ a larger number of arguments, consider refactoring the function to use
-$$ a param struct instead of raising the MAX_ARITY.
-$$
-$$ See http://crbug.com/98542 for more context.
-$$
-$var MAX_ARITY = 7
-
-// Copyright (c) 2011 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.
-
-#ifndef BASE_BIND_H_
-#define BASE_BIND_H_
-
-#include "base/bind_internal.h"
-#include "base/callback_internal.h"
-
-// -----------------------------------------------------------------------------
-// Usage documentation
-// -----------------------------------------------------------------------------
-//
-// See base/callback.h for documentation.
-//
-//
-// -----------------------------------------------------------------------------
-// Implementation notes
-// -----------------------------------------------------------------------------
-//
-// If you're reading the implementation, before proceeding further, you should
-// read the top comment of base/bind_internal.h for a definition of common
-// terms and concepts.
-//
-// RETURN TYPES
-//
-// Though Bind()'s result is meant to be stored in a Callback<> type, it
-// cannot actually return the exact type without requiring a large amount
-// of extra template specializations. The problem is that in order to
-// discern the correct specialization of Callback<>, Bind would need to
-// unwrap the function signature to determine the signature's arity, and
-// whether or not it is a method.
-//
-// Each unique combination of (arity, function_type, num_prebound) where
-// function_type is one of {function, method, const_method} would require
-// one specialization.  We eventually have to do a similar number of
-// specializations anyways in the implementation (see the Invoker<>,
-// classes).  However, it is avoidable in Bind if we return the result
-// via an indirection like we do below.
-//
-// TODO(ajwong): We might be able to avoid this now, but need to test.
-//
-// It is possible to move most of the COMPILE_ASSERT asserts into BindState<>,
-// but it feels a little nicer to have the asserts here so people do not
-// need to crack open bind_internal.h.  On the other hand, it makes Bind()
-// harder to read.
-
-namespace base {
-
-$range ARITY 0..MAX_ARITY
-$for ARITY [[
-$range ARG 1..ARITY
-
-template <typename Functor[[]]
-$if ARITY > 0 [[, ]] $for ARG , [[typename P$(ARG)]]>
-base::Callback<
-    typename internal::BindState<
-        typename internal::FunctorTraits<Functor>::RunnableType,
-        typename internal::FunctorTraits<Functor>::RunType,
-        void($for ARG , [[typename internal::CallbackParamTraits<P$(ARG)>::StorageType]])>
-            ::UnboundRunType>
-Bind(Functor functor
-$if ARITY > 0 [[, ]] $for ARG , [[const P$(ARG)& p$(ARG)]]) {
-  // Typedefs for how to store and run the functor.
-  typedef typename internal::FunctorTraits<Functor>::RunnableType RunnableType;
-  typedef typename internal::FunctorTraits<Functor>::RunType RunType;
-
-$if ARITY > 0 [[
-
-  // Use RunnableType::RunType instead of RunType above because our
-  // checks should below for bound references need to know what the actual
-  // functor is going to interpret the argument as.
-  typedef internal::FunctionTraits<typename RunnableType::RunType>
-      BoundFunctorTraits;
-
-  // Do not allow binding a non-const reference parameter. Non-const reference
-  // parameters are disallowed by the Google style guide.  Also, binding a
-  // non-const reference parameter can make for subtle bugs because the
-  // invoked function will receive a reference to the stored copy of the
-  // argument and not the original.
-  COMPILE_ASSERT(
-      !($for ARG || [[
-is_non_const_reference<typename BoundFunctorTraits::A$(ARG)Type>::value ]]),
-      do_not_bind_functions_with_nonconst_ref);
-
-]]
-
-
-$for ARG [[
-
-
-$if ARG == 1 [[
-  // For methods, we need to be careful for parameter 1.  We do not require
-  // a scoped_refptr because BindState<> itself takes care of AddRef() for
-  // methods. We also disallow binding of an array as the method's target
-  // object.
-  COMPILE_ASSERT(
-      internal::HasIsMethodTag<RunnableType>::value ||
-          !internal::NeedsScopedRefptrButGetsRawPtr<P$(ARG)>::value,
-      p$(ARG)_is_refcounted_type_and_needs_scoped_refptr);
-  COMPILE_ASSERT(!internal::HasIsMethodTag<RunnableType>::value ||
-                     !is_array<P$(ARG)>::value,
-                 first_bound_argument_to_method_cannot_be_array);
-]] $else [[
-  COMPILE_ASSERT(!internal::NeedsScopedRefptrButGetsRawPtr<P$(ARG)>::value,
-                 p$(ARG)_is_refcounted_type_and_needs_scoped_refptr);
-]]  $$ $if ARG
-
-]]  $$ $for ARG
-
-  typedef internal::BindState<RunnableType, RunType, [[]]
-void($for ARG , [[typename internal::CallbackParamTraits<P$(ARG)>::StorageType]])> [[]]
-BindState;
-
-
-  return Callback<typename BindState::UnboundRunType>(
-      new BindState(internal::MakeRunnable(functor)[[]]
-$if ARITY > 0 [[, ]] $for ARG , [[p$(ARG)]]));
-}
-
-]]  $$ for ARITY
-
-}  // namespace base
-
-#endif  // BASE_BIND_H_
diff --git a/base/bind_internal.h b/base/bind_internal.h
index 2142797..1d8efec 100644
--- a/base/bind_internal.h
+++ b/base/bind_internal.h
@@ -74,6 +74,61 @@
 //                 into the Bind() system, doing most of the type resolution.
 //                 There are ARITY BindState types.
 
+// HasNonConstReferenceParam selects true_type when any of the parameters in
+// |Sig| is a non-const reference.
+// Implementation note: This non-specialized case handles zero-arity case only.
+// Non-zero-arity cases should be handled by the specialization below.
+template <typename Sig>
+struct HasNonConstReferenceParam : false_type {};
+
+// Implementation note: Select true_type if the first parameter is a non-const
+// reference.  Otherwise, skip the first parameter and check rest of parameters
+// recursively.
+template <typename R, typename T, typename... Args>
+struct HasNonConstReferenceParam<R(T, Args...)>
+    : SelectType<is_non_const_reference<T>::value,
+                 true_type,
+                 HasNonConstReferenceParam<R(Args...)>>::Type {};
+
+// HasRefCountedTypeAsRawPtr selects true_type when any of the |Args| is a raw
+// pointer to a RefCounted type.
+// Implementation note: This non-specialized case handles zero-arity case only.
+// Non-zero-arity cases should be handled by the specialization below.
+template <typename... Args>
+struct HasRefCountedTypeAsRawPtr : false_type {};
+
+// Implementation note: Select true_type if the first parameter is a raw pointer
+// to a RefCounted type. Otherwise, skip the first parameter and check rest of
+// parameters recursively.
+template <typename T, typename... Args>
+struct HasRefCountedTypeAsRawPtr<T, Args...>
+    : SelectType<NeedsScopedRefptrButGetsRawPtr<T>::value,
+                 true_type,
+                 HasRefCountedTypeAsRawPtr<Args...>>::Type {};
+
+// BindsArrayToFirstArg selects true_type when |is_method| is true and the first
+// item of |Args| is an array type.
+// Implementation note: This non-specialized case handles !is_method case and
+// zero-arity case only.  Other cases should be handled by the specialization
+// below.
+template <bool is_method, typename... Args>
+struct BindsArrayToFirstArg : false_type {};
+
+template <typename T, typename... Args>
+struct BindsArrayToFirstArg<true, T, Args...> : is_array<T> {};
+
+// HasRefCountedParamAsRawPtr is the same to HasRefCountedTypeAsRawPtr except
+// when |is_method| is true HasRefCountedParamAsRawPtr skips the first argument.
+// Implementation note: This non-specialized case handles !is_method case and
+// zero-arity case only.  Other cases should be handled by the specialization
+// below.
+template <bool is_method, typename... Args>
+struct HasRefCountedParamAsRawPtr : HasRefCountedTypeAsRawPtr<Args...> {};
+
+template <typename T, typename... Args>
+struct HasRefCountedParamAsRawPtr<true, T, Args...>
+    : HasRefCountedTypeAsRawPtr<Args...> {};
+
 // RunnableAdapter<>
 //
 // The RunnableAdapter<> templates provide a uniform interface for invoking
diff --git a/base/bind_internal.h.pump b/base/bind_internal.h.pump
index 9ddca47..559c184 100644
--- a/base/bind_internal.h.pump
+++ b/base/bind_internal.h.pump
@@ -80,6 +80,61 @@
 //                 into the Bind() system, doing most of the type resolution.
 //                 There are ARITY BindState types.
 
+// HasNonConstReferenceParam selects true_type when any of the parameters in
+// |Sig| is a non-const reference.
+// Implementation note: This non-specialized case handles zero-arity case only.
+// Non-zero-arity cases should be handled by the specialization below.
+template <typename Sig>
+struct HasNonConstReferenceParam : false_type {};
+
+// Implementation note: Select true_type if the first parameter is a non-const
+// reference.  Otherwise, skip the first parameter and check rest of parameters
+// recursively.
+template <typename R, typename T, typename... Args>
+struct HasNonConstReferenceParam<R(T, Args...)>
+    : SelectType<is_non_const_reference<T>::value,
+                 true_type,
+                 HasNonConstReferenceParam<R(Args...)>>::Type {};
+
+// HasRefCountedTypeAsRawPtr selects true_type when any of the |Args| is a raw
+// pointer to a RefCounted type.
+// Implementation note: This non-specialized case handles zero-arity case only.
+// Non-zero-arity cases should be handled by the specialization below.
+template <typename... Args>
+struct HasRefCountedTypeAsRawPtr : false_type {};
+
+// Implementation note: Select true_type if the first parameter is a raw pointer
+// to a RefCounted type. Otherwise, skip the first parameter and check rest of
+// parameters recursively.
+template <typename T, typename... Args>
+struct HasRefCountedTypeAsRawPtr<T, Args...>
+    : SelectType<NeedsScopedRefptrButGetsRawPtr<T>::value,
+                 true_type,
+                 HasRefCountedTypeAsRawPtr<Args...>>::Type {};
+
+// BindsArrayToFirstArg selects true_type when |is_method| is true and the first
+// item of |Args| is an array type.
+// Implementation note: This non-specialized case handles !is_method case and
+// zero-arity case only.  Other cases should be handled by the specialization
+// below.
+template <bool is_method, typename... Args>
+struct BindsArrayToFirstArg : false_type {};
+
+template <typename T, typename... Args>
+struct BindsArrayToFirstArg<true, T, Args...> : is_array<T> {};
+
+// HasRefCountedParamAsRawPtr is the same to HasRefCountedTypeAsRawPtr except
+// when |is_method| is true HasRefCountedParamAsRawPtr skips the first argument.
+// Implementation note: This non-specialized case handles !is_method case and
+// zero-arity case only.  Other cases should be handled by the specialization
+// below.
+template <bool is_method, typename... Args>
+struct HasRefCountedParamAsRawPtr : HasRefCountedTypeAsRawPtr<Args...> {};
+
+template <typename T, typename... Args>
+struct HasRefCountedParamAsRawPtr<true, T, Args...>
+    : HasRefCountedTypeAsRawPtr<Args...> {};
+
 // RunnableAdapter<>
 //
 // The RunnableAdapter<> templates provide a uniform interface for invoking
diff --git a/base/bind_unittest.nc b/base/bind_unittest.nc
index 4732097..33b5f5c 100644
--- a/base/bind_unittest.nc
+++ b/base/bind_unittest.nc
@@ -167,7 +167,7 @@
   method_bound_to_array_cb.Run();
 }
 
-#elif defined(NCTEST_NO_RAW_PTR_FOR_REFCOUNTED_TYPES)  // [r"fatal error: static_assert failed \"p1_is_refcounted_type_and_needs_scoped_refptr\""]
+#elif defined(NCTEST_NO_RAW_PTR_FOR_REFCOUNTED_TYPES)  // [r"fatal error: static_assert failed \"a_parameter_is_refcounted_type_and_needs_scoped_refptr\""]
 
 // Refcounted types should not be bound as a raw pointer.
 void WontCompile() {
diff --git a/base/callback_internal.cc b/base/callback_internal.cc
index ed0fb0d..f360388 100644
--- a/base/callback_internal.cc
+++ b/base/callback_internal.cc
@@ -9,6 +9,9 @@
 namespace base {
 namespace internal {
 
+CallbackBase::CallbackBase(const CallbackBase& c) = default;
+CallbackBase& CallbackBase::operator=(const CallbackBase& c) = default;
+
 void CallbackBase::Reset() {
   polymorphic_invoke_ = NULL;
   // NULL the bind_state_ last, since it may be holding the last ref to whatever
diff --git a/base/callback_internal.h b/base/callback_internal.h
index 9dca023..8a5c437 100644
--- a/base/callback_internal.h
+++ b/base/callback_internal.h
@@ -36,6 +36,9 @@
 // template bloat.
 class BASE_EXPORT CallbackBase {
  public:
+  CallbackBase(const CallbackBase& c);
+  CallbackBase& operator=(const CallbackBase& c);
+
   // Returns true if Callback is null (doesn't refer to anything).
   bool is_null() const { return bind_state_.get() == NULL; }
 
diff --git a/base/command_line_unittest.cc b/base/command_line_unittest.cc
index 8fdd605..e395c85 100644
--- a/base/command_line_unittest.cc
+++ b/base/command_line_unittest.cc
@@ -11,7 +11,7 @@
 #include "base/strings/utf_string_conversions.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
-using base::FilePath;
+namespace base {
 
 // To test Windows quoting behavior, we use a string that has some backslashes
 // and quotes.
@@ -200,15 +200,11 @@
   cl.AppendArg(kFifthArgName);
 
 #if defined(OS_WIN)
-  CommandLine::StringType expected_first_arg(
-      base::UTF8ToUTF16(kFirstArgName));
-  CommandLine::StringType expected_second_arg(
-      base::UTF8ToUTF16(kSecondArgName));
-  CommandLine::StringType expected_third_arg(
-      base::UTF8ToUTF16(kThirdArgName));
-  CommandLine::StringType expected_fourth_arg(
-      base::UTF8ToUTF16(kFourthArgName));
-  CommandLine::StringType expected_fifth_arg(base::UTF8ToUTF16(kFifthArgName));
+  CommandLine::StringType expected_first_arg(UTF8ToUTF16(kFirstArgName));
+  CommandLine::StringType expected_second_arg(UTF8ToUTF16(kSecondArgName));
+  CommandLine::StringType expected_third_arg(UTF8ToUTF16(kThirdArgName));
+  CommandLine::StringType expected_fourth_arg(UTF8ToUTF16(kFourthArgName));
+  CommandLine::StringType expected_fifth_arg(UTF8ToUTF16(kFifthArgName));
 #elif defined(OS_POSIX)
   CommandLine::StringType expected_first_arg(kFirstArgName);
   CommandLine::StringType expected_second_arg(kSecondArgName);
@@ -368,7 +364,7 @@
   EXPECT_EQ(L"\"Program Path\"", cmd_string);
 
   // Check the optional quoting of placeholders in programs.
-  CommandLine cl_quote_placeholder(base::FilePath(L"%1"));
+  CommandLine cl_quote_placeholder(FilePath(L"%1"));
   EXPECT_EQ(L"%1", cl_quote_placeholder.GetCommandLineString());
   EXPECT_EQ(L"\"%1\"",
             cl_quote_placeholder.GetCommandLineStringWithPlaceholders());
@@ -382,3 +378,5 @@
   CommandLine* current = CommandLine::ForCurrentProcess();
   EXPECT_EQ(initial, current);
 }
+
+} // namespace base
diff --git a/base/debug/proc_maps_linux_unittest.cc b/base/debug/proc_maps_linux_unittest.cc
index 142f891..c9f2267 100644
--- a/base/debug/proc_maps_linux_unittest.cc
+++ b/base/debug/proc_maps_linux_unittest.cc
@@ -199,13 +199,6 @@
   bool found_stack = false;
   bool found_address = false;
 
-  // Valgrind uses its own allocated stacks instead of the kernel-provided stack
-  // without letting the kernel know via prctl(PR_SET_MM_START_STACK). This
-  // causes the kernel to use [stack:TID] format. See http://crbug.com/431702
-  // for details.
-  std::string stack_with_tid =
-      StringPrintf("[stack:%d]", PlatformThread::CurrentId());
-
   for (size_t i = 0; i < regions.size(); ++i) {
     if (regions[i].path == exe_path.value()) {
       // It's OK to find the executable mapped multiple times as there'll be
@@ -213,23 +206,28 @@
       found_exe = true;
     }
 
-    bool is_correct_stack = false;
-    if (regions[i].path == "[stack]") {
-      is_correct_stack = true;
-      EXPECT_FALSE(RunningOnValgrind());
+    // Valgrind uses its own allocated stacks instead of the kernel-provided
+    // stack without letting the kernel know via prctl(PR_SET_MM_START_STACK).
+    // Depending on which kernel you're running it'll impact the output of
+    // /proc/self/maps.
+    //
+    // Prior to version 3.4, the kernel completely ignores other stacks and
+    // always prints out the vma lying within mm->start_stack as [stack] even
+    // if the program was currently executing on a different stack.
+    //
+    // Starting in 3.4, the kernel will print out the vma containing the current
+    // stack pointer as [stack:TID] as long as that vma does not lie within
+    // mm->start_stack.
+    //
+    // Because this has gotten too complicated and brittle of a test, completely
+    // ignore checking for the stack and address when running under Valgrind.
+    // See http://crbug.com/431702 for more details.
+    if (!RunningOnValgrind() && regions[i].path == "[stack]") {
       EXPECT_GE(address, regions[i].start);
       EXPECT_LT(address, regions[i].end);
-    } else if (regions[i].path == stack_with_tid) {
-      is_correct_stack = true;
-      EXPECT_TRUE(RunningOnValgrind());
-    }
-
-    if (is_correct_stack) {
-      // Note that the stack is executable when it is created by Valgrind.
       EXPECT_TRUE(regions[i].permissions & MappedMemoryRegion::READ);
       EXPECT_TRUE(regions[i].permissions & MappedMemoryRegion::WRITE);
-      EXPECT_EQ(RunningOnValgrind(),
-                (regions[i].permissions & MappedMemoryRegion::EXECUTE) != 0);
+      EXPECT_FALSE(regions[i].permissions & MappedMemoryRegion::EXECUTE);
       EXPECT_TRUE(regions[i].permissions & MappedMemoryRegion::PRIVATE);
       EXPECT_FALSE(found_stack) << "Found duplicate stacks";
       found_stack = true;
@@ -242,8 +240,10 @@
   }
 
   EXPECT_TRUE(found_exe);
-  EXPECT_TRUE(found_stack);
-  EXPECT_TRUE(found_address);
+  if (!RunningOnValgrind()) {
+    EXPECT_TRUE(found_stack);
+    EXPECT_TRUE(found_address);
+  }
 }
 
 TEST(ProcMapsTest, ReadProcMapsNonEmptyString) {
diff --git a/base/i18n/build_utf8_validator_tables.cc b/base/i18n/build_utf8_validator_tables.cc
index 45fc6cb..647c8d6 100644
--- a/base/i18n/build_utf8_validator_tables.cc
+++ b/base/i18n/build_utf8_validator_tables.cc
@@ -425,16 +425,16 @@
 }  // namespace
 
 int main(int argc, char* argv[]) {
-  CommandLine::Init(argc, argv);
+  base::CommandLine::Init(argc, argv);
   logging::LoggingSettings settings;
   settings.logging_dest = logging::LOG_TO_SYSTEM_DEBUG_LOG;
   logging::InitLogging(settings);
-  if (CommandLine::ForCurrentProcess()->HasSwitch("help")) {
+  if (base::CommandLine::ForCurrentProcess()->HasSwitch("help")) {
     fwrite(kHelpText, 1, arraysize(kHelpText), stdout);
     exit(EXIT_SUCCESS);
   }
   base::FilePath filename =
-      CommandLine::ForCurrentProcess()->GetSwitchValuePath("output");
+      base::CommandLine::ForCurrentProcess()->GetSwitchValuePath("output");
 
   FILE* output = stdout;
   if (!filename.empty()) {
diff --git a/base/ios/block_types.h b/base/ios/block_types.h
new file mode 100644
index 0000000..e4dde79
--- /dev/null
+++ b/base/ios/block_types.h
@@ -0,0 +1,14 @@
+// Copyright 2013 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.
+
+#ifndef BASE_IOS_BLOCK_TYPES_H_
+#define BASE_IOS_BLOCK_TYPES_H_
+
+// A generic procedural block type that takes no arguments and returns nothing.
+typedef void (^ProceduralBlock)(void);
+
+// A block that takes no arguments and returns a bool.
+typedef bool (^ConditionBlock)(void);
+
+#endif  // BASE_IOS_BLOCK_TYPES_H_
diff --git a/base/logging.cc b/base/logging.cc
index 150a408..f3601ee 100644
--- a/base/logging.cc
+++ b/base/logging.cc
@@ -359,7 +359,7 @@
   // Can log only to the system debug log.
   CHECK_EQ(settings.logging_dest & ~LOG_TO_SYSTEM_DEBUG_LOG, 0);
 #endif
-  CommandLine* command_line = CommandLine::ForCurrentProcess();
+  base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
   // Don't bother initializing g_vlog_info unless we use one of the
   // vlog switches.
   if (command_line->HasSwitch(switches::kV) ||
diff --git a/base/memory/ref_counted.h b/base/memory/ref_counted.h
index 7869e72..219437e 100644
--- a/base/memory/ref_counted.h
+++ b/base/memory/ref_counted.h
@@ -17,10 +17,6 @@
 #include "base/threading/thread_collision_warner.h"
 #include "build/build_config.h"
 
-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_IOS) || defined(OS_ANDROID)
-#define DISABLE_SCOPED_REFPTR_CONVERSION_OPERATOR
-#endif
-
 namespace base {
 
 namespace subtle {
@@ -297,12 +293,6 @@
 
   T* get() const { return ptr_; }
 
-#if !defined(DISABLE_SCOPED_REFPTR_CONVERSION_OPERATOR)
-  // Allow scoped_refptr<C> to be used in boolean expression
-  // and comparison operations.
-  operator T*() const { return ptr_; }
-#endif
-
   T& operator*() const {
     assert(ptr_ != NULL);
     return *ptr_;
@@ -343,7 +333,19 @@
     swap(&r.ptr_);
   }
 
-#if defined(DISABLE_SCOPED_REFPTR_CONVERSION_OPERATOR)
+ private:
+  // Allow scoped_refptr<T> to be used in boolean expressions, but not
+  // implicitly convertible to a real bool (which is dangerous).
+  //
+  // Note that this trick is only safe when the == and != operators
+  // are declared explicitly, as otherwise "refptr1 == refptr2"
+  // will compile but do the wrong thing (i.e., convert to Testable
+  // and then do the comparison).
+  typedef T* scoped_refptr::*Testable;
+
+ public:
+  operator Testable() const { return ptr_ ? &scoped_refptr::ptr_ : nullptr; }
+
   template <typename U>
   bool operator==(const scoped_refptr<U>& rhs) const {
     return ptr_ == rhs.get();
@@ -358,7 +360,6 @@
   bool operator<(const scoped_refptr<U>& rhs) const {
     return ptr_ < rhs.get();
   }
-#endif
 
  protected:
   T* ptr_;
@@ -389,8 +390,8 @@
   return scoped_refptr<T>(t);
 }
 
-#if defined(DISABLE_SCOPED_REFPTR_CONVERSION_OPERATOR)
-// Temporary operator overloads to facilitate the transition...
+// Temporary operator overloads to facilitate the transition. See
+// https://crbug.com/110610.
 template <typename T, typename U>
 bool operator==(const scoped_refptr<T>& lhs, const U* rhs) {
   return lhs.get() == rhs;
@@ -415,6 +416,5 @@
 std::ostream& operator<<(std::ostream& out, const scoped_refptr<T>& p) {
   return out << p.get();
 }
-#endif  // defined(DISABLE_SCOPED_REFPTR_CONVERSION_OPERATOR)
 
 #endif  // BASE_MEMORY_REF_COUNTED_H_
diff --git a/base/memory/ref_counted_unittest.cc b/base/memory/ref_counted_unittest.cc
index 7e73bde..f75cd38 100644
--- a/base/memory/ref_counted_unittest.cc
+++ b/base/memory/ref_counted_unittest.cc
@@ -10,9 +10,19 @@
 namespace {
 
 class SelfAssign : public base::RefCounted<SelfAssign> {
-  friend class base::RefCounted<SelfAssign>;
+ protected:
+  virtual ~SelfAssign() {}
 
-  ~SelfAssign() {}
+ private:
+  friend class base::RefCounted<SelfAssign>;
+};
+
+class Derived : public SelfAssign {
+ protected:
+  ~Derived() override {}
+
+ private:
+  friend class base::RefCounted<Derived>;
 };
 
 class CheckDerivedMemberAccess : public scoped_refptr<SelfAssign> {
@@ -72,3 +82,34 @@
   base::TestOpaqueRefCounted(p);
   base::TestOpaqueRefCounted(q);
 }
+
+TEST(RefCountedUnitTest, BooleanTesting) {
+  scoped_refptr<SelfAssign> p;
+  EXPECT_FALSE(p);
+  p = new SelfAssign;
+  EXPECT_TRUE(p);
+}
+
+TEST(RefCountedUnitTest, Equality) {
+  scoped_refptr<SelfAssign> p1(new SelfAssign);
+  scoped_refptr<SelfAssign> p2(new SelfAssign);
+
+  EXPECT_EQ(p1, p1);
+  EXPECT_EQ(p2, p2);
+
+  EXPECT_NE(p1, p2);
+  EXPECT_NE(p2, p1);
+}
+
+TEST(RefCountedUnitTest, ConvertibleEquality) {
+  scoped_refptr<Derived> p1(new Derived);
+  scoped_refptr<SelfAssign> p2;
+
+  EXPECT_NE(p1, p2);
+  EXPECT_NE(p2, p1);
+
+  p2 = p1;
+
+  EXPECT_EQ(p1, p2);
+  EXPECT_EQ(p2, p1);
+}
diff --git a/base/prefs/mock_pref_change_callback.h b/base/prefs/mock_pref_change_callback.h
index 422754a..3030fab 100644
--- a/base/prefs/mock_pref_change_callback.h
+++ b/base/prefs/mock_pref_change_callback.h
@@ -19,8 +19,7 @@
 // |pref_name| in |prefs| matches |value|. If |value| is NULL, the matcher
 // checks that the value is not set.
 MATCHER_P3(PrefValueMatches, prefs, pref_name, value, "") {
-  const PrefService::Preference* pref =
-      prefs->FindPreference(pref_name.c_str());
+  const PrefService::Preference* pref = prefs->FindPreference(pref_name);
   if (!pref)
     return false;
 
diff --git a/base/prefs/pref_change_registrar.cc b/base/prefs/pref_change_registrar.cc
index 28ac374..1319348 100644
--- a/base/prefs/pref_change_registrar.cc
+++ b/base/prefs/pref_change_registrar.cc
@@ -23,12 +23,12 @@
   service_ = service;
 }
 
-void PrefChangeRegistrar::Add(const char* path,
+void PrefChangeRegistrar::Add(const std::string& path,
                               const base::Closure& obs) {
   Add(path, base::Bind(&PrefChangeRegistrar::InvokeUnnamedCallback, obs));
 }
 
-void PrefChangeRegistrar::Add(const char* path,
+void PrefChangeRegistrar::Add(const std::string& path,
                               const NamedChangeCallback& obs) {
   if (!service_) {
     NOTREACHED();
@@ -40,7 +40,7 @@
   observers_[path] = obs;
 }
 
-void PrefChangeRegistrar::Remove(const char* path) {
+void PrefChangeRegistrar::Remove(const std::string& path) {
   DCHECK(IsObserved(path));
 
   observers_.erase(path);
@@ -50,7 +50,7 @@
 void PrefChangeRegistrar::RemoveAll() {
   for (ObserverMap::const_iterator it = observers_.begin();
        it != observers_.end(); ++it) {
-    service_->RemovePrefObserver(it->first.c_str(), this);
+    service_->RemovePrefObserver(it->first, this);
   }
 
   observers_.clear();
@@ -67,8 +67,7 @@
 bool PrefChangeRegistrar::IsManaged() {
   for (ObserverMap::const_iterator it = observers_.begin();
        it != observers_.end(); ++it) {
-    const PrefService::Preference* pref =
-        service_->FindPreference(it->first.c_str());
+    const PrefService::Preference* pref = service_->FindPreference(it->first);
     if (pref && pref->IsManaged())
       return true;
   }
diff --git a/base/prefs/pref_change_registrar.h b/base/prefs/pref_change_registrar.h
index 70c22fe..acf0a68 100644
--- a/base/prefs/pref_change_registrar.h
+++ b/base/prefs/pref_change_registrar.h
@@ -40,11 +40,11 @@
   // the preference that is changing as its parameter.
   //
   // Only one observer may be registered per path.
-  void Add(const char* path, const base::Closure& obs);
-  void Add(const char* path, const NamedChangeCallback& obs);
+  void Add(const std::string& path, const base::Closure& obs);
+  void Add(const std::string& path, const NamedChangeCallback& obs);
 
   // Removes the pref observer registered for |path|.
-  void Remove(const char* path);
+  void Remove(const std::string& path);
 
   // Removes all observers that have been previously added with a call to Add.
   void RemoveAll();
diff --git a/base/prefs/pref_change_registrar_unittest.cc b/base/prefs/pref_change_registrar_unittest.cc
index e9255a0..e449084 100644
--- a/base/prefs/pref_change_registrar_unittest.cc
+++ b/base/prefs/pref_change_registrar_unittest.cc
@@ -27,10 +27,8 @@
   MockPrefService() {}
   virtual ~MockPrefService() {}
 
-  MOCK_METHOD2(AddPrefObserver,
-               void(const char*, PrefObserver*));
-  MOCK_METHOD2(RemovePrefObserver,
-               void(const char*, PrefObserver*));
+  MOCK_METHOD2(AddPrefObserver, void(const std::string&, PrefObserver*));
+  MOCK_METHOD2(RemovePrefObserver, void(const std::string&, PrefObserver*));
 };
 
 }  // namespace
diff --git a/base/prefs/pref_member.cc b/base/prefs/pref_member.cc
index 4fa616f..8d80dd0 100644
--- a/base/prefs/pref_member.cc
+++ b/base/prefs/pref_member.cc
@@ -25,23 +25,20 @@
   Destroy();
 }
 
-void PrefMemberBase::Init(const char* pref_name,
+void PrefMemberBase::Init(const std::string& pref_name,
                           PrefService* prefs,
                           const NamedChangeCallback& observer) {
   observer_ = observer;
   Init(pref_name, prefs);
 }
 
-void PrefMemberBase::Init(const char* pref_name,
-                          PrefService* prefs) {
-  DCHECK(pref_name);
+void PrefMemberBase::Init(const std::string& pref_name, PrefService* prefs) {
   DCHECK(prefs);
   DCHECK(pref_name_.empty());  // Check that Init is only called once.
   prefs_ = prefs;
   pref_name_ = pref_name;
   // Check that the preference is registered.
-  DCHECK(prefs_->FindPreference(pref_name_.c_str()))
-      << pref_name << " not registered.";
+  DCHECK(prefs_->FindPreference(pref_name_)) << pref_name << " not registered.";
 
   // Add ourselves as a pref observer so we can keep our local value in sync.
   prefs_->AddPrefObserver(pref_name, this);
@@ -49,7 +46,7 @@
 
 void PrefMemberBase::Destroy() {
   if (prefs_ && !pref_name_.empty()) {
-    prefs_->RemovePrefObserver(pref_name_.c_str(), this);
+    prefs_->RemovePrefObserver(pref_name_, this);
     prefs_ = NULL;
   }
 }
@@ -72,8 +69,7 @@
 
 void PrefMemberBase::UpdateValueFromPref(const base::Closure& callback) const {
   VerifyValuePrefName();
-  const PrefService::Preference* pref =
-      prefs_->FindPreference(pref_name_.c_str());
+  const PrefService::Preference* pref = prefs_->FindPreference(pref_name_);
   DCHECK(pref);
   if (!internal())
     CreateInternal();
@@ -158,7 +154,7 @@
 
 template <>
 void PrefMember<bool>::UpdatePref(const bool& value) {
-  prefs()->SetBoolean(pref_name().c_str(), value);
+  prefs()->SetBoolean(pref_name(), value);
 }
 
 template <>
@@ -169,7 +165,7 @@
 
 template <>
 void PrefMember<int>::UpdatePref(const int& value) {
-  prefs()->SetInteger(pref_name().c_str(), value);
+  prefs()->SetInteger(pref_name(), value);
 }
 
 template <>
@@ -180,7 +176,7 @@
 
 template <>
 void PrefMember<double>::UpdatePref(const double& value) {
-  prefs()->SetDouble(pref_name().c_str(), value);
+  prefs()->SetDouble(pref_name(), value);
 }
 
 template <>
@@ -191,7 +187,7 @@
 
 template <>
 void PrefMember<std::string>::UpdatePref(const std::string& value) {
-  prefs()->SetString(pref_name().c_str(), value);
+  prefs()->SetString(pref_name(), value);
 }
 
 template <>
@@ -203,7 +199,7 @@
 
 template <>
 void PrefMember<base::FilePath>::UpdatePref(const base::FilePath& value) {
-  prefs()->SetFilePath(pref_name().c_str(), value);
+  prefs()->SetFilePath(pref_name(), value);
 }
 
 template <>
@@ -218,7 +214,7 @@
     const std::vector<std::string>& value) {
   base::ListValue list_value;
   list_value.AppendStrings(value);
-  prefs()->Set(pref_name().c_str(), list_value);
+  prefs()->Set(pref_name(), list_value);
 }
 
 template <>
diff --git a/base/prefs/pref_member.h b/base/prefs/pref_member.h
index a05d60e..b47cae2 100644
--- a/base/prefs/pref_member.h
+++ b/base/prefs/pref_member.h
@@ -103,9 +103,10 @@
   virtual ~PrefMemberBase();
 
   // See PrefMember<> for description.
-  void Init(const char* pref_name, PrefService* prefs,
+  void Init(const std::string& pref_name,
+            PrefService* prefs,
             const NamedChangeCallback& observer);
-  void Init(const char* pref_name, PrefService* prefs);
+  void Init(const std::string& pref_name, PrefService* prefs);
 
   virtual void CreateInternal() const = 0;
 
@@ -169,17 +170,19 @@
   // Do the actual initialization of the class.  Use the two-parameter
   // version if you don't want any notifications of changes.  This
   // method should only be called on the UI thread.
-  void Init(const char* pref_name, PrefService* prefs,
+  void Init(const std::string& pref_name,
+            PrefService* prefs,
             const NamedChangeCallback& observer) {
     subtle::PrefMemberBase::Init(pref_name, prefs, observer);
   }
-  void Init(const char* pref_name, PrefService* prefs,
+  void Init(const std::string& pref_name,
+            PrefService* prefs,
             const base::Closure& observer) {
     subtle::PrefMemberBase::Init(
         pref_name, prefs,
         base::Bind(&PrefMemberBase::InvokeUnnamedCallback, observer));
   }
-  void Init(const char* pref_name, PrefService* prefs) {
+  void Init(const std::string& pref_name, PrefService* prefs) {
     subtle::PrefMemberBase::Init(pref_name, prefs);
   }
 
diff --git a/base/prefs/pref_member_unittest.cc b/base/prefs/pref_member_unittest.cc
index d4d7e02..435122b 100644
--- a/base/prefs/pref_member_unittest.cc
+++ b/base/prefs/pref_member_unittest.cc
@@ -35,7 +35,7 @@
     pref_thread_.Start();
   }
 
-  void Init(const char* pref_name, PrefService* prefs) {
+  void Init(const std::string& pref_name, PrefService* prefs) {
     pref_.Init(pref_name, prefs);
     pref_.MoveToThread(pref_thread_.message_loop_proxy());
   }
diff --git a/base/prefs/pref_notifier_impl.cc b/base/prefs/pref_notifier_impl.cc
index c02a7b3..6bf9603 100644
--- a/base/prefs/pref_notifier_impl.cc
+++ b/base/prefs/pref_notifier_impl.cc
@@ -38,7 +38,7 @@
   init_observers_.clear();
 }
 
-void PrefNotifierImpl::AddPrefObserver(const char* path,
+void PrefNotifierImpl::AddPrefObserver(const std::string& path,
                                        PrefObserver* obs) {
   // Get the pref observer list associated with the path.
   PrefObserverList* observer_list = NULL;
@@ -56,7 +56,7 @@
   observer_list->AddObserver(obs);
 }
 
-void PrefNotifierImpl::RemovePrefObserver(const char* path,
+void PrefNotifierImpl::RemovePrefObserver(const std::string& path,
                                           PrefObserver* obs) {
   DCHECK(thread_checker_.CalledOnValidThread());
 
@@ -98,7 +98,7 @@
   DCHECK(thread_checker_.CalledOnValidThread());
 
   // Only send notifications for registered preferences.
-  if (!pref_service_->FindPreference(path.c_str()))
+  if (!pref_service_->FindPreference(path))
     return;
 
   const PrefObserverMap::iterator observer_iterator =
diff --git a/base/prefs/pref_notifier_impl.h b/base/prefs/pref_notifier_impl.h
index 3f4c254..cfd46ff 100644
--- a/base/prefs/pref_notifier_impl.h
+++ b/base/prefs/pref_notifier_impl.h
@@ -29,8 +29,8 @@
 
   // If the pref at the given path changes, we call the observer's
   // OnPreferenceChanged method.
-  void AddPrefObserver(const char* path, PrefObserver* observer);
-  void RemovePrefObserver(const char* path, PrefObserver* observer);
+  void AddPrefObserver(const std::string& path, PrefObserver* observer);
+  void RemovePrefObserver(const std::string& path, PrefObserver* observer);
 
   // We run the callback once, when initialization completes. The bool
   // parameter will be set to true for successful initialization,
diff --git a/base/prefs/pref_notifier_impl_unittest.cc b/base/prefs/pref_notifier_impl_unittest.cc
index 8482c02..04564c8 100644
--- a/base/prefs/pref_notifier_impl_unittest.cc
+++ b/base/prefs/pref_notifier_impl_unittest.cc
@@ -51,7 +51,7 @@
 
   MOCK_METHOD1(FireObservers, void(const std::string& path));
 
-  size_t CountObserver(const char* path, PrefObserver* obs) {
+  size_t CountObserver(const std::string& path, PrefObserver* obs) {
     PrefObserverMap::const_iterator observer_iterator =
         pref_observers()->find(path);
     if (observer_iterator == pref_observers()->end())
diff --git a/base/prefs/pref_registry.cc b/base/prefs/pref_registry.cc
index 1349961..69f0494 100644
--- a/base/prefs/pref_registry.cc
+++ b/base/prefs/pref_registry.cc
@@ -28,7 +28,7 @@
   return defaults_->end();
 }
 
-void PrefRegistry::SetDefaultPrefValue(const char* pref_name,
+void PrefRegistry::SetDefaultPrefValue(const std::string& pref_name,
                                        base::Value* value) {
   DCHECK(value);
   const base::Value* current_value = NULL;
@@ -40,7 +40,7 @@
   defaults_->ReplaceDefaultValue(pref_name, make_scoped_ptr(value));
 }
 
-void PrefRegistry::RegisterPreference(const char* path,
+void PrefRegistry::RegisterPreference(const std::string& path,
                                       base::Value* default_value) {
   base::Value::Type orig_type = default_value->GetType();
   DCHECK(orig_type != base::Value::TYPE_NULL &&
diff --git a/base/prefs/pref_registry.h b/base/prefs/pref_registry.h
index 896db3f..a500b6e 100644
--- a/base/prefs/pref_registry.h
+++ b/base/prefs/pref_registry.h
@@ -41,14 +41,14 @@
   // Changes the default value for a preference. Takes ownership of |value|.
   //
   // |pref_name| must be a previously registered preference.
-  void SetDefaultPrefValue(const char* pref_name, base::Value* value);
+  void SetDefaultPrefValue(const std::string& pref_name, base::Value* value);
 
  protected:
   friend class base::RefCounted<PrefRegistry>;
   virtual ~PrefRegistry();
 
   // Used by subclasses to register a default value for a preference.
-  void RegisterPreference(const char* path, base::Value* default_value);
+  void RegisterPreference(const std::string& path, base::Value* default_value);
 
   scoped_refptr<DefaultPrefStore> defaults_;
 
diff --git a/base/prefs/pref_registry_simple.cc b/base/prefs/pref_registry_simple.cc
index 7453016..fa679dc 100644
--- a/base/prefs/pref_registry_simple.cc
+++ b/base/prefs/pref_registry_simple.cc
@@ -14,52 +14,52 @@
 PrefRegistrySimple::~PrefRegistrySimple() {
 }
 
-void PrefRegistrySimple::RegisterBooleanPref(const char* path,
+void PrefRegistrySimple::RegisterBooleanPref(const std::string& path,
                                              bool default_value) {
   RegisterPreference(path, new base::FundamentalValue(default_value));
 }
 
-void PrefRegistrySimple::RegisterIntegerPref(const char* path,
+void PrefRegistrySimple::RegisterIntegerPref(const std::string& path,
                                              int default_value) {
   RegisterPreference(path, new base::FundamentalValue(default_value));
 }
 
-void PrefRegistrySimple::RegisterDoublePref(const char* path,
+void PrefRegistrySimple::RegisterDoublePref(const std::string& path,
                                             double default_value) {
   RegisterPreference(path, new base::FundamentalValue(default_value));
 }
 
-void PrefRegistrySimple::RegisterStringPref(const char* path,
+void PrefRegistrySimple::RegisterStringPref(const std::string& path,
                                             const std::string& default_value) {
   RegisterPreference(path, new base::StringValue(default_value));
 }
 
 void PrefRegistrySimple::RegisterFilePathPref(
-    const char* path,
+    const std::string& path,
     const base::FilePath& default_value) {
   RegisterPreference(path, new base::StringValue(default_value.value()));
 }
 
-void PrefRegistrySimple::RegisterListPref(const char* path) {
+void PrefRegistrySimple::RegisterListPref(const std::string& path) {
   RegisterPreference(path, new base::ListValue());
 }
 
-void PrefRegistrySimple::RegisterListPref(const char* path,
+void PrefRegistrySimple::RegisterListPref(const std::string& path,
                                           base::ListValue* default_value) {
   RegisterPreference(path, default_value);
 }
 
-void PrefRegistrySimple::RegisterDictionaryPref(const char* path) {
+void PrefRegistrySimple::RegisterDictionaryPref(const std::string& path) {
   RegisterPreference(path, new base::DictionaryValue());
 }
 
 void PrefRegistrySimple::RegisterDictionaryPref(
-    const char* path,
+    const std::string& path,
     base::DictionaryValue* default_value) {
   RegisterPreference(path, default_value);
 }
 
-void PrefRegistrySimple::RegisterInt64Pref(const char* path,
+void PrefRegistrySimple::RegisterInt64Pref(const std::string& path,
                                            int64 default_value) {
   RegisterPreference(
       path, new base::StringValue(base::Int64ToString(default_value)));
diff --git a/base/prefs/pref_registry_simple.h b/base/prefs/pref_registry_simple.h
index 41fe590..73ae216 100644
--- a/base/prefs/pref_registry_simple.h
+++ b/base/prefs/pref_registry_simple.h
@@ -21,19 +21,20 @@
  public:
   PrefRegistrySimple();
 
-  void RegisterBooleanPref(const char* path, bool default_value);
-  void RegisterIntegerPref(const char* path, int default_value);
-  void RegisterDoublePref(const char* path, double default_value);
-  void RegisterStringPref(const char* path, const std::string& default_value);
-  void RegisterFilePathPref(const char* path,
+  void RegisterBooleanPref(const std::string& path, bool default_value);
+  void RegisterIntegerPref(const std::string& path, int default_value);
+  void RegisterDoublePref(const std::string& path, double default_value);
+  void RegisterStringPref(const std::string& path,
+                          const std::string& default_value);
+  void RegisterFilePathPref(const std::string& path,
                             const base::FilePath& default_value);
-  void RegisterListPref(const char* path);
-  void RegisterDictionaryPref(const char* path);
-  void RegisterListPref(const char* path, base::ListValue* default_value);
-  void RegisterDictionaryPref(const char* path,
+  void RegisterListPref(const std::string& path);
+  void RegisterDictionaryPref(const std::string& path);
+  void RegisterListPref(const std::string& path,
+                        base::ListValue* default_value);
+  void RegisterDictionaryPref(const std::string& path,
                               base::DictionaryValue* default_value);
-  void RegisterInt64Pref(const char* path,
-                         int64 default_value);
+  void RegisterInt64Pref(const std::string& path, int64 default_value);
 
  private:
   ~PrefRegistrySimple() override;
diff --git a/base/prefs/pref_service.cc b/base/prefs/pref_service.cc
index 433f814..66323a1 100644
--- a/base/prefs/pref_service.cc
+++ b/base/prefs/pref_service.cc
@@ -86,7 +86,7 @@
   user_pref_store_->CommitPendingWrite();
 }
 
-bool PrefService::GetBoolean(const char* path) const {
+bool PrefService::GetBoolean(const std::string& path) const {
   DCHECK(CalledOnValidThread());
 
   bool result = false;
@@ -101,7 +101,7 @@
   return result;
 }
 
-int PrefService::GetInteger(const char* path) const {
+int PrefService::GetInteger(const std::string& path) const {
   DCHECK(CalledOnValidThread());
 
   int result = 0;
@@ -116,7 +116,7 @@
   return result;
 }
 
-double PrefService::GetDouble(const char* path) const {
+double PrefService::GetDouble(const std::string& path) const {
   DCHECK(CalledOnValidThread());
 
   double result = 0.0;
@@ -131,7 +131,7 @@
   return result;
 }
 
-std::string PrefService::GetString(const char* path) const {
+std::string PrefService::GetString(const std::string& path) const {
   DCHECK(CalledOnValidThread());
 
   std::string result;
@@ -146,7 +146,7 @@
   return result;
 }
 
-base::FilePath PrefService::GetFilePath(const char* path) const {
+base::FilePath PrefService::GetFilePath(const std::string& path) const {
   DCHECK(CalledOnValidThread());
 
   base::FilePath result;
@@ -161,7 +161,7 @@
   return result;
 }
 
-bool PrefService::HasPrefPath(const char* path) const {
+bool PrefService::HasPrefPath(const std::string& path) const {
   const Preference* pref = FindPreference(path);
   return pref && !pref->IsDefaultValue();
 }
@@ -169,11 +169,22 @@
 scoped_ptr<base::DictionaryValue> PrefService::GetPreferenceValues() const {
   DCHECK(CalledOnValidThread());
   scoped_ptr<base::DictionaryValue> out(new base::DictionaryValue);
-  PrefRegistry::const_iterator i = pref_registry_->begin();
-  for (; i != pref_registry_->end(); ++i) {
-    const base::Value* value = GetPreferenceValue(i->first);
-    DCHECK(value);
-    out->Set(i->first, value->DeepCopy());
+  for (const auto& it : *pref_registry_) {
+    const base::Value* value = GetPreferenceValue(it.first);
+    out->Set(it.first, value->DeepCopy());
+  }
+  return out.Pass();
+}
+
+scoped_ptr<base::DictionaryValue> PrefService::GetPreferenceValuesOmitDefaults()
+    const {
+  DCHECK(CalledOnValidThread());
+  scoped_ptr<base::DictionaryValue> out(new base::DictionaryValue);
+  for (const auto& it : *pref_registry_) {
+    const Preference* pref = FindPreference(it.first);
+    if (pref->IsDefaultValue())
+      continue;
+    out->Set(it.first, pref->GetValue()->DeepCopy());
   }
   return out.Pass();
 }
@@ -182,17 +193,16 @@
 PrefService::GetPreferenceValuesWithoutPathExpansion() const {
   DCHECK(CalledOnValidThread());
   scoped_ptr<base::DictionaryValue> out(new base::DictionaryValue);
-  PrefRegistry::const_iterator i = pref_registry_->begin();
-  for (; i != pref_registry_->end(); ++i) {
-    const base::Value* value = GetPreferenceValue(i->first);
+  for (const auto& it : *pref_registry_) {
+    const base::Value* value = GetPreferenceValue(it.first);
     DCHECK(value);
-    out->SetWithoutPathExpansion(i->first, value->DeepCopy());
+    out->SetWithoutPathExpansion(it.first, value->DeepCopy());
   }
   return out.Pass();
 }
 
 const PrefService::Preference* PrefService::FindPreference(
-    const char* pref_name) const {
+    const std::string& pref_name) const {
   DCHECK(CalledOnValidThread());
   PreferenceMap::iterator it = prefs_map_.find(pref_name);
   if (it != prefs_map_.end())
@@ -225,18 +235,19 @@
   }
 }
 
-bool PrefService::IsManagedPreference(const char* pref_name) const {
+bool PrefService::IsManagedPreference(const std::string& pref_name) const {
   const Preference* pref = FindPreference(pref_name);
   return pref && pref->IsManaged();
 }
 
-bool PrefService::IsUserModifiablePreference(const char* pref_name) const {
+bool PrefService::IsUserModifiablePreference(
+    const std::string& pref_name) const {
   const Preference* pref = FindPreference(pref_name);
   return pref && pref->IsUserModifiable();
 }
 
 const base::DictionaryValue* PrefService::GetDictionary(
-    const char* path) const {
+    const std::string& path) const {
   DCHECK(CalledOnValidThread());
 
   const base::Value* value = GetPreferenceValue(path);
@@ -251,7 +262,8 @@
   return static_cast<const base::DictionaryValue*>(value);
 }
 
-const base::Value* PrefService::GetUserPrefValue(const char* path) const {
+const base::Value* PrefService::GetUserPrefValue(
+    const std::string& path) const {
   DCHECK(CalledOnValidThread());
 
   const Preference* pref = FindPreference(path);
@@ -274,13 +286,14 @@
   return value;
 }
 
-void PrefService::SetDefaultPrefValue(const char* path,
+void PrefService::SetDefaultPrefValue(const std::string& path,
                                       base::Value* value) {
   DCHECK(CalledOnValidThread());
   pref_registry_->SetDefaultPrefValue(path, value);
 }
 
-const base::Value* PrefService::GetDefaultPrefValue(const char* path) const {
+const base::Value* PrefService::GetDefaultPrefValue(
+    const std::string& path) const {
   DCHECK(CalledOnValidThread());
   // Lookup the preference in the default store.
   const base::Value* value = NULL;
@@ -291,7 +304,7 @@
   return value;
 }
 
-const base::ListValue* PrefService::GetList(const char* path) const {
+const base::ListValue* PrefService::GetList(const std::string& path) const {
   DCHECK(CalledOnValidThread());
 
   const base::Value* value = GetPreferenceValue(path);
@@ -306,11 +319,12 @@
   return static_cast<const base::ListValue*>(value);
 }
 
-void PrefService::AddPrefObserver(const char* path, PrefObserver* obs) {
+void PrefService::AddPrefObserver(const std::string& path, PrefObserver* obs) {
   pref_notifier_->AddPrefObserver(path, obs);
 }
 
-void PrefService::RemovePrefObserver(const char* path, PrefObserver* obs) {
+void PrefService::RemovePrefObserver(const std::string& path,
+                                     PrefObserver* obs) {
   pref_notifier_->RemovePrefObserver(path, obs);
 }
 
@@ -322,7 +336,7 @@
   return pref_registry_.get();
 }
 
-void PrefService::ClearPref(const char* path) {
+void PrefService::ClearPref(const std::string& path) {
   DCHECK(CalledOnValidThread());
 
   const Preference* pref = FindPreference(path);
@@ -333,35 +347,36 @@
   user_pref_store_->RemoveValue(path);
 }
 
-void PrefService::Set(const char* path, const base::Value& value) {
+void PrefService::Set(const std::string& path, const base::Value& value) {
   SetUserPrefValue(path, value.DeepCopy());
 }
 
-void PrefService::SetBoolean(const char* path, bool value) {
+void PrefService::SetBoolean(const std::string& path, bool value) {
   SetUserPrefValue(path, new base::FundamentalValue(value));
 }
 
-void PrefService::SetInteger(const char* path, int value) {
+void PrefService::SetInteger(const std::string& path, int value) {
   SetUserPrefValue(path, new base::FundamentalValue(value));
 }
 
-void PrefService::SetDouble(const char* path, double value) {
+void PrefService::SetDouble(const std::string& path, double value) {
   SetUserPrefValue(path, new base::FundamentalValue(value));
 }
 
-void PrefService::SetString(const char* path, const std::string& value) {
+void PrefService::SetString(const std::string& path, const std::string& value) {
   SetUserPrefValue(path, new base::StringValue(value));
 }
 
-void PrefService::SetFilePath(const char* path, const base::FilePath& value) {
+void PrefService::SetFilePath(const std::string& path,
+                              const base::FilePath& value) {
   SetUserPrefValue(path, base::CreateFilePathValue(value));
 }
 
-void PrefService::SetInt64(const char* path, int64 value) {
+void PrefService::SetInt64(const std::string& path, int64 value) {
   SetUserPrefValue(path, new base::StringValue(base::Int64ToString(value)));
 }
 
-int64 PrefService::GetInt64(const char* path) const {
+int64 PrefService::GetInt64(const std::string& path) const {
   DCHECK(CalledOnValidThread());
 
   const base::Value* value = GetPreferenceValue(path);
@@ -378,11 +393,11 @@
   return val;
 }
 
-void PrefService::SetUint64(const char* path, uint64 value) {
+void PrefService::SetUint64(const std::string& path, uint64 value) {
   SetUserPrefValue(path, new base::StringValue(base::Uint64ToString(value)));
 }
 
-uint64 PrefService::GetUint64(const char* path) const {
+uint64 PrefService::GetUint64(const std::string& path) const {
   DCHECK(CalledOnValidThread());
 
   const base::Value* value = GetPreferenceValue(path);
@@ -399,7 +414,7 @@
   return val;
 }
 
-base::Value* PrefService::GetMutableUserPref(const char* path,
+base::Value* PrefService::GetMutableUserPref(const std::string& path,
                                              base::Value::Type type) {
   CHECK(type == base::Value::TYPE_DICTIONARY || type == base::Value::TYPE_LIST);
   DCHECK(CalledOnValidThread());
@@ -436,7 +451,8 @@
   user_pref_store_->ReportValueChanged(key);
 }
 
-void PrefService::SetUserPrefValue(const char* path, base::Value* new_value) {
+void PrefService::SetUserPrefValue(const std::string& path,
+                                   base::Value* new_value) {
   scoped_ptr<base::Value> owned_value(new_value);
   DCHECK(CalledOnValidThread());
 
@@ -463,12 +479,9 @@
 // PrefService::Preference
 
 PrefService::Preference::Preference(const PrefService* service,
-                                    const char* name,
+                                    const std::string& name,
                                     base::Value::Type type)
-      : name_(name),
-        type_(type),
-        pref_service_(service) {
-  DCHECK(name);
+    : name_(name), type_(type), pref_service_(service) {
   DCHECK(service);
 }
 
@@ -487,8 +500,8 @@
 }
 
 const base::Value* PrefService::Preference::GetRecommendedValue() const {
-  DCHECK(pref_service_->FindPreference(name_.c_str())) <<
-      "Must register pref before getting its value";
+  DCHECK(pref_service_->FindPreference(name_))
+      << "Must register pref before getting its value";
 
   const base::Value* found_value = NULL;
   if (pref_value_store()->GetRecommendedValue(name_, type_, &found_value)) {
@@ -501,39 +514,39 @@
 }
 
 bool PrefService::Preference::IsManaged() const {
-  return pref_value_store()->PrefValueInManagedStore(name_.c_str());
+  return pref_value_store()->PrefValueInManagedStore(name_);
 }
 
 bool PrefService::Preference::IsRecommended() const {
-  return pref_value_store()->PrefValueFromRecommendedStore(name_.c_str());
+  return pref_value_store()->PrefValueFromRecommendedStore(name_);
 }
 
 bool PrefService::Preference::HasExtensionSetting() const {
-  return pref_value_store()->PrefValueInExtensionStore(name_.c_str());
+  return pref_value_store()->PrefValueInExtensionStore(name_);
 }
 
 bool PrefService::Preference::HasUserSetting() const {
-  return pref_value_store()->PrefValueInUserStore(name_.c_str());
+  return pref_value_store()->PrefValueInUserStore(name_);
 }
 
 bool PrefService::Preference::IsExtensionControlled() const {
-  return pref_value_store()->PrefValueFromExtensionStore(name_.c_str());
+  return pref_value_store()->PrefValueFromExtensionStore(name_);
 }
 
 bool PrefService::Preference::IsUserControlled() const {
-  return pref_value_store()->PrefValueFromUserStore(name_.c_str());
+  return pref_value_store()->PrefValueFromUserStore(name_);
 }
 
 bool PrefService::Preference::IsDefaultValue() const {
-  return pref_value_store()->PrefValueFromDefaultStore(name_.c_str());
+  return pref_value_store()->PrefValueFromDefaultStore(name_);
 }
 
 bool PrefService::Preference::IsUserModifiable() const {
-  return pref_value_store()->PrefValueUserModifiable(name_.c_str());
+  return pref_value_store()->PrefValueUserModifiable(name_);
 }
 
 bool PrefService::Preference::IsExtensionModifiable() const {
-  return pref_value_store()->PrefValueExtensionModifiable(name_.c_str());
+  return pref_value_store()->PrefValueExtensionModifiable(name_);
 }
 
 const base::Value* PrefService::GetPreferenceValue(
diff --git a/base/prefs/pref_service.h b/base/prefs/pref_service.h
index 186433c..734cc2b 100644
--- a/base/prefs/pref_service.h
+++ b/base/prefs/pref_service.h
@@ -65,7 +65,7 @@
     // dictionary (a branch), or list.  You shouldn't need to construct this on
     // your own; use the PrefService::Register*Pref methods instead.
     Preference(const PrefService* service,
-               const char* name,
+               const std::string& name,
                base::Value::Type type);
     ~Preference() {}
 
@@ -156,81 +156,83 @@
 
   // Returns true if the preference for the given preference name is available
   // and is managed.
-  bool IsManagedPreference(const char* pref_name) const;
+  bool IsManagedPreference(const std::string& pref_name) const;
 
   // Returns |true| if a preference with the given name is available and its
   // value can be changed by the user.
-  bool IsUserModifiablePreference(const char* pref_name) const;
+  bool IsUserModifiablePreference(const std::string& pref_name) const;
 
   // Look up a preference.  Returns NULL if the preference is not
   // registered.
-  const PrefService::Preference* FindPreference(const char* path) const;
+  const PrefService::Preference* FindPreference(const std::string& path) const;
 
   // If the path is valid and the value at the end of the path matches the type
   // specified, it will return the specified value.  Otherwise, the default
   // value (set when the pref was registered) will be returned.
-  bool GetBoolean(const char* path) const;
-  int GetInteger(const char* path) const;
-  double GetDouble(const char* path) const;
-  std::string GetString(const char* path) const;
-  base::FilePath GetFilePath(const char* path) const;
+  bool GetBoolean(const std::string& path) const;
+  int GetInteger(const std::string& path) const;
+  double GetDouble(const std::string& path) const;
+  std::string GetString(const std::string& path) const;
+  base::FilePath GetFilePath(const std::string& path) const;
 
   // Returns the branch if it exists, or the registered default value otherwise.
   // Note that |path| must point to a registered preference. In that case, these
   // functions will never return NULL.
-  const base::DictionaryValue* GetDictionary(
-      const char* path) const;
-  const base::ListValue* GetList(const char* path) const;
+  const base::DictionaryValue* GetDictionary(const std::string& path) const;
+  const base::ListValue* GetList(const std::string& path) const;
 
   // Removes a user pref and restores the pref to its default value.
-  void ClearPref(const char* path);
+  void ClearPref(const std::string& path);
 
   // If the path is valid (i.e., registered), update the pref value in the user
   // prefs.
   // To set the value of dictionary or list values in the pref tree use
   // Set(), but to modify the value of a dictionary or list use either
   // ListPrefUpdate or DictionaryPrefUpdate from scoped_user_pref_update.h.
-  void Set(const char* path, const base::Value& value);
-  void SetBoolean(const char* path, bool value);
-  void SetInteger(const char* path, int value);
-  void SetDouble(const char* path, double value);
-  void SetString(const char* path, const std::string& value);
-  void SetFilePath(const char* path, const base::FilePath& value);
+  void Set(const std::string& path, const base::Value& value);
+  void SetBoolean(const std::string& path, bool value);
+  void SetInteger(const std::string& path, int value);
+  void SetDouble(const std::string& path, double value);
+  void SetString(const std::string& path, const std::string& value);
+  void SetFilePath(const std::string& path, const base::FilePath& value);
 
   // Int64 helper methods that actually store the given value as a string.
   // Note that if obtaining the named value via GetDictionary or GetList, the
   // Value type will be TYPE_STRING.
-  void SetInt64(const char* path, int64 value);
-  int64 GetInt64(const char* path) const;
+  void SetInt64(const std::string& path, int64 value);
+  int64 GetInt64(const std::string& path) const;
 
   // As above, but for unsigned values.
-  void SetUint64(const char* path, uint64 value);
-  uint64 GetUint64(const char* path) const;
+  void SetUint64(const std::string& path, uint64 value);
+  uint64 GetUint64(const std::string& path) const;
 
   // Returns the value of the given preference, from the user pref store. If
   // the preference is not set in the user pref store, returns NULL.
-  const base::Value* GetUserPrefValue(const char* path) const;
+  const base::Value* GetUserPrefValue(const std::string& path) const;
 
   // Changes the default value for a preference. Takes ownership of |value|.
   //
   // Will cause a pref change notification to be fired if this causes
   // the effective value to change.
-  void SetDefaultPrefValue(const char* path, base::Value* value);
+  void SetDefaultPrefValue(const std::string& path, base::Value* value);
 
   // Returns the default value of the given preference. |path| must point to a
   // registered preference. In that case, will never return NULL.
-  const base::Value* GetDefaultPrefValue(const char* path) const;
+  const base::Value* GetDefaultPrefValue(const std::string& path) const;
 
   // Returns true if a value has been set for the specified path.
   // NOTE: this is NOT the same as FindPreference. In particular
   // FindPreference returns whether RegisterXXX has been invoked, where as
   // this checks if a value exists for the path.
-  bool HasPrefPath(const char* path) const;
+  bool HasPrefPath(const std::string& path) const;
 
-  // Returns a dictionary with effective preference values. The ownership
-  // is passed to the caller.
+  // Returns a dictionary with effective preference values.
   scoped_ptr<base::DictionaryValue> GetPreferenceValues() const;
 
+  // Returns a dictionary with effective preference values, omitting prefs that
+  // are at their default values.
+  scoped_ptr<base::DictionaryValue> GetPreferenceValuesOmitDefaults() const;
+
   // Returns a dictionary with effective preference values. Contrary to
   // GetPreferenceValues(), the paths of registered preferences are not split on
   // '.' characters. If a registered preference stores a dictionary, however,
@@ -238,7 +240,6 @@
   // For example, if "foo.bar" is a registered preference, the result could look
   // like this:
   //   {"foo.bar": {"a": {"b": true}}}.
-  // The ownership is passed to the caller.
   scoped_ptr<base::DictionaryValue> GetPreferenceValuesWithoutPathExpansion()
       const;
 
@@ -316,8 +317,8 @@
   // make sure the observer gets cleaned up properly.
   //
   // Virtual for testing.
-  virtual void AddPrefObserver(const char* path, PrefObserver* obs);
-  virtual void RemovePrefObserver(const char* path, PrefObserver* obs);
+  virtual void AddPrefObserver(const std::string& path, PrefObserver* obs);
+  virtual void RemovePrefObserver(const std::string& path, PrefObserver* obs);
 
   // Sends notification of a changed preference. This needs to be called by
   // a ScopedUserPrefUpdate if a DictionaryValue or ListValue is changed.
@@ -325,7 +326,7 @@
 
   // Sets the value for this pref path in the user pref store and informs the
   // PrefNotifier of the change.
-  void SetUserPrefValue(const char* path, base::Value* new_value);
+  void SetUserPrefValue(const std::string& path, base::Value* new_value);
 
   // Load preferences from storage, attempting to diagnose and handle errors.
   // This should only be called from the constructor.
@@ -338,7 +339,7 @@
   // |type| may only be Values::TYPE_DICTIONARY or Values::TYPE_LIST and
   // |path| must point to a registered preference of type |type|.
   // Ownership of the returned value remains at the user pref store.
-  base::Value* GetMutableUserPref(const char* path,
+  base::Value* GetMutableUserPref(const std::string& path,
                                   base::Value::Type type);
 
   // GetPreferenceValue is the equivalent of FindPreference(path)->GetValue(),
diff --git a/base/prefs/pref_value_store.cc b/base/prefs/pref_value_store.cc
index 2c22f17..4b7aab9 100644
--- a/base/prefs/pref_value_store.cc
+++ b/base/prefs/pref_value_store.cc
@@ -109,8 +109,8 @@
   // Check the |PrefStore|s in order of their priority from highest to lowest,
   // looking for the first preference value with the given |name| and |type|.
   for (size_t i = 0; i <= PREF_STORE_TYPE_MAX; ++i) {
-    if (GetValueFromStoreWithType(name.c_str(), type,
-                                  static_cast<PrefStoreType>(i), out_value))
+    if (GetValueFromStoreWithType(name, type, static_cast<PrefStoreType>(i),
+                                  out_value))
       return true;
   }
   return false;
@@ -119,12 +119,11 @@
 bool PrefValueStore::GetRecommendedValue(const std::string& name,
                                          base::Value::Type type,
                                          const base::Value** out_value) const {
-  return GetValueFromStoreWithType(name.c_str(), type, RECOMMENDED_STORE,
-                                   out_value);
+  return GetValueFromStoreWithType(name, type, RECOMMENDED_STORE, out_value);
 }
 
 void PrefValueStore::NotifyPrefChanged(
-    const char* path,
+    const std::string& path,
     PrefValueStore::PrefStoreType new_store) {
   DCHECK(new_store != INVALID_STORE);
   // A notification is sent when the pref value in any store changes. If this
@@ -135,41 +134,44 @@
     pref_changed_callback_.Run(path);
 }
 
-bool PrefValueStore::PrefValueInManagedStore(const char* name) const {
+bool PrefValueStore::PrefValueInManagedStore(const std::string& name) const {
   return PrefValueInStore(name, MANAGED_STORE);
 }
 
-bool PrefValueStore::PrefValueInExtensionStore(const char* name) const {
+bool PrefValueStore::PrefValueInExtensionStore(const std::string& name) const {
   return PrefValueInStore(name, EXTENSION_STORE);
 }
 
-bool PrefValueStore::PrefValueInUserStore(const char* name) const {
+bool PrefValueStore::PrefValueInUserStore(const std::string& name) const {
   return PrefValueInStore(name, USER_STORE);
 }
 
-bool PrefValueStore::PrefValueFromExtensionStore(const char* name) const {
+bool PrefValueStore::PrefValueFromExtensionStore(
+    const std::string& name) const {
   return ControllingPrefStoreForPref(name) == EXTENSION_STORE;
 }
 
-bool PrefValueStore::PrefValueFromUserStore(const char* name) const {
+bool PrefValueStore::PrefValueFromUserStore(const std::string& name) const {
   return ControllingPrefStoreForPref(name) == USER_STORE;
 }
 
-bool PrefValueStore::PrefValueFromRecommendedStore(const char* name) const {
+bool PrefValueStore::PrefValueFromRecommendedStore(
+    const std::string& name) const {
   return ControllingPrefStoreForPref(name) == RECOMMENDED_STORE;
 }
 
-bool PrefValueStore::PrefValueFromDefaultStore(const char* name) const {
+bool PrefValueStore::PrefValueFromDefaultStore(const std::string& name) const {
   return ControllingPrefStoreForPref(name) == DEFAULT_STORE;
 }
 
-bool PrefValueStore::PrefValueUserModifiable(const char* name) const {
+bool PrefValueStore::PrefValueUserModifiable(const std::string& name) const {
   PrefStoreType effective_store = ControllingPrefStoreForPref(name);
   return effective_store >= USER_STORE ||
          effective_store == INVALID_STORE;
 }
 
-bool PrefValueStore::PrefValueExtensionModifiable(const char* name) const {
+bool PrefValueStore::PrefValueExtensionModifiable(
+    const std::string& name) const {
   PrefStoreType effective_store = ControllingPrefStoreForPref(name);
   return effective_store >= EXTENSION_STORE ||
          effective_store == INVALID_STORE;
@@ -180,7 +182,7 @@
 }
 
 bool PrefValueStore::PrefValueInStore(
-    const char* name,
+    const std::string& name,
     PrefValueStore::PrefStoreType store) const {
   // Declare a temp Value* and call GetValueFromStore,
   // ignoring the output value.
@@ -189,7 +191,7 @@
 }
 
 bool PrefValueStore::PrefValueInStoreRange(
-    const char* name,
+    const std::string& name,
     PrefValueStore::PrefStoreType first_checked_store,
     PrefValueStore::PrefStoreType last_checked_store) const {
   if (first_checked_store > last_checked_store) {
@@ -206,7 +208,7 @@
 }
 
 PrefValueStore::PrefStoreType PrefValueStore::ControllingPrefStoreForPref(
-    const char* name) const {
+    const std::string& name) const {
   for (size_t i = 0; i <= PREF_STORE_TYPE_MAX; ++i) {
     if (PrefValueInStore(name, static_cast<PrefStoreType>(i)))
       return static_cast<PrefStoreType>(i);
@@ -214,7 +216,7 @@
   return INVALID_STORE;
 }
 
-bool PrefValueStore::GetValueFromStore(const char* name,
+bool PrefValueStore::GetValueFromStore(const std::string& name,
                                        PrefValueStore::PrefStoreType store_type,
                                        const base::Value** out_value) const {
   // Only return true if we find a value and it is the correct type, so stale
@@ -230,7 +232,7 @@
 }
 
 bool PrefValueStore::GetValueFromStoreWithType(
-    const char* name,
+    const std::string& name,
     base::Value::Type type,
     PrefStoreType store,
     const base::Value** out_value) const {
@@ -249,7 +251,7 @@
 
 void PrefValueStore::OnPrefValueChanged(PrefValueStore::PrefStoreType type,
                                         const std::string& key) {
-  NotifyPrefChanged(key.c_str(), type);
+  NotifyPrefChanged(key, type);
 }
 
 void PrefValueStore::OnInitializationCompleted(
diff --git a/base/prefs/pref_value_store.h b/base/prefs/pref_value_store.h
index db82a82..33203bd 100644
--- a/base/prefs/pref_value_store.h
+++ b/base/prefs/pref_value_store.h
@@ -94,25 +94,25 @@
   // These methods return true if a preference with the given name is in the
   // indicated pref store, even if that value is currently being overridden by
   // a higher-priority source.
-  bool PrefValueInManagedStore(const char* name) const;
-  bool PrefValueInExtensionStore(const char* name) const;
-  bool PrefValueInUserStore(const char* name) const;
+  bool PrefValueInManagedStore(const std::string& name) const;
+  bool PrefValueInExtensionStore(const std::string& name) const;
+  bool PrefValueInUserStore(const std::string& name) const;
 
   // These methods return true if a preference with the given name is actually
   // being controlled by the indicated pref store and not being overridden by
   // a higher-priority source.
-  bool PrefValueFromExtensionStore(const char* name) const;
-  bool PrefValueFromUserStore(const char* name) const;
-  bool PrefValueFromRecommendedStore(const char* name) const;
-  bool PrefValueFromDefaultStore(const char* name) const;
+  bool PrefValueFromExtensionStore(const std::string& name) const;
+  bool PrefValueFromUserStore(const std::string& name) const;
+  bool PrefValueFromRecommendedStore(const std::string& name) const;
+  bool PrefValueFromDefaultStore(const std::string& name) const;
 
   // Check whether a Preference value is modifiable by the user, i.e. whether
   // there is no higher-priority source controlling it.
-  bool PrefValueUserModifiable(const char* name) const;
+  bool PrefValueUserModifiable(const std::string& name) const;
 
   // Check whether a Preference value is modifiable by an extension, i.e.
   // whether there is no higher-priority source controlling it.
-  bool PrefValueExtensionModifiable(const char* name) const;
+  bool PrefValueExtensionModifiable(const std::string& name) const;
 
   // Update the command line PrefStore with |command_line_prefs|.
   void UpdateCommandLinePrefStore(PrefStore* command_line_prefs);
@@ -188,13 +188,13 @@
   // Returns true if the preference with the given name has a value in the
   // given PrefStoreType, of the same value type as the preference was
   // registered with.
-  bool PrefValueInStore(const char* name, PrefStoreType store) const;
+  bool PrefValueInStore(const std::string& name, PrefStoreType store) const;
 
   // Returns true if a preference has an explicit value in any of the
   // stores in the range specified by |first_checked_store| and
   // |last_checked_store|, even if that value is currently being
   // overridden by a higher-priority store.
-  bool PrefValueInStoreRange(const char* name,
+  bool PrefValueInStoreRange(const std::string& name,
                              PrefStoreType first_checked_store,
                              PrefStoreType last_checked_store) const;
 
@@ -203,15 +203,15 @@
   // INVALID_STORE is returned. In practice, the default PrefStore
   // should always have a value for any registered preferencem, so INVALID_STORE
   // indicates an error.
-  PrefStoreType ControllingPrefStoreForPref(const char* name) const;
+  PrefStoreType ControllingPrefStoreForPref(const std::string& name) const;
 
   // Get a value from the specified |store|.
-  bool GetValueFromStore(const char* name,
+  bool GetValueFromStore(const std::string& name,
                          PrefStoreType store,
                          const base::Value** out_value) const;
 
   // Get a value from the specified |store| if its |type| matches.
-  bool GetValueFromStoreWithType(const char* name,
+  bool GetValueFromStoreWithType(const std::string& name,
                                  base::Value::Type type,
                                  PrefStoreType store,
                                  const base::Value** out_value) const;
@@ -220,7 +220,7 @@
   // the user-visible pref value has changed. Triggers the change notification
   // if the effective value of the preference has changed, or if the store
   // controlling the pref has changed.
-  void NotifyPrefChanged(const char* path, PrefStoreType new_store);
+  void NotifyPrefChanged(const std::string& path, PrefStoreType new_store);
 
   // Called from the PrefStoreKeeper implementation when a pref value for |key|
   // changed in the pref store for |type|.
diff --git a/base/prefs/pref_value_store_unittest.cc b/base/prefs/pref_value_store_unittest.cc
index 3afe9dc..9194b22 100644
--- a/base/prefs/pref_value_store_unittest.cc
+++ b/base/prefs/pref_value_store_unittest.cc
@@ -237,7 +237,7 @@
         default_pref::kDefaultValue);
   }
 
-  void ExpectValueChangeNotifications(const char* name) {
+  void ExpectValueChangeNotifications(const std::string& name) {
     EXPECT_CALL(pref_notifier_, OnPreferenceChanged(name));
     EXPECT_CALL(*sync_associator_, ProcessPrefChange(name));
   }
diff --git a/base/prefs/scoped_user_pref_update.cc b/base/prefs/scoped_user_pref_update.cc
index 7871c75..1440a57 100644
--- a/base/prefs/scoped_user_pref_update.cc
+++ b/base/prefs/scoped_user_pref_update.cc
@@ -11,10 +11,8 @@
 namespace subtle {
 
 ScopedUserPrefUpdateBase::ScopedUserPrefUpdateBase(PrefService* service,
-                                                   const char* path)
-    : service_(service),
-      path_(path),
-      value_(NULL) {
+                                                   const std::string& path)
+    : service_(service), path_(path), value_(NULL) {
   DCHECK(service_->CalledOnValidThread());
 }
 
@@ -25,7 +23,7 @@
 base::Value* ScopedUserPrefUpdateBase::GetValueOfType(base::Value::Type type) {
   DCHECK(CalledOnValidThread());
   if (!value_)
-    value_ = service_->GetMutableUserPref(path_.c_str(), type);
+    value_ = service_->GetMutableUserPref(path_, type);
   return value_;
 }
 
diff --git a/base/prefs/scoped_user_pref_update.h b/base/prefs/scoped_user_pref_update.h
index 82d6739..f8bebfe 100644
--- a/base/prefs/scoped_user_pref_update.h
+++ b/base/prefs/scoped_user_pref_update.h
@@ -33,7 +33,7 @@
 // PrefService::ReportUserPrefChanged.
 class BASE_PREFS_EXPORT ScopedUserPrefUpdateBase : public base::NonThreadSafe {
  protected:
-  ScopedUserPrefUpdateBase(PrefService* service, const char* path);
+  ScopedUserPrefUpdateBase(PrefService* service, const std::string& path);
 
   // Calls Notify().
   ~ScopedUserPrefUpdateBase();
@@ -66,7 +66,7 @@
 template <typename T, base::Value::Type type_enum_value>
 class ScopedUserPrefUpdate : public subtle::ScopedUserPrefUpdateBase {
  public:
-  ScopedUserPrefUpdate(PrefService* service, const char* path)
+  ScopedUserPrefUpdate(PrefService* service, const std::string& path)
       : ScopedUserPrefUpdateBase(service, path) {}
 
   // Triggers an update notification if Get() was called.
diff --git a/base/prefs/testing_pref_service.h b/base/prefs/testing_pref_service.h
index 2f6d494..40fd66a 100644
--- a/base/prefs/testing_pref_service.h
+++ b/base/prefs/testing_pref_service.h
@@ -27,25 +27,25 @@
 
   // Read the value of a preference from the managed layer. Returns NULL if the
   // preference is not defined at the managed layer.
-  const base::Value* GetManagedPref(const char* path) const;
+  const base::Value* GetManagedPref(const std::string& path) const;
 
   // Set a preference on the managed layer and fire observers if the preference
   // changed. Assumes ownership of |value|.
-  void SetManagedPref(const char* path, base::Value* value);
+  void SetManagedPref(const std::string& path, base::Value* value);
 
   // Clear the preference on the managed layer and fire observers if the
   // preference has been defined previously.
-  void RemoveManagedPref(const char* path);
+  void RemoveManagedPref(const std::string& path);
 
   // Similar to the above, but for user preferences.
-  const base::Value* GetUserPref(const char* path) const;
-  void SetUserPref(const char* path, base::Value* value);
-  void RemoveUserPref(const char* path);
+  const base::Value* GetUserPref(const std::string& path) const;
+  void SetUserPref(const std::string& path, base::Value* value);
+  void RemoveUserPref(const std::string& path);
 
   // Similar to the above, but for recommended policy preferences.
-  const base::Value* GetRecommendedPref(const char* path) const;
-  void SetRecommendedPref(const char* path, base::Value* value);
-  void RemoveRecommendedPref(const char* path);
+  const base::Value* GetRecommendedPref(const std::string& path) const;
+  void SetRecommendedPref(const std::string& path, base::Value* value);
+  void RemoveRecommendedPref(const std::string& path);
 
   // Do-nothing implementation for TestingPrefService.
   static void HandleReadError(PersistentPrefStore::PrefReadError error) {}
@@ -62,14 +62,15 @@
   // Reads the value of the preference indicated by |path| from |pref_store|.
   // Returns NULL if the preference was not found.
   const base::Value* GetPref(TestingPrefStore* pref_store,
-                             const char* path) const;
+                             const std::string& path) const;
 
   // Sets the value for |path| in |pref_store|.
-  void SetPref(TestingPrefStore* pref_store, const char* path,
+  void SetPref(TestingPrefStore* pref_store,
+               const std::string& path,
                base::Value* value);
 
   // Removes the preference identified by |path| from |pref_store|.
-  void RemovePref(TestingPrefStore* pref_store, const char* path);
+  void RemovePref(TestingPrefStore* pref_store, const std::string& path);
 
   // Pointers to the pref stores our value store uses.
   scoped_refptr<TestingPrefStore> managed_prefs_;
@@ -110,88 +111,83 @@
     SuperPrefService, ConstructionPrefRegistry>::~TestingPrefServiceBase() {
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
+template <class SuperPrefService, class ConstructionPrefRegistry>
 const base::Value* TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::GetManagedPref(
-        const char* path) const {
+    SuperPrefService,
+    ConstructionPrefRegistry>::GetManagedPref(const std::string& path) const {
   return GetPref(managed_prefs_.get(), path);
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-void TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::SetManagedPref(
-        const char* path, base::Value* value) {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+void TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::
+    SetManagedPref(const std::string& path, base::Value* value) {
   SetPref(managed_prefs_.get(), path, value);
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-void TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::RemoveManagedPref(
-        const char* path) {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+void TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::
+    RemoveManagedPref(const std::string& path) {
   RemovePref(managed_prefs_.get(), path);
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-const base::Value* TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::GetUserPref(
-        const char* path) const {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+const base::Value*
+TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::GetUserPref(
+    const std::string& path) const {
   return GetPref(user_prefs_.get(), path);
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-void TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::SetUserPref(
-        const char* path, base::Value* value) {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+void TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::
+    SetUserPref(const std::string& path, base::Value* value) {
   SetPref(user_prefs_.get(), path, value);
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-void TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::RemoveUserPref(
-        const char* path) {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+void TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::
+    RemoveUserPref(const std::string& path) {
   RemovePref(user_prefs_.get(), path);
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-const base::Value* TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::GetRecommendedPref(
-        const char* path) const {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+const base::Value*
+TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::
+    GetRecommendedPref(const std::string& path) const {
   return GetPref(recommended_prefs_, path);
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-void TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::SetRecommendedPref(
-        const char* path, base::Value* value) {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+void TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::
+    SetRecommendedPref(const std::string& path, base::Value* value) {
   SetPref(recommended_prefs_.get(), path, value);
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-void TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::RemoveRecommendedPref(
-        const char* path) {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+void TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::
+    RemoveRecommendedPref(const std::string& path) {
   RemovePref(recommended_prefs_.get(), path);
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-const base::Value* TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::GetPref(
-        TestingPrefStore* pref_store, const char* path) const {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+const base::Value*
+TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::GetPref(
+    TestingPrefStore* pref_store,
+    const std::string& path) const {
   const base::Value* res;
   return pref_store->GetValue(path, &res) ? res : NULL;
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-void TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::SetPref(
-        TestingPrefStore* pref_store, const char* path, base::Value* value) {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+void TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::
+    SetPref(TestingPrefStore* pref_store,
+            const std::string& path,
+            base::Value* value) {
   pref_store->SetValue(path, value);
 }
 
-template<class SuperPrefService, class ConstructionPrefRegistry>
-void TestingPrefServiceBase<
-    SuperPrefService, ConstructionPrefRegistry>::RemovePref(
-        TestingPrefStore* pref_store, const char* path) {
+template <class SuperPrefService, class ConstructionPrefRegistry>
+void TestingPrefServiceBase<SuperPrefService, ConstructionPrefRegistry>::
+    RemovePref(TestingPrefStore* pref_store, const std::string& path) {
   pref_store->RemoveValue(path);
 }
 
diff --git a/base/process/launch.h b/base/process/launch.h
index 261019b..06abb29 100644
--- a/base/process/launch.h
+++ b/base/process/launch.h
@@ -14,6 +14,7 @@
 #include "base/base_export.h"
 #include "base/basictypes.h"
 #include "base/environment.h"
+#include "base/process/process.h"
 #include "base/process/process_handle.h"
 #include "base/strings/string_piece.h"
 
@@ -143,12 +144,7 @@
 // Launch a process via the command line |cmdline|.
 // See the documentation of LaunchOptions for details on |options|.
 //
-// Returns true upon success.
-//
-// Upon success, if |process_handle| is non-null, it will be filled in with the
-// handle of the launched process.  NOTE: In this case, the caller is
-// responsible for closing the handle so that it doesn't leak!
-// Otherwise, the process handle will be implicitly closed.
+// Returns a valid Process upon success.
 //
 // Unix-specific notes:
 // - All file descriptors open in the parent process will be closed in the
@@ -158,6 +154,11 @@
 //   parent's stdout and stderr.
 // - If the first argument on the command line does not contain a slash,
 //   PATH will be searched.  (See man execvp.)
+BASE_EXPORT Process LaunchProcess(const CommandLine& cmdline,
+                                  const LaunchOptions& options);
+
+// Deprecated version.
+// TODO(rvargas) crbug.com/417532: Remove this after migrating all consumers.
 BASE_EXPORT bool LaunchProcess(const CommandLine& cmdline,
                                const LaunchOptions& options,
                                ProcessHandle* process_handle);
@@ -180,12 +181,10 @@
 // Launches a process with elevated privileges.  This does not behave exactly
 // like LaunchProcess as it uses ShellExecuteEx instead of CreateProcess to
 // create the process.  This means the process will have elevated privileges
-// and thus some common operations like OpenProcess will fail. The process will
-// be available through the |process_handle| argument.  Currently the only
-// supported LaunchOptions are |start_hidden| and |wait|.
-BASE_EXPORT bool LaunchElevatedProcess(const CommandLine& cmdline,
-                                       const LaunchOptions& options,
-                                       ProcessHandle* process_handle);
+// and thus some common operations like OpenProcess will fail. Currently the
+// only supported LaunchOptions are |start_hidden| and |wait|.
+BASE_EXPORT Process LaunchElevatedProcess(const CommandLine& cmdline,
+                                          const LaunchOptions& options);
 
 #elif defined(OS_POSIX)
 // A POSIX-specific version of LaunchProcess that takes an argv array
diff --git a/base/process/launch_posix.cc b/base/process/launch_posix.cc
index bc6294b..3322d26 100644
--- a/base/process/launch_posix.cc
+++ b/base/process/launch_posix.cc
@@ -480,6 +480,15 @@
   return LaunchProcess(cmdline.argv(), options, process_handle);
 }
 
+Process LaunchProcess(const CommandLine& cmdline,
+                      const LaunchOptions& options) {
+  ProcessHandle process_handle;
+  if (LaunchProcess(cmdline, options, &process_handle))
+    return Process(process_handle);
+
+  return Process();
+}
+
 void RaiseProcessToHighPriority() {
   // On POSIX, we don't actually do anything here.  We could try to nice() or
   // setpriority() or sched_getscheduler, but these all require extra rights.
diff --git a/base/process/launch_win.cc b/base/process/launch_win.cc
index a3303a5..3c787fe 100644
--- a/base/process/launch_win.cc
+++ b/base/process/launch_win.cc
@@ -244,9 +244,17 @@
   return rv;
 }
 
-bool LaunchElevatedProcess(const CommandLine& cmdline,
-                           const LaunchOptions& options,
-                           ProcessHandle* process_handle) {
+Process LaunchProcess(const CommandLine& cmdline,
+                      const LaunchOptions& options) {
+  ProcessHandle process_handle;
+  if (LaunchProcess(cmdline, options, &process_handle))
+    return Process(process_handle);
+
+  return Process();
+}
+
+Process LaunchElevatedProcess(const CommandLine& cmdline,
+                              const LaunchOptions& options) {
   const string16 file = cmdline.GetProgram().value();
   const string16 arguments = cmdline.GetArgumentsString();
 
@@ -263,20 +271,13 @@
 
   if (!ShellExecuteEx(&shex_info)) {
     DPLOG(ERROR);
-    return false;
+    return Process();
   }
 
   if (options.wait)
     WaitForSingleObject(shex_info.hProcess, INFINITE);
 
-  // If the caller wants the process handle give it to them, otherwise just
-  // close it.  Closing it does not terminate the process.
-  if (process_handle)
-    *process_handle = shex_info.hProcess;
-  else
-    CloseHandle(shex_info.hProcess);
-
-  return true;
+  return Process(shex_info.hProcess);
 }
 
 bool SetJobObjectLimitFlags(HANDLE job_object, DWORD limit_flags) {
diff --git a/base/process/process_util_unittest.cc b/base/process/process_util_unittest.cc
index d846d1a..c98884d 100644
--- a/base/process/process_util_unittest.cc
+++ b/base/process/process_util_unittest.cc
@@ -325,7 +325,7 @@
   expected += "\r\n";
 
   FilePath cmd(L"cmd.exe");
-  CommandLine cmd_line(cmd);
+  base::CommandLine cmd_line(cmd);
   cmd_line.AppendArg("/c");
   cmd_line.AppendArg("echo " + message + "");
   std::string output;
@@ -333,7 +333,7 @@
   EXPECT_EQ(expected, output);
 
   // Let's make sure stderr is ignored.
-  CommandLine other_cmd_line(cmd);
+  base::CommandLine other_cmd_line(cmd);
   other_cmd_line.AppendArg("/c");
   // http://msdn.microsoft.com/library/cc772622.aspx
   cmd_line.AppendArg("echo " + message + " >&2");
@@ -348,22 +348,23 @@
   ASSERT_TRUE(OpenProcessToken(GetCurrentProcess(), TOKEN_ALL_ACCESS, &token));
   base::LaunchOptions options;
   options.as_user = token;
-  EXPECT_TRUE(base::LaunchProcess(MakeCmdLine("SimpleChildProcess"), options,
-                                  NULL));
+  EXPECT_TRUE(base::LaunchProcess(MakeCmdLine("SimpleChildProcess"),
+                                  options).IsValid());
 }
 
 static const char kEventToTriggerHandleSwitch[] = "event-to-trigger-handle";
 
 MULTIPROCESS_TEST_MAIN(TriggerEventChildProcess) {
   std::string handle_value_string =
-      CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
+      base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
           kEventToTriggerHandleSwitch);
   CHECK(!handle_value_string.empty());
 
   uint64 handle_value_uint64;
   CHECK(base::StringToUint64(handle_value_string, &handle_value_uint64));
   // Give ownership of the handle to |event|.
-  base::WaitableEvent event(reinterpret_cast<HANDLE>(handle_value_uint64));
+  base::WaitableEvent event(base::win::ScopedHandle(
+      reinterpret_cast<HANDLE>(handle_value_uint64)));
 
   event.Signal();
 
@@ -378,26 +379,26 @@
   security_attributes.bInheritHandle = true;
 
   // Takes ownership of the event handle.
-  base::WaitableEvent event(
-      CreateEvent(&security_attributes, true, false, NULL));
+  base::WaitableEvent event(base::win::ScopedHandle(
+      CreateEvent(&security_attributes, true, false, NULL)));
   base::HandlesToInheritVector handles_to_inherit;
   handles_to_inherit.push_back(event.handle());
   base::LaunchOptions options;
   options.handles_to_inherit = &handles_to_inherit;
 
-  CommandLine cmd_line = MakeCmdLine("TriggerEventChildProcess");
+  base::CommandLine cmd_line = MakeCmdLine("TriggerEventChildProcess");
   cmd_line.AppendSwitchASCII(kEventToTriggerHandleSwitch,
       base::Uint64ToString(reinterpret_cast<uint64>(event.handle())));
 
   // This functionality actually requires Vista or later. Make sure that it
   // fails properly on XP.
   if (base::win::GetVersion() < base::win::VERSION_VISTA) {
-    EXPECT_FALSE(base::LaunchProcess(cmd_line, options, NULL));
+    EXPECT_FALSE(base::LaunchProcess(cmd_line, options).IsValid());
     return;
   }
 
   // Launch the process and wait for it to trigger the event.
-  ASSERT_TRUE(base::LaunchProcess(cmd_line, options, NULL));
+  ASSERT_TRUE(base::LaunchProcess(cmd_line, options).IsValid());
   EXPECT_TRUE(event.TimedWait(TestTimeouts::action_max_timeout()));
 }
 #endif  // defined(OS_WIN)
@@ -710,27 +711,29 @@
   argv.push_back("-c");
 
   argv.push_back("exit 0");
-  EXPECT_TRUE(base::GetAppOutput(CommandLine(argv), &output));
+  EXPECT_TRUE(base::GetAppOutput(base::CommandLine(argv), &output));
   EXPECT_STREQ("", output.c_str());
 
   argv[2] = "exit 1";
-  EXPECT_FALSE(base::GetAppOutput(CommandLine(argv), &output));
+  EXPECT_FALSE(base::GetAppOutput(base::CommandLine(argv), &output));
   EXPECT_STREQ("", output.c_str());
 
   argv[2] = "echo foobar42";
-  EXPECT_TRUE(base::GetAppOutput(CommandLine(argv), &output));
+  EXPECT_TRUE(base::GetAppOutput(base::CommandLine(argv), &output));
   EXPECT_STREQ("foobar42\n", output.c_str());
 #else
-  EXPECT_TRUE(base::GetAppOutput(CommandLine(FilePath("true")), &output));
+  EXPECT_TRUE(base::GetAppOutput(base::CommandLine(FilePath("true")),
+                                 &output));
   EXPECT_STREQ("", output.c_str());
 
-  EXPECT_FALSE(base::GetAppOutput(CommandLine(FilePath("false")), &output));
+  EXPECT_FALSE(base::GetAppOutput(base::CommandLine(FilePath("false")),
+                                  &output));
 
   std::vector<std::string> argv;
   argv.push_back("/bin/echo");
   argv.push_back("-n");
   argv.push_back("foobar42");
-  EXPECT_TRUE(base::GetAppOutput(CommandLine(argv), &output));
+  EXPECT_TRUE(base::GetAppOutput(base::CommandLine(argv), &output));
   EXPECT_STREQ("foobar42", output.c_str());
 #endif  // defined(OS_ANDROID)
 }
@@ -754,34 +757,39 @@
   // need absolute paths).
   argv.push_back("exit 0");   // argv[2]; equivalent to "true"
   std::string output = "abc";
-  EXPECT_TRUE(base::GetAppOutputRestricted(CommandLine(argv), &output, 100));
+  EXPECT_TRUE(base::GetAppOutputRestricted(base::CommandLine(argv), &output,
+                                           100));
   EXPECT_STREQ("", output.c_str());
 
   argv[2] = "exit 1";  // equivalent to "false"
   output = "before";
-  EXPECT_FALSE(base::GetAppOutputRestricted(CommandLine(argv),
-                                            &output, 100));
+  EXPECT_FALSE(base::GetAppOutputRestricted(base::CommandLine(argv), &output,
+                                            100));
   EXPECT_STREQ("", output.c_str());
 
   // Amount of output exactly equal to space allowed.
   argv[2] = "echo 123456789";  // (the sh built-in doesn't take "-n")
   output.clear();
-  EXPECT_TRUE(base::GetAppOutputRestricted(CommandLine(argv), &output, 10));
+  EXPECT_TRUE(base::GetAppOutputRestricted(base::CommandLine(argv), &output,
+                                           10));
   EXPECT_STREQ("123456789\n", output.c_str());
 
   // Amount of output greater than space allowed.
   output.clear();
-  EXPECT_TRUE(base::GetAppOutputRestricted(CommandLine(argv), &output, 5));
+  EXPECT_TRUE(base::GetAppOutputRestricted(base::CommandLine(argv), &output,
+                                           5));
   EXPECT_STREQ("12345", output.c_str());
 
   // Amount of output less than space allowed.
   output.clear();
-  EXPECT_TRUE(base::GetAppOutputRestricted(CommandLine(argv), &output, 15));
+  EXPECT_TRUE(base::GetAppOutputRestricted(base::CommandLine(argv), &output,
+                                           15));
   EXPECT_STREQ("123456789\n", output.c_str());
 
   // Zero space allowed.
   output = "abc";
-  EXPECT_TRUE(base::GetAppOutputRestricted(CommandLine(argv), &output, 0));
+  EXPECT_TRUE(base::GetAppOutputRestricted(base::CommandLine(argv), &output,
+                                           0));
   EXPECT_STREQ("", output.c_str());
 }
 
@@ -796,11 +804,13 @@
   argv.push_back("-c");
 #if defined(OS_ANDROID)
   argv.push_back("while echo 12345678901234567890; do :; done");
-  EXPECT_TRUE(base::GetAppOutputRestricted(CommandLine(argv), &output, 10));
+  EXPECT_TRUE(base::GetAppOutputRestricted(base::CommandLine(argv), &output,
+                                           10));
   EXPECT_STREQ("1234567890", output.c_str());
 #else
   argv.push_back("yes");
-  EXPECT_TRUE(base::GetAppOutputRestricted(CommandLine(argv), &output, 10));
+  EXPECT_TRUE(base::GetAppOutputRestricted(base::CommandLine(argv), &output,
+                                           10));
   EXPECT_STREQ("y\ny\ny\ny\ny\n", output.c_str());
 #endif
 }
@@ -826,14 +836,16 @@
   // 10.5) times with an output buffer big enough to capture all output.
   for (int i = 0; i < 300; i++) {
     std::string output;
-    EXPECT_TRUE(base::GetAppOutputRestricted(CommandLine(argv), &output, 100));
+    EXPECT_TRUE(base::GetAppOutputRestricted(base::CommandLine(argv), &output,
+                                             100));
     EXPECT_STREQ("123456789012345678901234567890\n", output.c_str());
   }
 
   // Ditto, but with an output buffer too small to capture all output.
   for (int i = 0; i < 300; i++) {
     std::string output;
-    EXPECT_TRUE(base::GetAppOutputRestricted(CommandLine(argv), &output, 10));
+    EXPECT_TRUE(base::GetAppOutputRestricted(base::CommandLine(argv), &output,
+                                             10));
     EXPECT_STREQ("1234567890", output.c_str());
   }
 }
@@ -846,7 +858,7 @@
   argv.push_back(std::string(kShellPath));  // argv[0]
   argv.push_back("-c");  // argv[1]
   argv.push_back("echo foo");  // argv[2];
-  EXPECT_TRUE(base::GetAppOutputWithExitCode(CommandLine(argv), &output,
+  EXPECT_TRUE(base::GetAppOutputWithExitCode(base::CommandLine(argv), &output,
                                              &exit_code));
   EXPECT_STREQ("foo\n", output.c_str());
   EXPECT_EQ(exit_code, 0);
@@ -855,7 +867,7 @@
   // code.
   output.clear();
   argv[2] = "echo foo; exit 2";
-  EXPECT_TRUE(base::GetAppOutputWithExitCode(CommandLine(argv), &output,
+  EXPECT_TRUE(base::GetAppOutputWithExitCode(base::CommandLine(argv), &output,
                                              &exit_code));
   EXPECT_STREQ("foo\n", output.c_str());
   EXPECT_EQ(exit_code, 2);
diff --git a/base/synchronization/waitable_event.h b/base/synchronization/waitable_event.h
index 39c0d11..5adc1ec 100644
--- a/base/synchronization/waitable_event.h
+++ b/base/synchronization/waitable_event.h
@@ -53,11 +53,7 @@
   // Create a WaitableEvent from an Event HANDLE which has already been
   // created. This objects takes ownership of the HANDLE and will close it when
   // deleted.
-  // TODO(rvargas): Pass ScopedHandle instead (and on Release).
-  explicit WaitableEvent(HANDLE event_handle);
-
-  // Releases ownership of the handle from this object.
-  HANDLE Release();
+  explicit WaitableEvent(win::ScopedHandle event_handle);
 #endif
 
   ~WaitableEvent();
diff --git a/base/synchronization/waitable_event_win.cc b/base/synchronization/waitable_event_win.cc
index ec2d84f..770c582 100644
--- a/base/synchronization/waitable_event_win.cc
+++ b/base/synchronization/waitable_event_win.cc
@@ -20,18 +20,14 @@
   CHECK(handle_.IsValid());
 }
 
-WaitableEvent::WaitableEvent(HANDLE handle)
-    : handle_(handle) {
+WaitableEvent::WaitableEvent(win::ScopedHandle handle)
+    : handle_(handle.Pass()) {
   CHECK(handle_.IsValid()) << "Tried to create WaitableEvent from NULL handle";
 }
 
 WaitableEvent::~WaitableEvent() {
 }
 
-HANDLE WaitableEvent::Release() {
-  return handle_.Take();
-}
-
 void WaitableEvent::Reset() {
   ResetEvent(handle_.Get());
 }
diff --git a/base/test/BUILD.gn b/base/test/BUILD.gn
index a2864b5..3aab89e 100644
--- a/base/test/BUILD.gn
+++ b/base/test/BUILD.gn
@@ -17,6 +17,8 @@
     "expectations/expectation.h",
     "expectations/parser.cc",
     "expectations/parser.h",
+    "gtest_util.cc",
+    "gtest_util.h",
     "gtest_xml_util.cc",
     "gtest_xml_util.h",
     "histogram_tester.cc",
@@ -113,7 +115,7 @@
     "//base/third_party/dynamic_annotations",
     "//testing/gmock",
     "//testing/gtest",
-    "//third_party/libxml"
+    "//third_party/libxml",
   ]
 
   if (!is_posix) {
diff --git a/base/test/gtest_util.cc b/base/test/gtest_util.cc
new file mode 100644
index 0000000..47fd639
--- /dev/null
+++ b/base/test/gtest_util.cc
@@ -0,0 +1,43 @@
+// Copyright 2014 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.
+
+#include "base/test/gtest_util.h"
+
+#include "base/files/file_path.h"
+#include "base/json/json_file_value_serializer.h"
+#include "base/values.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace base {
+
+std::vector<SplitTestName> GetCompiledInTests() {
+  testing::UnitTest* const unit_test = testing::UnitTest::GetInstance();
+
+  std::vector<SplitTestName> tests;
+  for (int i = 0; i < unit_test->total_test_case_count(); ++i) {
+    const testing::TestCase* test_case = unit_test->GetTestCase(i);
+    for (int j = 0; j < test_case->total_test_count(); ++j) {
+      const testing::TestInfo* test_info = test_case->GetTestInfo(j);
+      tests.push_back(std::make_pair(test_case->name(), test_info->name()));
+    }
+  }
+  return tests;
+}
+
+bool WriteCompiledInTestsToFile(const FilePath& path) {
+  std::vector<SplitTestName> tests(GetCompiledInTests());
+
+  ListValue root;
+  for (size_t i = 0; i < tests.size(); ++i) {
+    DictionaryValue* test_info = new DictionaryValue;
+    test_info->SetString("test_case_name", tests[i].first);
+    test_info->SetString("test_name", tests[i].second);
+    root.Append(test_info);
+  }
+
+  JSONFileValueSerializer serializer(path);
+  return serializer.Serialize(root);
+}
+
+}  // namespace
diff --git a/base/test/gtest_util.h b/base/test/gtest_util.h
new file mode 100644
index 0000000..93382f8
--- /dev/null
+++ b/base/test/gtest_util.h
@@ -0,0 +1,31 @@
+// Copyright 2014 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.
+
+#ifndef BASE_TEST_GTEST_UTIL_H_
+#define BASE_TEST_GTEST_UTIL_H_
+
+#include <string>
+#include <utility>
+#include <vector>
+
+#include "base/compiler_specific.h"
+
+namespace base {
+
+class FilePath;
+
+// First value is test case name, second one is test name.
+typedef std::pair<std::string, std::string> SplitTestName;
+
+// Returns a vector of gtest-based tests compiled into
+// current executable.
+std::vector<SplitTestName> GetCompiledInTests();
+
+// Writes the list of gtest-based tests compiled into
+// current executable as a JSON file. Returns true on success.
+bool WriteCompiledInTestsToFile(const FilePath& path) WARN_UNUSED_RESULT;
+
+}  // namespace base
+
+#endif  // BASE_TEST_GTEST_UTIL_H_
diff --git a/base/test/launcher/test_launcher.cc b/base/test/launcher/test_launcher.cc
index c0ae6a9..0d3eba9 100644
--- a/base/test/launcher/test_launcher.cc
+++ b/base/test/launcher/test_launcher.cc
@@ -29,6 +29,7 @@
 #include "base/strings/stringize_macros.h"
 #include "base/strings/stringprintf.h"
 #include "base/strings/utf_string_conversions.h"
+#include "base/test/gtest_util.h"
 #include "base/test/launcher/test_results_tracker.h"
 #include "base/test/sequenced_worker_pool_owner.h"
 #include "base/test/test_switches.h"
@@ -900,61 +901,56 @@
 }
 
 void TestLauncher::RunTests() {
-  testing::UnitTest* const unit_test = testing::UnitTest::GetInstance();
+  std::vector<SplitTestName> tests(GetCompiledInTests());
 
   std::vector<std::string> test_names;
 
-  for (int i = 0; i < unit_test->total_test_case_count(); ++i) {
-    const testing::TestCase* test_case = unit_test->GetTestCase(i);
-    for (int j = 0; j < test_case->total_test_count(); ++j) {
-      const testing::TestInfo* test_info = test_case->GetTestInfo(j);
-      std::string test_name = FormatFullTestName(
-          test_info->test_case_name(), test_info->name());
+  for (size_t i = 0; i < tests.size(); i++) {
+    std::string test_name = FormatFullTestName(tests[i].first, tests[i].second);
 
-      results_tracker_.AddTest(test_name);
+    results_tracker_.AddTest(test_name);
 
-      const CommandLine* command_line = CommandLine::ForCurrentProcess();
-      if (test_name.find("DISABLED") != std::string::npos) {
-        results_tracker_.AddDisabledTest(test_name);
+    const CommandLine* command_line = CommandLine::ForCurrentProcess();
+    if (test_name.find("DISABLED") != std::string::npos) {
+      results_tracker_.AddDisabledTest(test_name);
 
-        // Skip disabled tests unless explicitly requested.
-        if (!command_line->HasSwitch(kGTestRunDisabledTestsFlag))
-          continue;
-      }
-
-      if (!launcher_delegate_->ShouldRunTest(test_case, test_info))
+      // Skip disabled tests unless explicitly requested.
+      if (!command_line->HasSwitch(kGTestRunDisabledTestsFlag))
         continue;
+    }
 
-      // Skip the test that doesn't match the filter (if given).
-      if (!positive_test_filter_.empty()) {
-        bool found = false;
-        for (size_t k = 0; k < positive_test_filter_.size(); ++k) {
-          if (MatchPattern(test_name, positive_test_filter_[k])) {
-            found = true;
-            break;
-          }
-        }
+    if (!launcher_delegate_->ShouldRunTest(tests[i].first, tests[i].second))
+      continue;
 
-        if (!found)
-          continue;
-      }
-      bool excluded = false;
-      for (size_t k = 0; k < negative_test_filter_.size(); ++k) {
-        if (MatchPattern(test_name, negative_test_filter_[k])) {
-          excluded = true;
+    // Skip the test that doesn't match the filter (if given).
+    if (!positive_test_filter_.empty()) {
+      bool found = false;
+      for (size_t k = 0; k < positive_test_filter_.size(); ++k) {
+        if (MatchPattern(test_name, positive_test_filter_[k])) {
+          found = true;
           break;
         }
       }
-      if (excluded)
-        continue;
 
-      if (base::Hash(test_name) % total_shards_ !=
-          static_cast<uint32>(shard_index_)) {
+      if (!found)
         continue;
-      }
-
-      test_names.push_back(test_name);
     }
+    bool excluded = false;
+    for (size_t k = 0; k < negative_test_filter_.size(); ++k) {
+      if (MatchPattern(test_name, negative_test_filter_[k])) {
+        excluded = true;
+        break;
+      }
+    }
+    if (excluded)
+      continue;
+
+    if (base::Hash(test_name) % total_shards_ !=
+        static_cast<uint32>(shard_index_)) {
+      continue;
+    }
+
+    test_names.push_back(test_name);
   }
 
   test_started_count_ = launcher_delegate_->RunTests(this, test_names);
diff --git a/base/test/launcher/test_launcher.h b/base/test/launcher/test_launcher.h
index 8c72ee7..78a854b 100644
--- a/base/test/launcher/test_launcher.h
+++ b/base/test/launcher/test_launcher.h
@@ -43,8 +43,8 @@
   // Called before a test is considered for running. If it returns false,
   // the test is not run. If it returns true, the test will be run provided
   // it is part of the current shard.
-  virtual bool ShouldRunTest(const testing::TestCase* test_case,
-                             const testing::TestInfo* test_info) = 0;
+  virtual bool ShouldRunTest(const std::string& test_case_name,
+                             const std::string& test_name) = 0;
 
   // Called to make the delegate run the specified tests. The delegate must
   // return the number of actual tests it's going to run (can be smaller,
diff --git a/base/test/launcher/test_launcher_ios.cc b/base/test/launcher/test_launcher_ios.cc
index 38e4ef9..39051ca 100644
--- a/base/test/launcher/test_launcher_ios.cc
+++ b/base/test/launcher/test_launcher_ios.cc
@@ -4,6 +4,7 @@
 
 #include "base/test/launcher/test_launcher.h"
 
+#include "base/at_exit.h"
 #include "base/bind.h"
 #include "base/test/launcher/unit_test_launcher.h"
 
@@ -16,5 +17,6 @@
 }  // namespace
 
 int main(int argc, char** argv) {
+  base::AtExitManager at_exit;
   return base::LaunchUnitTests(argc, argv, base::Bind(&DummyRunTestSuite));
 }
diff --git a/base/test/launcher/unit_test_launcher.cc b/base/test/launcher/unit_test_launcher.cc
index a49e777..6309cde 100644
--- a/base/test/launcher/unit_test_launcher.cc
+++ b/base/test/launcher/unit_test_launcher.cc
@@ -118,8 +118,8 @@
     FilePath output_file;
   };
 
-  bool ShouldRunTest(const testing::TestCase* test_case,
-                     const testing::TestInfo* test_info) override {
+  bool ShouldRunTest(const std::string& test_case_name,
+                     const std::string& test_name) override {
     DCHECK(thread_checker_.CalledOnValidThread());
 
     // There is no additional logic to disable specific tests.
diff --git a/base/test/launcher/unit_test_launcher_ios.cc b/base/test/launcher/unit_test_launcher_ios.cc
index ae08acd..d4276c8 100644
--- a/base/test/launcher/unit_test_launcher_ios.cc
+++ b/base/test/launcher/unit_test_launcher_ios.cc
@@ -4,13 +4,31 @@
 
 #include "base/test/launcher/unit_test_launcher.h"
 
+#include "base/command_line.h"
+#include "base/files/file_path.h"
+#include "base/logging.h"
+#include "base/test/gtest_util.h"
+#include "base/test/test_switches.h"
+
 namespace base {
 
 int LaunchUnitTests(int argc,
                     char** argv,
                     const RunTestSuiteCallback& run_test_suite) {
-  // Stub implementation - iOS doesn't support features we need for
-  // the full test launcher (e.g. process_util).
+  CHECK(CommandLine::InitializedForCurrentProcess() ||
+        CommandLine::Init(argc, argv));
+  const CommandLine* command_line = CommandLine::ForCurrentProcess();
+  if (command_line->HasSwitch(switches::kTestLauncherListTests)) {
+    FilePath list_path(command_line->GetSwitchValuePath(
+        switches::kTestLauncherListTests));
+    if (WriteCompiledInTestsToFile(list_path)) {
+      return 0;
+    } else {
+      LOG(ERROR) << "Failed to write list of tests.";
+      return 1;
+    }
+  }
+
   return run_test_suite.Run();
 }
 
diff --git a/base/test/scoped_path_override.cc b/base/test/scoped_path_override.cc
index 495ba2f..9a77611 100644
--- a/base/test/scoped_path_override.cc
+++ b/base/test/scoped_path_override.cc
@@ -22,6 +22,16 @@
   CHECK(result);
 }
 
+ScopedPathOverride::ScopedPathOverride(int key,
+                                       const FilePath& path,
+                                       bool is_absolute,
+                                       bool create)
+    : key_(key) {
+  bool result =
+      PathService::OverrideAndCreateIfNeeded(key, path, is_absolute, create);
+  CHECK(result);
+}
+
 ScopedPathOverride::~ScopedPathOverride() {
    bool result = PathService::RemoveOverride(key_);
    CHECK(result) << "The override seems to have been removed already!";
diff --git a/base/test/scoped_path_override.h b/base/test/scoped_path_override.h
index a1e18e3..c6cffe2 100644
--- a/base/test/scoped_path_override.h
+++ b/base/test/scoped_path_override.h
@@ -20,8 +20,15 @@
  public:
   // Contructor that initializes the override to a scoped temp directory.
   explicit ScopedPathOverride(int key);
+
   // Constructor that would use a path provided by the user.
   ScopedPathOverride(int key, const FilePath& dir);
+
+  // See PathService::OverrideAndCreateIfNeeded.
+  ScopedPathOverride(int key,
+                     const FilePath& path,
+                     bool is_absolute,
+                     bool create);
   ~ScopedPathOverride();
 
  private:
diff --git a/base/test/test_suite.cc b/base/test/test_suite.cc
index 206507b..a6fc201 100644
--- a/base/test/test_suite.cc
+++ b/base/test/test_suite.cc
@@ -58,19 +58,19 @@
 class TestClientInitializer : public testing::EmptyTestEventListener {
  public:
   TestClientInitializer()
-      : old_command_line_(CommandLine::NO_PROGRAM) {
+      : old_command_line_(base::CommandLine::NO_PROGRAM) {
   }
 
   virtual void OnTestStart(const testing::TestInfo& test_info) override {
-    old_command_line_ = *CommandLine::ForCurrentProcess();
+    old_command_line_ = *base::CommandLine::ForCurrentProcess();
   }
 
   virtual void OnTestEnd(const testing::TestInfo& test_info) override {
-    *CommandLine::ForCurrentProcess() = old_command_line_;
+    *base::CommandLine::ForCurrentProcess() = old_command_line_;
   }
 
  private:
-  CommandLine old_command_line_;
+  base::CommandLine old_command_line_;
 
   DISALLOW_COPY_AND_ASSIGN(TestClientInitializer);
 };
@@ -108,11 +108,11 @@
 
 TestSuite::~TestSuite() {
   if (initialized_command_line_)
-    CommandLine::Reset();
+    base::CommandLine::Reset();
 }
 
 void TestSuite::InitializeFromCommandLine(int argc, char** argv) {
-  initialized_command_line_ = CommandLine::Init(argc, argv);
+  initialized_command_line_ = base::CommandLine::Init(argc, argv);
   testing::InitGoogleTest(&argc, argv);
   testing::InitGoogleMock(&argc, argv);
 
@@ -124,7 +124,7 @@
 #if defined(OS_WIN)
 void TestSuite::InitializeFromCommandLine(int argc, wchar_t** argv) {
   // Windows CommandLine::Init ignores argv anyway.
-  initialized_command_line_ = CommandLine::Init(argc, NULL);
+  initialized_command_line_ = base::CommandLine::Init(argc, NULL);
   testing::InitGoogleTest(&argc, argv);
   testing::InitGoogleMock(&argc, argv);
 }
@@ -174,13 +174,13 @@
 #if !defined(OS_IOS)
 void TestSuite::AddTestLauncherResultPrinter() {
   // Only add the custom printer if requested.
-  if (!CommandLine::ForCurrentProcess()->HasSwitch(
+  if (!base::CommandLine::ForCurrentProcess()->HasSwitch(
           switches::kTestLauncherOutput)) {
     return;
   }
 
-  FilePath output_path(CommandLine::ForCurrentProcess()->GetSwitchValuePath(
-                           switches::kTestLauncherOutput));
+  FilePath output_path(base::CommandLine::ForCurrentProcess()->
+                           GetSwitchValuePath(switches::kTestLauncherOutput));
 
   // Do not add the result printer if output path already exists. It's an
   // indicator there is a process printing to that file, and we're likely
@@ -212,7 +212,7 @@
 
   Initialize();
   std::string client_func =
-      CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
+      base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
           switches::kTestChildProcess);
 
   // Check to see if we are being run as a client process.
@@ -315,7 +315,8 @@
 
   // In some cases, we do not want to see standard error dialogs.
   if (!base::debug::BeingDebugged() &&
-      !CommandLine::ForCurrentProcess()->HasSwitch("show-error-dialogs")) {
+      !base::CommandLine::ForCurrentProcess()->HasSwitch(
+          "show-error-dialogs")) {
     SuppressErrorDialogs();
     base::debug::SetSuppressDebugUI(true);
     logging::SetLogAssertHandler(UnitTestAssertHandler);
diff --git a/base/test/test_switches.cc b/base/test/test_switches.cc
index c970fd2..4d8331d 100644
--- a/base/test/test_switches.cc
+++ b/base/test/test_switches.cc
@@ -24,6 +24,9 @@
 // Number of parallel test launcher jobs.
 const char switches::kTestLauncherJobs[] = "test-launcher-jobs";
 
+// Path to list of compiled in tests.
+const char switches::kTestLauncherListTests[] = "test-launcher-list-tests";
+
 // Path to test results file in our custom test launcher format.
 const char switches::kTestLauncherOutput[] = "test-launcher-output";
 
diff --git a/base/test/test_switches.h b/base/test/test_switches.h
index c228cf0..336d036 100644
--- a/base/test/test_switches.h
+++ b/base/test/test_switches.h
@@ -14,6 +14,7 @@
 extern const char kTestLauncherDebugLauncher[];
 extern const char kTestLauncherFilterFile[];
 extern const char kTestLauncherJobs[];
+extern const char kTestLauncherListTests[];
 extern const char kTestLauncherOutput[];
 extern const char kTestLauncherRetryLimit[];
 extern const char kTestLauncherSummaryOutput[];
diff --git a/base/test/test_timeouts.cc b/base/test/test_timeouts.cc
index c84cd38..66ae85e 100644
--- a/base/test/test_timeouts.cc
+++ b/base/test/test_timeouts.cc
@@ -41,9 +41,9 @@
 // by kTimeoutMultiplier.
 void InitializeTimeout(const char* switch_name, int min_value, int* value) {
   DCHECK(value);
-  if (CommandLine::ForCurrentProcess()->HasSwitch(switch_name)) {
-    std::string string_value(
-        CommandLine::ForCurrentProcess()->GetSwitchValueASCII(switch_name));
+  if (base::CommandLine::ForCurrentProcess()->HasSwitch(switch_name)) {
+    std::string string_value(base::CommandLine::ForCurrentProcess()->
+         GetSwitchValueASCII(switch_name));
     int timeout;
     base::StringToInt(string_value, &timeout);
     *value = std::max(*value, timeout);
diff --git a/base/threading/thread_unittest.cc b/base/threading/thread_unittest.cc
index f3fb334..f4d024f 100644
--- a/base/threading/thread_unittest.cc
+++ b/base/threading/thread_unittest.cc
@@ -133,7 +133,12 @@
   // Ensure that the thread can work with only 12 kb and still process a
   // message.
   Thread::Options options;
+#if defined(ADDRESS_SANITIZER) && defined(OS_MACOSX)
+  // ASan bloats the stack variables and overflows the 12 kb stack on OSX.
+  options.stack_size = 24*1024;
+#else
   options.stack_size = 12*1024;
+#endif
   EXPECT_TRUE(a.StartWithOptions(options));
   EXPECT_TRUE(a.message_loop());
   EXPECT_TRUE(a.IsRunning());
diff --git a/base/tracked_objects.cc b/base/tracked_objects.cc
index 5e30762..4320509 100644
--- a/base/tracked_objects.cc
+++ b/base/tracked_objects.cc
@@ -76,10 +76,10 @@
   base::subtle::Atomic32 current_timing_enabled =
       base::subtle::NoBarrier_Load(&g_profiler_timing_enabled);
   if (current_timing_enabled == UNDEFINED_TIMING) {
-    if (!CommandLine::InitializedForCurrentProcess())
+    if (!base::CommandLine::InitializedForCurrentProcess())
       return true;
     current_timing_enabled =
-        (CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
+        (base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
              switches::kProfilerTiming) ==
          switches::kProfilerTimingDisabledValue)
             ? DISABLED_TIMING
diff --git a/base/win/pe_image.cc b/base/win/pe_image.cc
index db28699..572b4d9 100644
--- a/base/win/pe_image.cc
+++ b/base/win/pe_image.cc
@@ -10,14 +10,7 @@
 namespace base {
 namespace win {
 
-#if defined(_WIN64) && !defined(NACL_WIN64)
-// TODO(jschuh): crbug.com/167707 Make sure this is ok.
-#pragma message ("Warning: \
- This code is not tested on x64. Please make sure all the base unit tests\
- pass before doing any real work. The current unit tests don't test the\
- differences between 32- and 64-bits implementations. Bugs may slip through.\
- You need to improve the coverage before continuing.")
-#endif
+// TODO(jschuh): crbug.com/167707 Make sure this code works on 64-bit.
 
 // Structure to perform imports enumerations.
 struct EnumAllImportsStorage {
diff --git a/base/win/scoped_comptr.h b/base/win/scoped_comptr.h
index 98cea0f..373c0c3 100644
--- a/base/win/scoped_comptr.h
+++ b/base/win/scoped_comptr.h
@@ -133,8 +133,7 @@
     ScopedComPtr<IUnknown> other_identity;
     other->QueryInterface(other_identity.Receive());
 
-    return static_cast<IUnknown*>(my_identity) ==
-           static_cast<IUnknown*>(other_identity);
+    return my_identity == other_identity;
   }
 
   // Provides direct access to the interface.
diff --git a/build/all.gyp b/build/all.gyp
index 5fe54d7..9c325fb 100644
--- a/build/all.gyp
+++ b/build/all.gyp
@@ -843,6 +843,7 @@
             '../chrome/chrome.gyp:chrome_shell_test_apk',
             '../chrome/chrome.gyp:chrome_sync_shell_test_apk',
             '../chrome/chrome.gyp:chrome_shell_uiautomator_tests',
+            '../chrome/chrome.gyp:chromedriver_webview_shell_apk',
             '../chrome/chrome.gyp:unit_tests_apk',
             '../components/components_tests.gyp:components_unittests_apk',
             '../content/content_shell_and_tests.gyp:content_browsertests_apk',
diff --git a/build/android/PRESUBMIT.py b/build/android/PRESUBMIT.py
index f226b37..7bce71b 100644
--- a/build/android/PRESUBMIT.py
+++ b/build/android/PRESUBMIT.py
@@ -64,6 +64,7 @@
           J('pylib', 'device', 'device_utils_test.py'),
           J('pylib', 'gtest', 'test_package_test.py'),
           J('pylib', 'instrumentation', 'test_runner_test.py'),
+          J('pylib', 'results', 'json_results_test.py'),
           J('pylib', 'utils', 'md5sum_test.py'),
       ],
       env=pylib_test_env))
diff --git a/build/android/adb_gdb b/build/android/adb_gdb
index 07178c2..3d8c70c 100755
--- a/build/android/adb_gdb
+++ b/build/android/adb_gdb
@@ -338,7 +338,7 @@
 fi
 
 if [ -z "$NDK_DIR" ]; then
-  ANDROID_NDK_ROOT=$(PYTHONPATH=build/android python -c \
+  ANDROID_NDK_ROOT=$(PYTHONPATH=$CHROMIUM_SRC/build/android python -c \
 'from pylib.constants import ANDROID_NDK_ROOT; print ANDROID_NDK_ROOT,')
 else
   if [ ! -d "$NDK_DIR" ]; then
diff --git a/build/android/buildbot/bb_device_steps.py b/build/android/buildbot/bb_device_steps.py
index 3142b23..3ca0f4d 100755
--- a/build/android/buildbot/bb_device_steps.py
+++ b/build/android/buildbot/bb_device_steps.py
@@ -78,6 +78,11 @@
       'org.chromium.chrome.browser.sync',
       'ChromeSyncShellTest',
       None),
+    I('ChromeDriverWebViewShell',
+      'ChromeDriverWebViewShell.apk',
+      'org.chromium.chromedriver_webview_shell',
+      None,
+      None),
     ])
 
 VALID_TESTS = set(['chromedriver', 'chrome_proxy', 'gpu',
diff --git a/build/android/buildbot/bb_run_bot.py b/build/android/buildbot/bb_run_bot.py
index abdd2be..38ff93a 100755
--- a/build/android/buildbot/bb_run_bot.py
+++ b/build/android/buildbot/bb_run_bot.py
@@ -158,8 +158,9 @@
         T(std_tests, ['--asan', '--asan-symbolize'])),
       B('blink-try-builder', H(compile_step)),
       B('chromedriver-fyi-tests-dbg', H(std_test_steps),
-        T(['chromedriver'], ['--install=ChromeShell', '--skip-wipe',
-          '--cleanup'])),
+        T(['chromedriver'],
+          ['--install=ChromeShell', '--install=ChromeDriverWebViewShell',
+           '--skip-wipe', '--cleanup'])),
       B('fyi-x86-builder-dbg',
         H(compile_step + std_host_tests, experimental, target_arch='ia32')),
       B('fyi-builder-dbg',
diff --git a/build/android/findbugs_filter/findbugs_exclude.xml b/build/android/findbugs_filter/findbugs_exclude.xml
index 59aa92f..06358d9 100644
--- a/build/android/findbugs_filter/findbugs_exclude.xml
+++ b/build/android/findbugs_filter/findbugs_exclude.xml
@@ -75,6 +75,11 @@
     <Bug code="Dm" />
   </Match>
   <Match>
+    <Class name="~org\.chromium\.chrome\..*\.NotificationService" />
+    <Method name="dispatchIntentOnUIThread" />
+    <Bug code="Dm" />
+  </Match>
+  <Match>
     <Class name="~org\.chromium\.content\..*\.ChildProcessService.*" />
     <Method name="run" />
     <Bug code="Dm" />
diff --git a/build/android/gyp/delete_files.py b/build/android/gyp/delete_files.py
deleted file mode 100755
index 2fd945c..0000000
--- a/build/android/gyp/delete_files.py
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/usr/bin/env python
-# Copyright 2014 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.
-
-"""Delete files in directories matching a pattern.
-"""
-
-import glob
-import optparse
-import os
-import sys
-
-from util import build_utils
-
-def main():
-  parser = optparse.OptionParser()
-  parser.add_option(
-      '--pattern',
-      help='Pattern for matching Files to delete.')
-  parser.add_option(
-      '--keep',
-      help='Files to keep even if they matches the pattern.')
-  parser.add_option(
-      '--stamp',
-      help='Path to touch on success')
-
-  options, args = parser.parse_args()
-
-  if not options.pattern or not args:
-    print 'No --pattern or target directories given'
-    return
-
-  for target_dir in args:
-    target_pattern = os.path.join(target_dir, options.pattern)
-    matching_files = glob.glob(target_pattern)
-
-    keep_pattern = os.path.join(target_dir, options.keep)
-    files_to_keep = glob.glob(keep_pattern)
-
-    for target_file in matching_files:
-      if target_file in files_to_keep:
-        continue
-
-      if os.path.isfile(target_file):
-        os.remove(target_file)
-
-  if options.stamp:
-    build_utils.Touch(options.stamp)
-
-if __name__ == '__main__':
-  sys.exit(main())
-
diff --git a/build/android/gyp/test/BUILD.gn b/build/android/gyp/test/BUILD.gn
index 6621489..2deac1d 100644
--- a/build/android/gyp/test/BUILD.gn
+++ b/build/android/gyp/test/BUILD.gn
@@ -5,7 +5,9 @@
 }
 
 java_binary("hello_world") {
-  deps = [ ":hello_world_java" ]
+  deps = [
+    ":hello_world_java",
+  ]
   java_files = [ "java/org/chromium/helloworld/HelloWorldMain.java" ]
   main_class = "org.chromium.helloworld.HelloWorldMain"
 }
diff --git a/build/android/gyp/write_build_config.py b/build/android/gyp/write_build_config.py
index ed68e6c..a14ef77 100755
--- a/build/android/gyp/write_build_config.py
+++ b/build/android/gyp/write_build_config.py
@@ -213,13 +213,17 @@
         c['package_name'] for c in all_resources_deps if 'package_name' in c]
 
 
-  if options.type == 'android_apk':
-    config['apk_dex'] = {}
-    dex_config = config['apk_dex']
+  # Dependencies for the final dex file of an apk or the standalone .dex.jar
+  # output of a library.
+  if options.type == 'android_apk' or (options.type == "java_library"
+                                       and options.supports_android):
+    config['final_dex'] = {}
+    dex_config = config['final_dex']
     # TODO(cjhopman): proguard version
     dex_deps_files = [c['dex_path'] for c in all_library_deps]
     dex_config['dependency_dex_files'] = dex_deps_files
 
+  if options.type == 'android_apk':
     config['dist_jar'] = {
       'dependency_jars': [
         c['jar_path'] for c in all_library_deps
diff --git a/build/android/provision_devices.py b/build/android/provision_devices.py
index 0dc8c81..c719754 100755
--- a/build/android/provision_devices.py
+++ b/build/android/provision_devices.py
@@ -179,7 +179,7 @@
         logging.error('Unable to obtain battery info for %s, %s',
                       str(device), e)
 
-      while int(battery_info.get('level', 100)) < 95:
+      while int(battery_info.get('level', 100)) < options.min_battery_level:
         if not device.old_interface.IsDeviceCharging():
           if device.old_interface.CanControlUsbCharging():
             device.old_interface.EnableUsbCharging()
@@ -237,6 +237,9 @@
   logging.getLogger().setLevel(logging.INFO)
 
   parser = optparse.OptionParser()
+  parser.add_option('--min-battery-level', default=95, type='int',
+                    help="Minimum battery level for performance testing "
+                         "(default: 95).")
   parser.add_option('--skip-wipe', action='store_true', default=False,
                     help="Don't wipe device data during provisioning.")
   parser.add_option('--disable-location', action='store_true', default=False,
diff --git a/build/android/pylib/base/environment_factory.py b/build/android/pylib/base/environment_factory.py
index ad2eafd..c96d199 100644
--- a/build/android/pylib/base/environment_factory.py
+++ b/build/android/pylib/base/environment_factory.py
@@ -3,7 +3,7 @@
 # found in the LICENSE file.
 
 
-def CreateEnvironment(_command, _options, error_func):
+def CreateEnvironment(_args, error_func):
 
   # TODO(jbudorick) Add local device environment.
   # TODO(jbudorick) Add local machine environment.
diff --git a/build/android/pylib/base/test_instance_factory.py b/build/android/pylib/base/test_instance_factory.py
index fd74b96..9f62278 100644
--- a/build/android/pylib/base/test_instance_factory.py
+++ b/build/android/pylib/base/test_instance_factory.py
@@ -3,7 +3,7 @@
 # found in the LICENSE file.
 
 
-def CreateTestInstance(_command, _options, error_func):
+def CreateTestInstance(_args, error_func):
 
   # TODO(jbudorick) Add gtest test instance.
   # TODO(jbudorick) Add instrumentation test instance.
diff --git a/build/android/pylib/base/test_run_factory.py b/build/android/pylib/base/test_run_factory.py
index 50a9690..6ccfb37 100644
--- a/build/android/pylib/base/test_run_factory.py
+++ b/build/android/pylib/base/test_run_factory.py
@@ -2,7 +2,7 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-def CreateTestRun(_options, _env, _test_instance, error_func):
+def CreateTestRun(_args, _env, _test_instance, error_func):
 
   # TODO(jbudorick) Add local gtest test runs
   # TODO(jbudorick) Add local instrumentation test runs.
diff --git a/build/android/pylib/constants.py b/build/android/pylib/constants.py
index e89a298..ac57969 100644
--- a/build/android/pylib/constants.py
+++ b/build/android/pylib/constants.py
@@ -120,6 +120,7 @@
 LIGHTTPD_RANDOM_PORT_LAST = 8999
 TEST_SYNC_SERVER_PORT = 9031
 TEST_SEARCH_BY_IMAGE_SERVER_PORT = 9041
+TEST_POLICY_SERVER_PORT = 9051
 
 # The net test server is started from port 10201.
 # TODO(pliard): http://crbug.com/239014. Remove this dirty workaround once
@@ -187,6 +188,7 @@
     'path': os.path.join(DIR_SOURCE_ROOT, 'build', 'android'),
     'test_modules': [
       'pylib.device.device_utils_test',
+      'pylib.results.json_results_test',
       'pylib.utils.md5sum_test',
     ]
   },
@@ -200,6 +202,8 @@
 
 LOCAL_MACHINE_TESTS = ['junit', 'python']
 VALID_ENVIRONMENTS = ['local']
+VALID_TEST_TYPES = ['gtest', 'instrumentation', 'junit', 'linker', 'monkey',
+                    'perf', 'python', 'uiautomator']
 
 
 def GetBuildType():
diff --git a/build/android/pylib/device/adb_wrapper.py b/build/android/pylib/device/adb_wrapper.py
index c7ea310..4981f28 100644
--- a/build/android/pylib/device/adb_wrapper.py
+++ b/build/android/pylib/device/adb_wrapper.py
@@ -9,6 +9,7 @@
 """
 
 import errno
+import logging
 import os
 
 from pylib import cmd_helper
@@ -44,43 +45,48 @@
     Args:
       device_serial: The device serial number as a string.
     """
+    if not device_serial:
+      raise ValueError('A device serial must be specified')
     self._device_serial = str(device_serial)
 
   # pylint: disable=unused-argument
   @classmethod
   @decorators.WithTimeoutAndRetries
-  def _RunAdbCmd(cls, arg_list, timeout=None, retries=None, check_error=True):
-    cmd = [constants.GetAdbPath()] + arg_list
-    exit_code, output = cmd_helper.GetCmdStatusAndOutputWithTimeout(
-      cmd, timeout_retry.CurrentTimeoutThread().GetRemainingTime())
-    if exit_code != 0:
+  def _RunAdbCmd(cls, args, timeout=None, retries=None, device_serial=None,
+                 check_error=True):
+    cmd = [constants.GetAdbPath()]
+    if device_serial is not None:
+      cmd.extend(['-s', device_serial])
+    cmd.extend(args)
+    status, output = cmd_helper.GetCmdStatusAndOutputWithTimeout(
+        cmd, timeout_retry.CurrentTimeoutThread().GetRemainingTime())
+    if status != 0:
       raise device_errors.AdbCommandFailedError(
-          cmd, 'returned non-zero exit code %d and output %r' %
-          (exit_code, output))
+          args, output, status, device_serial)
     # This catches some errors, including when the device drops offline;
     # unfortunately adb is very inconsistent with error reporting so many
     # command failures present differently.
-    if check_error and output[:len('error:')] == 'error:':
-      raise device_errors.AdbCommandFailedError(arg_list, output)
+    if check_error and output.startswith('error:'):
+      raise device_errors.AdbCommandFailedError(args, output)
     return output
   # pylint: enable=unused-argument
 
-  def _DeviceAdbCmd(self, arg_list, timeout, retries, check_error=True):
+  def _RunDeviceAdbCmd(self, args, timeout, retries, check_error=True):
     """Runs an adb command on the device associated with this object.
 
     Args:
-      arg_list: A list of arguments to adb.
+      args: A list of arguments to adb.
       timeout: Timeout in seconds.
       retries: Number of retries.
       check_error: Check that the command doesn't return an error message. This
-        does NOT check the return code of shell commands.
+        does NOT check the exit status of shell commands.
 
     Returns:
       The output of the command.
     """
-    return self._RunAdbCmd(
-        ['-s', self._device_serial] + arg_list, timeout=timeout,
-        retries=retries, check_error=check_error)
+    return self._RunAdbCmd(args, timeout=timeout, retries=retries,
+                           device_serial=self._device_serial,
+                           check_error=check_error)
 
   def __eq__(self, other):
     """Consider instances equal if they refer to the same device.
@@ -117,7 +123,7 @@
       AdbWrapper instances.
     """
     output = cls._RunAdbCmd(['devices'], timeout=timeout, retries=retries)
-    lines = [line.split() for line in output.split('\n')]
+    lines = [line.split() for line in output.splitlines()]
     return [AdbWrapper(line[0]) for line in lines
             if len(line) == 2 and line[1] == 'device']
 
@@ -139,7 +145,7 @@
       retries: (optional) Number of retries to attempt.
     """
     _VerifyLocalFileExists(local)
-    self._DeviceAdbCmd(['push', local, remote], timeout, retries)
+    self._RunDeviceAdbCmd(['push', local, remote], timeout, retries)
 
   def Pull(self, remote, local, timeout=60*5, retries=_DEFAULT_RETRIES):
     """Pulls a file from the device to the host.
@@ -150,17 +156,17 @@
       timeout: (optional) Timeout per try in seconds.
       retries: (optional) Number of retries to attempt.
     """
-    self._DeviceAdbCmd(['pull', remote, local], timeout, retries)
+    self._RunDeviceAdbCmd(['pull', remote, local], timeout, retries)
     _VerifyLocalFileExists(local)
 
-  def Shell(self, command, expect_rc=0, timeout=_DEFAULT_TIMEOUT,
+  def Shell(self, command, expect_status=0, timeout=_DEFAULT_TIMEOUT,
             retries=_DEFAULT_RETRIES):
     """Runs a shell command on the device.
 
     Args:
-      command: The shell command to run.
-      expect_rc: (optional) Check that the command's return code matches this
-        value. Default is 0. If set to None the test is skipped.
+      command: A string with the shell command to run.
+      expect_status: (optional) Check that the command's exit status matches
+        this value. Default is 0. If set to None the test is skipped.
       timeout: (optional) Timeout per try in seconds.
       retries: (optional) Number of retries to attempt.
 
@@ -168,33 +174,30 @@
       The output of the shell command as a string.
 
     Raises:
-      device_errors.AdbCommandFailedError: If the return code doesn't match
-        |expect_rc|.
+      device_errors.AdbCommandFailedError: If the exit status doesn't match
+        |expect_status|.
     """
-    if expect_rc is None:
-      actual_command = command
+    if expect_status is None:
+      args = ['shell', command]
     else:
-      actual_command = '%s; echo %%$?;' % command.rstrip()
-    output = self._DeviceAdbCmd(
-        ['shell', actual_command], timeout, retries, check_error=False)
-    if expect_rc is not None:
+      args = ['shell', '%s; echo %%$?;' % command.rstrip()]
+    output = self._RunDeviceAdbCmd(args, timeout, retries, check_error=False)
+    if expect_status is not None:
       output_end = output.rfind('%')
       if output_end < 0:
-        # causes the string for rc to become empty and also raise a ValueError
+        # causes the status string to become empty and raise a ValueError
         output_end = len(output)
 
       try:
-        rc = int(output[output_end+1:])
+        status = int(output[output_end+1:])
       except ValueError:
+        logging.warning('exit status of shell command %r missing.', command)
         raise device_errors.AdbCommandFailedError(
-            ['shell'], 'command %r on device produced output %r where no'
-            ' valid return code was found' % (actual_command, output),
-            self._device_serial)
-
+            args, output, device_serial=self._device_serial)
       output = output[:output_end]
-      if rc != expect_rc:
-        raise device_errors.AdbShellCommandFailedError(
-            command, rc, output, self._device_serial)
+      if status != expect_status:
+        raise device_errors.AdbCommandFailedError(
+            args, output, status, self._device_serial)
     return output
 
   def Logcat(self, filter_spec=None, timeout=_DEFAULT_TIMEOUT,
@@ -212,7 +215,7 @@
     cmd = ['logcat']
     if filter_spec is not None:
       cmd.append(filter_spec)
-    return self._DeviceAdbCmd(cmd, timeout, retries, check_error=False)
+    return self._RunDeviceAdbCmd(cmd, timeout, retries, check_error=False)
 
   def Forward(self, local, remote, timeout=_DEFAULT_TIMEOUT,
               retries=_DEFAULT_RETRIES):
@@ -232,7 +235,8 @@
       timeout: (optional) Timeout per try in seconds.
       retries: (optional) Number of retries to attempt.
     """
-    self._DeviceAdbCmd(['forward', str(local), str(remote)], timeout, retries)
+    self._RunDeviceAdbCmd(['forward', str(local), str(remote)], timeout,
+                          retries)
 
   def JDWP(self, timeout=_DEFAULT_TIMEOUT, retries=_DEFAULT_RETRIES):
     """List of PIDs of processes hosting a JDWP transport.
@@ -245,7 +249,7 @@
       A list of PIDs as strings.
     """
     return [a.strip() for a in
-            self._DeviceAdbCmd(['jdwp'], timeout, retries).split('\n')]
+            self._RunDeviceAdbCmd(['jdwp'], timeout, retries).split('\n')]
 
   def Install(self, apk_path, forward_lock=False, reinstall=False,
               sd_card=False, timeout=60*2, retries=_DEFAULT_RETRIES):
@@ -268,9 +272,10 @@
     if sd_card:
       cmd.append('-s')
     cmd.append(apk_path)
-    output = self._DeviceAdbCmd(cmd, timeout, retries)
+    output = self._RunDeviceAdbCmd(cmd, timeout, retries)
     if 'Success' not in output:
-      raise device_errors.AdbCommandFailedError(cmd, output)
+      raise device_errors.AdbCommandFailedError(
+          cmd, output, device_serial=self._device_serial)
 
   def Uninstall(self, package, keep_data=False, timeout=_DEFAULT_TIMEOUT,
                 retries=_DEFAULT_RETRIES):
@@ -286,9 +291,10 @@
     if keep_data:
       cmd.append('-k')
     cmd.append(package)
-    output = self._DeviceAdbCmd(cmd, timeout, retries)
+    output = self._RunDeviceAdbCmd(cmd, timeout, retries)
     if 'Failure' in output:
-      raise device_errors.AdbCommandFailedError(cmd, output)
+      raise device_errors.AdbCommandFailedError(
+          cmd, output, device_serial=self._device_serial)
 
   def Backup(self, path, packages=None, apk=False, shared=False,
              nosystem=True, include_all=False, timeout=_DEFAULT_TIMEOUT,
@@ -319,7 +325,7 @@
       cmd.extend(packages)
     assert bool(packages) ^ bool(include_all), (
         'Provide \'packages\' or set \'include_all\' but not both.')
-    ret = self._DeviceAdbCmd(cmd, timeout, retries)
+    ret = self._RunDeviceAdbCmd(cmd, timeout, retries)
     _VerifyLocalFileExists(path)
     return ret
 
@@ -332,7 +338,7 @@
       retries: (optional) Number of retries to attempt.
     """
     _VerifyLocalFileExists(path)
-    self._DeviceAdbCmd(['restore'] + [path], timeout, retries)
+    self._RunDeviceAdbCmd(['restore'] + [path], timeout, retries)
 
   def WaitForDevice(self, timeout=60*5, retries=_DEFAULT_RETRIES):
     """Block until the device is online.
@@ -341,7 +347,7 @@
       timeout: (optional) Timeout per try in seconds.
       retries: (optional) Number of retries to attempt.
     """
-    self._DeviceAdbCmd(['wait-for-device'], timeout, retries)
+    self._RunDeviceAdbCmd(['wait-for-device'], timeout, retries)
 
   def GetState(self, timeout=_DEFAULT_TIMEOUT, retries=_DEFAULT_RETRIES):
     """Get device state.
@@ -353,7 +359,7 @@
     Returns:
       One of 'offline', 'bootloader', or 'device'.
     """
-    return self._DeviceAdbCmd(['get-state'], timeout, retries).strip()
+    return self._RunDeviceAdbCmd(['get-state'], timeout, retries).strip()
 
   def GetDevPath(self, timeout=_DEFAULT_TIMEOUT, retries=_DEFAULT_RETRIES):
     """Gets the device path.
@@ -365,11 +371,11 @@
     Returns:
       The device path (e.g. usb:3-4)
     """
-    return self._DeviceAdbCmd(['get-devpath'], timeout, retries)
+    return self._RunDeviceAdbCmd(['get-devpath'], timeout, retries)
 
   def Remount(self, timeout=_DEFAULT_TIMEOUT, retries=_DEFAULT_RETRIES):
     """Remounts the /system partition on the device read-write."""
-    self._DeviceAdbCmd(['remount'], timeout, retries)
+    self._RunDeviceAdbCmd(['remount'], timeout, retries)
 
   def Reboot(self, to_bootloader=False, timeout=60*5,
              retries=_DEFAULT_RETRIES):
@@ -384,7 +390,7 @@
       cmd = ['reboot-bootloader']
     else:
       cmd = ['reboot']
-    self._DeviceAdbCmd(cmd, timeout, retries)
+    self._RunDeviceAdbCmd(cmd, timeout, retries)
 
   def Root(self, timeout=_DEFAULT_TIMEOUT, retries=_DEFAULT_RETRIES):
     """Restarts the adbd daemon with root permissions, if possible.
@@ -393,7 +399,7 @@
       timeout: (optional) Timeout per try in seconds.
       retries: (optional) Number of retries to attempt.
     """
-    output = self._DeviceAdbCmd(['root'], timeout, retries)
+    output = self._RunDeviceAdbCmd(['root'], timeout, retries)
     if 'cannot' in output:
-      raise device_errors.AdbCommandFailedError(['root'], output)
-
+      raise device_errors.AdbCommandFailedError(
+          ['root'], output, device_serial=self._device_serial)
diff --git a/build/android/pylib/device/adb_wrapper_test.py b/build/android/pylib/device/adb_wrapper_test.py
index 208196a..6a2581c 100644
--- a/build/android/pylib/device/adb_wrapper_test.py
+++ b/build/android/pylib/device/adb_wrapper_test.py
@@ -37,12 +37,12 @@
     return path
 
   def testShell(self):
-    output = self._adb.Shell('echo test', expect_rc=0)
+    output = self._adb.Shell('echo test', expect_status=0)
     self.assertEqual(output.strip(), 'test')
     output = self._adb.Shell('echo test')
     self.assertEqual(output.strip(), 'test')
-    self.assertRaises(device_errors.AdbShellCommandFailedError,
-        self._adb.Shell, 'echo test', expect_rc=1)
+    with self.assertRaises(device_errors.AdbCommandFailedError):
+        self._adb.Shell('echo test', expect_status=1)
 
   def testPushPull(self):
     path = self._MakeTempFile('foo')
@@ -56,16 +56,16 @@
 
   def testInstall(self):
     path = self._MakeTempFile('foo')
-    self.assertRaises(device_errors.AdbCommandFailedError, self._adb.Install,
-                      path)
+    with self.assertRaises(device_errors.AdbCommandFailedError):
+      self._adb.Install(path)
 
   def testForward(self):
-    self.assertRaises(device_errors.AdbCommandFailedError, self._adb.Forward,
-                      0, 0)
+    with self.assertRaises(device_errors.AdbCommandFailedError):
+      self._adb.Forward(0, 0)
 
   def testUninstall(self):
-    self.assertRaises(device_errors.AdbCommandFailedError, self._adb.Uninstall,
-        'some.nonexistant.package')
+    with self.assertRaises(device_errors.AdbCommandFailedError):
+      self._adb.Uninstall('some.nonexistant.package')
 
   def testRebootWaitForDevice(self):
     self._adb.Reboot()
diff --git a/build/android/pylib/device/device_errors.py b/build/android/pylib/device/device_errors.py
index 7d1ebe6..170637d 100644
--- a/build/android/pylib/device/device_errors.py
+++ b/build/android/pylib/device/device_errors.py
@@ -6,6 +6,9 @@
 Exception classes raised by AdbWrapper and DeviceUtils.
 """
 
+from pylib import cmd_helper
+
+
 class BaseError(Exception):
   """Base exception for all device and command errors."""
   pass
@@ -14,31 +17,35 @@
 class CommandFailedError(BaseError):
   """Exception for command failures."""
 
-  def __init__(self, msg, device=None):
-    super(CommandFailedError, self).__init__(
-        '%s%s' % ('(device: %s) ' % device if device else '', msg))
+  def __init__(self, message, device_serial=None):
+    if device_serial is not None:
+      message = '(device: %s) %s' % (device_serial, message)
+    self.device_serial = device_serial
+    super(CommandFailedError, self).__init__(message)
 
 
 class AdbCommandFailedError(CommandFailedError):
   """Exception for adb command failures."""
 
-  def __init__(self, cmd, msg, device=None):
-    super(AdbCommandFailedError, self).__init__(
-        'adb command %r failed with message: %s' % (' '.join(cmd), msg),
-        device=device)
-
-
-class AdbShellCommandFailedError(AdbCommandFailedError):
-  """Exception for adb shell command failing with non-zero return code."""
-
-  def __init__(self, cmd, return_code, output, device=None):
-    super(AdbShellCommandFailedError, self).__init__(
-        ['shell'],
-        'command %r on device failed with return code %d and output %r'
-        % (cmd, return_code, output),
-        device=device)
-    self.return_code = return_code
+  def __init__(self, cmd, output, status=None, device_serial=None):
+    self.cmd = cmd
     self.output = output
+    self.status = status
+    message = []
+    if self.cmd[0] == 'shell':
+      assert len(self.cmd) == 2
+      message.append('adb shell command %r failed with' % self.cmd[1])
+    else:
+      command = ' '.join(cmd_helper.SingleQuote(arg) for arg in self.cmd)
+      message.append('adb command %r failed with' % command)
+    if status:
+      message.append(' exit status %d and' % self.status)
+    if output:
+      message.append(' output:\n')
+      message.extend('> %s\n' % line for line in output.splitlines())
+    else:
+      message.append(' no output')
+    super(AdbCommandFailedError, self).__init__(''.join(message), device_serial)
 
 
 class CommandTimeoutError(BaseError):
diff --git a/build/android/pylib/device/device_utils.py b/build/android/pylib/device/device_utils.py
index 845d580..0ff3a84 100644
--- a/build/android/pylib/device/device_utils.py
+++ b/build/android/pylib/device/device_utils.py
@@ -65,8 +65,8 @@
     """DeviceUtils constructor.
 
     Args:
-      device: Either a device serial, an existing AdbWrapper instance, an
-              an existing AndroidCommands instance, or nothing.
+      device: Either a device serial, an existing AdbWrapper instance, or an
+              an existing AndroidCommands instance.
       default_timeout: An integer containing the default number of seconds to
                        wait for an operation to complete if no explicit value
                        is provided.
@@ -85,11 +85,8 @@
     elif isinstance(device, pylib.android_commands.AndroidCommands):
       self.adb = adb_wrapper.AdbWrapper(device.GetDevice())
       self.old_interface = device
-    elif not device:
-      self.adb = adb_wrapper.AdbWrapper('')
-      self.old_interface = pylib.android_commands.AndroidCommands()
     else:
-      raise ValueError('Unsupported type passed for argument "device"')
+      raise ValueError('Unsupported device value: %r' % device)
     self._commands_installed = None
     self._default_timeout = default_timeout
     self._default_retries = default_retries
@@ -135,7 +132,7 @@
     try:
       self.RunShellCommand('ls /root', check_return=True)
       return True
-    except device_errors.AdbShellCommandFailedError:
+    except device_errors.AdbCommandFailedError:
       return False
 
   def NeedsSU(self, timeout=None, retries=None):
@@ -160,7 +157,7 @@
         self.RunShellCommand('su -c ls /root && ! ls /root', check_return=True,
                              timeout=timeout, retries=retries)
         self._cache['needs_su'] = True
-      except device_errors.AdbShellCommandFailedError:
+      except device_errors.AdbCommandFailedError:
         self._cache['needs_su'] = False
     return self._cache['needs_su']
 
@@ -177,11 +174,13 @@
       CommandFailedError if root could not be enabled.
       CommandTimeoutError on timeout.
     """
+    if self.IsUserBuild():
+      raise device_errors.CommandFailedError(
+          'Cannot enable root in user builds.', str(self))
     if 'needs_su' in self._cache:
       del self._cache['needs_su']
-    if not self.old_interface.EnableAdbRoot():
-      raise device_errors.CommandFailedError(
-          'Could not enable root.', device=str(self))
+    self.adb.Root()
+    self.adb.WaitForDevice()
 
   @decorators.WithTimeoutAndRetriesFromInstance()
   def IsUserBuild(self, timeout=None, retries=None):
@@ -271,7 +270,7 @@
         self.RunShellCommand(['test', '-d', self.GetExternalStoragePath()],
                              check_return=True)
         return True
-      except device_errors.AdbShellCommandFailedError:
+      except device_errors.AdbCommandFailedError:
         return False
 
     def pm_ready():
@@ -354,8 +353,7 @@
           out = self.old_interface.Uninstall(package_name)
           for line in out.splitlines():
             if 'Failure' in line:
-              raise device_errors.CommandFailedError(
-                  line.strip(), device=str(self))
+              raise device_errors.CommandFailedError(line.strip(), str(self))
       else:
         should_install = False
     else:
@@ -365,11 +363,10 @@
         out = self.old_interface.Install(apk_path, reinstall=reinstall)
         for line in out.splitlines():
           if 'Failure' in line:
-            raise device_errors.CommandFailedError(
-                line.strip(), device=str(self))
+            raise device_errors.CommandFailedError(line.strip(), str(self))
       except AssertionError as e:
         raise device_errors.CommandFailedError(
-            str(e), device=str(self)), None, sys.exc_info()[2]
+            str(e), str(self)), None, sys.exc_info()[2]
 
   @decorators.WithTimeoutAndRetriesFromInstance()
   def RunShellCommand(self, cmd, check_return=False, cwd=None, env=None,
@@ -416,7 +413,7 @@
       (with the optional newline at the end stripped).
 
     Raises:
-      AdbShellCommandFailedError if check_return is True and the exit code of
+      AdbCommandFailedError if check_return is True and the exit code of
         the command run on the device is non-zero.
       CommandFailedError if single_line is True but the output contains two or
         more lines.
@@ -444,7 +441,7 @@
 
     try:
       output = self.adb.Shell(cmd)
-    except device_errors.AdbShellCommandFailedError as e:
+    except device_errors.AdbCommandFailedError as e:
       if check_return:
         raise
       else:
@@ -486,7 +483,7 @@
     pids = self._GetPidsImpl(process_name)
     if not pids:
       raise device_errors.CommandFailedError(
-          'No process "%s"' % process_name, device=str(self))
+          'No process "%s"' % process_name, str(self))
 
     cmd = ['kill', '-%d' % signum] + pids.values()
     self.RunShellCommand(cmd, as_root=as_root, check_return=True)
@@ -529,7 +526,7 @@
         force_stop=force_stop, flags=intent.flags)
     for l in output:
       if l.startswith('Error:'):
-        raise device_errors.CommandFailedError(l, device=str(self))
+        raise device_errors.CommandFailedError(l, str(self))
 
   @decorators.WithTimeoutAndRetriesFromInstance()
   def StartInstrumentation(self, component, finish=True, raw=False,
@@ -831,7 +828,11 @@
       CommandTimeoutError on timeout.
       DeviceUnreachableError on missing device.
     """
-    return self.old_interface.FileExistsOnDevice(device_path)
+    try:
+      self.RunShellCommand(['test', '-e', device_path], check_return=True)
+      return True
+    except device_errors.AdbCommandFailedError:
+      return False
 
   @decorators.WithTimeoutAndRetriesFromInstance()
   def PullFile(self, device_path, host_path, timeout=None, retries=None):
@@ -853,7 +854,7 @@
       self.old_interface.PullFileFromDevice(device_path, host_path)
     except AssertionError as e:
       raise device_errors.CommandFailedError(
-          str(e), device=str(self)), None, sys.exc_info()[2]
+          str(e), str(self)), None, sys.exc_info()[2]
 
   @decorators.WithTimeoutAndRetriesFromInstance()
   def ReadFile(self, device_path, as_root=False, timeout=None, retries=None):
@@ -985,6 +986,9 @@
     Raises:
       CommandTimeoutError on timeout.
     """
+    assert isinstance(property_name, basestring), (
+        "property_name is not a string: %r" % property_name)
+
     cache_key = '_prop:' + property_name
     if cache and cache_key in self._cache:
       return self._cache[cache_key]
@@ -1018,6 +1022,10 @@
         set on the device (e.g. because it is not rooted).
       CommandTimeoutError on timeout.
     """
+    assert isinstance(property_name, basestring), (
+        "property_name is not a string: %r" % property_name)
+    assert isinstance(value, basestring), "value is not a string: %r" % value
+
     self.RunShellCommand(['setprop', property_name, value], check_return=True)
     if property_name in self._cache:
       del self._cache[property_name]
@@ -1134,12 +1142,7 @@
 
   def __str__(self):
     """Returns the device serial."""
-    s = self.old_interface.GetDevice()
-    if not s:
-      s = self.old_interface.Adb().GetSerialNumber()
-      if s == 'unknown':
-        raise device_errors.NoDevicesError()
-    return s
+    return self.adb.GetDeviceSerial()
 
   @staticmethod
   def parallel(devices=None, async=False):
diff --git a/build/android/pylib/device/device_utils_test.py b/build/android/pylib/device/device_utils_test.py
index 8d78b2d..760e61f 100755
--- a/build/android/pylib/device/device_utils_test.py
+++ b/build/android/pylib/device/device_utils_test.py
@@ -43,28 +43,30 @@
   def testInitWithStr(self):
     serial_as_str = str('0123456789abcdef')
     d = device_utils.DeviceUtils('0123456789abcdef')
-    self.assertEqual(serial_as_str, d.old_interface.GetDevice())
+    self.assertEqual(serial_as_str, d.adb.GetDeviceSerial())
 
   def testInitWithUnicode(self):
     serial_as_unicode = unicode('fedcba9876543210')
     d = device_utils.DeviceUtils(serial_as_unicode)
-    self.assertEqual(serial_as_unicode, d.old_interface.GetDevice())
+    self.assertEqual(serial_as_unicode, d.adb.GetDeviceSerial())
 
   def testInitWithAdbWrapper(self):
     serial = '123456789abcdef0'
     a = adb_wrapper.AdbWrapper(serial)
     d = device_utils.DeviceUtils(a)
-    self.assertEqual(serial, d.old_interface.GetDevice())
+    self.assertEqual(serial, d.adb.GetDeviceSerial())
 
   def testInitWithAndroidCommands(self):
     serial = '0fedcba987654321'
     a = android_commands.AndroidCommands(device=serial)
     d = device_utils.DeviceUtils(a)
-    self.assertEqual(serial, d.old_interface.GetDevice())
+    self.assertEqual(serial, d.adb.GetDeviceSerial())
 
-  def testInitWithNone(self):
-    d = device_utils.DeviceUtils(None)
-    self.assertIsNone(d.old_interface.GetDevice())
+  def testInitWithMissing_fails(self):
+    with self.assertRaises(ValueError):
+      device_utils.DeviceUtils(None)
+    with self.assertRaises(ValueError):
+      device_utils.DeviceUtils('')
 
 
 class MockTempFile(object):
@@ -246,12 +248,12 @@
     self.adb.GetDeviceSerial.return_value = test_serial
     self.device = device_utils.DeviceUtils(
         self.adb, default_timeout=10, default_retries=0)
-    self.watchMethodCalls(self.call.adb)
+    self.watchMethodCalls(self.call.adb, ignore=['GetDeviceSerial'])
 
   def ShellError(self, output=None, exit_code=1):
     def action(cmd, *args, **kwargs):
-      raise device_errors.AdbShellCommandFailedError(
-          cmd, exit_code, output, str(self.device))
+      raise device_errors.AdbCommandFailedError(
+          cmd, output, exit_code, str(self.device))
     if output is None:
       output = 'Permission denied\n'
     return action
@@ -295,29 +297,25 @@
       self.assertFalse(self.device.HasRoot())
 
 
-class DeviceUtilsEnableRootTest(DeviceUtilsOldImplTest):
+class DeviceUtilsEnableRootTest(DeviceUtilsNewImplTest):
 
   def testEnableRoot_succeeds(self):
-    with self.assertCallsSequence([
-        ('adb -s 0123456789abcdef shell getprop ro.build.type',
-         'userdebug\r\n'),
-        ('adb -s 0123456789abcdef root', 'restarting adbd as root\r\n'),
-        ('adb -s 0123456789abcdef wait-for-device', ''),
-        ('adb -s 0123456789abcdef wait-for-device', '')]):
+    with self.assertCalls(
+        (self.call.device.IsUserBuild(), False),
+        self.call.adb.Root(),
+        self.call.adb.WaitForDevice()):
       self.device.EnableRoot()
 
   def testEnableRoot_userBuild(self):
-    with self.assertCallsSequence([
-        ('adb -s 0123456789abcdef shell getprop ro.build.type', 'user\r\n')]):
+    with self.assertCalls(
+        (self.call.device.IsUserBuild(), True)):
       with self.assertRaises(device_errors.CommandFailedError):
         self.device.EnableRoot()
 
   def testEnableRoot_rootFails(self):
-    with self.assertCallsSequence([
-        ('adb -s 0123456789abcdef shell getprop ro.build.type',
-         'userdebug\r\n'),
-        ('adb -s 0123456789abcdef root', 'no\r\n'),
-        ('adb -s 0123456789abcdef wait-for-device', '')]):
+    with self.assertCalls(
+        (self.call.device.IsUserBuild(), False),
+        (self.call.adb.Root(), self.CommandError())):
       with self.assertRaises(device_errors.CommandFailedError):
         self.device.EnableRoot()
 
@@ -675,7 +673,7 @@
     cmd = 'ls /root'
     output = 'opendir failed, Permission denied\n'
     with self.assertCall(self.call.adb.Shell(cmd), self.ShellError(output)):
-      with self.assertRaises(device_errors.AdbShellCommandFailedError):
+      with self.assertRaises(device_errors.AdbCommandFailedError):
         self.device.RunShellCommand(cmd, check_return=True)
 
   def testRunShellCommand_checkReturn_disabled(self):
@@ -1084,44 +1082,20 @@
          ('/test/host/path/file2', '/test/device/path/file2')])
 
 
-class DeviceUtilsFileExistsTest(DeviceUtilsOldImplTest):
+class DeviceUtilsFileExistsTest(DeviceUtilsNewImplTest):
 
   def testFileExists_usingTest_fileExists(self):
-    with self.assertCalls(
-        "adb -s 0123456789abcdef shell "
-            "'test -e \"/data/app/test.file.exists\"; echo $?'",
-        '0\r\n'):
-      self.assertTrue(self.device.FileExists('/data/app/test.file.exists'))
+    with self.assertCall(
+        self.call.device.RunShellCommand(
+            ['test', '-e', '/path/file.exists'], check_return=True), ''):
+      self.assertTrue(self.device.FileExists('/path/file.exists'))
 
   def testFileExists_usingTest_fileDoesntExist(self):
-    with self.assertCalls(
-        "adb -s 0123456789abcdef shell "
-            "'test -e \"/data/app/test.file.does.not.exist\"; echo $?'",
-        '1\r\n'):
-      self.assertFalse(self.device.FileExists(
-          '/data/app/test.file.does.not.exist'))
-
-  def testFileExists_usingLs_fileExists(self):
-    with self.assertCallsSequence([
-        ("adb -s 0123456789abcdef shell "
-            "'test -e \"/data/app/test.file.exists\"; echo $?'",
-         'test: not found\r\n'),
-        ("adb -s 0123456789abcdef shell "
-            "'ls \"/data/app/test.file.exists\" >/dev/null 2>&1; echo $?'",
-         '0\r\n')]):
-      self.assertTrue(self.device.FileExists('/data/app/test.file.exists'))
-
-  def testFileExists_usingLs_fileDoesntExist(self):
-    with self.assertCallsSequence([
-        ("adb -s 0123456789abcdef shell "
-            "'test -e \"/data/app/test.file.does.not.exist\"; echo $?'",
-         'test: not found\r\n'),
-        ("adb -s 0123456789abcdef shell "
-            "'ls \"/data/app/test.file.does.not.exist\" "
-            ">/dev/null 2>&1; echo $?'",
-         '1\r\n')]):
-      self.assertFalse(self.device.FileExists(
-          '/data/app/test.file.does.not.exist'))
+    with self.assertCall(
+        self.call.device.RunShellCommand(
+            ['test', '-e', '/does/not/exist'], check_return=True),
+        self.ShellError('', 1)):
+      self.assertFalse(self.device.FileExists('/does/not/exist'))
 
 
 class DeviceUtilsPullFileTest(DeviceUtilsOldImplTest):
@@ -1552,23 +1526,13 @@
       self.assertEqual({}, self.device.GetMemoryUsageForPid(4321))
 
 
-class DeviceUtilsStrTest(DeviceUtilsOldImplTest):
+class DeviceUtilsStrTest(DeviceUtilsNewImplTest):
 
-  def testStr_noAdbCalls(self):
-    with self.assertNoAdbCalls():
+  def testStr_returnsSerial(self):
+    with self.assertCalls(
+        (self.call.adb.GetDeviceSerial(), '0123456789abcdef')):
       self.assertEqual('0123456789abcdef', str(self.device))
 
-  def testStr_noSerial(self):
-    self.device = device_utils.DeviceUtils(None)
-    with self.assertCalls('adb  get-serialno', '0123456789abcdef'):
-      self.assertEqual('0123456789abcdef', str(self.device))
-
-  def testStr_noSerial_noDevices(self):
-    self.device = device_utils.DeviceUtils(None)
-    with self.assertCalls('adb  get-serialno', 'unknown'), (
-         self.assertRaises(device_errors.NoDevicesError)):
-      str(self.device)
-
 
 if __name__ == '__main__':
   logging.getLogger().setLevel(logging.DEBUG)
diff --git a/build/android/pylib/device_settings.py b/build/android/pylib/device_settings.py
index 0580fcf..246c1d1 100644
--- a/build/android/pylib/device_settings.py
+++ b/build/android/pylib/device_settings.py
@@ -81,17 +81,20 @@
   if device.FileExists(_LOCK_SCREEN_SETTINGS_PATH):
     db = _LOCK_SCREEN_SETTINGS_PATH
     locksettings = get_lock_settings('locksettings')
+    columns = ['name', 'user', 'value']
+    generate_values = lambda k, v: [k, '0', v]
   elif device.FileExists(_ALTERNATE_LOCK_SCREEN_SETTINGS_PATH):
     db = _ALTERNATE_LOCK_SCREEN_SETTINGS_PATH
     locksettings = get_lock_settings('secure') + get_lock_settings('system')
+    columns = ['name', 'value']
+    generate_values = lambda k, v: [k, v]
   else:
     logging.warning('Unable to find database file to set lock screen settings.')
     return
 
   for table, key, value in locksettings:
     # Set the lockscreen setting for default user '0'
-    columns = ['name', 'user', 'value']
-    values = [key, '0', value]
+    values = generate_values(key, value)
 
     cmd = """begin transaction;
 delete from '%(table)s' where %(primary_key)s='%(primary_value)s';
diff --git a/build/android/pylib/gtest/test_package_apk.py b/build/android/pylib/gtest/test_package_apk.py
index 4a91278..67571a4 100644
--- a/build/android/pylib/gtest/test_package_apk.py
+++ b/build/android/pylib/gtest/test_package_apk.py
@@ -40,13 +40,8 @@
       self._package_info = constants.PACKAGE_INFO['gtest']
 
   def _CreateCommandLineFileOnDevice(self, device, options):
-    command_line_file = tempfile.NamedTemporaryFile()
-    # GTest expects argv[0] to be the executable path.
-    command_line_file.write(self.suite_name + ' ' + options)
-    command_line_file.flush()
-    device.PushChangedFiles([(
-        command_line_file.name,
-        self._package_info.cmdline_file)])
+    device.WriteFile(self._package_info.cmdline_file,
+                     self.suite_name + ' ' + options)
 
   def _GetFifo(self):
     # The test.fifo path is determined by:
diff --git a/build/android/pylib/host_driven/test_server.py b/build/android/pylib/host_driven/test_server.py
index d6203cc..959e7a9 100644
--- a/build/android/pylib/host_driven/test_server.py
+++ b/build/android/pylib/host_driven/test_server.py
@@ -40,6 +40,7 @@
 # The correct path is determined based on the build type. E.g. out/Debug for
 # debug builds and out/Release for release builds.
 _GENERATED_PYTHONPATH_DIRS = [
+    'pyproto/policy/proto/',
     'pyproto/sync/protocol/',
     'pyproto/'
 ]
@@ -48,6 +49,7 @@
 # Paths for supported test server executables.
 TEST_NET_SERVER_PATH = 'net/tools/testserver/testserver.py'
 TEST_SYNC_SERVER_PATH = 'sync/tools/testserver/sync_testserver.py'
+TEST_POLICY_SERVER_PATH = 'chrome/browser/policy/test/policy_testserver.py'
 # Parameters to check that the server is up and running.
 TEST_SERVER_CHECK_PARAMS = {
   TEST_NET_SERVER_PATH: {
@@ -58,6 +60,10 @@
       'url_path': 'chromiumsync/time',
       'response': '0123456789'
   },
+  TEST_POLICY_SERVER_PATH: {
+      'url_path': 'test/ping',
+      'response': 'Policy server is up.'
+  },
 }
 
 class TestServer(object):
@@ -66,7 +72,8 @@
   For shutting down the server, call TearDown().
   """
 
-  def __init__(self, shard_index, test_server_port, test_server_path):
+  def __init__(self, shard_index, test_server_port, test_server_path,
+               test_server_flags=None):
     """Sets up a Python driven test server on the host machine.
 
     Args:
@@ -75,6 +82,7 @@
                         the shard index. To retrieve the real port access the
                         member variable |port|.
       test_server_path: The path (relative to the root src dir) of the server
+      test_server_flags: Optional list of additional flags to the test server
     """
     self.host = _TEST_SERVER_HOST
     self.port = test_server_port + shard_index
@@ -94,10 +102,11 @@
 
     # NOTE: A separate python process is used to simplify getting the right
     # system path for finding includes.
+    test_server_flags = test_server_flags or []
     cmd = ['python', os.path.join(src_dir, test_server_path),
            '--log-to-console',
            ('--host=%s' % self.host),
-           ('--port=%d' % self.port)]
+           ('--port=%d' % self.port)] + test_server_flags
     self._test_server_process = subprocess.Popen(
           cmd, env={'PYTHONPATH': python_path})
     test_url = 'http://%s:%d/%s' % (self.host, self.port,
diff --git a/build/android/pylib/instrumentation/test_runner_test.py b/build/android/pylib/instrumentation/test_runner_test.py
index 0f2845e..fda1e23 100755
--- a/build/android/pylib/instrumentation/test_runner_test.py
+++ b/build/android/pylib/instrumentation/test_runner_test.py
@@ -27,7 +27,8 @@
     options = mock.Mock()
     options.tool = ''
     package = mock.Mock()
-    self.instance = test_runner.TestRunner(options, None, 0, package)
+    self.instance = test_runner.TestRunner(
+        options, '123456789abcdef0', 0, package)
 
   def testParseAmInstrumentRawOutput_nothing(self):
     code, result, statuses = (
@@ -226,6 +227,8 @@
         'test': ['testMethod'],
       }),
     ]
+    self.instance.device.old_interface.DismissCrashDialogIfNeeded = mock.Mock(
+        return_value=None)
     result = self.instance._GenerateTestResult(
         'test.package.TestClass#testMethod', statuses, 0, 1000)
     self.assertEqual(base_test_result.ResultType.FAIL, result.GetType())
diff --git a/build/android/pylib/junit/setup.py b/build/android/pylib/junit/setup.py
index 6ae0006..94d4277 100644
--- a/build/android/pylib/junit/setup.py
+++ b/build/android/pylib/junit/setup.py
@@ -4,15 +4,17 @@
 
 from pylib.junit import test_runner
 
-def Setup(options):
+def Setup(args):
   """Creates a test runner factory for junit tests.
 
+  Args:
+    args: an argparse.Namespace object.
   Return:
     A (runner_factory, tests) tuple.
   """
 
   def TestRunnerFactory(_unused_device, _unused_shard_index):
-    return test_runner.JavaTestRunner(options)
+    return test_runner.JavaTestRunner(args)
 
   return (TestRunnerFactory, ['JUnit tests'])
 
diff --git a/build/android/pylib/junit/test_runner.py b/build/android/pylib/junit/test_runner.py
index d0803ea..35ac666 100644
--- a/build/android/pylib/junit/test_runner.py
+++ b/build/android/pylib/junit/test_runner.py
@@ -10,12 +10,12 @@
 class JavaTestRunner(object):
   """Runs java tests on the host."""
 
-  def __init__(self, options):
-    self._package_filter = options.package_filter
-    self._runner_filter = options.runner_filter
-    self._sdk_version = options.sdk_version
-    self._test_filter = options.test_filter
-    self._test_suite = options.test_suite
+  def __init__(self, args):
+    self._package_filter = args.package_filter
+    self._runner_filter = args.runner_filter
+    self._sdk_version = args.sdk_version
+    self._test_filter = args.test_filter
+    self._test_suite = args.test_suite
 
   def SetUp(self):
     pass
diff --git a/build/android/pylib/linker/setup.py b/build/android/pylib/linker/setup.py
index ebfac87..ff21f10 100644
--- a/build/android/pylib/linker/setup.py
+++ b/build/android/pylib/linker/setup.py
@@ -16,9 +16,11 @@
                              'common'))
 import unittest_util # pylint: disable=F0401
 
-def Setup(options, _devices):
+def Setup(args, _devices):
   """Creates a list of test cases and a runner factory.
 
+  Args:
+    args: an argparse.Namespace object.
   Returns:
     A tuple of (TestRunnerFactory, tests).
   """
@@ -30,15 +32,15 @@
   low_memory_modes = [False, True]
   all_tests = [t(is_low_memory=m) for t in test_cases for m in low_memory_modes]
 
-  if options.test_filter:
+  if args.test_filter:
     all_test_names = [test.qualified_name for test in all_tests]
     filtered_test_names = unittest_util.FilterTestNames(all_test_names,
-                                                        options.test_filter)
+                                                        args.test_filter)
     all_tests = [t for t in all_tests \
                  if t.qualified_name in filtered_test_names]
 
   def TestRunnerFactory(device, _shard_index):
     return test_runner.LinkerTestRunner(
-        device, options.tool, options.cleanup_test_files)
+        device, args.tool, args.cleanup_test_files)
 
   return (TestRunnerFactory, all_tests)
diff --git a/build/android/pylib/perf/perf_control.py b/build/android/pylib/perf/perf_control.py
index 73cf95c..0da1bcf 100644
--- a/build/android/pylib/perf/perf_control.py
+++ b/build/android/pylib/perf/perf_control.py
@@ -18,7 +18,7 @@
     if isinstance(device, android_commands.AndroidCommands):
       device = device_utils.DeviceUtils(device)
     self._device = device
-    # this will raise an AdbShellCommandFailedError if no CPU files are found
+    # this will raise an AdbCommandFailedError if no CPU files are found
     self._cpu_files = self._device.RunShellCommand(
         'ls -d cpu[0-9]*', cwd=self._CPU_PATH, check_return=True, as_root=True)
     assert self._cpu_files, 'Failed to detect CPUs.'
diff --git a/build/android/pylib/perf/test_options.py b/build/android/pylib/perf/test_options.py
index b04d748..0a0ace0 100644
--- a/build/android/pylib/perf/test_options.py
+++ b/build/android/pylib/perf/test_options.py
@@ -15,4 +15,6 @@
     'test_filter',
     'dry_run',
     'single_step',
+    'collect_chartjson_data',
+    'output_chartjson_data',
 ])
diff --git a/build/android/pylib/perf/test_runner.py b/build/android/pylib/perf/test_runner.py
index c8563a6..a8048d4 100644
--- a/build/android/pylib/perf/test_runner.py
+++ b/build/android/pylib/perf/test_runner.py
@@ -52,7 +52,9 @@
 import logging
 import os
 import pickle
+import shutil
 import sys
+import tempfile
 import threading
 import time
 
@@ -73,6 +75,14 @@
   return 0
 
 
+def OutputChartjson(test_name, json_file_name):
+  file_name = os.path.join(constants.PERF_OUTPUT_DIR, test_name)
+  with file(file_name, 'r') as f:
+    persisted_result = pickle.load(f)
+  with open(json_file_name, 'w') as o:
+    o.write(persisted_result['chartjson'])
+
+
 def PrintTestOutput(test_name):
   """Helper method to print the output of previously executed test_name.
 
@@ -168,6 +178,7 @@
     self._max_shard = max_shard
     self._tests = tests
     self._flaky_tests = flaky_tests
+    self._output_dir = None
 
   @staticmethod
   def _IsBetter(result):
@@ -198,6 +209,19 @@
                  test_name, self.device_serial, affinity, self._shard_index)
     return False
 
+  def _CleanupOutputDirectory(self):
+    if self._output_dir:
+      shutil.rmtree(self._output_dir, ignore_errors=True)
+      self._output_dir = None
+
+  def _ReadChartjsonOutput(self):
+    if not self._output_dir:
+      return ''
+
+    json_output_path = os.path.join(self._output_dir, 'results-chart.json')
+    with open(json_output_path) as f:
+      return f.read()
+
   def _LaunchPerfTest(self, test_name):
     """Runs a perf test.
 
@@ -220,6 +244,11 @@
     cmd = ('%s --device %s' %
            (self._tests['steps'][test_name]['cmd'],
             self.device_serial))
+
+    if self._options.collect_chartjson_data:
+      self._output_dir = tempfile.mkdtemp()
+      cmd = cmd + ' --output-dir=%s' % self._output_dir
+
     logging.info('%s : %s', test_name, cmd)
     start_time = datetime.datetime.now()
 
@@ -241,10 +270,13 @@
     try:
       exit_code, output = cmd_helper.GetCmdStatusAndOutputWithTimeout(
           full_cmd, timeout, cwd=cwd, shell=True, logfile=logfile)
+      json_output = self._ReadChartjsonOutput()
     except cmd_helper.TimeoutError as e:
       exit_code = -1
       output = str(e)
+      json_output = ''
     finally:
+      self._CleanupOutputDirectory()
       if self._options.single_step:
         logfile.stop()
     end_time = datetime.datetime.now()
@@ -277,6 +309,7 @@
     persisted_result = {
         'name': test_name,
         'output': output,
+        'chartjson': json_output,
         'exit_code': exit_code,
         'actual_exit_code': actual_exit_code,
         'result_type': result_type,
diff --git a/build/android/pylib/results/__init__.py b/build/android/pylib/results/__init__.py
new file mode 100644
index 0000000..4d6aabb
--- /dev/null
+++ b/build/android/pylib/results/__init__.py
@@ -0,0 +1,3 @@
+# Copyright 2014 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.
diff --git a/build/android/pylib/results/flakiness_dashboard/__init__.py b/build/android/pylib/results/flakiness_dashboard/__init__.py
new file mode 100644
index 0000000..4d6aabb
--- /dev/null
+++ b/build/android/pylib/results/flakiness_dashboard/__init__.py
@@ -0,0 +1,3 @@
+# Copyright 2014 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.
diff --git a/build/android/pylib/utils/json_results_generator.py b/build/android/pylib/results/flakiness_dashboard/json_results_generator.py
similarity index 100%
rename from build/android/pylib/utils/json_results_generator.py
rename to build/android/pylib/results/flakiness_dashboard/json_results_generator.py
diff --git a/build/android/pylib/utils/flakiness_dashboard_results_uploader.py b/build/android/pylib/results/flakiness_dashboard/results_uploader.py
similarity index 97%
rename from build/android/pylib/utils/flakiness_dashboard_results_uploader.py
rename to build/android/pylib/results/flakiness_dashboard/results_uploader.py
index ff286b6..856fa9c 100644
--- a/build/android/pylib/utils/flakiness_dashboard_results_uploader.py
+++ b/build/android/pylib/results/flakiness_dashboard/results_uploader.py
@@ -12,10 +12,9 @@
 import xml
 
 
-#TODO(craigdh): pylib/utils/ should not depend on pylib/.
 from pylib import cmd_helper
 from pylib import constants
-from pylib.utils import json_results_generator
+from pylib.results.flakiness_dashboard import json_results_generator
 from pylib.utils import repo_utils
 
 
diff --git a/build/android/pylib/results/json_results.py b/build/android/pylib/results/json_results.py
new file mode 100644
index 0000000..c34244e
--- /dev/null
+++ b/build/android/pylib/results/json_results.py
@@ -0,0 +1,73 @@
+# Copyright 2014 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.
+
+import json
+import logging
+
+from pylib.base import base_test_result
+
+
+def GenerateResultsDict(test_run_result):
+  """Create a results dict from |test_run_result| suitable for writing to JSON.
+  Args:
+    test_run_result: a base_test_result.TestRunResults object.
+  Returns:
+    A results dict that mirrors the one generated by
+      base/test/launcher/test_results_tracker.cc:SaveSummaryAsJSON.
+  """
+  assert isinstance(test_run_result, base_test_result.TestRunResults)
+
+  def status_as_string(s):
+    if s == base_test_result.ResultType.PASS:
+      return 'SUCCESS'
+    elif s == base_test_result.ResultType.SKIP:
+      return 'SKIPPED'
+    elif s == base_test_result.ResultType.FAIL:
+      return 'FAILURE'
+    elif s == base_test_result.ResultType.CRASH:
+      return 'CRASH'
+    elif s == base_test_result.ResultType.TIMEOUT:
+      return 'TIMEOUT'
+    elif s == base_test_result.ResultType.UNKNOWN:
+      return 'UNKNOWN'
+
+  def generate_iteration_data(t):
+    return {
+      t.GetName(): [
+        {
+          'status': status_as_string(t.GetType()),
+          'elapsed_time_ms': t.GetDuration(),
+          'output_snippet': '',
+          'losless_snippet': '',
+          'output_snippet_base64:': '',
+        }
+      ]
+    }
+
+  all_tests_tuple, per_iteration_data_tuple = zip(
+      *[(t.GetName(), generate_iteration_data(t))
+        for t in test_run_result.GetAll()])
+
+  return {
+    'global_tags': [],
+    'all_tests': list(all_tests_tuple),
+    # TODO(jbudorick): Add support for disabled tests within base_test_result.
+    'disabled_tests': [],
+    'per_iteration_data': list(per_iteration_data_tuple),
+  }
+
+
+def GenerateJsonResultsFile(test_run_result, file_path):
+  """Write |test_run_result| to JSON.
+
+  This emulates the format of the JSON emitted by
+  base/test/launcher/test_results_tracker.cc:SaveSummaryAsJSON.
+
+  Args:
+    test_run_result: a base_test_result.TestRunResults object.
+    file_path: The path to the JSON file to write.
+  """
+  with open(file_path, 'w') as json_result_file:
+    json_result_file.write(json.dumps(GenerateResultsDict(test_run_result)))
+
diff --git a/build/android/pylib/results/json_results_test.py b/build/android/pylib/results/json_results_test.py
new file mode 100755
index 0000000..1bc730d
--- /dev/null
+++ b/build/android/pylib/results/json_results_test.py
@@ -0,0 +1,133 @@
+#!/usr/bin/env python
+# Copyright 2014 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.
+
+import unittest
+
+from pylib.base import base_test_result
+from pylib.results import json_results
+
+
+class JsonResultsTest(unittest.TestCase):
+
+  def testGenerateResultsDict_passedResult(self):
+    result = base_test_result.BaseTestResult(
+        'test.package.TestName', base_test_result.ResultType.PASS)
+
+    all_results = base_test_result.TestRunResults()
+    all_results.AddResult(result)
+
+    results_dict = json_results.GenerateResultsDict(all_results)
+    self.assertEquals(
+        ['test.package.TestName'],
+        results_dict['all_tests'])
+    self.assertEquals(1, len(results_dict['per_iteration_data']))
+
+    iteration_result = results_dict['per_iteration_data'][0]
+    self.assertTrue('test.package.TestName' in iteration_result)
+    self.assertEquals(1, len(iteration_result['test.package.TestName']))
+
+    test_iteration_result = iteration_result['test.package.TestName'][0]
+    self.assertTrue('status' in test_iteration_result)
+    self.assertEquals('SUCCESS', test_iteration_result['status'])
+
+  def testGenerateResultsDict_skippedResult(self):
+    result = base_test_result.BaseTestResult(
+        'test.package.TestName', base_test_result.ResultType.SKIP)
+
+    all_results = base_test_result.TestRunResults()
+    all_results.AddResult(result)
+
+    results_dict = json_results.GenerateResultsDict(all_results)
+    self.assertEquals(
+        ['test.package.TestName'],
+        results_dict['all_tests'])
+    self.assertEquals(1, len(results_dict['per_iteration_data']))
+
+    iteration_result = results_dict['per_iteration_data'][0]
+    self.assertTrue('test.package.TestName' in iteration_result)
+    self.assertEquals(1, len(iteration_result['test.package.TestName']))
+
+    test_iteration_result = iteration_result['test.package.TestName'][0]
+    self.assertTrue('status' in test_iteration_result)
+    self.assertEquals('SKIPPED', test_iteration_result['status'])
+
+  def testGenerateResultsDict_failedResult(self):
+    result = base_test_result.BaseTestResult(
+        'test.package.TestName', base_test_result.ResultType.FAIL)
+
+    all_results = base_test_result.TestRunResults()
+    all_results.AddResult(result)
+
+    results_dict = json_results.GenerateResultsDict(all_results)
+    self.assertEquals(
+        ['test.package.TestName'],
+        results_dict['all_tests'])
+    self.assertEquals(1, len(results_dict['per_iteration_data']))
+
+    iteration_result = results_dict['per_iteration_data'][0]
+    self.assertTrue('test.package.TestName' in iteration_result)
+    self.assertEquals(1, len(iteration_result['test.package.TestName']))
+
+    test_iteration_result = iteration_result['test.package.TestName'][0]
+    self.assertTrue('status' in test_iteration_result)
+    self.assertEquals('FAILURE', test_iteration_result['status'])
+
+  def testGenerateResultsDict_duration(self):
+    result = base_test_result.BaseTestResult(
+        'test.package.TestName', base_test_result.ResultType.PASS, duration=123)
+
+    all_results = base_test_result.TestRunResults()
+    all_results.AddResult(result)
+
+    results_dict = json_results.GenerateResultsDict(all_results)
+    self.assertEquals(
+        ['test.package.TestName'],
+        results_dict['all_tests'])
+    self.assertEquals(1, len(results_dict['per_iteration_data']))
+
+    iteration_result = results_dict['per_iteration_data'][0]
+    self.assertTrue('test.package.TestName' in iteration_result)
+    self.assertEquals(1, len(iteration_result['test.package.TestName']))
+
+    test_iteration_result = iteration_result['test.package.TestName'][0]
+    self.assertTrue('elapsed_time_ms' in test_iteration_result)
+    self.assertEquals(123, test_iteration_result['elapsed_time_ms'])
+
+  def testGenerateResultsDict_multipleResults(self):
+    result1 = base_test_result.BaseTestResult(
+        'test.package.TestName1', base_test_result.ResultType.PASS)
+    result2 = base_test_result.BaseTestResult(
+        'test.package.TestName2', base_test_result.ResultType.PASS)
+
+    all_results = base_test_result.TestRunResults()
+    all_results.AddResult(result1)
+    all_results.AddResult(result2)
+
+    results_dict = json_results.GenerateResultsDict(all_results)
+    self.assertEquals(
+        ['test.package.TestName1', 'test.package.TestName2'],
+        results_dict['all_tests'])
+    self.assertEquals(2, len(results_dict['per_iteration_data']))
+
+    expected_tests = set([
+        'test.package.TestName1',
+        'test.package.TestName2',
+    ])
+
+    for iteration_result in results_dict['per_iteration_data']:
+      self.assertEquals(1, len(iteration_result))
+      name = iteration_result.keys()[0]
+      self.assertTrue(name in expected_tests)
+      expected_tests.remove(name)
+      self.assertEquals(1, len(iteration_result[name]))
+
+      test_iteration_result = iteration_result[name][0]
+      self.assertTrue('status' in test_iteration_result)
+      self.assertEquals('SUCCESS', test_iteration_result['status'])
+
+
+if __name__ == '__main__':
+  unittest.main(verbosity=2)
+
diff --git a/build/android/pylib/utils/report_results.py b/build/android/pylib/results/report_results.py
similarity index 97%
rename from build/android/pylib/utils/report_results.py
rename to build/android/pylib/results/report_results.py
index 8f81c95..4c9518e 100644
--- a/build/android/pylib/utils/report_results.py
+++ b/build/android/pylib/results/report_results.py
@@ -9,7 +9,7 @@
 import re
 
 from pylib import constants
-from pylib.utils import flakiness_dashboard_results_uploader
+from pylib.results.flakiness_dashboard import results_uploader
 
 
 def _LogToFile(results, test_type, suite_name):
@@ -58,7 +58,7 @@
       logging.warning('Invalid test type')
       return
 
-    flakiness_dashboard_results_uploader.Upload(
+    results_uploader.Upload(
         results, flakiness_server, dashboard_test_type)
 
   except Exception as e:
diff --git a/build/android/pylib/utils/mock_calls.py b/build/android/pylib/utils/mock_calls.py
index b10ebc6..fab9f2b 100644
--- a/build/android/pylib/utils/mock_calls.py
+++ b/build/android/pylib/utils/mock_calls.py
@@ -122,16 +122,19 @@
     """
     self._watched.update((call.name, call) for call in calls)
 
-  def watchMethodCalls(self, call):
+  def watchMethodCalls(self, call, ignore=None):
     """Watch all public methods of the target identified by a self.call.
 
     Args:
       call: a self.call instance indetifying an object
+      ignore: a list of public methods to ignore when watching for calls
     """
     target = self.call_target(call)
+    if ignore is None:
+      ignore = []
     self.watchCalls(getattr(call, method)
                     for method in dir(target.__class__)
-                    if not method.startswith('_'))
+                    if not method.startswith('_') and not method in ignore)
 
   def clearWatched(self):
     """Clear the set of watched calls."""
diff --git a/build/android/setup.gyp b/build/android/setup.gyp
index f10ab3e..7dce19d 100644
--- a/build/android/setup.gyp
+++ b/build/android/setup.gyp
@@ -12,26 +12,13 @@
           # <(SHARED_LIB_DIR)
           'target_name': 'copy_system_libraries',
           'type': 'none',
-          'conditions': [
-            ['target_arch=="arm" and arm_thumb==1', {
-              'copies': [
-                {
-                  'destination': '<(SHARED_LIB_DIR)/',
-                  'files': [
-                    '<(android_stlport_libs_dir)/thumb/libstlport_shared.so',
-                  ],
-                },
+          'copies': [
+            {
+              'destination': '<(SHARED_LIB_DIR)/',
+              'files': [
+                '<(android_stlport_libs_dir)/libstlport_shared.so',
               ],
-            }, {
-              'copies': [
-                {
-                  'destination': '<(SHARED_LIB_DIR)/',
-                  'files': [
-                    '<(android_stlport_libs_dir)/libstlport_shared.so',
-                  ],
-                },
-              ],
-            }],
+            },
           ],
         },
       ],
diff --git a/build/android/test_runner.py b/build/android/test_runner.py
index b483d2b..1c06331 100755
--- a/build/android/test_runner.py
+++ b/build/android/test_runner.py
@@ -6,9 +6,9 @@
 
 """Runs all types of tests from one unified interface."""
 
+import argparse
 import collections
 import logging
-import optparse
 import os
 import shutil
 import signal
@@ -39,191 +39,168 @@
 from pylib.perf import setup as perf_setup
 from pylib.perf import test_options as perf_test_options
 from pylib.perf import test_runner as perf_test_runner
+from pylib.results import json_results
+from pylib.results import report_results
 from pylib.uiautomator import setup as uiautomator_setup
 from pylib.uiautomator import test_options as uiautomator_test_options
 from pylib.utils import apk_helper
-from pylib.utils import command_option_parser
-from pylib.utils import report_results
 from pylib.utils import reraiser_thread
 from pylib.utils import run_tests_helper
 
 
-def AddCommonOptions(option_parser):
-  """Adds all common options to |option_parser|."""
+def AddCommonOptions(parser):
+  """Adds all common options to |parser|."""
 
-  group = optparse.OptionGroup(option_parser, 'Common Options')
+  group = parser.add_argument_group('Common Options')
+
   default_build_type = os.environ.get('BUILDTYPE', 'Debug')
-  group.add_option('--debug', action='store_const', const='Debug',
-                   dest='build_type', default=default_build_type,
-                   help=('If set, run test suites under out/Debug. '
-                         'Default is env var BUILDTYPE or Debug.'))
-  group.add_option('--release', action='store_const',
-                   const='Release', dest='build_type',
-                   help=('If set, run test suites under out/Release.'
-                         ' Default is env var BUILDTYPE or Debug.'))
-  group.add_option('--build-directory', dest='build_directory',
-                   help=('Path to the directory in which build files are'
-                         ' located (should not include build type)'))
-  group.add_option('--output-directory', dest='output_directory',
-                   help=('Path to the directory in which build files are'
-                         ' located (must include build type). This will take'
-                         ' precedence over --debug, --release and'
-                         ' --build-directory'))
-  group.add_option('--num_retries', dest='num_retries', type='int',
-                   default=2,
-                   help=('Number of retries for a test before '
-                         'giving up.'))
-  group.add_option('-v',
-                   '--verbose',
-                   dest='verbose_count',
-                   default=0,
-                   action='count',
-                   help='Verbose level (multiple times for more)')
-  group.add_option('--flakiness-dashboard-server',
-                   dest='flakiness_dashboard_server',
-                   help=('Address of the server that is hosting the '
-                         'Chrome for Android flakiness dashboard.'))
-  group.add_option('--enable-platform-mode', action='store_true',
-                   help=('Run the test scripts in platform mode, which '
-                         'conceptually separates the test runner from the '
-                         '"device" (local or remote, real or emulated) on '
-                         'which the tests are running. [experimental]'))
-  group.add_option('-e', '--environment', default='local',
-                   help=('Test environment to run in. Must be one of: %s' %
-                         ', '.join(constants.VALID_ENVIRONMENTS)))
-  group.add_option('--adb-path',
-                   help=('Specify the absolute path of the adb binary that '
-                         'should be used.'))
-  option_parser.add_option_group(group)
+
+  debug_or_release_group = group.add_mutually_exclusive_group()
+  debug_or_release_group.add_argument(
+      '--debug', action='store_const', const='Debug', dest='build_type',
+      default=default_build_type,
+      help=('If set, run test suites under out/Debug. '
+            'Default is env var BUILDTYPE or Debug.'))
+  debug_or_release_group.add_argument(
+      '--release', action='store_const', const='Release', dest='build_type',
+      help=('If set, run test suites under out/Release. '
+            'Default is env var BUILDTYPE or Debug.'))
+
+  group.add_argument('--build-directory', dest='build_directory',
+                     help=('Path to the directory in which build files are'
+                           ' located (should not include build type)'))
+  group.add_argument('--output-directory', dest='output_directory',
+                     help=('Path to the directory in which build files are'
+                           ' located (must include build type). This will take'
+                           ' precedence over --debug, --release and'
+                           ' --build-directory'))
+  group.add_argument('--num_retries', dest='num_retries', type=int, default=2,
+                     help=('Number of retries for a test before '
+                           'giving up (default: %(default)s).'))
+  group.add_argument('-v',
+                     '--verbose',
+                     dest='verbose_count',
+                     default=0,
+                     action='count',
+                     help='Verbose level (multiple times for more)')
+  group.add_argument('--flakiness-dashboard-server',
+                     dest='flakiness_dashboard_server',
+                     help=('Address of the server that is hosting the '
+                           'Chrome for Android flakiness dashboard.'))
+  group.add_argument('--enable-platform-mode', action='store_true',
+                     help=('Run the test scripts in platform mode, which '
+                           'conceptually separates the test runner from the '
+                           '"device" (local or remote, real or emulated) on '
+                           'which the tests are running. [experimental]'))
+  group.add_argument('-e', '--environment', default='local',
+                     choices=constants.VALID_ENVIRONMENTS,
+                     help='Test environment to run in (default: %(default)s).')
+  group.add_argument('--adb-path',
+                     help=('Specify the absolute path of the adb binary that '
+                           'should be used.'))
+  group.add_argument('--json-results-file', dest='json_results_file',
+                     help='If set, will dump results in JSON form '
+                          'to specified file.')
 
 
-def ProcessCommonOptions(options, error_func):
+def ProcessCommonOptions(args):
   """Processes and handles all common options."""
-  run_tests_helper.SetLogLevel(options.verbose_count)
-  constants.SetBuildType(options.build_type)
-  if options.build_directory:
-    constants.SetBuildDirectory(options.build_directory)
-  if options.output_directory:
-    constants.SetOutputDirectort(options.output_directory)
-  if options.adb_path:
-    constants.SetAdbPath(options.adb_path)
+  run_tests_helper.SetLogLevel(args.verbose_count)
+  constants.SetBuildType(args.build_type)
+  if args.build_directory:
+    constants.SetBuildDirectory(args.build_directory)
+  if args.output_directory:
+    constants.SetOutputDirectort(args.output_directory)
+  if args.adb_path:
+    constants.SetAdbPath(args.adb_path)
   # Some things such as Forwarder require ADB to be in the environment path.
   adb_dir = os.path.dirname(constants.GetAdbPath())
   if adb_dir and adb_dir not in os.environ['PATH'].split(os.pathsep):
     os.environ['PATH'] = adb_dir + os.pathsep + os.environ['PATH']
-  if options.environment not in constants.VALID_ENVIRONMENTS:
-    error_func('--environment must be one of: %s' %
-               ', '.join(constants.VALID_ENVIRONMENTS))
 
 
-def AddDeviceOptions(option_parser):
-  group = optparse.OptionGroup(option_parser, 'Device Options')
-  group.add_option('-c', dest='cleanup_test_files',
-                   help='Cleanup test files on the device after run',
-                   action='store_true')
-  group.add_option('--tool',
-                   dest='tool',
-                   help=('Run the test under a tool '
-                         '(use --tool help to list them)'))
-  group.add_option('-d', '--device', dest='test_device',
-                   help=('Target device for the test suite '
-                         'to run on.'))
-  option_parser.add_option_group(group)
+def AddDeviceOptions(parser):
+  """Adds device options to |parser|."""
+  group = parser.add_argument_group(title='Device Options')
+  group.add_argument('-c', dest='cleanup_test_files',
+                     help='Cleanup test files on the device after run',
+                     action='store_true')
+  group.add_argument('--tool',
+                     dest='tool',
+                     help=('Run the test under a tool '
+                           '(use --tool help to list them)'))
+  group.add_argument('-d', '--device', dest='test_device',
+                     help=('Target device for the test suite '
+                           'to run on.'))
 
 
-def AddGTestOptions(option_parser):
-  """Adds gtest options to |option_parser|."""
+def AddGTestOptions(parser):
+  """Adds gtest options to |parser|."""
 
-  option_parser.usage = '%prog gtest [options]'
-  option_parser.commands_dict = {}
-  option_parser.example = '%prog gtest -s base_unittests'
+  gtest_suites = list(gtest_config.STABLE_TEST_SUITES
+                      + gtest_config.EXPERIMENTAL_TEST_SUITES)
 
-  # TODO(gkanwar): Make this option required
-  option_parser.add_option('-s', '--suite', dest='suite_name',
-                           help=('Executable name of the test suite to run '
-                                 '(use -s help to list them).'))
-  option_parser.add_option('-f', '--gtest_filter', '--gtest-filter',
-                           dest='test_filter',
-                           help='googletest-style filter string.')
-  option_parser.add_option('--gtest_also_run_disabled_tests',
-                           '--gtest-also-run-disabled-tests',
-                           dest='run_disabled', action='store_true',
-                           help='Also run disabled tests if applicable.')
-  option_parser.add_option('-a', '--test-arguments', dest='test_arguments',
-                           default='',
-                           help='Additional arguments to pass to the test.')
-  option_parser.add_option('-t', dest='timeout',
-                           help='Timeout to wait for each test',
-                           type='int',
-                           default=60)
-  option_parser.add_option('--isolate_file_path',
-                           '--isolate-file-path',
-                           dest='isolate_file_path',
-                           help='.isolate file path to override the default '
-                                'path')
-  # TODO(gkanwar): Move these to Common Options once we have the plumbing
-  # in our other test types to handle these commands
-  AddCommonOptions(option_parser)
-  AddDeviceOptions(option_parser)
+  group = parser.add_argument_group('GTest Options')
+  group.add_argument('-s', '--suite', dest='suite_name',
+                     nargs='+', metavar='SUITE_NAME', required=True,
+                     help=('Executable name of the test suite to run. '
+                           'Available suites include (but are not limited to): '
+                            '%s' % ', '.join('"%s"' % s for s in gtest_suites)))
+  group.add_argument('-f', '--gtest_filter', '--gtest-filter',
+                     dest='test_filter',
+                     help='googletest-style filter string.')
+  group.add_argument('--gtest_also_run_disabled_tests',
+                     '--gtest-also-run-disabled-tests',
+                     dest='run_disabled', action='store_true',
+                     help='Also run disabled tests if applicable.')
+  group.add_argument('-a', '--test-arguments', dest='test_arguments',
+                     default='',
+                     help='Additional arguments to pass to the test.')
+  group.add_argument('-t', dest='timeout', type=int, default=60,
+                     help='Timeout to wait for each test '
+                          '(default: %(default)s).')
+  group.add_argument('--isolate_file_path',
+                     '--isolate-file-path',
+                     dest='isolate_file_path',
+                     help='.isolate file path to override the default '
+                          'path')
+  AddDeviceOptions(parser)
+  AddCommonOptions(parser)
 
 
-def AddLinkerTestOptions(option_parser):
-  option_parser.usage = '%prog linker'
-  option_parser.commands_dict = {}
-  option_parser.example = '%prog linker'
-
-  option_parser.add_option('-f', '--gtest-filter', dest='test_filter',
-                           help='googletest-style filter string.')
-  AddCommonOptions(option_parser)
-  AddDeviceOptions(option_parser)
+def AddLinkerTestOptions(parser):
+  group = parser.add_argument_group('Linker Test Options')
+  group.add_argument('-f', '--gtest-filter', dest='test_filter',
+                     help='googletest-style filter string.')
+  AddCommonOptions(parser)
+  AddDeviceOptions(parser)
 
 
-def ProcessGTestOptions(options):
-  """Intercept test suite help to list test suites.
-
-  Args:
-    options: Command line options.
-  """
-  if options.suite_name == 'help':
-    print 'Available test suites are:'
-    for test_suite in (gtest_config.STABLE_TEST_SUITES +
-                       gtest_config.EXPERIMENTAL_TEST_SUITES):
-      print test_suite
-    sys.exit(0)
-
-  # Convert to a list, assuming all test suites if nothing was specified.
-  # TODO(gkanwar): Require having a test suite
-  if options.suite_name:
-    options.suite_name = [options.suite_name]
-  else:
-    options.suite_name = [s for s in gtest_config.STABLE_TEST_SUITES]
-
-
-def AddJavaTestOptions(option_parser):
+def AddJavaTestOptions(argument_group):
   """Adds the Java test options to |option_parser|."""
 
-  option_parser.add_option('-f', '--test-filter', dest='test_filter',
-                           help=('Test filter (if not fully qualified, '
-                                 'will run all matches).'))
-  option_parser.add_option(
+  argument_group.add_argument(
+      '-f', '--test-filter', dest='test_filter',
+      help=('Test filter (if not fully qualified, will run all matches).'))
+  argument_group.add_argument(
       '-A', '--annotation', dest='annotation_str',
       help=('Comma-separated list of annotations. Run only tests with any of '
             'the given annotations. An annotation can be either a key or a '
             'key-values pair. A test that has no annotation is considered '
             '"SmallTest".'))
-  option_parser.add_option(
+  argument_group.add_argument(
       '-E', '--exclude-annotation', dest='exclude_annotation_str',
       help=('Comma-separated list of annotations. Exclude tests with these '
             'annotations.'))
-  option_parser.add_option(
+  argument_group.add_argument(
       '--screenshot', dest='screenshot_failures', action='store_true',
       help='Capture screenshots of test failures')
-  option_parser.add_option(
+  argument_group.add_argument(
       '--save-perf-json', action='store_true',
       help='Saves the JSON file for each UI Perf test.')
-  option_parser.add_option(
+  argument_group.add_argument(
       '--official-build', action='store_true', help='Run official build tests.')
-  option_parser.add_option(
+  argument_group.add_argument(
       '--test_data', '--test-data', action='append', default=[],
       help=('Each instance defines a directory of test data that should be '
             'copied to the target(s) before running the tests. The argument '
@@ -232,402 +209,360 @@
             'chromium build directory.'))
 
 
-def ProcessJavaTestOptions(options):
+def ProcessJavaTestOptions(args):
   """Processes options/arguments and populates |options| with defaults."""
 
-  if options.annotation_str:
-    options.annotations = options.annotation_str.split(',')
-  elif options.test_filter:
-    options.annotations = []
+  # TODO(jbudorick): Handle most of this function in argparse.
+  if args.annotation_str:
+    args.annotations = args.annotation_str.split(',')
+  elif args.test_filter:
+    args.annotations = []
   else:
-    options.annotations = ['Smoke', 'SmallTest', 'MediumTest', 'LargeTest',
-                           'EnormousTest', 'IntegrationTest']
+    args.annotations = ['Smoke', 'SmallTest', 'MediumTest', 'LargeTest',
+                        'EnormousTest', 'IntegrationTest']
 
-  if options.exclude_annotation_str:
-    options.exclude_annotations = options.exclude_annotation_str.split(',')
+  if args.exclude_annotation_str:
+    args.exclude_annotations = args.exclude_annotation_str.split(',')
   else:
-    options.exclude_annotations = []
+    args.exclude_annotations = []
 
 
-def AddInstrumentationTestOptions(option_parser):
-  """Adds Instrumentation test options to |option_parser|."""
+def AddInstrumentationTestOptions(parser):
+  """Adds Instrumentation test options to |parser|."""
 
-  option_parser.usage = '%prog instrumentation [options]'
-  option_parser.commands_dict = {}
-  option_parser.example = ('%prog instrumentation '
-                           '--test-apk=ChromeShellTest')
+  parser.usage = '%(prog)s [options]'
 
-  AddJavaTestOptions(option_parser)
-  AddCommonOptions(option_parser)
-  AddDeviceOptions(option_parser)
+  group = parser.add_argument_group('Instrumentation Test Options')
+  AddJavaTestOptions(group)
 
-  option_parser.add_option('-j', '--java-only', action='store_true',
-                           default=False, help='Run only the Java tests.')
-  option_parser.add_option('-p', '--python-only', action='store_true',
-                           default=False,
-                           help='Run only the host-driven tests.')
-  option_parser.add_option('--host-driven-root',
-                           help='Root of the host-driven tests.')
-  option_parser.add_option('-w', '--wait_debugger', dest='wait_for_debugger',
-                           action='store_true',
-                           help='Wait for debugger.')
-  option_parser.add_option(
-      '--test-apk', dest='test_apk',
-      help=('The name of the apk containing the tests '
-            '(without the .apk extension; e.g. "ContentShellTest").'))
-  option_parser.add_option('--coverage-dir',
-                           help=('Directory in which to place all generated '
-                                 'EMMA coverage files.'))
-  option_parser.add_option('--device-flags', dest='device_flags', default='',
-                           help='The relative filepath to a file containing '
-                                'command-line flags to set on the device')
-  option_parser.add_option('--isolate_file_path',
-                           '--isolate-file-path',
-                           dest='isolate_file_path',
-                           help='.isolate file path to override the default '
-                                'path')
+  java_or_python_group = group.add_mutually_exclusive_group()
+  java_or_python_group.add_argument(
+      '-j', '--java-only', action='store_false',
+      dest='run_python_tests', default=True, help='Run only the Java tests.')
+  java_or_python_group.add_argument(
+      '-p', '--python-only', action='store_false',
+      dest='run_java_tests', default=True,
+      help='Run only the host-driven tests.')
+
+  group.add_argument('--host-driven-root',
+                     help='Root of the host-driven tests.')
+  group.add_argument('-w', '--wait_debugger', dest='wait_for_debugger',
+                     action='store_true',
+                     help='Wait for debugger.')
+  group.add_argument('--test-apk', dest='test_apk', required=True,
+                     help=('The name of the apk containing the tests '
+                           '(without the .apk extension; '
+                           'e.g. "ContentShellTest").'))
+  group.add_argument('--coverage-dir',
+                     help=('Directory in which to place all generated '
+                           'EMMA coverage files.'))
+  group.add_argument('--device-flags', dest='device_flags', default='',
+                     help='The relative filepath to a file containing '
+                          'command-line flags to set on the device')
+  group.add_argument('--isolate_file_path',
+                     '--isolate-file-path',
+                     dest='isolate_file_path',
+                     help='.isolate file path to override the default '
+                          'path')
+
+  AddCommonOptions(parser)
+  AddDeviceOptions(parser)
 
 
-def ProcessInstrumentationOptions(options, error_func):
+def ProcessInstrumentationOptions(args):
   """Processes options/arguments and populate |options| with defaults.
 
   Args:
-    options: optparse.Options object.
-    error_func: Function to call with the error message in case of an error.
+    args: argparse.Namespace object.
 
   Returns:
     An InstrumentationOptions named tuple which contains all options relevant to
     instrumentation tests.
   """
 
-  ProcessJavaTestOptions(options)
+  ProcessJavaTestOptions(args)
 
-  if options.java_only and options.python_only:
-    error_func('Options java_only (-j) and python_only (-p) '
-               'are mutually exclusive.')
-  options.run_java_tests = True
-  options.run_python_tests = True
-  if options.java_only:
-    options.run_python_tests = False
-  elif options.python_only:
-    options.run_java_tests = False
+  if not args.host_driven_root:
+    args.run_python_tests = False
 
-  if not options.host_driven_root:
-    options.run_python_tests = False
-
-  if not options.test_apk:
-    error_func('--test-apk must be specified.')
-
-
-  options.test_apk_path = os.path.join(
+  args.test_apk_path = os.path.join(
       constants.GetOutDirectory(),
       constants.SDK_BUILD_APKS_DIR,
-      '%s.apk' % options.test_apk)
-  options.test_apk_jar_path = os.path.join(
+      '%s.apk' % args.test_apk)
+  args.test_apk_jar_path = os.path.join(
       constants.GetOutDirectory(),
       constants.SDK_BUILD_TEST_JAVALIB_DIR,
-      '%s.jar' %  options.test_apk)
-  options.test_support_apk_path = '%sSupport%s' % (
-      os.path.splitext(options.test_apk_path))
+      '%s.jar' %  args.test_apk)
+  args.test_support_apk_path = '%sSupport%s' % (
+      os.path.splitext(args.test_apk_path))
 
-  options.test_runner = apk_helper.GetInstrumentationName(options.test_apk_path)
+  args.test_runner = apk_helper.GetInstrumentationName(args.test_apk_path)
 
+  # TODO(jbudorick): Get rid of InstrumentationOptions.
   return instrumentation_test_options.InstrumentationOptions(
-      options.tool,
-      options.cleanup_test_files,
-      options.annotations,
-      options.exclude_annotations,
-      options.test_filter,
-      options.test_data,
-      options.save_perf_json,
-      options.screenshot_failures,
-      options.wait_for_debugger,
-      options.coverage_dir,
-      options.test_apk,
-      options.test_apk_path,
-      options.test_apk_jar_path,
-      options.test_runner,
-      options.test_support_apk_path,
-      options.device_flags,
-      options.isolate_file_path
+      args.tool,
+      args.cleanup_test_files,
+      args.annotations,
+      args.exclude_annotations,
+      args.test_filter,
+      args.test_data,
+      args.save_perf_json,
+      args.screenshot_failures,
+      args.wait_for_debugger,
+      args.coverage_dir,
+      args.test_apk,
+      args.test_apk_path,
+      args.test_apk_jar_path,
+      args.test_runner,
+      args.test_support_apk_path,
+      args.device_flags,
+      args.isolate_file_path
       )
 
 
-def AddUIAutomatorTestOptions(option_parser):
-  """Adds UI Automator test options to |option_parser|."""
+def AddUIAutomatorTestOptions(parser):
+  """Adds UI Automator test options to |parser|."""
 
-  option_parser.usage = '%prog uiautomator [options]'
-  option_parser.commands_dict = {}
-  option_parser.example = (
-      '%prog uiautomator --test-jar=chrome_shell_uiautomator_tests'
-      ' --package=chrome_shell')
-  option_parser.add_option(
-      '--package',
-      help=('Package under test. Possible values: %s' %
-            constants.PACKAGE_INFO.keys()))
-  option_parser.add_option(
-      '--test-jar', dest='test_jar',
+  group = parser.add_argument_group('UIAutomator Test Options')
+  AddJavaTestOptions(group)
+  group.add_argument(
+      '--package', required=True, choices=constants.PACKAGE_INFO.keys(),
+      metavar='PACKAGE', help='Package under test.')
+  group.add_argument(
+      '--test-jar', dest='test_jar', required=True,
       help=('The name of the dexed jar containing the tests (without the '
             '.dex.jar extension). Alternatively, this can be a full path '
             'to the jar.'))
 
-  AddJavaTestOptions(option_parser)
-  AddCommonOptions(option_parser)
-  AddDeviceOptions(option_parser)
+  AddCommonOptions(parser)
+  AddDeviceOptions(parser)
 
 
-def ProcessUIAutomatorOptions(options, error_func):
+def ProcessUIAutomatorOptions(args):
   """Processes UIAutomator options/arguments.
 
   Args:
-    options: optparse.Options object.
-    error_func: Function to call with the error message in case of an error.
+    args: argparse.Namespace object.
 
   Returns:
     A UIAutomatorOptions named tuple which contains all options relevant to
     uiautomator tests.
   """
 
-  ProcessJavaTestOptions(options)
+  ProcessJavaTestOptions(args)
 
-  if not options.package:
-    error_func('--package is required.')
-
-  if options.package not in constants.PACKAGE_INFO:
-    error_func('Invalid package.')
-
-  if not options.test_jar:
-    error_func('--test-jar must be specified.')
-
-  if os.path.exists(options.test_jar):
+  if os.path.exists(args.test_jar):
     # The dexed JAR is fully qualified, assume the info JAR lives along side.
-    options.uiautomator_jar = options.test_jar
+    args.uiautomator_jar = args.test_jar
   else:
-    options.uiautomator_jar = os.path.join(
+    args.uiautomator_jar = os.path.join(
         constants.GetOutDirectory(),
         constants.SDK_BUILD_JAVALIB_DIR,
-        '%s.dex.jar' % options.test_jar)
-  options.uiautomator_info_jar = (
-      options.uiautomator_jar[:options.uiautomator_jar.find('.dex.jar')] +
+        '%s.dex.jar' % args.test_jar)
+  args.uiautomator_info_jar = (
+      args.uiautomator_jar[:args.uiautomator_jar.find('.dex.jar')] +
       '_java.jar')
 
   return uiautomator_test_options.UIAutomatorOptions(
-      options.tool,
-      options.cleanup_test_files,
-      options.annotations,
-      options.exclude_annotations,
-      options.test_filter,
-      options.test_data,
-      options.save_perf_json,
-      options.screenshot_failures,
-      options.uiautomator_jar,
-      options.uiautomator_info_jar,
-      options.package)
+      args.tool,
+      args.cleanup_test_files,
+      args.annotations,
+      args.exclude_annotations,
+      args.test_filter,
+      args.test_data,
+      args.save_perf_json,
+      args.screenshot_failures,
+      args.uiautomator_jar,
+      args.uiautomator_info_jar,
+      args.package)
 
 
-def AddJUnitTestOptions(option_parser):
-  """Adds junit test options to |option_parser|."""
-  option_parser.usage = '%prog junit -s [test suite name]'
-  option_parser.commands_dict = {}
+def AddJUnitTestOptions(parser):
+  """Adds junit test options to |parser|."""
 
-  option_parser.add_option(
-      '-s', '--test-suite', dest='test_suite',
+  group = parser.add_argument_group('JUnit Test Options')
+  group.add_argument(
+      '-s', '--test-suite', dest='test_suite', required=True,
       help=('JUnit test suite to run.'))
-  option_parser.add_option(
+  group.add_argument(
       '-f', '--test-filter', dest='test_filter',
       help='Filters tests googletest-style.')
-  option_parser.add_option(
+  group.add_argument(
       '--package-filter', dest='package_filter',
       help='Filters tests by package.')
-  option_parser.add_option(
+  group.add_argument(
       '--runner-filter', dest='runner_filter',
       help='Filters tests by runner class. Must be fully qualified.')
-  option_parser.add_option(
-      '--sdk-version', dest='sdk_version', type="int",
+  group.add_argument(
+      '--sdk-version', dest='sdk_version', type=int,
       help='The Android SDK version.')
-  AddCommonOptions(option_parser)
+  AddCommonOptions(parser)
 
 
-def ProcessJUnitTestOptions(options, error_func):
-  """Processes all JUnit test options."""
-  if not options.test_suite:
-    error_func('No test suite specified.')
-  return options
+def AddMonkeyTestOptions(parser):
+  """Adds monkey test options to |parser|."""
 
-
-def AddMonkeyTestOptions(option_parser):
-  """Adds monkey test options to |option_parser|."""
-
-  option_parser.usage = '%prog monkey [options]'
-  option_parser.commands_dict = {}
-  option_parser.example = (
-      '%prog monkey --package=chrome_shell')
-
-  option_parser.add_option(
-      '--package',
-      help=('Package under test. Possible values: %s' %
-            constants.PACKAGE_INFO.keys()))
-  option_parser.add_option(
-      '--event-count', default=10000, type='int',
-      help='Number of events to generate [default: %default].')
-  option_parser.add_option(
+  group = parser.add_argument_group('Monkey Test Options')
+  group.add_argument(
+      '--package', required=True, choices=constants.PACKAGE_INFO.keys(),
+      metavar='PACKAGE', help='Package under test.')
+  group.add_argument(
+      '--event-count', default=10000, type=int,
+      help='Number of events to generate (default: %(default)s).')
+  group.add_argument(
       '--category', default='',
       help='A list of allowed categories.')
-  option_parser.add_option(
-      '--throttle', default=100, type='int',
-      help='Delay between events (ms) [default: %default]. ')
-  option_parser.add_option(
-      '--seed', type='int',
+  group.add_argument(
+      '--throttle', default=100, type=int,
+      help='Delay between events (ms) (default: %(default)s). ')
+  group.add_argument(
+      '--seed', type=int,
       help=('Seed value for pseudo-random generator. Same seed value generates '
             'the same sequence of events. Seed is randomized by default.'))
-  option_parser.add_option(
+  group.add_argument(
       '--extra-args', default='',
-      help=('String of other args to pass to the command verbatim '
-            '[default: "%default"].'))
+      help=('String of other args to pass to the command verbatim.'))
 
-  AddCommonOptions(option_parser)
-  AddDeviceOptions(option_parser)
+  AddCommonOptions(parser)
+  AddDeviceOptions(parser)
 
 
-def ProcessMonkeyTestOptions(options, error_func):
+def ProcessMonkeyTestOptions(args):
   """Processes all monkey test options.
 
   Args:
-    options: optparse.Options object.
-    error_func: Function to call with the error message in case of an error.
+    args: argparse.Namespace object.
 
   Returns:
     A MonkeyOptions named tuple which contains all options relevant to
     monkey tests.
   """
-  if not options.package:
-    error_func('--package is required.')
-
-  if options.package not in constants.PACKAGE_INFO:
-    error_func('Invalid package.')
-
-  category = options.category
+  # TODO(jbudorick): Handle this directly in argparse with nargs='+'
+  category = args.category
   if category:
-    category = options.category.split(',')
+    category = args.category.split(',')
 
+  # TODO(jbudorick): Get rid of MonkeyOptions.
   return monkey_test_options.MonkeyOptions(
-      options.verbose_count,
-      options.package,
-      options.event_count,
+      args.verbose_count,
+      args.package,
+      args.event_count,
       category,
-      options.throttle,
-      options.seed,
-      options.extra_args)
+      args.throttle,
+      args.seed,
+      args.extra_args)
 
 
-def AddPerfTestOptions(option_parser):
-  """Adds perf test options to |option_parser|."""
+def AddPerfTestOptions(parser):
+  """Adds perf test options to |parser|."""
 
-  option_parser.usage = '%prog perf [options]'
-  option_parser.commands_dict = {}
-  option_parser.example = ('%prog perf '
-                           '[--single-step -- command args] or '
-                           '[--steps perf_steps.json] or '
-                           '[--print-step step]')
+  group = parser.add_argument_group('Perf Test Options')
 
-  option_parser.add_option(
-      '--single-step',
-      action='store_true',
+  class SingleStepAction(argparse.Action):
+    def __call__(self, parser, namespace, values, option_string=None):
+      if values and not namespace.single_step:
+        parser.error('single step command provided, '
+                     'but --single-step not specified.')
+      elif namespace.single_step and not values:
+        parser.error('--single-step specified, '
+                     'but no single step command provided.')
+      setattr(namespace, self.dest, values)
+
+  step_group = group.add_mutually_exclusive_group(required=True)
+  # TODO(jbudorick): Revise --single-step to use argparse.REMAINDER.
+  # This requires removing "--" from client calls.
+  step_group.add_argument(
+      '--single-step', action='store_true',
       help='Execute the given command with retries, but only print the result '
            'for the "most successful" round.')
-  option_parser.add_option(
+  step_group.add_argument(
       '--steps',
       help='JSON file containing the list of commands to run.')
-  option_parser.add_option(
+  step_group.add_argument(
+      '--print-step',
+      help='The name of a previously executed perf step to print.')
+
+  group.add_argument(
+      '--output-json-list',
+      help='Write a simple list of names from --steps into the given file.')
+  group.add_argument(
+      '--collect-chartjson-data',
+      action='store_true',
+      help='Cache the chartjson output from each step for later use.')
+  group.add_argument(
+      '--output-chartjson-data',
+      default='',
+      help='Write out chartjson into the given file.')
+  group.add_argument(
       '--flaky-steps',
       help=('A JSON file containing steps that are flaky '
             'and will have its exit code ignored.'))
-  option_parser.add_option(
-      '--output-json-list',
-      help='Write a simple list of names from --steps into the given file.')
-  option_parser.add_option(
-      '--print-step',
-      help='The name of a previously executed perf step to print.')
-  option_parser.add_option(
+  group.add_argument(
       '--no-timeout', action='store_true',
       help=('Do not impose a timeout. Each perf step is responsible for '
             'implementing the timeout logic.'))
-  option_parser.add_option(
+  group.add_argument(
       '-f', '--test-filter',
       help=('Test filter (will match against the names listed in --steps).'))
-  option_parser.add_option(
-      '--dry-run',
-      action='store_true',
+  group.add_argument(
+      '--dry-run', action='store_true',
       help='Just print the steps without executing.')
-  AddCommonOptions(option_parser)
-  AddDeviceOptions(option_parser)
+  group.add_argument('single_step_command', nargs='*', action=SingleStepAction,
+                     help='If --single-step is specified, the command to run.')
+  AddCommonOptions(parser)
+  AddDeviceOptions(parser)
 
 
-def ProcessPerfTestOptions(options, args, error_func):
+def ProcessPerfTestOptions(args):
   """Processes all perf test options.
 
   Args:
-    options: optparse.Options object.
-    error_func: Function to call with the error message in case of an error.
+    args: argparse.Namespace object.
 
   Returns:
     A PerfOptions named tuple which contains all options relevant to
     perf tests.
   """
-  # Only one of steps, print_step or single_step must be provided.
-  count = len(filter(None,
-                     [options.steps, options.print_step, options.single_step]))
-  if count != 1:
-    error_func('Please specify one of: --steps, --print-step, --single-step.')
-  single_step = None
-  if options.single_step:
-    single_step = ' '.join(args[2:])
+  # TODO(jbudorick): Move single_step handling down into the perf tests.
+  if args.single_step:
+    args.single_step = ' '.join(args.single_step_command)
+  # TODO(jbudorick): Get rid of PerfOptions.
   return perf_test_options.PerfOptions(
-      options.steps, options.flaky_steps, options.output_json_list,
-      options.print_step, options.no_timeout, options.test_filter,
-      options.dry_run, single_step)
+      args.steps, args.flaky_steps, args.output_json_list,
+      args.print_step, args.no_timeout, args.test_filter,
+      args.dry_run, args.single_step, args.collect_chartjson_data,
+      args.output_chartjson_data)
 
 
-def AddPythonTestOptions(option_parser):
-  option_parser.add_option('-s', '--suite', dest='suite_name',
-                           help=('Name of the test suite to run'
-                                 '(use -s help to list them).'))
-  AddCommonOptions(option_parser)
+def AddPythonTestOptions(parser):
+  group = parser.add_argument_group('Python Test Options')
+  group.add_argument(
+      '-s', '--suite', dest='suite_name', metavar='SUITE_NAME',
+      choices=constants.PYTHON_UNIT_TEST_SUITES.keys(),
+      help='Name of the test suite to run.')
+  AddCommonOptions(parser)
 
 
-def ProcessPythonTestOptions(options, error_func):
-  if options.suite_name not in constants.PYTHON_UNIT_TEST_SUITES:
-    available = ('Available test suites: [%s]' %
-                 ', '.join(constants.PYTHON_UNIT_TEST_SUITES.iterkeys()))
-    if options.suite_name == 'help':
-      print available
-    else:
-      error_func('"%s" is not a valid suite. %s' %
-                 (options.suite_name, available))
-
-
-def _RunGTests(options, devices):
+def _RunGTests(args, devices):
   """Subcommand of RunTestsCommands which runs gtests."""
-  ProcessGTestOptions(options)
-
   exit_code = 0
-  for suite_name in options.suite_name:
-    # TODO(gkanwar): Move this into ProcessGTestOptions once we require -s for
-    # the gtest command.
+  for suite_name in args.suite_name:
+    # TODO(jbudorick): Either deprecate multi-suite or move its handling down
+    # into the gtest code.
     gtest_options = gtest_test_options.GTestOptions(
-        options.tool,
-        options.cleanup_test_files,
-        options.test_filter,
-        options.run_disabled,
-        options.test_arguments,
-        options.timeout,
-        options.isolate_file_path,
+        args.tool,
+        args.cleanup_test_files,
+        args.test_filter,
+        args.run_disabled,
+        args.test_arguments,
+        args.timeout,
+        args.isolate_file_path,
         suite_name)
     runner_factory, tests = gtest_setup.Setup(gtest_options, devices)
 
     results, test_exit_code = test_dispatcher.RunTests(
         tests, runner_factory, devices, shard=True, test_timeout=None,
-        num_retries=options.num_retries)
+        num_retries=args.num_retries)
 
     if test_exit_code and exit_code != constants.ERROR_EXIT_CODE:
       exit_code = test_exit_code
@@ -636,7 +571,10 @@
         results=results,
         test_type='Unit test',
         test_package=suite_name,
-        flakiness_server=options.flakiness_dashboard_server)
+        flakiness_server=args.flakiness_dashboard_server)
+
+    if args.json_results_file:
+      json_results.GenerateJsonResultsFile(results, args.json_results_file)
 
   if os.path.isdir(constants.ISOLATE_DEPS_DIR):
     shutil.rmtree(constants.ISOLATE_DEPS_DIR)
@@ -644,52 +582,57 @@
   return exit_code
 
 
-def _RunLinkerTests(options, devices):
+def _RunLinkerTests(args, devices):
   """Subcommand of RunTestsCommands which runs linker tests."""
-  runner_factory, tests = linker_setup.Setup(options, devices)
+  runner_factory, tests = linker_setup.Setup(args, devices)
 
   results, exit_code = test_dispatcher.RunTests(
       tests, runner_factory, devices, shard=True, test_timeout=60,
-      num_retries=options.num_retries)
+      num_retries=args.num_retries)
 
   report_results.LogFull(
       results=results,
       test_type='Linker test',
       test_package='ChromiumLinkerTest')
 
+  if args.json_results_file:
+    json_results.GenerateJsonResultsFile(results, args.json_results_file)
+
   return exit_code
 
 
-def _RunInstrumentationTests(options, error_func, devices):
+def _RunInstrumentationTests(args, devices):
   """Subcommand of RunTestsCommands which runs instrumentation tests."""
-  instrumentation_options = ProcessInstrumentationOptions(options, error_func)
+  logging.info('_RunInstrumentationTests(%s, %s)' % (str(args), str(devices)))
 
-  if len(devices) > 1 and options.wait_for_debugger:
+  instrumentation_options = ProcessInstrumentationOptions(args)
+
+  if len(devices) > 1 and args.wait_for_debugger:
     logging.warning('Debugger can not be sharded, using first available device')
     devices = devices[:1]
 
   results = base_test_result.TestRunResults()
   exit_code = 0
 
-  if options.run_java_tests:
+  if args.run_java_tests:
     runner_factory, tests = instrumentation_setup.Setup(
         instrumentation_options, devices)
 
     test_results, exit_code = test_dispatcher.RunTests(
         tests, runner_factory, devices, shard=True, test_timeout=None,
-        num_retries=options.num_retries)
+        num_retries=args.num_retries)
 
     results.AddTestRunResults(test_results)
 
-  if options.run_python_tests:
+  if args.run_python_tests:
     runner_factory, tests = host_driven_setup.InstrumentationSetup(
-        options.host_driven_root, options.official_build,
+        args.host_driven_root, args.official_build,
         instrumentation_options)
 
     if tests:
       test_results, test_exit_code = test_dispatcher.RunTests(
           tests, runner_factory, devices, shard=True, test_timeout=None,
-          num_retries=options.num_retries)
+          num_retries=args.num_retries)
 
       results.AddTestRunResults(test_results)
 
@@ -697,76 +640,87 @@
       if test_exit_code and exit_code != constants.ERROR_EXIT_CODE:
         exit_code = test_exit_code
 
-  if options.device_flags:
-    options.device_flags = os.path.join(constants.DIR_SOURCE_ROOT,
-                                        options.device_flags)
+  if args.device_flags:
+    args.device_flags = os.path.join(constants.DIR_SOURCE_ROOT,
+                                     args.device_flags)
 
   report_results.LogFull(
       results=results,
       test_type='Instrumentation',
-      test_package=os.path.basename(options.test_apk),
-      annotation=options.annotations,
-      flakiness_server=options.flakiness_dashboard_server)
+      test_package=os.path.basename(args.test_apk),
+      annotation=args.annotations,
+      flakiness_server=args.flakiness_dashboard_server)
+
+  if args.json_results_file:
+    json_results.GenerateJsonResultsFile(results, args.json_results_file)
 
   return exit_code
 
 
-def _RunUIAutomatorTests(options, error_func, devices):
+def _RunUIAutomatorTests(args, devices):
   """Subcommand of RunTestsCommands which runs uiautomator tests."""
-  uiautomator_options = ProcessUIAutomatorOptions(options, error_func)
+  uiautomator_options = ProcessUIAutomatorOptions(args)
 
   runner_factory, tests = uiautomator_setup.Setup(uiautomator_options)
 
   results, exit_code = test_dispatcher.RunTests(
       tests, runner_factory, devices, shard=True, test_timeout=None,
-      num_retries=options.num_retries)
+      num_retries=args.num_retries)
 
   report_results.LogFull(
       results=results,
       test_type='UIAutomator',
-      test_package=os.path.basename(options.test_jar),
-      annotation=options.annotations,
-      flakiness_server=options.flakiness_dashboard_server)
+      test_package=os.path.basename(args.test_jar),
+      annotation=args.annotations,
+      flakiness_server=args.flakiness_dashboard_server)
+
+  if args.json_results_file:
+    json_results.GenerateJsonResultsFile(results, args.json_results_file)
 
   return exit_code
 
 
-def _RunJUnitTests(options, error_func):
+def _RunJUnitTests(args):
   """Subcommand of RunTestsCommand which runs junit tests."""
-  junit_options = ProcessJUnitTestOptions(options, error_func)
-  runner_factory, tests = junit_setup.Setup(junit_options)
+  runner_factory, tests = junit_setup.Setup(args)
   _, exit_code = junit_dispatcher.RunTests(tests, runner_factory)
-
   return exit_code
 
 
-def _RunMonkeyTests(options, error_func, devices):
+def _RunMonkeyTests(args, devices):
   """Subcommand of RunTestsCommands which runs monkey tests."""
-  monkey_options = ProcessMonkeyTestOptions(options, error_func)
+  monkey_options = ProcessMonkeyTestOptions(args)
 
   runner_factory, tests = monkey_setup.Setup(monkey_options)
 
   results, exit_code = test_dispatcher.RunTests(
       tests, runner_factory, devices, shard=False, test_timeout=None,
-      num_retries=options.num_retries)
+      num_retries=args.num_retries)
 
   report_results.LogFull(
       results=results,
       test_type='Monkey',
       test_package='Monkey')
 
+  if args.json_results_file:
+    json_results.GenerateJsonResultsFile(results, args.json_results_file)
+
   return exit_code
 
 
-def _RunPerfTests(options, args, error_func):
+def _RunPerfTests(args):
   """Subcommand of RunTestsCommands which runs perf tests."""
-  perf_options = ProcessPerfTestOptions(options, args, error_func)
+  perf_options = ProcessPerfTestOptions(args)
 
   # Just save a simple json with a list of test names.
   if perf_options.output_json_list:
     return perf_test_runner.OutputJsonList(
         perf_options.steps, perf_options.output_json_list)
 
+  if perf_options.output_chartjson_data:
+    return perf_test_runner.OutputChartjson(
+        perf_options.print_step, perf_options.output_chartjson_data)
+
   # Just print the results from a single previously executed step.
   if perf_options.print_step:
     return perf_test_runner.PrintTestOutput(perf_options.print_step)
@@ -779,13 +733,16 @@
   # which increases throughput but have no affinity.
   results, _ = test_dispatcher.RunTests(
       tests, runner_factory, devices, shard=False, test_timeout=None,
-      num_retries=options.num_retries)
+      num_retries=args.num_retries)
 
   report_results.LogFull(
       results=results,
       test_type='Perf',
       test_package='Perf')
 
+  if args.json_results_file:
+    json_results.GenerateJsonResultsFile(results, args.json_results_file)
+
   if perf_options.single_step:
     return perf_test_runner.PrintTestOutput('single_step')
 
@@ -796,11 +753,9 @@
   return 0
 
 
-def _RunPythonTests(options, error_func):
+def _RunPythonTests(args):
   """Subcommand of RunTestsCommand which runs python unit tests."""
-  ProcessPythonTestOptions(options, error_func)
-
-  suite_vars = constants.PYTHON_UNIT_TEST_SUITES[options.suite_name]
+  suite_vars = constants.PYTHON_UNIT_TEST_SUITES[args.suite_name]
   suite_path = suite_vars['path']
   suite_test_modules = suite_vars['test_modules']
 
@@ -809,7 +764,7 @@
     suite = unittest.TestSuite()
     suite.addTests(unittest.defaultTestLoader.loadTestsFromName(m)
                    for m in suite_test_modules)
-    runner = unittest.TextTestRunner(verbosity=1+options.verbose_count)
+    runner = unittest.TextTestRunner(verbosity=1+args.verbose_count)
     return 0 if runner.run(suite).wasSuccessful() else 1
   finally:
     sys.path = sys.path[1:]
@@ -838,15 +793,12 @@
   return sorted(attached_devices)
 
 
-def RunTestsCommand(command, options, args, option_parser):
+def RunTestsCommand(args, parser):
   """Checks test type and dispatches to the appropriate function.
 
   Args:
-    command: String indicating the command that was received to trigger
-        this function.
-    options: optparse options dictionary.
-    args: List of extra args from optparse.
-    option_parser: optparse.OptionParser object.
+    args: argparse.Namespace object.
+    parser: argparse.ArgumentParser object.
 
   Returns:
     Integer indicated exit code.
@@ -855,47 +807,38 @@
     Exception: Unknown command name passed in, or an exception from an
         individual test runner.
   """
+  command = args.command
 
-  # Check for extra arguments
-  if len(args) > 2 and command != 'perf':
-    option_parser.error('Unrecognized arguments: %s' % (' '.join(args[2:])))
-    return constants.ERROR_EXIT_CODE
-  if command == 'perf':
-    if ((options.single_step and len(args) <= 2) or
-        (not options.single_step and len(args) > 2)):
-      option_parser.error('Unrecognized arguments: %s' % (' '.join(args)))
-      return constants.ERROR_EXIT_CODE
+  ProcessCommonOptions(args)
 
-  ProcessCommonOptions(options, option_parser.error)
-
-  if options.enable_platform_mode:
-    return RunTestsInPlatformMode(command, options, option_parser)
+  if args.enable_platform_mode:
+    return RunTestsInPlatformMode(args, parser.error)
 
   if command in constants.LOCAL_MACHINE_TESTS:
     devices = []
   else:
-    devices = _GetAttachedDevices(options.test_device)
+    devices = _GetAttachedDevices(args.test_device)
 
   forwarder.Forwarder.RemoveHostLog()
   if not ports.ResetTestServerPortAllocation():
     raise Exception('Failed to reset test server port.')
 
   if command == 'gtest':
-    return _RunGTests(options, devices)
+    return _RunGTests(args, devices)
   elif command == 'linker':
-    return _RunLinkerTests(options, devices)
+    return _RunLinkerTests(args, devices)
   elif command == 'instrumentation':
-    return _RunInstrumentationTests(options, option_parser.error, devices)
+    return _RunInstrumentationTests(args, devices)
   elif command == 'uiautomator':
-    return _RunUIAutomatorTests(options, option_parser.error, devices)
+    return _RunUIAutomatorTests(args, devices)
   elif command == 'junit':
-    return _RunJUnitTests(options, option_parser.error)
+    return _RunJUnitTests(args)
   elif command == 'monkey':
-    return _RunMonkeyTests(options, option_parser.error, devices)
+    return _RunMonkeyTests(args, devices)
   elif command == 'perf':
-    return _RunPerfTests(options, args, option_parser.error)
+    return _RunPerfTests(args)
   elif command == 'python':
-    return _RunPythonTests(options, option_parser.error)
+    return _RunPythonTests(args)
   else:
     raise Exception('Unknown test type.')
 
@@ -906,93 +849,60 @@
 ]
 
 
-def RunTestsInPlatformMode(command, options, option_parser):
+def RunTestsInPlatformMode(args, parser):
 
-  if command not in _SUPPORTED_IN_PLATFORM_MODE:
-    option_parser.error('%s is not yet supported in platform mode' % command)
+  if args.command not in _SUPPORTED_IN_PLATFORM_MODE:
+    parser.error('%s is not yet supported in platform mode' % args.command)
 
-  with environment_factory.CreateEnvironment(
-      command, options, option_parser.error) as env:
-    with test_instance_factory.CreateTestInstance(
-        command, options, option_parser.error) as test:
+  with environment_factory.CreateEnvironment(args, parser.error) as env:
+    with test_instance_factory.CreateTestInstance(args, parser.error) as test:
       with test_run_factory.CreateTestRun(
-          options, env, test, option_parser.error) as test_run:
+          args, env, test, parser.error) as test_run:
         results = test_run.RunTests()
 
         report_results.LogFull(
             results=results,
             test_type=test.TestType(),
             test_package=test_run.TestPackage(),
-            annotation=options.annotations,
-            flakiness_server=options.flakiness_dashboard_server)
+            annotation=args.annotations,
+            flakiness_server=args.flakiness_dashboard_server)
+
+        if args.json_results_file:
+          json_results.GenerateJsonResultsFile(
+              results, args.json_results_file)
 
   return results
 
 
-def HelpCommand(command, _options, args, option_parser):
-  """Display help for a certain command, or overall help.
-
-  Args:
-    command: String indicating the command that was received to trigger
-        this function.
-    options: optparse options dictionary. unused.
-    args: List of extra args from optparse.
-    option_parser: optparse.OptionParser object.
-
-  Returns:
-    Integer indicated exit code.
-  """
-  # If we don't have any args, display overall help
-  if len(args) < 3:
-    option_parser.print_help()
-    return 0
-  # If we have too many args, print an error
-  if len(args) > 3:
-    option_parser.error('Unrecognized arguments: %s' % (' '.join(args[3:])))
-    return constants.ERROR_EXIT_CODE
-
-  command = args[2]
-
-  if command not in VALID_COMMANDS:
-    option_parser.error('Unrecognized command.')
-
-  # Treat the help command as a special case. We don't care about showing a
-  # specific help page for itself.
-  if command == 'help':
-    option_parser.print_help()
-    return 0
-
-  VALID_COMMANDS[command].add_options_func(option_parser)
-  option_parser.usage = '%prog ' + command + ' [options]'
-  option_parser.commands_dict = {}
-  option_parser.print_help()
-
-  return 0
-
-
-# Define a named tuple for the values in the VALID_COMMANDS dictionary so the
-# syntax is a bit prettier. The tuple is two functions: (add options, run
-# command).
-CommandFunctionTuple = collections.namedtuple(
-    'CommandFunctionTuple', ['add_options_func', 'run_command_func'])
+CommandConfigTuple = collections.namedtuple(
+    'CommandConfigTuple',
+    ['add_options_func', 'help_txt'])
 VALID_COMMANDS = {
-    'gtest': CommandFunctionTuple(AddGTestOptions, RunTestsCommand),
-    'instrumentation': CommandFunctionTuple(
-        AddInstrumentationTestOptions, RunTestsCommand),
-    'uiautomator': CommandFunctionTuple(
-        AddUIAutomatorTestOptions, RunTestsCommand),
-    'junit': CommandFunctionTuple(
-        AddJUnitTestOptions, RunTestsCommand),
-    'monkey': CommandFunctionTuple(
-        AddMonkeyTestOptions, RunTestsCommand),
-    'perf': CommandFunctionTuple(
-        AddPerfTestOptions, RunTestsCommand),
-    'python': CommandFunctionTuple(
-        AddPythonTestOptions, RunTestsCommand),
-    'linker': CommandFunctionTuple(
-        AddLinkerTestOptions, RunTestsCommand),
-    'help': CommandFunctionTuple(lambda option_parser: None, HelpCommand)
-    }
+    'gtest': CommandConfigTuple(
+        AddGTestOptions,
+        'googletest-based C++ tests'),
+    'instrumentation': CommandConfigTuple(
+        AddInstrumentationTestOptions,
+        'InstrumentationTestCase-based Java tests'),
+    'uiautomator': CommandConfigTuple(
+        AddUIAutomatorTestOptions,
+        "Tests that run via Android's uiautomator command"),
+    'junit': CommandConfigTuple(
+        AddJUnitTestOptions,
+        'JUnit4-based Java tests'),
+    'monkey': CommandConfigTuple(
+        AddMonkeyTestOptions,
+        "Tests based on Android's monkey"),
+    'perf': CommandConfigTuple(
+        AddPerfTestOptions,
+        'Performance tests'),
+    'python': CommandConfigTuple(
+        AddPythonTestOptions,
+        'Python tests based on unittest.TestCase'),
+    'linker': CommandConfigTuple(
+        AddLinkerTestOptions,
+        'Linker tests'),
+}
 
 
 def DumpThreadStacks(_signal, _frame):
@@ -1002,9 +912,19 @@
 
 def main():
   signal.signal(signal.SIGUSR1, DumpThreadStacks)
-  option_parser = command_option_parser.CommandOptionParser(
-      commands_dict=VALID_COMMANDS)
-  return command_option_parser.ParseAndExecute(option_parser)
+
+  parser = argparse.ArgumentParser()
+  command_parsers = parser.add_subparsers(title='test types',
+                                          dest='command')
+
+  for test_type, config in sorted(VALID_COMMANDS.iteritems(),
+                                  key=lambda x: x[0]):
+    subparser = command_parsers.add_parser(
+        test_type, usage='%(prog)s [options]', help=config.help_txt)
+    config.add_options_func(subparser)
+
+  args = parser.parse_args()
+  return RunTestsCommand(args, parser)
 
 
 if __name__ == '__main__':
diff --git a/build/common.gypi b/build/common.gypi
index 77939be..f5a3e80 100644
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -567,6 +567,9 @@
       # cross-compile builds.
       'clang%': 0,
 
+      # Use experimental lld linker instead of the platform's default linker.
+      'use_lld%': 0,
+
       # Enable plug-in installation by default.
       'enable_plugin_installation%': 1,
 
@@ -589,8 +592,8 @@
 
       'wix_path%': '<(DEPTH)/third_party/wix',
 
-      # Managed users are enabled by default.
-      'enable_managed_users%': 1,
+      # Supervised users are enabled by default.
+      'enable_supervised_users%': 1,
 
       # Platform natively supports discardable memory.
       'native_discardable_memory%': 0,
@@ -798,7 +801,7 @@
           'notifications%': 0,
           'remoting%': 0,
           'safe_browsing%': 0,
-          'enable_managed_users%': 0,
+          'enable_supervised_users%': 0,
           'enable_task_manager%': 0,
           'use_system_libcxx%': 1,
           'support_pre_M6_history_database%': 0,
@@ -997,7 +1000,7 @@
 
         # TODO(baixo): Enable v8_use_external_startup_data
         # http://crbug.com/421063
-        ['android_webview_build==0 and android_webview_telemetry_build==0 and chromecast==0 and OS=="android"', {
+        ['android_webview_build==0 and android_webview_telemetry_build==0 and chromecast==0 and chromeos==0 and (OS=="android" or OS=="linux" or OS=="mac")', {
           'v8_use_external_startup_data': 1,
         }, {
           'v8_use_external_startup_data': 0,
@@ -1186,7 +1189,7 @@
     'google_api_key%': '<(google_api_key)',
     'google_default_client_id%': '<(google_default_client_id)',
     'google_default_client_secret%': '<(google_default_client_secret)',
-    'enable_managed_users%': '<(enable_managed_users)',
+    'enable_supervised_users%': '<(enable_supervised_users)',
     'native_discardable_memory%': '<(native_discardable_memory)',
     'native_memory_pressure_signals%': '<(native_memory_pressure_signals)',
     'spdy_proxy_auth_property%': '<(spdy_proxy_auth_property)',
@@ -1259,7 +1262,7 @@
     #  'win_use_allocator_shim': 0,
     #  'win_release_RuntimeLibrary': 2
     # to ~/.gyp/include.gypi, gclient runhooks --force, and do a release build.
-    'win_use_allocator_shim%': 1, # 1 = shim allocator via libcmt; 0 = msvcrt
+    'win_use_allocator_shim%': 0, # 1 = shim allocator via libcmt; 0 = msvcrt
 
     # TODO(bradnelson): eliminate this when possible.
     # To allow local gyp files to prevent release.vsprops from being included.
@@ -1302,6 +1305,7 @@
     'clang%': '<(clang)',
     'host_clang%': '<(host_clang)',
     'make_clang_dir%': '<(make_clang_dir)',
+    'use_lld%': '<(use_lld)',
 
     # Control which version of clang to use when building for iOS.  If set to
     # '1', uses the version of clang that ships with Xcode.  If set to '0', uses
@@ -1773,7 +1777,7 @@
         'use_openssl_certs%': 1,
 
         'proprietary_codecs%': '<(proprietary_codecs)',
-        'safe_browsing%': 1,
+        'safe_browsing%': 2,
         'enable_web_speech%': 0,
         'java_bridge%': 1,
         'build_ffmpegsumo%': 0,
@@ -2235,7 +2239,7 @@
         # Iterator debugging is slow.
         'win_debug_disable_iterator_debugging': '1',
         # Try to disable optimizations that mess up stacks in a release build.
-        # DrM-i#1054 (http://code.google.com/p/drmemory/issues/detail?id=1054)
+        # DrM-i#1054 (https://github.com/DynamoRIO/drmemory/issues/1054)
         # /O2 and /Ob0 (disable inline) cannot be used together because of a
         # compiler bug, so we use /Ob1 instead.
         'win_release_InlineFunctionExpansion': '1',
@@ -2345,7 +2349,6 @@
       }, {
          'use_seccomp_bpf%': 0,
       }],
-
       # Set component build with LTO until all tests pass.
       # This also reduces link time.
       ['use_lto==1', {
@@ -2384,7 +2387,7 @@
     # Whether to allow building of the GPU-related isolates.
     'archive_gpu_tests%': 0,
 
-    # Whether to allow building of chromoting related isolates.
+     # Whether to allow building of chromoting related isolates.
     'archive_chromoting_tests%': 0,
   },
   'target_defaults': {
@@ -2944,8 +2947,8 @@
       ['use_icu_alternatives_on_android==1', {
         'defines': ['USE_ICU_ALTERNATIVES_ON_ANDROID=1'],
       }],
-      ['enable_managed_users==1', {
-        'defines': ['ENABLE_MANAGED_USERS=1'],
+      ['enable_supervised_users==1', {
+        'defines': ['ENABLE_SUPERVISED_USERS=1'],
       }],
       ['spdy_proxy_auth_property != ""', {
         'defines': ['SPDY_PROXY_AUTH_PROPERTY="<(spdy_proxy_auth_property)"'],
@@ -3412,7 +3415,7 @@
               'WTF_USE_DYNAMIC_ANNOTATIONS=1',
             ],
           }],
-          ['win_use_allocator_shim==0', {
+          ['OS=="win" and win_use_allocator_shim==0', {
             'defines': ['NO_TCMALLOC'],
           }],
           # _FORTIFY_SOURCE isn't really supported by Clang now, see
@@ -3629,6 +3632,7 @@
                 'cflags': ['-funwind-tables'],
               }, {
                 'cflags': ['-fno-unwind-tables', '-fno-asynchronous-unwind-tables'],
+                'defines': ['NO_UNWIND_TABLES'],
               }],
               # TODO(mostynb): shuffle clang/gcc_version/binutils_version
               # definitions in to the right scope to use them when setting
@@ -3710,6 +3714,7 @@
                 'cflags': ['-funwind-tables'],
               }, {
                 'cflags': ['-fno-unwind-tables', '-fno-asynchronous-unwind-tables'],
+                'defines': ['NO_UNWIND_TABLES'],
               }],
             ],
           },
@@ -4272,7 +4277,6 @@
               ['_toolset=="target"', {
                 'cflags': [
                   '-fsanitize=thread',
-                  '-fPIC',
                   '-fsanitize-blacklist=<(tsan_blacklist)',
                 ],
                 'ldflags': [
@@ -4283,13 +4287,6 @@
                   'DYNAMIC_ANNOTATIONS_EXTERNAL_IMPL=1',
                   'WTF_USE_DYNAMIC_ANNOTATIONS_NOIMPL=1',
                 ],
-                'target_conditions': [
-                  ['_type=="executable"', {
-                    'ldflags': [
-                      '-pie',
-                    ],
-                  }],
-                ],
               }],
             ],
           }],
@@ -4299,7 +4296,6 @@
                 'cflags': [
                   '-fsanitize=memory',
                   '-fsanitize-memory-track-origins=<(msan_track_origins)',
-                  '-fPIC',
                   '-fsanitize-blacklist=<(msan_blacklist)',
                 ],
                 'ldflags': [
@@ -4308,13 +4304,6 @@
                 'defines': [
                   'MEMORY_SANITIZER',
                 ],
-                'target_conditions': [
-                  ['_type=="executable"', {
-                    'ldflags': [
-                      '-pie',
-                    ],
-                  }],
-                ],
               }],
             ],
           }],
@@ -4648,19 +4637,10 @@
                   '--sysroot=<(android_ndk_sysroot)',
                   '-nostdlib',
                 ],
-                'variables': {
-                  'conditions': [
-                    ['target_arch=="arm" and arm_thumb==1', {
-                      'thumb_option%': '-mthumb',
-                    }, {
-                      'thumb_option%': '',
-                    }],
-                  ],
-                },
                 'libraries': [
                   '-l<(android_stlport_library)',
                   # Manually link the libgcc.a that the cross compiler uses.
-                  '<!(<(android_toolchain)/*-gcc <(thumb_option) -print-libgcc-file-name)',
+                  '<!(<(android_toolchain)/*-gcc -print-libgcc-file-name)',
                   '-lc',
                   '-ldl',
                   '-lm',
@@ -4725,12 +4705,8 @@
                 'cflags': [
                   '-isystem<(android_stlport_include)',
                 ],
-                'conditions': [
-                  ['target_arch=="arm" and arm_thumb==1', {
-                    'ldflags': [ '-L<(android_stlport_libs_dir)/thumb' ]
-                  }, {
-                    'ldflags': [ '-L<(android_stlport_libs_dir)' ]
-                  }],
+                'ldflags': [
+                  '-L<(android_stlport_libs_dir)',
                 ],
               }, { # else: android_webview_build!=0
                 'aosp_build_settings': {
@@ -5736,6 +5712,13 @@
         ['CC', '<(make_clang_dir)/bin/clang-cl'],
       ],
     }],
+    ['use_lld==1 and OS=="win"', {
+      'make_global_settings': [
+        # Limited to Windows because lld-link is the driver that is compatible
+        # to link.exe.
+        ['LD', '<(make_clang_dir)/bin/lld-link'],
+      ],
+    }],
     ['OS=="android" and clang==0', {
       # Hardcode the compiler names in the Makefile so that
       # it won't depend on the environment at make time.
diff --git a/build/compiled_action.gni b/build/compiled_action.gni
index b750af0..e5059aa 100644
--- a/build/compiled_action.gni
+++ b/build/compiled_action.gni
@@ -102,22 +102,23 @@
     # If that's not the case, we'll need another argument to the script to
     # specify this, since we can't know what the output name is (it might be in
     # another file not processed yet).
-    host_executable = get_label_info(host_tool, "root_out_dir") + "/" +
-      get_label_info(host_tool, "name") + _host_executable_suffix
+    host_executable =
+        get_label_info(host_tool, "root_out_dir") + "/" +
+        get_label_info(host_tool, "name") + _host_executable_suffix
 
     # Add the executable itself as an input.
     inputs += [ host_executable ]
 
-    deps = [ host_tool ]
+    deps = [
+      host_tool,
+    ]
     if (defined(invoker.deps)) {
       deps += invoker.deps
     }
 
     # The script takes as arguments the binary to run, and then the arguments
     # to pass it.
-    args = [
-      rebase_path(host_executable, root_build_dir)
-    ] + invoker.args
+    args = [ rebase_path(host_executable, root_build_dir) ] + invoker.args
   }
 }
 
@@ -151,21 +152,22 @@
     # If that's not the case, we'll need another argument to the script to
     # specify this, since we can't know what the output name is (it might be in
     # another file not processed yet).
-    host_executable = get_label_info(host_tool, "root_out_dir") + "/" +
-      get_label_info(host_tool, "name") + _host_executable_suffix
+    host_executable =
+        get_label_info(host_tool, "root_out_dir") + "/" +
+        get_label_info(host_tool, "name") + _host_executable_suffix
 
     # Add the executable itself as an input.
     inputs += [ host_executable ]
 
-    deps = [ host_tool ]
+    deps = [
+      host_tool,
+    ]
     if (defined(invoker.deps)) {
       deps += invoker.deps
     }
 
     # The script takes as arguments the binary to run, and then the arguments
     # to pass it.
-    args = [
-      rebase_path(host_executable, root_build_dir)
-    ] + invoker.args
+    args = [ rebase_path(host_executable, root_build_dir) ] + invoker.args
   }
 }
diff --git a/build/config/BUILD.gn b/build/config/BUILD.gn
index c51709c..bd803ef 100644
--- a/build/config/BUILD.gn
+++ b/build/config/BUILD.gn
@@ -30,8 +30,8 @@
 config("feature_flags") {
   # TODO(brettw) most of these need to be parameterized.
   defines = [
-      "CHROMIUM_BUILD",
-      "V8_DEPRECATION_WARNINGS",  # Don't use deprecated V8 APIs anywhere.
+    "CHROMIUM_BUILD",
+    "V8_DEPRECATION_WARNINGS",  # Don't use deprecated V8 APIs anywhere.
   ]
 
   if (cld_version > 0) {
@@ -171,8 +171,8 @@
   if (enable_settings_app) {
     defines += [ "ENABLE_SETTINGS_APP=1" ]
   }
-  if (enable_managed_users) {
-    defines += [ "ENABLE_MANAGED_USERS=1" ]
+  if (enable_supervised_users) {
+    defines += [ "ENABLE_SUPERVISED_USERS=1" ]
   }
   if (enable_service_discovery) {
     defines += [ "ENABLE_SERVICE_DISCOVERY=1" ]
@@ -204,6 +204,9 @@
   if (proprietary_codecs) {
     defines += [ "USE_PROPRIETARY_CODECS" ]
   }
+  if (enable_hangout_services_extension) {
+    defines += [ "ENABLE_HANGOUT_SERVICES_EXTENSION=1" ]
+  }
 }
 
 # Debug/release ----------------------------------------------------------------
@@ -231,9 +234,7 @@
 }
 
 config("release") {
-  defines = [
-    "NDEBUG",
-  ]
+  defines = [ "NDEBUG" ]
 }
 
 # Default libraries ------------------------------------------------------------
@@ -268,6 +269,7 @@
       "winmm.lib",
       "winspool.lib",
       "ws2_32.lib",
+
       # Please don't add more stuff here. We should actually be making this
       # list smaller, since all common things should be covered. If you need
       # some extra libraries, please just add a libs = [ "foo.lib" ] to your
@@ -284,7 +286,7 @@
       #   '<!(<(android_toolchain)/*-gcc -print-libgcc-file-name)',
       "c",
       "dl",
-      "m"
+      "m",
     ]
   } else if (is_mac) {
     libs = [
@@ -305,8 +307,6 @@
       "UIKit.framework",
     ]
   } else if (is_linux) {
-    libs = [
-      "dl",
-    ]
+    libs = [ "dl" ]
   }
 }
diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn
index 0d65c44..39372d8 100644
--- a/build/config/BUILDCONFIG.gn
+++ b/build/config/BUILDCONFIG.gn
@@ -27,12 +27,13 @@
 
   # Component build.
   is_component_build = false
+
   # Debug build.
   is_debug = true
 
   # Set to true when compiling with the Clang compiler. Typically this is used
   # to configure warnings.
-  is_clang = (os == "mac" || os == "ios" || os == "linux" || os == "chromeos")
+  is_clang = os == "mac" || os == "ios" || os == "linux" || os == "chromeos"
 
   # Selects the desired build flavor. Official builds get additional
   # processing to prepare for release. Normally you will want to develop and
@@ -238,9 +239,7 @@
   ]
 }
 if (!is_mac && !is_ios) {
-  sources_assignment_filter += [
-    "*.mm",
-  ]
+  sources_assignment_filter += [ "*.mm" ]
 }
 if (!is_linux) {
   sources_assignment_filter += [
@@ -269,6 +268,7 @@
     "*\bchromeos/*",
   ]
 }
+
 # DO NOT ADD MORE PATTERNS TO THIS LIST, see set_sources_assignment_filter call
 # below.
 
@@ -309,7 +309,6 @@
 # duplication in each target below.
 _native_compiler_configs = [
   "//build/config:feature_flags",
-
   "//build/config/compiler:compiler",
   "//build/config/compiler:compiler_arm_fpu",
   "//build/config/compiler:chromium_code",
@@ -335,13 +334,13 @@
 }
 
 if (is_linux) {
-  _native_compiler_configs += [ "//build/config/linux:sdk", ]
+  _native_compiler_configs += [ "//build/config/linux:sdk" ]
 } else if (is_mac) {
-  _native_compiler_configs += [ "//build/config/mac:sdk", ]
+  _native_compiler_configs += [ "//build/config/mac:sdk" ]
 } else if (is_ios) {
-  _native_compiler_configs += [ "//build/config/ios:sdk", ]
+  _native_compiler_configs += [ "//build/config/ios:sdk" ]
 } else if (is_android) {
-  _native_compiler_configs += [ "//build/config/android:sdk", ]
+  _native_compiler_configs += [ "//build/config/android:sdk" ]
 }
 
 if (is_clang) {
@@ -388,15 +387,16 @@
 if (is_win) {
   if (is_debug) {
     _default_incremental_linking_config =
-      "//build/config/win:incremental_linking"
+        "//build/config/win:incremental_linking"
   } else {
     _default_incremental_linking_config =
-      "//build/config/win:no_incremental_linking"
+        "//build/config/win:no_incremental_linking"
   }
   _windows_linker_configs = [
     _default_incremental_linking_config,
     "//build/config/win:sdk_link",
     "//build/config/win:common_linker_setup",
+
     # Default to console-mode apps. Most of our targets are tests and such
     # that shouldn't use the windows subsystem.
     "//build/config/win:console",
@@ -404,15 +404,15 @@
 }
 
 # Executable defaults.
-_executable_configs = _native_compiler_configs + [
-  "//build/config:default_libs",
-]
+_executable_configs =
+    _native_compiler_configs + [ "//build/config:default_libs" ]
 if (is_win) {
   _executable_configs += _windows_linker_configs
 } else if (is_mac) {
   _executable_configs += [
     "//build/config/mac:mac_dynamic_flags",
-    "//build/config/mac:mac_executable_flags" ]
+    "//build/config/mac:mac_executable_flags",
+  ]
 } else if (is_linux || is_android) {
   _executable_configs += [ "//build/config/gcc:executable_ldconfig" ]
   if (is_android) {
@@ -429,9 +429,8 @@
 }
 
 # Shared library defaults (also for components in component mode).
-_shared_library_configs = _native_compiler_configs + [
-  "//build/config:default_libs",
-]
+_shared_library_configs =
+    _native_compiler_configs + [ "//build/config:default_libs" ]
 if (is_win) {
   _shared_library_configs += _windows_linker_configs
 } else if (is_mac) {
@@ -465,7 +464,6 @@
   }
 }
 
-
 # ==============================================================================
 # TOOLCHAIN SETUP
 # ==============================================================================
@@ -536,38 +534,91 @@
       # the original target may have override it for some assignments.
       set_sources_assignment_filter([])
 
-      if (defined(invoker.all_dependent_configs)) { all_dependent_configs = invoker.all_dependent_configs }
-      if (defined(invoker.allow_circular_includes_from)) { allow_circular_includes_from = invoker.allow_circular_includes_from }
-      if (defined(invoker.cflags)) { cflags = invoker.cflags }
-      if (defined(invoker.cflags_c)) { cflags_c = invoker.cflags_c }
-      if (defined(invoker.cflags_cc)) { cflags_cc = invoker.cflags_cc }
-      if (defined(invoker.cflags_objc)) { cflags_objc = invoker.cflags_objc }
-      if (defined(invoker.cflags_objcc)) { cflags_objcc = invoker.cflags_objcc }
-      if (defined(invoker.check_includes)) { check_includes = invoker.check_includes }
-      if (defined(invoker.data)) { data = invoker.data }
-      if (defined(invoker.datadeps)) { datadeps = invoker.datadeps }
-      if (defined(invoker.defines)) { defines = invoker.defines }
+      if (defined(invoker.all_dependent_configs)) {
+        all_dependent_configs = invoker.all_dependent_configs
+      }
+      if (defined(invoker.allow_circular_includes_from)) {
+        allow_circular_includes_from = invoker.allow_circular_includes_from
+      }
+      if (defined(invoker.cflags)) {
+        cflags = invoker.cflags
+      }
+      if (defined(invoker.cflags_c)) {
+        cflags_c = invoker.cflags_c
+      }
+      if (defined(invoker.cflags_cc)) {
+        cflags_cc = invoker.cflags_cc
+      }
+      if (defined(invoker.cflags_objc)) {
+        cflags_objc = invoker.cflags_objc
+      }
+      if (defined(invoker.cflags_objcc)) {
+        cflags_objcc = invoker.cflags_objcc
+      }
+      if (defined(invoker.check_includes)) {
+        check_includes = invoker.check_includes
+      }
+      if (defined(invoker.data)) {
+        data = invoker.data
+      }
+      if (defined(invoker.datadeps)) {
+        datadeps = invoker.datadeps
+      }
+      if (defined(invoker.defines)) {
+        defines = invoker.defines
+      }
+
       # All shared libraries must have the sanitizer deps to properly link in
       # asan mode (this target will be empty in other cases).
       if (defined(invoker.deps)) {
         deps = invoker.deps + [ "//build/config/sanitizers:deps" ]
       } else {
-        deps = [ "//build/config/sanitizers:deps" ]
+        deps = [
+          "//build/config/sanitizers:deps",
+        ]
       }
-      if (defined(invoker.direct_dependent_configs)) { direct_dependent_configs = invoker.direct_dependent_configs }
-      if (defined(invoker.forward_dependent_configs_from)) { forward_dependent_configs_from = invoker.forward_dependent_configs_from }
-      if (defined(invoker.include_dirs)) { include_dirs = invoker.include_dirs }
-      if (defined(invoker.ldflags)) { ldflags = invoker.ldflags }
-      if (defined(invoker.lib_dirs)) { lib_dirs = invoker.lib_dirs }
-      if (defined(invoker.libs)) { libs = invoker.libs }
-      if (defined(invoker.output_extension)) { output_extension = invoker.output_extension }
-      if (defined(invoker.output_name)) { output_name = invoker.output_name }
-      if (defined(invoker.public)) { public = invoker.public }
-      if (defined(invoker.public_configs)) { public_configs = invoker.public_configs }
-      if (defined(invoker.public_deps)) { public_deps = invoker.public_deps }
-      if (defined(invoker.sources)) { sources = invoker.sources }
-      if (defined(invoker.testonly)) { testonly = invoker.testonly }
-      if (defined(invoker.visibility)) { visibility = invoker.visibility }
+      if (defined(invoker.direct_dependent_configs)) {
+        direct_dependent_configs = invoker.direct_dependent_configs
+      }
+      if (defined(invoker.forward_dependent_configs_from)) {
+        forward_dependent_configs_from = invoker.forward_dependent_configs_from
+      }
+      if (defined(invoker.include_dirs)) {
+        include_dirs = invoker.include_dirs
+      }
+      if (defined(invoker.ldflags)) {
+        ldflags = invoker.ldflags
+      }
+      if (defined(invoker.lib_dirs)) {
+        lib_dirs = invoker.lib_dirs
+      }
+      if (defined(invoker.libs)) {
+        libs = invoker.libs
+      }
+      if (defined(invoker.output_extension)) {
+        output_extension = invoker.output_extension
+      }
+      if (defined(invoker.output_name)) {
+        output_name = invoker.output_name
+      }
+      if (defined(invoker.public)) {
+        public = invoker.public
+      }
+      if (defined(invoker.public_configs)) {
+        public_configs = invoker.public_configs
+      }
+      if (defined(invoker.public_deps)) {
+        public_deps = invoker.public_deps
+      }
+      if (defined(invoker.sources)) {
+        sources = invoker.sources
+      }
+      if (defined(invoker.testonly)) {
+        testonly = invoker.testonly
+      }
+      if (defined(invoker.visibility)) {
+        visibility = invoker.visibility
+      }
     }
   } else {
     source_set(target_name) {
@@ -578,32 +629,84 @@
       # See above call.
       set_sources_assignment_filter([])
 
-      if (defined(invoker.all_dependent_configs)) { all_dependent_configs = invoker.all_dependent_configs }
-      if (defined(invoker.allow_circular_includes_from)) { allow_circular_includes_from = invoker.allow_circular_includes_from }
-      if (defined(invoker.cflags)) { cflags = invoker.cflags }
-      if (defined(invoker.cflags_c)) { cflags_c = invoker.cflags_c }
-      if (defined(invoker.cflags_cc)) { cflags_cc = invoker.cflags_cc }
-      if (defined(invoker.cflags_objc)) { cflags_objc = invoker.cflags_objc }
-      if (defined(invoker.cflags_objcc)) { cflags_objcc = invoker.cflags_objcc }
-      if (defined(invoker.check_includes)) { check_includes = invoker.check_includes }
-      if (defined(invoker.data)) { data = invoker.data }
-      if (defined(invoker.datadeps)) { datadeps = invoker.datadeps }
-      if (defined(invoker.defines)) { defines = invoker.defines }
-      if (defined(invoker.deps)) { deps = invoker.deps }
-      if (defined(invoker.direct_dependent_configs)) { direct_dependent_configs = invoker.direct_dependent_configs }
-      if (defined(invoker.forward_dependent_configs_from)) { forward_dependent_configs_from = invoker.forward_dependent_configs_from }
-      if (defined(invoker.include_dirs)) { include_dirs = invoker.include_dirs }
-      if (defined(invoker.ldflags)) { ldflags = invoker.ldflags }
-      if (defined(invoker.lib_dirs)) { lib_dirs = invoker.lib_dirs }
-      if (defined(invoker.libs)) { libs = invoker.libs }
-      if (defined(invoker.output_extension)) { output_extension = invoker.output_extension }
-      if (defined(invoker.output_name)) { output_name = invoker.output_name }
-      if (defined(invoker.public)) { public = invoker.public }
-      if (defined(invoker.public_configs)) { public_configs = invoker.public_configs }
-      if (defined(invoker.public_deps)) { public_deps = invoker.public_deps }
-      if (defined(invoker.sources)) { sources = invoker.sources }
-      if (defined(invoker.testonly)) { testonly = invoker.testonly }
-      if (defined(invoker.visibility)) { visibility = invoker.visibility }
+      if (defined(invoker.all_dependent_configs)) {
+        all_dependent_configs = invoker.all_dependent_configs
+      }
+      if (defined(invoker.allow_circular_includes_from)) {
+        allow_circular_includes_from = invoker.allow_circular_includes_from
+      }
+      if (defined(invoker.cflags)) {
+        cflags = invoker.cflags
+      }
+      if (defined(invoker.cflags_c)) {
+        cflags_c = invoker.cflags_c
+      }
+      if (defined(invoker.cflags_cc)) {
+        cflags_cc = invoker.cflags_cc
+      }
+      if (defined(invoker.cflags_objc)) {
+        cflags_objc = invoker.cflags_objc
+      }
+      if (defined(invoker.cflags_objcc)) {
+        cflags_objcc = invoker.cflags_objcc
+      }
+      if (defined(invoker.check_includes)) {
+        check_includes = invoker.check_includes
+      }
+      if (defined(invoker.data)) {
+        data = invoker.data
+      }
+      if (defined(invoker.datadeps)) {
+        datadeps = invoker.datadeps
+      }
+      if (defined(invoker.defines)) {
+        defines = invoker.defines
+      }
+      if (defined(invoker.deps)) {
+        deps = invoker.deps
+      }
+      if (defined(invoker.direct_dependent_configs)) {
+        direct_dependent_configs = invoker.direct_dependent_configs
+      }
+      if (defined(invoker.forward_dependent_configs_from)) {
+        forward_dependent_configs_from = invoker.forward_dependent_configs_from
+      }
+      if (defined(invoker.include_dirs)) {
+        include_dirs = invoker.include_dirs
+      }
+      if (defined(invoker.ldflags)) {
+        ldflags = invoker.ldflags
+      }
+      if (defined(invoker.lib_dirs)) {
+        lib_dirs = invoker.lib_dirs
+      }
+      if (defined(invoker.libs)) {
+        libs = invoker.libs
+      }
+      if (defined(invoker.output_extension)) {
+        output_extension = invoker.output_extension
+      }
+      if (defined(invoker.output_name)) {
+        output_name = invoker.output_name
+      }
+      if (defined(invoker.public)) {
+        public = invoker.public
+      }
+      if (defined(invoker.public_configs)) {
+        public_configs = invoker.public_configs
+      }
+      if (defined(invoker.public_deps)) {
+        public_deps = invoker.public_deps
+      }
+      if (defined(invoker.sources)) {
+        sources = invoker.sources
+      }
+      if (defined(invoker.testonly)) {
+        testonly = invoker.testonly
+      }
+      if (defined(invoker.visibility)) {
+        visibility = invoker.visibility
+      }
     }
   }
 }
@@ -628,31 +731,81 @@
 
       testonly = true
 
-      if (defined(invoker.all_dependent_configs)) { all_dependent_configs = invoker.all_dependent_configs }
-      if (defined(invoker.allow_circular_includes_from)) { allow_circular_includes_from = invoker.allow_circular_includes_from }
-      if (defined(invoker.cflags)) { cflags = invoker.cflags }
-      if (defined(invoker.cflags_c)) { cflags_c = invoker.cflags_c }
-      if (defined(invoker.cflags_cc)) { cflags_cc = invoker.cflags_cc }
-      if (defined(invoker.cflags_objc)) { cflags_objc = invoker.cflags_objc }
-      if (defined(invoker.cflags_objcc)) { cflags_objcc = invoker.cflags_objcc }
-      if (defined(invoker.check_includes)) { check_includes = invoker.check_includes }
-      if (defined(invoker.data)) { data = invoker.data }
-      if (defined(invoker.datadeps)) { datadeps = invoker.datadeps }
-      if (defined(invoker.defines)) { defines = invoker.defines }
-      if (defined(invoker.deps)) { deps = invoker.deps }
-      if (defined(invoker.direct_dependent_configs)) { direct_dependent_configs = invoker.direct_dependent_configs }
-      if (defined(invoker.forward_dependent_configs_from)) { forward_dependent_configs_from = invoker.forward_dependent_configs_from }
-      if (defined(invoker.include_dirs)) { include_dirs = invoker.include_dirs }
-      if (defined(invoker.ldflags)) { ldflags = invoker.ldflags }
-      if (defined(invoker.lib_dirs)) { lib_dirs = invoker.lib_dirs }
-      if (defined(invoker.libs)) { libs = invoker.libs }
-      if (defined(invoker.output_extension)) { output_extension = invoker.output_extension }
-      if (defined(invoker.output_name)) { output_name = invoker.output_name }
-      if (defined(invoker.public)) { public = invoker.public }
-      if (defined(invoker.public_configs)) { public_configs = invoker.public_configs }
-      if (defined(invoker.public_deps)) { public_deps = invoker.public_deps }
-      if (defined(invoker.sources)) { sources = invoker.sources }
-      if (defined(invoker.visibility)) { visibility = invoker.visibility }
+      if (defined(invoker.all_dependent_configs)) {
+        all_dependent_configs = invoker.all_dependent_configs
+      }
+      if (defined(invoker.allow_circular_includes_from)) {
+        allow_circular_includes_from = invoker.allow_circular_includes_from
+      }
+      if (defined(invoker.cflags)) {
+        cflags = invoker.cflags
+      }
+      if (defined(invoker.cflags_c)) {
+        cflags_c = invoker.cflags_c
+      }
+      if (defined(invoker.cflags_cc)) {
+        cflags_cc = invoker.cflags_cc
+      }
+      if (defined(invoker.cflags_objc)) {
+        cflags_objc = invoker.cflags_objc
+      }
+      if (defined(invoker.cflags_objcc)) {
+        cflags_objcc = invoker.cflags_objcc
+      }
+      if (defined(invoker.check_includes)) {
+        check_includes = invoker.check_includes
+      }
+      if (defined(invoker.data)) {
+        data = invoker.data
+      }
+      if (defined(invoker.datadeps)) {
+        datadeps = invoker.datadeps
+      }
+      if (defined(invoker.defines)) {
+        defines = invoker.defines
+      }
+      if (defined(invoker.deps)) {
+        deps = invoker.deps
+      }
+      if (defined(invoker.direct_dependent_configs)) {
+        direct_dependent_configs = invoker.direct_dependent_configs
+      }
+      if (defined(invoker.forward_dependent_configs_from)) {
+        forward_dependent_configs_from = invoker.forward_dependent_configs_from
+      }
+      if (defined(invoker.include_dirs)) {
+        include_dirs = invoker.include_dirs
+      }
+      if (defined(invoker.ldflags)) {
+        ldflags = invoker.ldflags
+      }
+      if (defined(invoker.lib_dirs)) {
+        lib_dirs = invoker.lib_dirs
+      }
+      if (defined(invoker.libs)) {
+        libs = invoker.libs
+      }
+      if (defined(invoker.output_extension)) {
+        output_extension = invoker.output_extension
+      }
+      if (defined(invoker.output_name)) {
+        output_name = invoker.output_name
+      }
+      if (defined(invoker.public)) {
+        public = invoker.public
+      }
+      if (defined(invoker.public_configs)) {
+        public_configs = invoker.public_configs
+      }
+      if (defined(invoker.public_deps)) {
+        public_deps = invoker.public_deps
+      }
+      if (defined(invoker.sources)) {
+        sources = invoker.sources
+      }
+      if (defined(invoker.visibility)) {
+        visibility = invoker.visibility
+      }
     }
   } else {
     executable(target_name) {
@@ -665,37 +818,88 @@
 
       testonly = true
 
-      if (defined(invoker.all_dependent_configs)) { all_dependent_configs = invoker.all_dependent_configs }
-      if (defined(invoker.allow_circular_includes_from)) { allow_circular_includes_from = invoker.allow_circular_includes_from }
-      if (defined(invoker.cflags)) { cflags = invoker.cflags }
-      if (defined(invoker.cflags_c)) { cflags_c = invoker.cflags_c }
-      if (defined(invoker.cflags_cc)) { cflags_cc = invoker.cflags_cc }
-      if (defined(invoker.cflags_objc)) { cflags_objc = invoker.cflags_objc }
-      if (defined(invoker.cflags_objcc)) { cflags_objcc = invoker.cflags_objcc }
-      if (defined(invoker.check_includes)) { check_includes = invoker.check_includes }
-      if (defined(invoker.data)) { data = invoker.data }
-      if (defined(invoker.datadeps)) { datadeps = invoker.datadeps }
-      if (defined(invoker.defines)) { defines = invoker.defines }
+      if (defined(invoker.all_dependent_configs)) {
+        all_dependent_configs = invoker.all_dependent_configs
+      }
+      if (defined(invoker.allow_circular_includes_from)) {
+        allow_circular_includes_from = invoker.allow_circular_includes_from
+      }
+      if (defined(invoker.cflags)) {
+        cflags = invoker.cflags
+      }
+      if (defined(invoker.cflags_c)) {
+        cflags_c = invoker.cflags_c
+      }
+      if (defined(invoker.cflags_cc)) {
+        cflags_cc = invoker.cflags_cc
+      }
+      if (defined(invoker.cflags_objc)) {
+        cflags_objc = invoker.cflags_objc
+      }
+      if (defined(invoker.cflags_objcc)) {
+        cflags_objcc = invoker.cflags_objcc
+      }
+      if (defined(invoker.check_includes)) {
+        check_includes = invoker.check_includes
+      }
+      if (defined(invoker.data)) {
+        data = invoker.data
+      }
+      if (defined(invoker.datadeps)) {
+        datadeps = invoker.datadeps
+      }
+      if (defined(invoker.defines)) {
+        defines = invoker.defines
+      }
+
       # All shared libraries must have the sanitizer deps to properly link in
       # asan mode (this target will be empty in other cases).
       if (defined(invoker.deps)) {
         deps = invoker.deps + [ "//build/config/sanitizers:deps" ]
       } else {
-        deps = [ "//build/config/sanitizers:deps" ]
+        deps = [
+          "//build/config/sanitizers:deps",
+        ]
       }
-      if (defined(invoker.direct_dependent_configs)) { direct_dependent_configs = invoker.direct_dependent_configs }
-      if (defined(invoker.forward_dependent_configs_from)) { forward_dependent_configs_from = invoker.forward_dependent_configs_from }
-      if (defined(invoker.include_dirs)) { include_dirs = invoker.include_dirs }
-      if (defined(invoker.ldflags)) { ldflags = invoker.ldflags }
-      if (defined(invoker.lib_dirs)) { lib_dirs = invoker.lib_dirs }
-      if (defined(invoker.libs)) { libs = invoker.libs }
-      if (defined(invoker.output_extension)) { output_extension = invoker.output_extension }
-      if (defined(invoker.output_name)) { output_name = invoker.output_name }
-      if (defined(invoker.public)) { public = invoker.public }
-      if (defined(invoker.public_configs)) { public_configs = invoker.public_configs }
-      if (defined(invoker.public_deps)) { public_deps = invoker.public_deps }
-      if (defined(invoker.sources)) { sources = invoker.sources }
-      if (defined(invoker.visibility)) { visibility = invoker.visibility }
+      if (defined(invoker.direct_dependent_configs)) {
+        direct_dependent_configs = invoker.direct_dependent_configs
+      }
+      if (defined(invoker.forward_dependent_configs_from)) {
+        forward_dependent_configs_from = invoker.forward_dependent_configs_from
+      }
+      if (defined(invoker.include_dirs)) {
+        include_dirs = invoker.include_dirs
+      }
+      if (defined(invoker.ldflags)) {
+        ldflags = invoker.ldflags
+      }
+      if (defined(invoker.lib_dirs)) {
+        lib_dirs = invoker.lib_dirs
+      }
+      if (defined(invoker.libs)) {
+        libs = invoker.libs
+      }
+      if (defined(invoker.output_extension)) {
+        output_extension = invoker.output_extension
+      }
+      if (defined(invoker.output_name)) {
+        output_name = invoker.output_name
+      }
+      if (defined(invoker.public)) {
+        public = invoker.public
+      }
+      if (defined(invoker.public_configs)) {
+        public_configs = invoker.public_configs
+      }
+      if (defined(invoker.public_deps)) {
+        public_deps = invoker.public_deps
+      }
+      if (defined(invoker.sources)) {
+        sources = invoker.sources
+      }
+      if (defined(invoker.visibility)) {
+        visibility = invoker.visibility
+      }
     }
   }
 }
diff --git a/build/config/allocator.gni b/build/config/allocator.gni
index 2d2fed1..9fcfe49 100644
--- a/build/config/allocator.gni
+++ b/build/config/allocator.gni
@@ -1,7 +1,7 @@
 # Copyright 2014 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.
- 
+
 # TODO(GYP): Make tcmalloc work on win.
 if (is_android || cpu_arch == "mipsel" || is_mac || is_asan || is_win) {
   _default_allocator = "none"
diff --git a/build/config/android/BUILD.gn b/build/config/android/BUILD.gn
index 2528c18..0cc38b7 100644
--- a/build/config/android/BUILD.gn
+++ b/build/config/android/BUILD.gn
@@ -13,9 +13,11 @@
     # Need to get some linker flags out of the sysroot.
     sysroot_ld_path = rebase_path("//build/config/linux/sysroot_ld_path.py")
     ldflags += [ exec_script(sysroot_ld_path,
-        [ rebase_path("//build/linux/sysroot_ld_path.sh"), sysroot ],
-        "value")
-    ]
+                             [
+                               rebase_path("//build/linux/sysroot_ld_path.sh"),
+                               sysroot,
+                             ],
+                             "value") ]
   }
 }
 
diff --git a/build/config/android/config.gni b/build/config/android/config.gni
index ce9a175..e2bd165 100644
--- a/build/config/android/config.gni
+++ b/build/config/android/config.gni
@@ -5,9 +5,10 @@
 # This file contains common system config stuff for the Android build.
 
 if (is_android) {
-  has_chrome_android_internal = exec_script("//build/dir_exists.py",
-          [ rebase_path("//clank", root_build_dir) ],
-          "string") == "True"
+  has_chrome_android_internal =
+      exec_script("//build/dir_exists.py",
+                  [ rebase_path("//clank", root_build_dir) ],
+                  "string") == "True"
 
   if (has_chrome_android_internal) {
     import("//clank/config.gni")
@@ -27,7 +28,8 @@
     # when this is unset, but builds using the normal chromium build system.
     is_android_webview_build = false
 
-    android_default_keystore_path = "//build/android/ant/chromium-debug.keystore"
+    android_default_keystore_path =
+        "//build/android/ant/chromium-debug.keystore"
     android_default_keystore_name = "chromiumdebugkey"
     android_default_keystore_password = "chromium"
 
@@ -37,23 +39,6 @@
     android_chrome_build_id = "\"\""
   }
 
-  # ABI ------------------------------------------------------------------------
-
-  if (cpu_arch == "x86") {
-    android_app_abi = "x86"
-  } else if (cpu_arch == "arm") {
-    import("//build/config/arm.gni")
-    if (arm_version < 7) {
-      android_app_abi = "armeabi"
-    } else {
-      android_app_abi = "armeabi-v7a"
-    }
-  } else if (cpu_arch == "mipsel") {
-    android_app_abi = "mips"
-  } else {
-    assert(false, "Unknown Android ABI: " + cpu_arch)
-  }
-
   # Host stuff -----------------------------------------------------------------
 
   # Defines the name the Android build gives to the current host CPU
@@ -89,7 +74,8 @@
   android_sdk = "${android_sdk_root}/platforms/android-${android_sdk_version}"
 
   android_sdk_tools = "${android_sdk_root}/tools"
-  android_sdk_build_tools = "${android_sdk_root}/build-tools/$android_sdk_build_tools_version"
+  android_sdk_build_tools =
+      "${android_sdk_root}/build-tools/$android_sdk_build_tools_version"
 
   # Path to the SDK's android.jar
   android_sdk_jar = "$android_sdk/android.jar"
@@ -99,16 +85,22 @@
   # Subdirectories inside android_ndk_root that contain the sysroot for the
   # associated platform.
   _android_api_level = 14
-  x86_android_sysroot_subdir = "platforms/android-${_android_api_level}/arch-x86"
-  arm_android_sysroot_subdir = "platforms/android-${_android_api_level}/arch-arm"
-  mips_android_sysroot_subdir = "platforms/android-${_android_api_level}/arch-mips"
+  x86_android_sysroot_subdir =
+      "platforms/android-${_android_api_level}/arch-x86"
+  arm_android_sysroot_subdir =
+      "platforms/android-${_android_api_level}/arch-arm"
+  mips_android_sysroot_subdir =
+      "platforms/android-${_android_api_level}/arch-mips"
 
   # Toolchain root directory for each build. The actual binaries are inside
   # a "bin" directory inside of these.
   _android_toolchain_version = "4.9"
-  x86_android_toolchain_root = "$android_ndk_root/toolchains/x86-${_android_toolchain_version}/prebuilt/${android_host_os}-${android_host_arch}"
-  arm_android_toolchain_root = "$android_ndk_root/toolchains/arm-linux-androideabi-${_android_toolchain_version}/prebuilt/${android_host_os}-${android_host_arch}"
-  mips_android_toolchain_root = "$android_ndk_root/toolchains/mipsel-linux-android-${_android_toolchain_version}/prebuilt/${android_host_os}-${android_host_arch}"
+  x86_android_toolchain_root =
+      "$android_ndk_root/toolchains/x86-${_android_toolchain_version}/prebuilt/${android_host_os}-${android_host_arch}"
+  arm_android_toolchain_root =
+      "$android_ndk_root/toolchains/arm-linux-androideabi-${_android_toolchain_version}/prebuilt/${android_host_os}-${android_host_arch}"
+  mips_android_toolchain_root =
+      "$android_ndk_root/toolchains/mipsel-linux-android-${_android_toolchain_version}/prebuilt/${android_host_os}-${android_host_arch}"
 
   # Location of libgcc. This is only needed for the current GN toolchain, so we
   # only need to define the current one, rather than one for every platform
@@ -118,24 +110,19 @@
     _binary_prefix = "i686-linux-android"
     android_toolchain_root = "$x86_android_toolchain_root"
     android_libgcc_file =
-      "$android_toolchain_root/lib/gcc/i686-linux-android/${_android_toolchain_version}/libgcc.a"
+        "$android_toolchain_root/lib/gcc/i686-linux-android/${_android_toolchain_version}/libgcc.a"
   } else if (cpu_arch == "arm") {
     android_prebuilt_arch = "android-arm"
     _binary_prefix = "arm-linux-androideabi"
     android_toolchain_root = "$arm_android_toolchain_root"
-    if (arm_use_thumb) {
-      android_libgcc_file =
-        "$android_toolchain_root/lib/gcc/arm-linux-androideabi/${_android_toolchain_version}/thumb/libgcc.a"
-    } else {
-      android_libgcc_file =
+    android_libgcc_file =
         "$android_toolchain_root/lib/gcc/arm-linux-androideabi/${_android_toolchain_version}/libgcc.a"
-    }
   } else if (cpu_arch == "mipsel") {
     android_prebuilt_arch = "android-mips"
     _binary_prefix = "mipsel-linux-android"
     android_toolchain_root = "$mips_android_toolchain_root"
     android_libgcc_file =
-      "$android_toolchain_root/lib/gcc/mipsel-linux-android/${_android_toolchain_version}/libgcc.a"
+        "$android_toolchain_root/lib/gcc/mipsel-linux-android/${_android_toolchain_version}/libgcc.a"
   } else {
     assert(false, "Need android libgcc support for your target arch.")
   }
@@ -143,7 +130,8 @@
   android_tool_prefix = "$android_toolchain_root/bin/$_binary_prefix-"
   android_readelf = "${android_tool_prefix}readelf"
   android_objcopy = "${android_tool_prefix}objcopy"
-  android_gdbserver = "$android_ndk_root/prebuilt/$android_prebuilt_arch/gdbserver/gdbserver"
+  android_gdbserver =
+      "$android_ndk_root/prebuilt/$android_prebuilt_arch/gdbserver/gdbserver"
 
   # stlport stuff --------------------------------------------------------------
 
@@ -152,6 +140,23 @@
   } else {
     android_stlport_library = "stlport_static"
   }
+
+  # ABI ------------------------------------------------------------------------
+
+  if (cpu_arch == "x86") {
+    android_app_abi = "x86"
+  } else if (cpu_arch == "arm") {
+    import("//build/config/arm.gni")
+    if (arm_version < 7) {
+      android_app_abi = "armeabi"
+    } else {
+      android_app_abi = "armeabi-v7a"
+    }
+  } else if (cpu_arch == "mipsel") {
+    android_app_abi = "mips"
+  } else {
+    assert(false, "Unknown Android ABI: " + cpu_arch)
+  }
 } else {
   if (!defined(is_android_webview_build)) {
     is_android_webview_build = false
diff --git a/build/config/android/internal_rules.gni b/build/config/android/internal_rules.gni
index 0568527..41fd75f 100644
--- a/build/config/android/internal_rules.gni
+++ b/build/config/android/internal_rules.gni
@@ -6,16 +6,18 @@
 
 assert(is_android)
 
-
 rebased_android_sdk = rebase_path(android_sdk, root_build_dir)
 rebased_android_sdk_root = rebase_path(android_sdk_root, root_build_dir)
-rebased_android_sdk_build_tools = rebase_path(android_sdk_build_tools, root_build_dir)
+rebased_android_sdk_build_tools =
+    rebase_path(android_sdk_build_tools, root_build_dir)
 
 android_sdk_jar = "$android_sdk/android.jar"
 rebased_android_sdk_jar = rebase_path(android_sdk_jar, root_build_dir)
 
 template("android_lint") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   jar_path = invoker.jar_path
   android_manifest = invoker.android_manifest
@@ -28,35 +30,41 @@
     config_path = base_path + "/config.xml"
     suppressions_file = "//build/android/lint/suppressions.xml"
     inputs = [
-      suppressions_file,
-      android_manifest,
-      jar_path,
-    ] + java_files
+               suppressions_file,
+               android_manifest,
+               jar_path,
+             ] + java_files
 
     outputs = [
       config_path,
-      result_path
+      result_path,
     ]
 
     rebased_java_files = rebase_path(java_files, root_build_dir)
 
     args = [
       "--lint-path=$rebased_android_sdk_root/tools/lint",
-      "--config-path", rebase_path(suppressions_file, root_build_dir),
-      "--manifest-path", rebase_path(android_manifest, root_build_dir),
+      "--config-path",
+      rebase_path(suppressions_file, root_build_dir),
+      "--manifest-path",
+      rebase_path(android_manifest, root_build_dir),
       "--product-dir=.",
-      "--jar-path", rebase_path(jar_path, root_build_dir),
-      "--processed-config-path", rebase_path(config_path, root_build_dir),
-      "--result-path", rebase_path(result_path, root_build_dir),
+      "--jar-path",
+      rebase_path(jar_path, root_build_dir),
+      "--processed-config-path",
+      rebase_path(config_path, root_build_dir),
+      "--result-path",
+      rebase_path(result_path, root_build_dir),
       "--java-files=$rebased_java_files",
       "--enable",
     ]
   }
 }
 
-
 template("dex") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.sources))
   assert(defined(invoker.output))
@@ -64,7 +72,10 @@
     script = "//build/android/gyp/dex.py"
     depfile = "$target_gen_dir/$target_name.d"
     sources = invoker.sources
-    outputs = [depfile, invoker.output]
+    outputs = [
+      depfile,
+      invoker.output,
+    ]
     if (defined(invoker.inputs)) {
       inputs = invoker.inputs
     }
@@ -76,15 +87,16 @@
     rebased_output = rebase_path(invoker.output, root_build_dir)
 
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
-      "--android-sdk-tools", rebased_android_sdk_build_tools,
-      "--dex-path", rebased_output,
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
+      "--android-sdk-tools",
+      rebased_android_sdk_build_tools,
+      "--dex-path",
+      rebased_output,
     ]
 
     if (defined(invoker.no_locals) && invoker.no_locals) {
-      args += [
-        "--no-locals=1"
-      ]
+      args += [ "--no-locals=1" ]
     }
 
     if (defined(invoker.args)) {
@@ -95,11 +107,12 @@
   }
 }
 
-
 # Creates a zip archive of the inputs.
 # If base_dir is provided, the archive paths will be relative to it.
 template("zip") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.inputs))
   assert(defined(invoker.output))
@@ -112,22 +125,23 @@
     inputs = invoker.inputs
     outputs = [
       depfile,
-      invoker.output
+      invoker.output,
     ]
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
       "--inputs=$rebase_inputs",
       "--output=$rebase_output",
     ]
     if (defined(invoker.base_dir)) {
       args += [
-        "--base-dir", rebase_path(invoker.base_dir, root_build_dir)
+        "--base-dir",
+        rebase_path(invoker.base_dir, root_build_dir),
       ]
     }
   }
 }
 
-
 # Write the target's .build_config file. This is a json file that contains a
 # dictionary of information about how to build this target (things that
 # require knowledge about this target's dependencies and cannot be calculated
@@ -138,7 +152,9 @@
 # See build/android/gyp/write_build_config.py and
 # build/android/gyp/util/build_utils.py:ExpandFileArgs
 template("write_build_config") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.type))
   assert(defined(invoker.build_config))
@@ -146,7 +162,8 @@
   type = invoker.type
   build_config = invoker.build_config
 
-  assert(type == "android_apk" || type == "java_library" || type == "android_resources")
+  assert(type == "android_apk" || type == "java_library" ||
+         type == "android_resources")
 
   action(target_name) {
     script = "//build/android/gyp/write_build_config.py"
@@ -168,29 +185,33 @@
 
     outputs = [
       depfile,
-      build_config
+      build_config,
     ]
 
     args = [
-      "--type", type,
-      "--depfile", rebase_path(depfile, root_build_dir),
+      "--type",
+      type,
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
       "--possible-deps-configs=$rebase_possible_deps_configs",
-      "--build-config", rebase_path(build_config, root_build_dir),
+      "--build-config",
+      rebase_path(build_config, root_build_dir),
     ]
 
     is_java_library = type == "java_library"
     is_apk = type == "android_apk"
     is_android_resources = type == "android_resources"
 
-    supports_android = (is_apk || is_android_resources ||
-        (is_java_library && defined(invoker.supports_android) &&
-         invoker.supports_android))
-    requires_android = (is_apk || is_android_resources ||
-        (is_java_library && defined(invoker.requires_android) &&
-         invoker.requires_android))
+    supports_android = is_apk || is_android_resources ||
+                       (is_java_library && defined(invoker.supports_android) &&
+                        invoker.supports_android)
+    requires_android = is_apk || is_android_resources ||
+                       (is_java_library && defined(invoker.requires_android) &&
+                        invoker.requires_android)
 
-    assert(!requires_android || supports_android, "requires_android requires" +
-        " supports_android")
+    assert(!requires_android || supports_android,
+           "requires_android requires" + " supports_android")
+
     # Mark these variables as used.
     assert(is_java_library || true)
     assert(is_apk || true)
@@ -198,13 +219,15 @@
 
     if (is_java_library || is_apk) {
       args += [
-        "--jar-path", rebase_path(invoker.jar_path, root_build_dir),
+        "--jar-path",
+        rebase_path(invoker.jar_path, root_build_dir),
       ]
     }
 
     if (is_apk || (is_java_library && supports_android)) {
       args += [
-        "--dex-path", rebase_path(invoker.dex_path, root_build_dir),
+        "--dex-path",
+        rebase_path(invoker.dex_path, root_build_dir),
       ]
     }
     if (supports_android) {
@@ -221,19 +244,20 @@
     if (is_android_resources || is_apk) {
       assert(defined(invoker.resources_zip))
       args += [
-        "--resources-zip", rebase_path(invoker.resources_zip, root_build_dir),
+        "--resources-zip",
+        rebase_path(invoker.resources_zip, root_build_dir),
       ]
       if (defined(invoker.android_manifest)) {
-        inputs += [
-          invoker.android_manifest
-        ]
+        inputs += [ invoker.android_manifest ]
         args += [
-          "--android-manifest", rebase_path(invoker.android_manifest, root_build_dir),
+          "--android-manifest",
+          rebase_path(invoker.android_manifest, root_build_dir),
         ]
       }
       if (defined(invoker.custom_package)) {
         args += [
-          "--package-name", invoker.custom_package
+          "--package-name",
+          invoker.custom_package,
         ]
       }
     }
@@ -251,15 +275,17 @@
 
     if (defined(invoker.srcjar)) {
       args += [
-        "--srcjar", rebase_path(invoker.srcjar, root_build_dir)
+        "--srcjar",
+        rebase_path(invoker.srcjar, root_build_dir),
       ]
     }
   }
 }
 
-
 template("process_java_prebuilt") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   _input_jar_path = invoker.input_jar_path
   _output_jar_path = invoker.output_jar_path
@@ -287,19 +313,27 @@
         _output_jar_path,
       ]
       args = [
-        "--depfile", rebase_path(depfile, root_build_dir),
-        "--proguard-path", rebase_path(_proguard_jar_path, root_build_dir),
-        "--input-path", rebase_path(_input_jar_path, root_build_dir),
-        "--output-path", rebase_path(_output_jar_path, root_build_dir),
-        "--proguard-config", rebase_path(_proguard_config_path, root_build_dir),
-        "--classpath", rebased_android_sdk_jar,
+        "--depfile",
+        rebase_path(depfile, root_build_dir),
+        "--proguard-path",
+        rebase_path(_proguard_jar_path, root_build_dir),
+        "--input-path",
+        rebase_path(_input_jar_path, root_build_dir),
+        "--output-path",
+        rebase_path(_output_jar_path, root_build_dir),
+        "--proguard-config",
+        rebase_path(_proguard_config_path, root_build_dir),
+        "--classpath",
+        rebased_android_sdk_jar,
         "--classpath=@FileArg($_rebased_build_config:javac:classpath)",
       ]
     }
   } else {
     copy("${target_name}__copy_jar") {
-      sources = [_input_jar_path]
-      outputs = [_output_jar_path]
+      sources = [
+        _input_jar_path,
+      ]
+      outputs = [ _output_jar_path ]
     }
   }
 
@@ -309,28 +343,34 @@
     outputs = [
       depfile,
       _jar_toc_path,
-      _jar_toc_path + ".md5.stamp"
+      _jar_toc_path + ".md5.stamp",
     ]
-    inputs = [ _output_jar_path ]
+    inputs = [
+      _output_jar_path,
+    ]
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
-      "--jar-path", rebase_path(_output_jar_path, root_build_dir),
-      "--toc-path", rebase_path(_jar_toc_path, root_build_dir),
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
+      "--jar-path",
+      rebase_path(_output_jar_path, root_build_dir),
+      "--toc-path",
+      rebase_path(_jar_toc_path, root_build_dir),
     ]
   }
 
   group(target_name) {
     deps = [
-      ":${target_name}__jar_toc"
+      ":${target_name}__jar_toc",
     ]
   }
 }
 
-
 # Packages resources, assets, dex, and native libraries into an apk. Signs and
 # zipaligns the apk.
 template("create_apk") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   _android_manifest = invoker.android_manifest
   _base_path = invoker.base_path
@@ -349,7 +389,7 @@
 
   _native_libs_dir = "//build/android/empty/res"
   if (defined(invoker.native_libs_dir)) {
-      _native_libs_dir = invoker.native_libs_dir
+    _native_libs_dir = invoker.native_libs_dir
   }
 
   _asset_location = "//build/android/empty/res"
@@ -364,8 +404,8 @@
 
   _resource_packaged_apk_path = _base_apk_path + ".ap_"
   _packaged_apk_path = _base_apk_path + ".unfinished.apk"
-  _shared_resources = defined(invoker.shared_resources) && invoker.shared_resources
-
+  _shared_resources =
+      defined(invoker.shared_resources) && invoker.shared_resources
 
   _configuration_name = "Release"
   if (is_debug) {
@@ -381,28 +421,35 @@
       _android_manifest,
       _resources_zip,
     ]
-    outputs = [depfile, _resource_packaged_apk_path]
+    outputs = [
+      depfile,
+      _resource_packaged_apk_path,
+    ]
 
-    _rebased_resources_zips = [rebase_path(_resources_zip, root_build_dir)]
+    _rebased_resources_zips = [ rebase_path(_resources_zip, root_build_dir) ]
     args = [
-        "--depfile", rebase_path(depfile, root_build_dir),
-        "--android-sdk", rebased_android_sdk,
-        "--android-sdk-tools", rebased_android_sdk_build_tools,
-
-        "--configuration-name=$_configuration_name",
-
-        "--android-manifest", rebase_path(_android_manifest, root_build_dir),
-        "--version-code", _version_code,
-        "--version-name", _version_name,
-
-        "--asset-dir", rebase_path(_asset_location, root_build_dir),
-        "--resource-zips=$_rebased_resources_zips",
-
-        "--apk-path", rebase_path(_resource_packaged_apk_path, root_build_dir),
-      ]
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
+      "--android-sdk",
+      rebased_android_sdk,
+      "--android-sdk-tools",
+      rebased_android_sdk_build_tools,
+      "--configuration-name=$_configuration_name",
+      "--android-manifest",
+      rebase_path(_android_manifest, root_build_dir),
+      "--version-code",
+      _version_code,
+      "--version-name",
+      _version_name,
+      "--asset-dir",
+      rebase_path(_asset_location, root_build_dir),
+      "--resource-zips=$_rebased_resources_zips",
+      "--apk-path",
+      rebase_path(_resource_packaged_apk_path, root_build_dir),
+    ]
 
     if (_shared_resources) {
-      args += ["--shared-resources"]
+      args += [ "--shared-resources" ]
     }
   }
 
@@ -415,7 +462,7 @@
     inputs = [
       _dex_path,
       _resource_packaged_apk_path,
-      _ant_script
+      _ant_script,
     ]
 
     outputs = [
@@ -424,13 +471,14 @@
     ]
 
     _rebased_emma_jar = ""
-    _rebased_resource_packaged_apk_path = rebase_path(
-        _resource_packaged_apk_path, root_build_dir)
+    _rebased_resource_packaged_apk_path =
+        rebase_path(_resource_packaged_apk_path, root_build_dir)
     _rebased_packaged_apk_path = rebase_path(_packaged_apk_path, root_build_dir)
     _rebased_native_libs_dir = rebase_path(_native_libs_dir, root_build_dir)
     _rebased_dex_path = rebase_path(_dex_path, root_build_dir)
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
       "--",
       "-quiet",
       "-DANDROID_SDK_ROOT=$rebased_android_sdk_root",
@@ -443,9 +491,9 @@
       "-DEMMA_INSTRUMENT=0",
       "-DEMMA_DEVICE_JAR=$_rebased_emma_jar",
       "-DDEX_FILE_PATH=$_rebased_dex_path",
-
       "-Dbasedir=.",
-      "-buildfile", rebase_path(_ant_script, root_build_dir)
+      "-buildfile",
+      rebase_path(_ant_script, root_build_dir),
     ]
   }
 
@@ -453,40 +501,57 @@
     script = "//build/android/gyp/finalize_apk.py"
     depfile = "$target_gen_dir/$target_name.d"
 
-    sources = [_packaged_apk_path]
-    inputs = [_keystore_path]
-    outputs = [depfile, _final_apk_path]
+    sources = [
+      _packaged_apk_path,
+    ]
+    inputs = [
+      _keystore_path,
+    ]
+    outputs = [
+      depfile,
+      _final_apk_path,
+    ]
 
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
-      "--zipalign-path", rebase_path(zipalign_path, root_build_dir),
-      "--unsigned-apk-path", rebase_path(_packaged_apk_path, root_build_dir),
-      "--final-apk-path", rebase_path(_final_apk_path, root_build_dir),
-      "--key-path", rebase_path(_keystore_path, root_build_dir),
-      "--key-name", _keystore_name,
-      "--key-passwd", _keystore_password,
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
+      "--zipalign-path",
+      rebase_path(zipalign_path, root_build_dir),
+      "--unsigned-apk-path",
+      rebase_path(_packaged_apk_path, root_build_dir),
+      "--final-apk-path",
+      rebase_path(_final_apk_path, root_build_dir),
+      "--key-path",
+      rebase_path(_keystore_path, root_build_dir),
+      "--key-name",
+      _keystore_name,
+      "--key-passwd",
+      _keystore_password,
     ]
     if (_load_library_from_apk) {
       _rezip_jar_path = "$root_build_dir/lib.java/rezip_apk.jar"
-      inputs += [
-        _rezip_jar_path
-      ]
+      inputs += [ _rezip_jar_path ]
       args += [
         "--load-library-from-zip-file=1",
-        "--rezip-apk-jar-path", rebase_path(_rezip_jar_path, root_build_dir)
+        "--rezip-apk-jar-path",
+        rebase_path(_rezip_jar_path, root_build_dir),
       ]
     }
   }
 
   group(target_name) {
-    deps = [":${target_name}__finalize"]
+    deps = [
+      ":${target_name}__finalize",
+    ]
   }
 }
 
 template("java_prebuilt_impl") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
-  _supports_android = (
-      defined(invoker.supports_android) && invoker.supports_android)
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
+  _supports_android =
+      defined(invoker.supports_android) && invoker.supports_android
 
   assert(defined(invoker.jar_path))
   _base_path = "${target_gen_dir}/$target_name"
@@ -500,13 +565,12 @@
   _final_deps = []
   _template_name = target_name
 
-
   _final_deps += [ ":${_template_name}__build_config" ]
   write_build_config("${_template_name}__build_config") {
     type = "java_library"
     supports_android = _supports_android
-    requires_android = (defined(invoker.requires_android) &&
-        invoker.requires_android)
+    requires_android =
+        defined(invoker.requires_android) && invoker.requires_android
 
     deps = []
     if (defined(invoker.deps)) {
@@ -534,7 +598,9 @@
   if (_supports_android) {
     _final_deps += [ ":${_template_name}__dex" ]
     dex("${_template_name}__dex") {
-      sources = [_jar_path]
+      sources = [
+        _jar_path,
+      ]
       output = _dex_path
     }
   }
@@ -544,7 +610,6 @@
   }
 }
 
-
 # Compiles and jars a set of java files.
 #
 # Outputs:
@@ -561,7 +626,9 @@
 #   jar_path: Use this to explicitly set the output jar path. Defaults to
 #     "${target_gen_dir}/${target_name}.jar.
 template("compile_java") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.java_files))
   assert(defined(invoker.build_config))
@@ -597,6 +664,7 @@
     _dep_name = get_label_info(dep, "name")
     _java_srcjars += [ "$_dep_gen_dir/$_dep_name.srcjar" ]
   }
+
   # Mark srcjar_deps as used.
   assert(_srcjar_deps == [] || true)
 
@@ -617,7 +685,7 @@
     outputs = [
       depfile,
       _intermediate_jar_path,
-      _intermediate_jar_path + ".md5.stamp"
+      _intermediate_jar_path + ".md5.stamp",
     ]
     sources = _java_files + _java_srcjars
     inputs = _system_jars + [ _build_config ]
@@ -657,12 +725,14 @@
   }
 }
 
-
 template("java_library_impl") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
-  assert(defined(invoker.java_files) || defined(invoker.DEPRECATED_java_in_dir)
-      || defined(invoker.srcjars) || defined(invoker.srcjar_deps))
+  assert(
+      defined(invoker.java_files) || defined(invoker.DEPRECATED_java_in_dir) ||
+      defined(invoker.srcjars) || defined(invoker.srcjar_deps))
   _base_path = "$target_gen_dir/$target_name"
   _jar_path = _base_path + ".jar"
   if (defined(invoker.jar_path)) {
@@ -676,10 +746,10 @@
     _final_datadeps = invoker.datadeps
   }
 
-  _supports_android = (defined(invoker.supports_android) &&
-    invoker.supports_android)
-  _requires_android = (defined(invoker.requires_android) &&
-    invoker.requires_android)
+  _supports_android =
+      defined(invoker.supports_android) && invoker.supports_android
+  _requires_android =
+      defined(invoker.requires_android) && invoker.requires_android
 
   if (_supports_android) {
     _dex_path = _base_path + ".dex.jar"
@@ -697,8 +767,8 @@
       type = "java_library"
       supports_android = _supports_android
       requires_android = _requires_android
-      bypass_platform_checks = (defined(invoker.bypass_platform_checks) &&
-        invoker.bypass_platform_checks)
+      bypass_platform_checks = defined(invoker.bypass_platform_checks) &&
+                               invoker.bypass_platform_checks
 
       deps = []
       if (defined(invoker.deps)) {
@@ -734,21 +804,20 @@
   } else if (defined(invoker.DEPRECATED_java_in_dir)) {
     _src_dir = invoker.DEPRECATED_java_in_dir + "/src"
     _src_dir_exists = exec_script("//build/dir_exists.py",
-          [ rebase_path(_src_dir, root_build_dir) ],
-          "string")
+                                  [ rebase_path(_src_dir, root_build_dir) ],
+                                  "string")
     assert(_src_dir_exists == "False",
-        "In GN, java_in_dir should be the fully specified java directory " +
-        "(i.e. including the trailing \"/src\")")
+           "In GN, java_in_dir should be the fully specified java directory " +
+               "(i.e. including the trailing \"/src\")")
 
     _java_files_build_rel = exec_script(
-        "//build/android/gyp/find.py",
-        [
-          "--pattern",
-          "*.java",
-          rebase_path(invoker.DEPRECATED_java_in_dir, root_build_dir)
-        ],
-        "list lines"
-        )
+            "//build/android/gyp/find.py",
+            [
+              "--pattern",
+              "*.java",
+              rebase_path(invoker.DEPRECATED_java_in_dir, root_build_dir),
+            ],
+            "list lines")
     _java_files = rebase_path(_java_files_build_rel, ".", root_build_dir)
   }
   assert(_java_files != [] || _srcjar_deps != [] || _srcjars != [])
@@ -763,10 +832,18 @@
     chromium_code = _chromium_code
     android = _requires_android
 
-    if (defined(invoker.jar_excluded_patterns)) { jar_excluded_patterns = invoker.jar_excluded_patterns }
-    if (defined(invoker.proguard_preprocess)) { proguard_preprocess = invoker.proguard_preprocess }
-    if (defined(invoker.proguard_config)) { proguard_config = invoker.proguard_config }
-    if (defined(invoker.dist_jar_path)) { dist_jar_path = invoker.dist_jar_path }
+    if (defined(invoker.jar_excluded_patterns)) {
+      jar_excluded_patterns = invoker.jar_excluded_patterns
+    }
+    if (defined(invoker.proguard_preprocess)) {
+      proguard_preprocess = invoker.proguard_preprocess
+    }
+    if (defined(invoker.proguard_config)) {
+      proguard_config = invoker.proguard_config
+    }
+    if (defined(invoker.dist_jar_path)) {
+      dist_jar_path = invoker.dist_jar_path
+    }
   }
 
   if (defined(invoker.main_class)) {
@@ -775,18 +852,24 @@
       script = "//build/android/gyp/create_java_binary_script.py"
       depfile = "$target_gen_dir/$target_name.d"
       java_script = "$root_build_dir/bin/$_template_name"
-      inputs = [ _build_config ]
+      inputs = [
+        _build_config,
+      ]
       outputs = [
         depfile,
         java_script,
       ]
       _rebased_build_config = rebase_path(_build_config, root_build_dir)
       args = [
-        "--depfile", rebase_path(depfile, root_build_dir),
-        "--output", rebase_path(java_script, root_build_dir),
+        "--depfile",
+        rebase_path(depfile, root_build_dir),
+        "--output",
+        rebase_path(java_script, root_build_dir),
         "--classpath=@FileArg($_rebased_build_config:java:full_classpath)",
-        "--jar-path", rebase_path(_jar_path, root_build_dir),
-        "--main-class", invoker.main_class,
+        "--jar-path",
+        rebase_path(_jar_path, root_build_dir),
+        "--main-class",
+        invoker.main_class,
       ]
     }
   }
@@ -808,21 +891,39 @@
 
     _final_deps += [ ":${_template_name}__dex" ]
     dex("${_template_name}__dex") {
-      sources = [_jar_path]
+      sources = [
+        _jar_path,
+      ]
       output = _dex_path
     }
+
+    if (defined(invoker.standalone_dex_path)) {
+      _final_deps += [ ":${_template_name}__standalone_dex" ]
+      _rebased_build_config = rebase_path(_build_config, root_build_dir)
+      dex("${_template_name}__standalone_dex") {
+        sources = [_jar_path]
+        inputs = [_build_config]
+        output = invoker.standalone_dex_path
+        dex_arg_key = "${_rebased_build_config}:final_dex:dependency_dex_files"
+        args = [ "--inputs=@FileArg($dex_arg_key)" ]
+      }
+    }
   }
 
   group(target_name) {
+    if (defined(invoker.visibility)) {
+      visibility = invoker.visibility
+    }
     deps = _final_deps
     datadeps = _final_datadeps
   }
 }
 
-
 # Runs process_resources.py
 template("process_resources") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   zip_path = invoker.zip_path
   srcjar_path = invoker.srcjar_path
@@ -845,11 +946,9 @@
       srcjar_path,
     ]
 
-    sources_build_rel = exec_script(
-        "//build/android/gyp/find.py",
-        rebase_path(resource_dirs, root_build_dir),
-        "list lines"
-        )
+    sources_build_rel = exec_script("//build/android/gyp/find.py",
+                                    rebase_path(resource_dirs, root_build_dir),
+                                    "list lines")
     sources = rebase_path(sources_build_rel, ".", root_build_dir)
 
     inputs = [
@@ -860,15 +959,19 @@
     rebase_resource_dirs = rebase_path(resource_dirs, root_build_dir)
     rebase_build_config = rebase_path(build_config, root_build_dir)
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
-      "--android-sdk", rebase_path(android_sdk, root_build_dir),
-      "--android-sdk-tools", rebase_path(android_sdk_build_tools, root_build_dir),
-      "--android-manifest", rebase_path(android_manifest, root_build_dir),
-
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
+      "--android-sdk",
+      rebase_path(android_sdk, root_build_dir),
+      "--android-sdk-tools",
+      rebase_path(android_sdk_build_tools, root_build_dir),
+      "--android-manifest",
+      rebase_path(android_manifest, root_build_dir),
       "--resource-dirs=$rebase_resource_dirs",
-      "--srcjar-out", rebase_path(srcjar_path, root_build_dir),
-      "--resource-zip-out", rebase_path(zip_path, root_build_dir),
-
+      "--srcjar-out",
+      rebase_path(srcjar_path, root_build_dir),
+      "--resource-zip-out",
+      rebase_path(zip_path, root_build_dir),
       "--dependencies-res-zips=@FileArg($rebase_build_config:resources:dependency_zips)",
       "--extra-res-packages=@FileArg($rebase_build_config:resources:extra_package_names)",
     ]
@@ -879,24 +982,25 @@
 
     if (defined(invoker.custom_package)) {
       args += [
-        "--custom-package", invoker.custom_package,
+        "--custom-package",
+        invoker.custom_package,
       ]
     }
 
     if (defined(invoker.v14_verify_only) && invoker.v14_verify_only) {
-      args += ["--v14-verify-only"]
+      args += [ "--v14-verify-only" ]
     }
 
-    if (defined(invoker.shared_resources) &&
-        invoker.shared_resources) {
-      args += ["--shared-resources"]
+    if (defined(invoker.shared_resources) && invoker.shared_resources) {
+      args += [ "--shared-resources" ]
     }
 
     if (defined(invoker.all_resources_zip_path)) {
       all_resources_zip = invoker.all_resources_zip_path
       outputs += [ all_resources_zip ]
       args += [
-        "--all-resources-zip-out", rebase_path(all_resources_zip, root_build_dir)
+        "--all-resources-zip-out",
+        rebase_path(all_resources_zip, root_build_dir),
       ]
     }
 
@@ -907,12 +1011,16 @@
 }
 
 template("copy_ex") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   action(target_name) {
     script = "//build/android/gyp/copy_ex.py"
 
-    if (defined(invoker.deps)) { deps = invoker.deps }
+    if (defined(invoker.deps)) {
+      deps = invoker.deps
+    }
 
     sources = []
     if (defined(invoker.sources)) {
@@ -925,19 +1033,19 @@
     }
 
     depfile = "$target_gen_dir/$target_name.d"
-    outputs = [
-      depfile,
-    ]
+    outputs = [ depfile ]
 
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
-      "--dest", rebase_path(invoker.dest, root_build_dir),
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
+      "--dest",
+      rebase_path(invoker.dest, root_build_dir),
     ]
     rebased_sources = rebase_path(sources, root_build_dir)
     args += [ "--files=$rebased_sources" ]
 
     if (defined(invoker.clear_dir) && invoker.clear_dir) {
-      args += ["--clear"]
+      args += [ "--clear" ]
     }
 
     if (defined(invoker.args)) {
diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
index 938a090..d1342ac 100644
--- a/build/config/android/rules.gni
+++ b/build/config/android/rules.gni
@@ -30,7 +30,9 @@
 #     jni_package = "foo"
 #   }
 template("generate_jni") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.sources))
   assert(defined(invoker.jni_package))
@@ -46,23 +48,29 @@
     script = "//base/android/jni_generator/jni_generator.py"
     depfile = "$target_gen_dir/$target_name.{{source_name_part}}.d"
     sources = invoker.sources
-    inputs = [ jni_generator_include ]
+    inputs = [
+      jni_generator_include,
+    ]
     outputs = [
       depfile,
-      "${jni_output_dir}/{{source_name_part}}_jni.h"
+      "${jni_output_dir}/{{source_name_part}}_jni.h",
     ]
 
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
       "--input_file={{source}}",
       "--optimize_generation=1",
       "--ptr_type=long",
-      "--output_dir", rebase_path(jni_output_dir, root_build_dir),
-      "--includes", rebase_path(jni_generator_include, "//"),
+      "--output_dir",
+      rebase_path(jni_output_dir, root_build_dir),
+      "--includes",
+      rebase_path(jni_generator_include, "//"),
     ]
     if (defined(invoker.jni_generator_jarjar_file)) {
       args += [
-        "--jarjar", rebase_path(jni_generator_jarjar_file, root_build_dir),
+        "--jarjar",
+        rebase_path(jni_generator_jarjar_file, root_build_dir),
       ]
     }
   }
@@ -78,7 +86,9 @@
   }
 
   group(target_name) {
-    deps = [ ":$foreach_target_name" ]
+    deps = [
+      ":$foreach_target_name",
+    ]
     public_configs = [ ":jni_includes_${target_name}" ]
 
     if (defined(invoker.deps)) {
@@ -88,11 +98,12 @@
       public_deps = invoker.public_deps
     }
 
-    if (defined(invoker.visibility)) { visibility = invoker.visibility }
+    if (defined(invoker.visibility)) {
+      visibility = invoker.visibility
+    }
   }
 }
 
-
 # Declare a jni target for a prebuilt jar
 #
 # This target generates the native jni bindings for a set of classes in a .jar.
@@ -117,7 +128,9 @@
 #     jni_package = "foo"
 #   }
 template("generate_jar_jni") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.classes))
   assert(defined(invoker.jni_package))
@@ -139,8 +152,7 @@
   jni_actions = []
   foreach(class, invoker.classes) {
     _classname_list = []
-    _classname_list = process_file_template(
-        [class], "{{source_name_part}}")
+    _classname_list = process_file_template([ class ], "{{source_name_part}}")
     classname = _classname_list[0]
     jni_target_name = "${target_name}__jni_${classname}"
     jni_actions += [ ":$jni_target_name" ]
@@ -153,17 +165,22 @@
       ]
       outputs = [
         depfile,
-        "${jni_output_dir}/${classname}_jni.h"
+        "${jni_output_dir}/${classname}_jni.h",
       ]
 
       args = [
-        "--depfile", rebase_path(depfile, root_build_dir),
-        "--jar_file", rebase_path(jar_file, root_build_dir),
-        "--input_file", class,
+        "--depfile",
+        rebase_path(depfile, root_build_dir),
+        "--jar_file",
+        rebase_path(jar_file, root_build_dir),
+        "--input_file",
+        class,
         "--optimize_generation=1",
         "--ptr_type=long",
-        "--output_dir", rebase_path(jni_output_dir, root_build_dir),
-        "--includes", rebase_path(jni_generator_include, root_build_dir),
+        "--output_dir",
+        rebase_path(jni_output_dir, root_build_dir),
+        "--includes",
+        rebase_path(jni_generator_include, root_build_dir),
       ]
     }
   }
@@ -184,7 +201,6 @@
   }
 }
 
-
 # Declare a target for c-preprocessor-generated java files
 #
 # NOTE: For generating Java conterparts to enums prefer using the java_cpp_enum
@@ -221,7 +237,9 @@
 #     include_path = "android/java/templates"
 #   }
 template("java_cpp_template") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.sources))
   package_name = invoker.package_name + ""
@@ -241,24 +259,31 @@
 
     sources = invoker.sources
 
-    gen_dir = "${target_gen_dir}/${target_name}/java_cpp_template/${package_name}"
+    gen_dir =
+        "${target_gen_dir}/${target_name}/java_cpp_template/${package_name}"
     gcc_template_output_pattern = "${gen_dir}/{{source_name_part}}.java"
 
     outputs = [
       depfile,
-      gcc_template_output_pattern
+      gcc_template_output_pattern,
     ]
 
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
-      "--include-path", rebase_path(include_path, root_build_dir),
-      "--output", rebase_path(gen_dir, root_build_dir) + "/{{source_name_part}}.java",
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
+      "--include-path",
+      rebase_path(include_path, root_build_dir),
+      "--output",
+      rebase_path(gen_dir, root_build_dir) + "/{{source_name_part}}.java",
       "--template={{source}}",
     ]
 
     if (defined(invoker.defines)) {
       foreach(def, invoker.defines) {
-        args += ["--defines", def]
+        args += [
+          "--defines",
+          def,
+        ]
       }
     }
   }
@@ -275,7 +300,7 @@
 
   group(target_name) {
     deps = [
-      ":${target_name}__zip_srcjar"
+      ":${target_name}__zip_srcjar",
     ]
   }
 }
@@ -308,7 +333,9 @@
 #     ]
 #   }
 template("java_cpp_enum") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.sources))
   assert(defined(invoker.outputs))
@@ -317,21 +344,25 @@
     sources = invoker.sources
     script = "//build/android/gyp/java_cpp_enum.py"
     gen_dir = "${target_gen_dir}/${target_name}/enums"
-    outputs = get_path_info(
-        rebase_path(invoker.outputs, ".", gen_dir), "abspath")
+    outputs =
+        get_path_info(rebase_path(invoker.outputs, ".", gen_dir), "abspath")
 
     args = [
-      "--output_dir", rebase_path(gen_dir, root_build_dir),
+      "--output_dir",
+      rebase_path(gen_dir, root_build_dir),
     ]
     foreach(output, rebase_path(outputs, root_build_dir)) {
-      args += ["--assert_file", output]
+      args += [
+        "--assert_file",
+        output,
+      ]
     }
     args += rebase_path(invoker.sources, root_build_dir)
   }
 
   generate_enum_outputs = get_target_outputs(":${target_name}__generate_enum")
-  base_gen_dir = get_label_info(":${target_name}__generate_enum",
-                                "target_gen_dir")
+  base_gen_dir =
+      get_label_info(":${target_name}__generate_enum", "target_gen_dir")
 
   srcjar_path = "${target_gen_dir}/${target_name}.srcjar"
   zip("${target_name}__zip_srcjar") {
@@ -342,7 +373,7 @@
 
   group(target_name) {
     deps = [
-      ":${target_name}__zip_srcjar"
+      ":${target_name}__zip_srcjar",
     ]
   }
 }
@@ -361,13 +392,17 @@
 #     output = "$target_gen_dir/AndroidManifest.xml"
 #   }
 template("jinja_template") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.input))
   assert(defined(invoker.output))
 
   action(target_name) {
-    sources = [invoker.input]
+    sources = [
+      invoker.input,
+    ]
     script = "//build/android/gyp/jinja_template.py"
     depfile = "$target_gen_dir/$target_name.d"
 
@@ -377,13 +412,16 @@
     ]
 
     args = [
-      "--inputs", rebase_path(invoker.input, root_build_dir),
-      "--output", rebase_path(invoker.output, root_build_dir),
-      "--depfile", rebase_path(depfile, root_build_dir),
+      "--inputs",
+      rebase_path(invoker.input, root_build_dir),
+      "--output",
+      rebase_path(invoker.output, root_build_dir),
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
     ]
     if (defined(invoker.variables)) {
       variables = invoker.variables
-      args += ["--variables=${variables}" ]
+      args += [ "--variables=${variables}" ]
     }
   }
 }
@@ -410,7 +448,9 @@
 #     variables = ["color=red"]
 #   }
 template("jinja_template_resources") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.resources))
   assert(defined(invoker.res_dir))
@@ -438,13 +478,16 @@
     rebased_resources = rebase_path(invoker.resources, root_build_dir)
     args = [
       "--inputs=${rebased_resources}",
-      "--inputs-base-dir", rebase_path(invoker.res_dir, root_build_dir),
-      "--outputs-zip", rebase_path(_resources_zip, root_build_dir),
-      "--depfile", rebase_path(depfile, root_build_dir),
+      "--inputs-base-dir",
+      rebase_path(invoker.res_dir, root_build_dir),
+      "--outputs-zip",
+      rebase_path(_resources_zip, root_build_dir),
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
     ]
     if (defined(invoker.variables)) {
       variables = invoker.variables
-      args += ["--variables=${variables}" ]
+      args += [ "--variables=${variables}" ]
     }
   }
 
@@ -487,7 +530,9 @@
 #     custom_package = "org.chromium.foo"
 #   }
 template("android_resources") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.resource_dirs))
   assert(defined(invoker.android_manifest) || defined(invoker.custom_package))
@@ -501,9 +546,15 @@
     type = "android_resources"
     resources_zip = zip_path
     srcjar = srcjar_path
-    if (defined(invoker.deps)) { deps = invoker.deps }
-    if (defined(invoker.android_manifest)) { android_manifest = invoker.android_manifest }
-    if (defined(invoker.custom_package)) { custom_package = invoker.custom_package }
+    if (defined(invoker.deps)) {
+      deps = invoker.deps
+    }
+    if (defined(invoker.android_manifest)) {
+      android_manifest = invoker.android_manifest
+    }
+    if (defined(invoker.custom_package)) {
+      custom_package = invoker.custom_package
+    }
   }
 
   android_manifest = "//build/android/AndroidManifest.xml"
@@ -534,7 +585,6 @@
   }
 }
 
-
 # Declare a target that generates localized strings.xml from a .grd file.
 #
 # If this target is included in the deps of an android resources/library/apk,
@@ -550,7 +600,9 @@
 #    grd_file = "foo_strings.grd"
 #  }
 template("java_strings_grd") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   base_path = "$target_gen_dir/$target_name"
   resources_zip = base_path + ".resources.zip"
@@ -570,7 +622,8 @@
   grit_output_dir = "$target_gen_dir/$extra_output_path"
   grit(grit_target_name) {
     grit_flags = [
-      "-E", "ANDROID_JAVA_TAGGED_ONLY=false",
+      "-E",
+      "ANDROID_JAVA_TAGGED_ONLY=false",
     ]
     output_dir = grit_output_dir
     resource_ids = ""
@@ -613,7 +666,9 @@
 #    ]
 #  }
 template("java_strings_grd_prebuilt") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   base_path = "$target_gen_dir/$target_name"
   resources_zip = base_path + ".resources.zip"
@@ -673,21 +728,38 @@
   # TODO(cjhopman): This should not act like a java_library for dependents (i.e.
   # dependents shouldn't get the jar in their classpath, etc.).
   java_library_impl(target_name) {
-    if (defined(invoker.DEPRECATED_java_in_dir)) { DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir }
-    if (defined(invoker.chromium_code)) { chromium_code = invoker.chromium_code }
-    if (defined(invoker.datadeps)) { deps = invoker.datadeps }
-    if (defined(invoker.deps)) { deps = invoker.deps }
-    if (defined(invoker.java_files)) { java_files = invoker.java_files }
-    if (defined(invoker.srcjar_deps)) { srcjar_deps = invoker.srcjar_deps }
-    if (defined(invoker.srcjars)) { srcjars = invoker.srcjars }
-    if (defined(invoker.bypass_platform_checks)) { bypass_platform_checks = invoker.bypass_platform_checks }
-    if (defined(invoker.testonly)) { testonly = invoker.testonly }
+    if (defined(invoker.DEPRECATED_java_in_dir)) {
+      DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir
+    }
+    if (defined(invoker.chromium_code)) {
+      chromium_code = invoker.chromium_code
+    }
+    if (defined(invoker.datadeps)) {
+      deps = invoker.datadeps
+    }
+    if (defined(invoker.deps)) {
+      deps = invoker.deps
+    }
+    if (defined(invoker.java_files)) {
+      java_files = invoker.java_files
+    }
+    if (defined(invoker.srcjar_deps)) {
+      srcjar_deps = invoker.srcjar_deps
+    }
+    if (defined(invoker.srcjars)) {
+      srcjars = invoker.srcjars
+    }
+    if (defined(invoker.bypass_platform_checks)) {
+      bypass_platform_checks = invoker.bypass_platform_checks
+    }
+    if (defined(invoker.testonly)) {
+      testonly = invoker.testonly
+    }
 
     main_class = invoker.main_class
   }
 }
 
-
 # Declare an java library target
 #
 # Variables
@@ -739,19 +811,45 @@
 #   }
 template("java_library") {
   java_library_impl(target_name) {
-    if (defined(invoker.DEPRECATED_java_in_dir)) { DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir }
-    if (defined(invoker.chromium_code)) { chromium_code = invoker.chromium_code }
-    if (defined(invoker.datadeps)) { deps = invoker.datadeps }
-    if (defined(invoker.deps)) { deps = invoker.deps }
-    if (defined(invoker.jar_excluded_patterns)) { jar_excluded_patterns = invoker.jar_excluded_patterns }
-    if (defined(invoker.java_files)) { java_files = invoker.java_files }
-    if (defined(invoker.proguard_config)) { proguard_config = invoker.proguard_config }
-    if (defined(invoker.proguard_preprocess)) { proguard_preprocess = invoker.proguard_preprocess }
-    if (defined(invoker.srcjar_deps)) { srcjar_deps = invoker.srcjar_deps }
-    if (defined(invoker.srcjars)) { srcjars = invoker.srcjars }
-    if (defined(invoker.bypass_platform_checks)) { bypass_platform_checks = invoker.bypass_platform_checks }
-    if (defined(invoker.testonly)) { testonly = invoker.testonly }
-    if (defined(invoker.jar_path)) { jar_path = invoker.jar_path }
+    if (defined(invoker.DEPRECATED_java_in_dir)) {
+      DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir
+    }
+    if (defined(invoker.chromium_code)) {
+      chromium_code = invoker.chromium_code
+    }
+    if (defined(invoker.datadeps)) {
+      deps = invoker.datadeps
+    }
+    if (defined(invoker.deps)) {
+      deps = invoker.deps
+    }
+    if (defined(invoker.jar_excluded_patterns)) {
+      jar_excluded_patterns = invoker.jar_excluded_patterns
+    }
+    if (defined(invoker.java_files)) {
+      java_files = invoker.java_files
+    }
+    if (defined(invoker.proguard_config)) {
+      proguard_config = invoker.proguard_config
+    }
+    if (defined(invoker.proguard_preprocess)) {
+      proguard_preprocess = invoker.proguard_preprocess
+    }
+    if (defined(invoker.srcjar_deps)) {
+      srcjar_deps = invoker.srcjar_deps
+    }
+    if (defined(invoker.srcjars)) {
+      srcjars = invoker.srcjars
+    }
+    if (defined(invoker.bypass_platform_checks)) {
+      bypass_platform_checks = invoker.bypass_platform_checks
+    }
+    if (defined(invoker.testonly)) {
+      testonly = invoker.testonly
+    }
+    if (defined(invoker.jar_path)) {
+      jar_path = invoker.jar_path
+    }
 
     if (defined(invoker.supports_android) && invoker.supports_android) {
       supports_android = true
@@ -759,7 +857,6 @@
   }
 }
 
-
 # Declare an java library target for a prebuilt jar
 #
 # Variables
@@ -781,10 +878,18 @@
 template("java_prebuilt") {
   java_prebuilt_impl(target_name) {
     jar_path = invoker.jar_path
-    if (defined(invoker.testonly)) { testonly = invoker.testonly }
-    if (defined(invoker.deps)) { deps = invoker.deps }
-    if (defined(invoker.proguard_config)) { proguard_config = invoker.proguard_config }
-    if (defined(invoker.proguard_preprocess)) { proguard_preprocess = invoker.proguard_preprocess }
+    if (defined(invoker.testonly)) {
+      testonly = invoker.testonly
+    }
+    if (defined(invoker.deps)) {
+      deps = invoker.deps
+    }
+    if (defined(invoker.proguard_config)) {
+      proguard_config = invoker.proguard_config
+    }
+    if (defined(invoker.proguard_preprocess)) {
+      proguard_preprocess = invoker.proguard_preprocess
+    }
   }
 }
 
@@ -815,6 +920,11 @@
 #     be used to remove unwanted parts of the library.
 #   proguard_config: Path to the proguard config for preprocessing.
 #
+#   dex_path: If set, the resulting .dex.jar file will be placed under this
+#     path.
+#   standalone_dex_path: If set, a standalone .dex.jar containing the code from
+#     the library and all dependencies will be placed under this path.
+#
 #
 # Example
 #   android_library("foo_java") {
@@ -835,28 +945,62 @@
 #   }
 template("android_library") {
   assert(!defined(invoker.jar_path),
-      "android_library does not support a custom jar path")
+         "android_library does not support a custom jar path")
   java_library_impl(target_name) {
-    if (defined(invoker.DEPRECATED_java_in_dir)) { DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir }
-    if (defined(invoker.chromium_code)) { chromium_code = invoker.chromium_code }
-    if (defined(invoker.datadeps)) { deps = invoker.datadeps }
-    if (defined(invoker.deps)) { deps = invoker.deps }
-    if (defined(invoker.jar_excluded_patterns)) { jar_excluded_patterns = invoker.jar_excluded_patterns }
-    if (defined(invoker.java_files)) { java_files = invoker.java_files }
-    if (defined(invoker.proguard_config)) { proguard_config = invoker.proguard_config }
-    if (defined(invoker.proguard_preprocess)) { proguard_preprocess = invoker.proguard_preprocess }
-    if (defined(invoker.srcjar_deps)) { srcjar_deps = invoker.srcjar_deps }
-    if (defined(invoker.srcjars)) { srcjars = invoker.srcjars }
-    if (defined(invoker.testonly)) { testonly = invoker.testonly }
-    if (defined(invoker.dex_path)) { dex_path = invoker.dex_path }
+    if (defined(invoker.DEPRECATED_java_in_dir)) {
+      DEPRECATED_java_in_dir = invoker.DEPRECATED_java_in_dir
+    }
+    if (defined(invoker.chromium_code)) {
+      chromium_code = invoker.chromium_code
+    }
+    if (defined(invoker.datadeps)) {
+      deps = invoker.datadeps
+    }
+    if (defined(invoker.deps)) {
+      deps = invoker.deps
+    }
+    if (defined(invoker.jar_excluded_patterns)) {
+      jar_excluded_patterns = invoker.jar_excluded_patterns
+    }
+    if (defined(invoker.java_files)) {
+      java_files = invoker.java_files
+    }
+    if (defined(invoker.proguard_config)) {
+      proguard_config = invoker.proguard_config
+    }
+    if (defined(invoker.proguard_preprocess)) {
+      proguard_preprocess = invoker.proguard_preprocess
+    }
+    if (defined(invoker.srcjar_deps)) {
+      srcjar_deps = invoker.srcjar_deps
+    }
+    if (defined(invoker.srcjars)) {
+      srcjars = invoker.srcjars
+    }
+    if (defined(invoker.testonly)) {
+      testonly = invoker.testonly
+    }
+    if (defined(invoker.visibility)) {
+      visibility = invoker.visibility
+    }
+    if (defined(invoker.dex_path)) {
+      dex_path = invoker.dex_path
+    }
+    if (defined(invoker.standalone_dex_path)) {
+      standalone_dex_path = invoker.standalone_dex_path
+    }
 
     supports_android = true
     requires_android = true
 
-    if (!defined(jar_excluded_patterns)) { jar_excluded_patterns = [] }
+    if (!defined(jar_excluded_patterns)) {
+      jar_excluded_patterns = []
+    }
     jar_excluded_patterns += [
-      "*/R.class", "*/R##*.class",
-      "*/Manifest.class", "*/Manifest##*.class",
+      "*/R.class",
+      "*/R##*.class",
+      "*/Manifest.class",
+      "*/Manifest##*.class",
     ]
   }
 }
@@ -888,15 +1032,21 @@
     jar_path = invoker.jar_path
     supports_android = true
     requires_android = true
-    if (defined(invoker.testonly)) { testonly = invoker.testonly }
-    if (defined(invoker.deps)) { deps = invoker.deps }
-    if (defined(invoker.proguard_config)) { proguard_config = invoker.proguard_config }
-    if (defined(invoker.proguard_preprocess)) { proguard_preprocess = invoker.proguard_preprocess }
+    if (defined(invoker.testonly)) {
+      testonly = invoker.testonly
+    }
+    if (defined(invoker.deps)) {
+      deps = invoker.deps
+    }
+    if (defined(invoker.proguard_config)) {
+      proguard_config = invoker.proguard_config
+    }
+    if (defined(invoker.proguard_preprocess)) {
+      proguard_preprocess = invoker.proguard_preprocess
+    }
   }
 }
 
-
-
 # Declare an Android apk target
 #
 # This target creates an Android APK containing java code, resources, assets,
@@ -946,7 +1096,9 @@
 #     ]
 #   }
 template("android_apk") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   assert(defined(invoker.final_apk_path) || defined(invoker.apk_name))
   gen_dir = "$target_gen_dir/$target_name"
@@ -963,10 +1115,10 @@
   } else if (defined(invoker.apk_name)) {
     _final_apk_path = "$root_build_dir/apks/" + invoker.apk_name + ".apk"
   }
-  _dist_jar_path_list = process_file_template(
-      [ _final_apk_path ],
-      "$root_build_dir/test.lib.java/{{source_name_part}}.jar"
-      )
+  _dist_jar_path_list =
+      process_file_template(
+          [ _final_apk_path ],
+          "$root_build_dir/test.lib.java/{{source_name_part}}.jar")
   _dist_jar_path = _dist_jar_path_list[0]
 
   _native_libs = []
@@ -991,35 +1143,35 @@
   if (defined(invoker.native_libs)) {
     _use_chromium_linker = false
     if (defined(invoker.use_chromium_linker)) {
-      _use_chromium_linker = (invoker.use_chromium_linker &&
-        chromium_linker_supported)
+      _use_chromium_linker =
+          invoker.use_chromium_linker && chromium_linker_supported
     }
 
     if (defined(invoker.load_library_from_apk) &&
         invoker.load_library_from_apk) {
       _load_library_from_apk = true
-      assert(_use_chromium_linker, "Loading library from the apk requires use" +
-          " of the Chromium linker.")
+      assert(_use_chromium_linker,
+             "Loading library from the apk requires use" +
+                 " of the Chromium linker.")
     }
 
     _enable_relocation_packing = false
     if (defined(invoker.enable_relocation_packing) &&
         invoker.enable_relocation_packing) {
       _enable_relocation_packing = relocation_packing_supported
-      assert(_use_chromium_linker, "Relocation packing requires use of the" +
-          " Chromium linker.")
+      assert(_use_chromium_linker,
+             "Relocation packing requires use of the" + " Chromium linker.")
     }
 
     _native_libs = process_file_template(
-        invoker.native_libs,
-        "$root_build_dir/lib.stripped/{{source_file_part}}")
+            invoker.native_libs,
+            "$root_build_dir/lib.stripped/{{source_file_part}}")
 
     _native_libs_dir = base_path + "/libs"
 
     if (_use_chromium_linker) {
-      _native_libs += [
-        "$root_build_dir/lib.stripped/libchromium_android_linker.so"
-      ]
+      _native_libs +=
+          [ "$root_build_dir/lib.stripped/libchromium_android_linker.so" ]
     }
 
     _enable_relocation_packing = false
@@ -1046,16 +1198,16 @@
 
   final_deps = []
 
-  final_deps += [":${_template_name}__process_resources"]
+  final_deps += [ ":${_template_name}__process_resources" ]
   process_resources("${_template_name}__process_resources") {
     srcjar_path = "${target_gen_dir}/${target_name}.srcjar"
     android_manifest = invoker.android_manifest
-    resource_dirs = ["//build/android/ant/empty/res"]
+    resource_dirs = [ "//build/android/ant/empty/res" ]
     zip_path = resources_zip_path
     generate_constant_ids = true
     build_config = _build_config
   }
-  _srcjar_deps += [":${_template_name}__process_resources"]
+  _srcjar_deps += [ ":${_template_name}__process_resources" ]
 
   if (_native_libs != []) {
     _enable_chromium_linker_tests = false
@@ -1076,17 +1228,17 @@
 
       defines = [
         "NATIVE_LIBRARIES_LIST=" +
-          "@FileArg($_rebased_build_config:native:java_libraries_list)",
+            "@FileArg($_rebased_build_config:native:java_libraries_list)",
         "NATIVE_LIBRARIES_VERSION_NUMBER=\"$_native_lib_version_name\"",
       ]
       if (_use_chromium_linker) {
-        defines += ["ENABLE_CHROMIUM_LINKER"]
+        defines += [ "ENABLE_CHROMIUM_LINKER" ]
       }
       if (_load_library_from_apk) {
-        defines += ["ENABLE_CHROMIUM_LINKER_LIBRARY_IN_ZIP_FILE"]
+        defines += [ "ENABLE_CHROMIUM_LINKER_LIBRARY_IN_ZIP_FILE" ]
       }
       if (_enable_chromium_linker_tests) {
-        defines += ["ENABLE_CHROMIUM_LINKER_TESTS"]
+        defines += [ "ENABLE_CHROMIUM_LINKER_TESTS" ]
       }
     }
     _srcjar_deps += [ ":${_template_name}__native_libraries_java" ]
@@ -1112,37 +1264,46 @@
 
   if (_dist_jar_path != "") {
     final_deps += [ ":${_template_name}__create_dist_jar" ]
+
     # TODO(cjhopman): This is only ever needed to calculate the list of tests to
     # run. See build/android/pylib/instrumentation/test_jar.py. We should be
     # able to just do that calculation at build time instead.
     action("${_template_name}__create_dist_jar") {
       script = "//build/android/gyp/create_dist_jar.py"
       depfile = "$target_gen_dir/$target_name.d"
-      inputs = [ _build_config ]
+      inputs = [
+        _build_config,
+      ]
       outputs = [
         depfile,
         _dist_jar_path,
       ]
       args = [
-        "--depfile", rebase_path(depfile, root_build_dir),
-        "--output", rebase_path(_dist_jar_path, root_build_dir),
+        "--depfile",
+        rebase_path(depfile, root_build_dir),
+        "--output",
+        rebase_path(_dist_jar_path, root_build_dir),
         "--inputs=@FileArg($_rebased_build_config:dist_jar:dependency_jars)",
       ]
       inputs += [ jar_path ]
       _rebased_jar_path = rebase_path([ jar_path ], root_build_dir)
-      args += [
-        "--inputs=$_rebased_jar_path",
-      ]
+      args += [ "--inputs=$_rebased_jar_path" ]
     }
   }
 
-  final_deps += [":${_template_name}__final_dex"]
+  final_deps += [ ":${_template_name}__final_dex" ]
   dex("${_template_name}__final_dex") {
-    deps = [ ":${_template_name}__java" ]
-    sources = [ jar_path ]
-    inputs = [ _build_config ]
+    deps = [
+      ":${_template_name}__java",
+    ]
+    sources = [
+      jar_path,
+    ]
+    inputs = [
+      _build_config,
+    ]
     output = final_dex_path
-    dex_arg_key = "${_rebased_build_config}:apk_dex:dependency_dex_files"
+    dex_arg_key = "${_rebased_build_config}:final_dex:dependency_dex_files"
     args = [ "--inputs=@FileArg($dex_arg_key)" ]
   }
 
@@ -1151,11 +1312,9 @@
       script = "//build/android/gyp/pack_arm_relocations.py"
       packed_libraries_dir = "$_native_libs_dir/$android_app_abi"
       depfile = "$target_gen_dir/$target_name.d"
-      outputs = [
-        depfile
-      ]
+      outputs = [ depfile ]
       inputs = [
-        _build_config
+        _build_config,
       ]
       deps = []
       skip_packing_list = [
@@ -1166,35 +1325,36 @@
       enable_packing_arg = 0
       if (_enable_relocation_packing) {
         enable_packing_arg = 1
-        deps += [
-          relocation_packer_target
-        ]
+        deps += [ relocation_packer_target ]
       }
 
       args = [
-        "--depfile", rebase_path(depfile, root_build_dir),
+        "--depfile",
+        rebase_path(depfile, root_build_dir),
         "--enable-packing=$enable_packing_arg",
         "--has-relocations-with-addends=$relocations_have_addends",
         "--exclude-packing-list=$skip_packing_list",
-        "--android-pack-relocations", rebase_path(relocation_packer_exe, root_build_dir),
-        "--android-objcopy", rebase_path(android_objcopy, root_build_dir),
-        "--stripped-libraries-dir", rebase_path(root_build_dir, root_build_dir),
-        "--packed-libraries-dir", rebase_path(packed_libraries_dir, root_build_dir),
+        "--android-pack-relocations",
+        rebase_path(relocation_packer_exe, root_build_dir),
+        "--android-objcopy",
+        rebase_path(android_objcopy, root_build_dir),
+        "--stripped-libraries-dir",
+        rebase_path(root_build_dir, root_build_dir),
+        "--packed-libraries-dir",
+        rebase_path(packed_libraries_dir, root_build_dir),
         "--libraries=@FileArg(${_rebased_build_config}:native:libraries)",
-        "--clear-dir"
+        "--clear-dir",
       ]
 
       if (is_debug) {
         rebased_gdbserver = rebase_path([ android_gdbserver ], root_build_dir)
         inputs += [ android_gdbserver ]
-        args += [
-          "--libraries=$rebased_gdbserver"
-        ]
+        args += [ "--libraries=$rebased_gdbserver" ]
       }
     }
   }
 
-  final_deps += [":${_template_name}__create"]
+  final_deps += [ ":${_template_name}__create" ]
   create_apk("${_template_name}__create") {
     apk_path = _final_apk_path
     android_manifest = invoker.android_manifest
@@ -1212,17 +1372,25 @@
       version_name = invoker.version_name
     }
 
-    if (defined(invoker.asset_location)) {
-      asset_location = invoker.asset_location
-    }
-
     keystore_name = _keystore_name
     keystore_path = _keystore_path
     keystore_password = _keystore_password
 
+    deps = []
+    if (defined(invoker.asset_location)) {
+      asset_location = invoker.asset_location
+
+      # We don't know the exact dependencies that create the assets in
+      # |asset_location|; we depend on all caller deps until a better solution
+      # is figured out (http://crbug.com/433330).
+      if (defined(invoker.deps)) {
+        deps += invoker.deps
+      }
+    }
+
     if (_native_libs != []) {
       native_libs_dir = _native_libs_dir
-      deps = [":${_template_name}__prepare_native"]
+      deps += [ ":${_template_name}__prepare_native" ]
     }
   }
 
@@ -1235,7 +1403,6 @@
   }
 }
 
-
 # Declare an Android gtest apk
 #
 # This target creates an Android apk for running gtest-based unittests.
@@ -1273,12 +1440,13 @@
   android_apk(target_name) {
     _apk_name = test_suite_name
     final_apk_path = "$root_build_dir/${_apk_name}_apk/${_apk_name}-debug.apk"
-    java_files = [
-      "//testing/android/java/src/org/chromium/native_test/ChromeNativeTestActivity.java"
-    ]
+    java_files =
+        [ "//testing/android/java/src/org/chromium/native_test/ChromeNativeTestActivity.java" ]
     android_manifest = "//testing/android/java/AndroidManifest.xml"
     native_libs = [ unittests_binary ]
-    deps = [ "//base:base_java" ]
+    deps = [
+      "//base:base_java",
+    ]
     if (defined(invoker.deps)) {
       deps += invoker.deps
     }
@@ -1309,7 +1477,9 @@
 #     ]
 #   }
 template("android_aidl") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   srcjar_path = "${target_gen_dir}/${target_name}.srcjar"
   aidl_path = "${android_sdk_build_tools}/aidl"
@@ -1325,35 +1495,35 @@
       imports += [ invoker.interface_file ]
     }
 
-    inputs = [
-      aidl_path,
-    ] + imports
+    inputs = [ aidl_path ] + imports
 
     depfile = "${target_gen_dir}/${target_name}.d"
     outputs = [
       depfile,
-      srcjar_path
+      srcjar_path,
     ]
     rebased_imports = rebase_path(imports, root_build_dir)
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
-      "--aidl-path", rebase_path(aidl_path, root_build_dir),
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
+      "--aidl-path",
+      rebase_path(aidl_path, root_build_dir),
       "--imports=$rebased_imports",
-      "--srcjar", rebase_path(srcjar_path, root_build_dir),
+      "--srcjar",
+      rebase_path(srcjar_path, root_build_dir),
     ]
     if (defined(invoker.import_include) && invoker.import_include != "") {
       # TODO(cjhopman): aidl supports creating a depfile. We should be able to
       # switch to constructing a depfile for the overall action from that
       # instead of having all the .java files in the include paths as inputs.
-      rebased_import_includes = rebase_path(
-          [invoker.import_include], root_build_dir)
+      rebased_import_includes =
+          rebase_path([ invoker.import_include ], root_build_dir)
       args += [ "--includes=$rebased_import_includes" ]
 
-      _java_files_build_rel = exec_script(
-          "//build/android/gyp/find.py",
-          rebase_path([invoker.import_include], root_build_dir),
-          "list lines"
-          )
+      _java_files_build_rel =
+          exec_script("//build/android/gyp/find.py",
+                      rebase_path([ invoker.import_include ], root_build_dir),
+                      "list lines")
       _java_files = rebase_path(_java_files_build_rel, ".", root_build_dir)
       inputs += _java_files
     }
@@ -1382,14 +1552,17 @@
 #     binary = "$root_build_dir/exe.stripped/foo"
 #   }
 template("create_native_executable_dist") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
 
   dist_dir = invoker.dist_dir
   binary = invoker.binary
   final_deps = []
   template_name = target_name
 
-  libraries_list = "${target_gen_dir}/${template_name}_library_dependencies.list"
+  libraries_list =
+      "${target_gen_dir}/${template_name}_library_dependencies.list"
 
   # TODO(gyp)
   #'dependencies': [
@@ -1411,11 +1584,15 @@
     ]
     rebased_binaries = rebase_path([ binary ], root_build_dir)
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
+      "--depfile",
+      rebase_path(depfile, root_build_dir),
       "--input-libraries=$rebased_binaries",
-      "--libraries-dir", rebase_path(stripped_libraries_dir, root_build_dir),
-      "--output", rebase_path(libraries_list, root_build_dir),
-      "--readelf", rebase_path(android_readelf, root_build_dir),
+      "--libraries-dir",
+      rebase_path(stripped_libraries_dir, root_build_dir),
+      "--output",
+      rebase_path(libraries_list, root_build_dir),
+      "--readelf",
+      rebase_path(android_readelf, root_build_dir),
     ]
   }
 
@@ -1424,7 +1601,7 @@
     clear_dir = true
     inputs = [
       binary,
-      libraries_list
+      libraries_list,
     ]
     dest = dist_dir
     rebased_binaries_list = rebase_path([ binary ], root_build_dir)
@@ -1440,7 +1617,6 @@
   }
 }
 
-
 # Compile a protocol buffer to java.
 #
 # This generates java files from protocol buffers and creates an Android library
@@ -1467,7 +1643,7 @@
     srcjar_path = "$target_gen_dir/$target_name.srcjar"
     script = "//build/protoc_java.py"
     deps = [
-      _protoc_dep
+      _protoc_dep,
     ]
     sources = invoker.sources
     depfile = "$target_gen_dir/$target_name.d"
@@ -1476,11 +1652,15 @@
       srcjar_path,
     ]
     args = [
-      "--depfile", rebase_path(depfile, root_build_dir),
-      "--protoc", rebase_path(_protoc_bin, root_build_dir),
-      "--proto-path", rebase_path(_proto_path, root_build_dir),
-      "--srcjar", rebase_path(srcjar_path, root_build_dir),
-    ] + rebase_path(sources, root_build_dir)
+             "--depfile",
+             rebase_path(depfile, root_build_dir),
+             "--protoc",
+             rebase_path(_protoc_bin, root_build_dir),
+             "--proto-path",
+             rebase_path(_proto_path, root_build_dir),
+             "--srcjar",
+             rebase_path(srcjar_path, root_build_dir),
+           ] + rebase_path(sources, root_build_dir)
   }
 
   android_library(target_name) {
@@ -1494,7 +1674,9 @@
 
 # TODO(GYP): implement this.
 template("uiautomator_test") {
-  if (defined(invoker.testonly)) { testonly = invoker.testonly }
+  if (defined(invoker.testonly)) {
+    testonly = invoker.testonly
+  }
   assert(target_name != "")
   assert(invoker.deps != [] || true)
   group(target_name) {
diff --git a/build/config/arm.gni b/build/config/arm.gni
index 59de668..d942c3b 100644
--- a/build/config/arm.gni
+++ b/build/config/arm.gni
@@ -22,10 +22,8 @@
     arm_use_neon = true
   }
 
-  assert(arm_float_abi == "" ||
-         arm_float_abi == "hard" ||
-         arm_float_abi == "soft" ||
-         arm_float_abi == "softfp")
+  assert(arm_float_abi == "" || arm_float_abi == "hard" ||
+         arm_float_abi == "soft" || arm_float_abi == "softfp")
 
   if (is_android) {
     arm_use_neon = false
@@ -41,10 +39,10 @@
       arm_float_abi = "softfp"
     }
     arm_fpu = "vfp"
+
     # Thumb is a reduced instruction set available on some ARM processors that
     # has increased code density.
     arm_use_thumb = false
-
   } else if (arm_version == 7) {
     arm_arch = "armv7-a"
     if (arm_tune == "") {
diff --git a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn
index 00fb9e0..39fe251 100644
--- a/build/config/clang/BUILD.gn
+++ b/build/config/clang/BUILD.gn
@@ -7,23 +7,26 @@
 config("find_bad_constructs") {
   if (clang_use_chrome_plugins) {
     cflags = [
-      "-Xclang", "-load",
+      "-Xclang",
+      "-load",
       "-Xclang",
     ]
 
     if (is_mac || is_ios) {
       cflags += [ rebase_path(
-        "//third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.dylib",
-        root_build_dir) ]
+              "//third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.dylib",
+              root_build_dir) ]
     } else if (is_linux) {
       cflags += [ rebase_path(
-        "//third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so",
-        root_build_dir) ]
+              "//third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so",
+              root_build_dir) ]
     }
 
     cflags += [
-      "-Xclang", "-add-plugin",
-      "-Xclang", "find-bad-constructs",
+      "-Xclang",
+      "-add-plugin",
+      "-Xclang",
+      "find-bad-constructs",
     ]
   }
 }
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
index ae12eda..81269d6 100644
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -10,6 +10,8 @@
   import("//build/config/gcc/gcc_version.gni")
 }
 
+import("//build/toolchain/ccache.gni")
+
 declare_args() {
   # Normally, Android builds are lightly optimized, even for debug builds, to
   # keep binary size down. Setting this flag to true disables such optimization
@@ -20,6 +22,17 @@
   # only two architectures that are currently checked in). Turn this off when
   # you are using a custom toolchain and need to control -B in cflags.
   linux_use_bundled_binutils = is_linux && cpu_arch == "x64"
+
+  # Compile in such a way as to enable profiling of the generated code. For
+  # example, don't omit the frame pointer and leave in symbols.
+  enable_profiling = false
+
+  # Compile in such a way as to make it possible for the profiler to unwind full
+  # stack frames. Setting this flag has a large effect on the performance of the
+  # generated code than just setting profiling, but gives the profiler more
+  # information to analyze.
+  # Requires profiling to be set to true.
+  enable_full_stack_frames_for_profiling = false
 }
 
 use_gold = is_linux && cpu_arch == "x64"
@@ -30,7 +43,7 @@
   # with some utilities such as icecc and ccache. Requires gold and
   # gcc >= 4.8 or clang.
   # http://gcc.gnu.org/wiki/DebugFission
-  use_debug_fission = use_gold && linux_use_bundled_binutils
+  use_debug_fission = use_gold && linux_use_bundled_binutils && !use_ccache
 }
 
 # default_include_dirs ---------------------------------------------------------
@@ -77,19 +90,16 @@
       "/FS",  # Preserve previous PDB behavior.
     ]
     if (is_component_build) {
-      cflags += [
-        "/EHsc",  # Assume C functions can't throw exceptions and don't catch
-                  # structured exceptions (only C++ ones).
-      ]
+      cflags += [ "/EHsc" ]  # Assume C functions can't throw exceptions and don't catch
+                             # structured exceptions (only C++ ones).
     }
   } else {
     # Common GCC compiler flags setup.
     # --------------------------------
-    cflags += [
-      "-fno-strict-aliasing",  # See http://crbug.com/32204
-    ]
+    cflags += [ "-fno-strict-aliasing" ]  # See http://crbug.com/32204
     cflags_cc += [
       "-fno-threadsafe-statics",
+
       # Not exporting C++ inline functions can generally be applied anywhere
       # so we do so here. Normal function visibility is controlled by
       # //build/config/gcc:symbol_visibility_hidden.
@@ -100,7 +110,10 @@
     if (is_mac) {
       cflags += [ "-fstack-protector-all" ]
     } else if (is_linux) {
-      cflags += [ "-fstack-protector", "--param=ssp-buffer-size=4" ]
+      cflags += [
+        "-fstack-protector",
+        "--param=ssp-buffer-size=4",
+      ]
     }
 
     # Linker warnings.
@@ -142,11 +155,10 @@
     # when turning clang on or off. (defines are passed via the command line,
     # and build system rebuild things when their commandline changes). Nothing
     # should ever read this define.
-    defines += [
-      "CR_CLANG_REVISION=" +
-          exec_script(
-              "//tools/clang/scripts/posix-print-revision.py", [], "value")
-    ]
+    defines += [ "CR_CLANG_REVISION=" +
+                 exec_script("//tools/clang/scripts/posix-print-revision.py",
+                             [],
+                             "value") ]
   }
 
   # Mac-specific compiler flags setup.
@@ -157,16 +169,22 @@
 
     # CPU architecture.
     if (cpu_arch == "x64") {
-      common_mac_flags += [ "-arch", "x86_64" ]
+      common_mac_flags += [
+        "-arch",
+        "x86_64",
+      ]
     } else if (cpu_arch == "x86") {
-      common_mac_flags += [ "-arch", "i386" ]
+      common_mac_flags += [
+        "-arch",
+        "i386",
+      ]
     }
 
     cflags += common_mac_flags
 
     # Without this, the constructors and destructors of a C++ object inside
     # an Objective C struct won't be called, which is very bad.
-    cflags_objcc = [ "-fobjc-call-cxx-cdtors", ]
+    cflags_objcc = [ "-fobjc-call-cxx-cdtors" ]
 
     cflags_c += [ "-std=c99" ]
     cflags_cc += [ "-std=gnu++11" ]
@@ -176,15 +194,35 @@
     # Non-Mac Posix compiler flags setup.
     # -----------------------------------
     if (gcc_version >= 48) {
-      cflags_cc += [
-        "-std=gnu++11",
+      cflags_cc += [ "-std=gnu++11" ]
+    }
+
+    if (enable_profiling && !is_debug) {
+      # The GYP build spams this define into every compilation unit, as we do
+      # here, but it only appears to be used in base and a couple other places.
+      # TODO(abarth): Should we move this define closer to where it's used?
+      defines += [ "ENABLE_PROFILING" ]
+
+      cflags += [
+        "-fno-omit-frame-pointer",
+        "-g",
       ]
+
+      if (enable_full_stack_frames_for_profiling) {
+        cflags += [
+          "-fno-inline",
+          "-fno-optimize-sibling-calls",
+        ]
+      }
     }
 
     # CPU architecture. We may or may not be doing a cross compile now, so for
     # simplicity we always explicitly set the architecture.
     if (cpu_arch == "x64") {
-      cflags += [ "-m64", "-march=x86-64", ]
+      cflags += [
+        "-m64",
+        "-march=x86-64",
+      ]
       ldflags += [ "-m64" ]
     } else if (cpu_arch == "x86") {
       cflags += [ "-m32" ]
@@ -194,6 +232,7 @@
           # Else building libyuv gives clang's register allocator issues,
           # see llvm.org/PR15798 / crbug.com/233709
           "-momit-leaf-frame-pointer",
+
           # Align the stack on 16-byte boundaries, http://crbug.com/418554.
           "-mstack-alignment=16",
           "-mstackrealign",
@@ -225,6 +264,7 @@
             # compiler (r5-r7). This can be verified using
             # webkit_unit_tests' WTF.Checked_int8_t test.
             "-fno-tree-sra",
+
             # The following option is disabled to improve binary
             # size and performance in gcc 4.9.
             "-fno-caller-saves",
@@ -267,9 +307,7 @@
   # ------------------------------------
   if (is_linux) {
     cflags += [ "-pthread" ]
-    ldflags += [
-      "-pthread",
-    ]
+    ldflags += [ "-pthread" ]
   }
   if (use_gold) {
     # Use gold for linking on 64-bit Linux only (on 32-bit it runs out of
@@ -308,12 +346,8 @@
   # Clang-specific compiler flags setup.
   # ------------------------------------
   if (is_clang) {
-    cflags += [
-      "-fcolor-diagnostics",
-    ]
-    cflags_cc += [
-      "-std=gnu++11",
-    ]
+    cflags += [ "-fcolor-diagnostics" ]
+    cflags_cc += [ "-std=gnu++11" ]
   }
 
   # Android-specific flags setup.
@@ -326,9 +360,7 @@
     ]
     if (!is_clang) {
       # Clang doesn't support these flags.
-      cflags += [
-        "-finline-limit=64",
-      ]
+      cflags += [ "-finline-limit=64" ]
     }
     if (is_android_webview_build) {
       # Android predefines this as 1; undefine it here so Chromium can redefine
@@ -359,13 +391,14 @@
       ldflags += [ "-fuse-ld=gold" ]
       if (is_clang) {
         # Let clang find the ld.gold in the NDK.
-        ldflags += [ "--gcc-toolchain=" + rebase_path(android_toolchain_root,
-                                                      root_build_dir) ]
+        ldflags += [ "--gcc-toolchain=" +
+                     rebase_path(android_toolchain_root, root_build_dir) ]
       }
     }
 
     ldflags += [
       "-Wl,--no-undefined",
+
       # Don't export symbols from statically linked libraries.
       "-Wl,--exclude-libs=ALL",
     ]
@@ -378,9 +411,7 @@
 
     if (is_clang) {
       if (cpu_arch == "arm") {
-        cflags += [
-          "-target arm-linux-androideabi",
-        ]
+        cflags += [ "-target arm-linux-androideabi" ]
         ldflags += [ "-target arm-linux-androideabi" ]
       } else if (cpu_arch == "x86") {
         cflags += [ "-target x86-linux-androideabi" ]
@@ -392,9 +423,7 @@
 
 config("compiler_arm_fpu") {
   if (cpu_arch == "arm" && !is_android_webview_build) {
-    cflags = [
-      "-mfpu=$arm_fpu",
-    ]
+    cflags = [ "-mfpu=$arm_fpu" ]
   }
 }
 
@@ -481,15 +510,9 @@
     # caution.
     android_stlport_root = "$android_ndk_root/sources/cxx-stl/stlport"
 
-    cflags += [
-      "-isystem" + rebase_path("$android_stlport_root/stlport",
-                               root_build_dir)
-    ]
-    if (arm_use_thumb) {
-      lib_dirs += [ "$android_stlport_root/libs/$android_app_abi/thumb" ]
-    } else {
-      lib_dirs += [ "$android_stlport_root/libs/$android_app_abi" ]
-    }
+    cflags += [ "-isystem" +
+                rebase_path("$android_stlport_root/stlport", root_build_dir) ]
+    lib_dirs += [ "$android_stlport_root/libs/$android_app_abi" ]
 
     if (component_mode == "shared_library") {
       libs += [ "stlport_shared" ]
@@ -518,7 +541,6 @@
       "dl",
       "m",
     ]
-
   }
 }
 
@@ -529,9 +551,7 @@
 
 config("chromium_code") {
   if (is_win) {
-    cflags = [
-      "/W4",  # Warning level 4.
-    ]
+    cflags = [ "/W4" ]  # Warning level 4.
   } else {
     cflags = [
       "-Wall",
@@ -629,8 +649,7 @@
 config("default_warnings") {
   if (is_win) {
     cflags = [
-      "/WX",      # Treat warnings as errors.
-
+      "/WX",  # Treat warnings as errors.
       # Warnings permanently disabled:
 
       # TODO(GYP) The GYP build doesn't have this globally enabled but disabled
@@ -685,8 +704,6 @@
       # have to turn off this warning (and be careful about how object
       # destruction happens in such cases).
       "/wd4611",
-
-
       # Warnings to evaluate and possibly fix/reenable later:
 
       "/wd4100",  # Unreferenced formal function parameter.
@@ -713,9 +730,7 @@
     cflags_cc = []
 
     if (is_mac) {
-      cflags += [
-        "-Wnewline-eof",
-      ]
+      cflags += [ "-Wnewline-eof" ]
     }
 
     if (is_clang) {
@@ -753,6 +768,7 @@
       cflags_cc += [
         # See comment for -Wno-c++11-narrowing.
         "-Wno-narrowing",
+
         # TODO(thakis): Remove, http://crbug.com/263960
         "-Wno-literal-suffix",
       ]
@@ -779,6 +795,7 @@
         # correctly when building with the Android build system.
         # TODO(torne): Fix this in WebKit.
         "-Wno-error=c++0x-compat",
+
         # Other things unrelated to -Wextra:
         "-Wno-non-virtual-dtor",
         "-Wno-sign-promo",
@@ -789,9 +806,7 @@
       # Don't warn about the "typedef 'foo' locally defined but not used"
       # for gcc 4.8.
       # TODO: remove this flag once all builds work. See crbug.com/227506
-      cflags += [
-        "-Wno-unused-local-typedefs",
-      ]
+      cflags += [ "-Wno-unused-local-typedefs" ]
     }
   }
 }
@@ -822,7 +837,7 @@
     "/O2",
     "/Ob2",  # both explicit and auto inlining.
     "/Oy-",  # disable omitting frame pointers, must be after /o2.
-    "/Os",   # favor size over speed.
+    "/Os",  # favor size over speed.
   ]
   common_optimize_on_ldflags = []
 } else {
@@ -830,6 +845,7 @@
     # Don't emit the GCC version ident directives, they just end up in the
     # .comment section taking up binary size.
     "-fno-ident",
+
     # Put data and code in their own sections, so that unused symbols
     # can be removed at link time with --gc-sections.
     "-fdata-sections",
@@ -850,9 +866,7 @@
   if (is_mac) {
     if (symbol_level == 2) {
       # Mac dead code stripping requires symbols.
-      common_optimize_on_ldflags += [
-        "-Wl,-dead_strip",
-      ]
+      common_optimize_on_ldflags += [ "-Wl,-dead_strip" ]
     }
   } else {
     # Non-Mac Posix linker flags.
@@ -871,17 +885,11 @@
   cflags = common_optimize_on_cflags
   ldflags = common_optimize_on_ldflags
   if (is_win) {
-    cflags += [
-      "/Os",   # favor size over speed.
-    ]
+    cflags += [ "/Os" ]  # favor size over speed.
   } else if (is_android || is_ios) {
-    cflags += [
-      "-Os",  # Favor size over speed.
-    ]
+    cflags += [ "-Os" ]  # Favor size over speed.
   } else {
-    cflags += [
-      "-O2",
-    ]
+    cflags += [ "-O2" ]
   }
 }
 
@@ -917,32 +925,25 @@
   cflags = common_optimize_on_cflags
   ldflags = common_optimize_on_ldflags
   if (is_win) {
-    cflags -= [
-      "/Os",
-    ]
-    cflags += [
-      "/Ot",   # Favor speed over size.
-    ]
+    cflags -= [ "/Os" ]
+    cflags += [ "/Ot" ]  # Favor speed over size.
     if (is_official_build) {
       # TODO(GYP): TODO(dpranke): Should these only be on in an official
       # build, or on all the time? For now we'll require official build so
       # that the compile is clean.
       cflags += [
-        "/GL",   # Whole program optimization.
+        "/GL",  # Whole program optimization.
+
         # Disable Warning 4702 ("Unreachable code") for the WPO/PGO builds.
         # Probably anything that this would catch that wouldn't be caught in a
         # normal build isn't going to actually be a bug, so the incremental
         # value of C4702 for PGO builds is likely very small.
         "/wd4702",
       ]
-      ldflags += [
-        "/LTCG",
-      ]
+      ldflags += [ "/LTCG" ]
     }
   } else {
-    cflags += [
-      "-O2",
-    ]
+    cflags += [ "-O2" ]
   }
 }
 
@@ -950,7 +951,12 @@
 
 config("symbols") {
   if (is_win) {
-    cflags = [ "/Zi" ]  # Produce PDB file, no edit and continue.
+    import("//build/toolchain/goma.gni")
+    if (use_goma) {
+      cflags = [ "/Z7" ]  # No PDB file
+    } else {
+      cflags = [ "/Zi" ]  # Produce PDB file, no edit and continue.
+    }
     ldflags = [ "/DEBUG" ]
   } else {
     cflags = [ "-g2" ]
diff --git a/build/config/features.gni b/build/config/features.gni
index 9953a0d..ac48896 100644
--- a/build/config/features.gni
+++ b/build/config/features.gni
@@ -75,7 +75,7 @@
 # Do not disable seccomp_bpf anywhere without talking to
 # security@chromium.org!
 use_seccomp_bpf = (is_linux || is_android) &&
-  (cpu_arch == "x86" || cpu_arch == "x64" || cpu_arch == "arm")
+                  (cpu_arch == "x86" || cpu_arch == "x64" || cpu_arch == "arm")
 
 # Enable notifications everywhere except iOS.
 enable_notifications = !is_ios
@@ -83,18 +83,20 @@
 # TODO(brettw) this should be moved to net and only dependents get this define.
 disable_ftp_support = is_ios
 
-enable_web_speech = (!is_android && !is_ios)
+enable_web_speech = !is_android && !is_ios
 
 use_dbus = is_linux
 
-enable_extensions = (!is_android && !is_ios)
+enable_extensions = !is_android && !is_ios
 
 # Variable safe_browsing is used to control the build time configuration for
 # safe browsing feature. Safe browsing can be compiled in 3 different levels: 0
 # disables it, 1 enables it fully, and 2 enables only UI and reporting features
 # without enabling phishing and malware detection. This is useful to integrate
 # a third party phishing/malware detection to existing safe browsing logic.
-if (is_ios) {
+if (is_android) {
+  safe_browsing_mode = 2
+} else if (is_ios) {
   safe_browsing_mode = 0
 } else {
   safe_browsing_mode = 1
@@ -129,7 +131,7 @@
 enable_app_list = !is_ios && !is_android
 enable_settings_app = enable_app_list && !is_chromeos
 
-enable_managed_users = !is_ios
+enable_supervised_users = !is_ios
 
 enable_service_discovery = enable_mdns || is_mac
 
@@ -157,3 +159,8 @@
 # system).
 # TODO(GYP) also require !embedded to enable.
 use_gconf = is_linux && !is_chromeos
+
+# Hangout services is an extension that adds extra features to Hangouts.
+# For official GYP builds, this flag is set, it will likely need to be
+# parameterized in the future for a similar use.
+enable_hangout_services_extension = false
diff --git a/build/config/gcc/BUILD.gn b/build/config/gcc/BUILD.gn
index 28502c2..c6cfe72 100644
--- a/build/config/gcc/BUILD.gn
+++ b/build/config/gcc/BUILD.gn
@@ -23,7 +23,6 @@
   ldflags = [
     # Want to pass "\$". GN will re-escape as required for ninja.
     "-Wl,-rpath=\$ORIGIN/",
-
     "-Wl,-rpath-link=",
 
     # Newer binutils don't set DT_RPATH unless you disable "new" dtags
diff --git a/build/config/gcc/gcc_version.gni b/build/config/gcc/gcc_version.gni
index 1ff464a..2ecc54a 100644
--- a/build/config/gcc/gcc_version.gni
+++ b/build/config/gcc/gcc_version.gni
@@ -11,11 +11,21 @@
   }
 } else if (current_toolchain == "//build/toolchain/cros:target") {
   # TODO(benchan): Generalize the check for platforms other than Chrome OS.
-  gcc_version = exec_script("../../compiler_version.py", [ "target", "compiler" ], "value")
+  gcc_version = exec_script("../../compiler_version.py",
+                            [
+                              "target",
+                              "compiler",
+                            ],
+                            "value")
 } else if (current_toolchain == "//build/toolchain/linux:x64" ||
            current_toolchain == "//build/toolchain/linux:x86") {
   # These are both the same and just use the default gcc on the system.
-  gcc_version = exec_script("../../compiler_version.py", [ "host", "compiler" ], "value")
+  gcc_version = exec_script("../../compiler_version.py",
+                            [
+                              "host",
+                              "compiler",
+                            ],
+                            "value")
 } else {
   gcc_version = 0
 }
diff --git a/build/config/ios/BUILD.gn b/build/config/ios/BUILD.gn
index 0886be4..471f28a 100644
--- a/build/config/ios/BUILD.gn
+++ b/build/config/ios/BUILD.gn
@@ -6,7 +6,10 @@
 import("//build/config/ios/ios_sdk.gni")
 
 config("sdk") {
-  common_flags = [ "-isysroot", sysroot ]
+  common_flags = [
+    "-isysroot",
+    sysroot,
+  ]
 
   cflags = common_flags
   ldflags = common_flags
diff --git a/build/config/ios/ios_sdk.gni b/build/config/ios/ios_sdk.gni
index 6b81a03..cb2708b 100644
--- a/build/config/ios/ios_sdk.gni
+++ b/build/config/ios/ios_sdk.gni
@@ -25,6 +25,6 @@
     _ios_sdk_to_query = "iphoneos"
   }
   _ios_sdk_result =
-    exec_script("ios_sdk.py", [ _ios_sdk_to_query ], "list lines")
+      exec_script("ios_sdk.py", [ _ios_sdk_to_query ], "list lines")
   ios_sdk_path = _ios_sdk_result[0]
 }
diff --git a/build/config/linux/BUILD.gn b/build/config/linux/BUILD.gn
index 758f42a..e132116 100644
--- a/build/config/linux/BUILD.gn
+++ b/build/config/linux/BUILD.gn
@@ -8,6 +8,11 @@
 import("//build/config/ui.gni")
 import("//tools/generate_library_loader/generate_library_loader.gni")
 
+gypi_values = exec_script("//build/gypi_to_gn.py",
+                          [ rebase_path("../../linux/system.gyp") ],
+                          "scope",
+                          [ "../../linux/system.gyp" ])
+
 config("sdk") {
   if (sysroot != "") {
     cflags = [ "--sysroot=" + sysroot ]
@@ -15,9 +20,12 @@
 
     # Need to get some linker flags out of the sysroot.
     ldflags += [ exec_script("sysroot_ld_path.py",
-        [ rebase_path("//build/linux/sysroot_ld_path.sh", root_build_dir),
-          sysroot ],
-        "value") ]
+                             [
+                               rebase_path("//build/linux/sysroot_ld_path.sh",
+                                           root_build_dir),
+                               sysroot,
+                             ],
+                             "value") ]
   }
 
   # Set here because OS_CHROMEOS cannot be autodetected in build_config.h like
@@ -36,7 +44,12 @@
 }
 
 pkg_config("glib") {
-  packages = [ "glib-2.0", "gmodule-2.0", "gobject-2.0", "gthread-2.0" ]
+  packages = [
+    "glib-2.0",
+    "gmodule-2.0",
+    "gobject-2.0",
+    "gthread-2.0",
+  ]
 }
 
 pkg_config("pangocairo") {
@@ -47,10 +60,6 @@
   packages = [ "pangoft2" ]
 }
 
-pkg_config("udev") {
-  packages = [ "libudev" ]
-}
-
 # Note: if your target also depends on //dbus, you don't need to add this
 # config (it will get added automatically if you depend on //dbus).
 pkg_config("dbus") {
@@ -140,24 +149,13 @@
     header = "<brlapi.h>"
     config = ":brlapi_config"
 
-    functions = [
-      "brlapi_getHandleSize",
-      "brlapi_error_location",
-      "brlapi_strerror",
-      "brlapi__acceptKeys",
-      "brlapi__openConnection",
-      "brlapi__closeConnection",
-      "brlapi__getDisplaySize",
-      "brlapi__enterTtyModeWithPath",
-      "brlapi__leaveTtyMode",
-      "brlapi__writeDots",
-      "brlapi__readKey",
-    ]
+    functions = gypi_values.libbrlapi_functions
   }
 }
 
 pkg_config("gio_config") {
   packages = [ "gio-2.0" ]
+
   # glib >=2.40 deprecate g_settings_list_schemas in favor of
   # g_settings_schema_source_list_schemas. This function is not available on
   # earlier versions that we still need to support (specifically, 2.32), so
@@ -165,8 +163,11 @@
   # TODO(mgiuca): Remove this suppression when we drop support for Ubuntu 13.10
   # (saucy) and earlier. Update the code to use
   # g_settings_schema_source_list_schemas instead.
-  defines = [ "USE_GIO", "GLIB_DISABLE_DEPRECATION_WARNINGS" ]
- 
+  defines = [
+    "USE_GIO",
+    "GLIB_DISABLE_DEPRECATION_WARNINGS",
+  ]
+
   # TODO(brettw) Theoretically I think ignore_libs should be set so that we
   # don't link directly to GIO and use the loader generated below. But the gio
   # target in GYP doesn't make any sense to me and appears to link directly to
@@ -183,15 +184,7 @@
   header = "<gio/gio.h>"
   config = ":gio_config"
 
-  functions = [
-    "g_settings_new",
-    "g_settings_get_child",
-    "g_settings_get_string",
-    "g_settings_get_boolean",
-    "g_settings_get_int",
-    "g_settings_get_strv",
-    "g_settings_list_schemas",
-  ]
+  functions = gypi_values.libgio_functions
 }
 
 # This generates a target named "libpci".
@@ -201,14 +194,34 @@
   output_cc = "libpci_loader.cc"
   header = "<pci/pci.h>"
 
-  functions = [
-    "pci_alloc",
-    "pci_init",
-    "pci_cleanup",
-    "pci_scan_bus",
-    "pci_fill_info",
-    "pci_lookup_name",
-  ]
+  functions = gypi_values.libpci_functions
 }
 
 # Looking for libspeechd? Use //third_party/speech-dispatcher
+
+# This generates a target named "udev0_loader".
+generate_library_loader("udev0_loader") {
+  name = "LibUdev0Loader"
+  output_h = "libudev0.h"
+  output_cc = "libudev0_loader.cc"
+  header = "\"third_party/libudev/libudev0.h\""
+
+  functions = gypi_values.libudev_functions
+}
+
+# This generates a target named "udev1_loader".
+generate_library_loader("udev1_loader") {
+  name = "LibUdev1Loader"
+  output_h = "libudev1.h"
+  output_cc = "libudev1_loader.cc"
+  header = "\"third_party/libudev/libudev1.h\""
+
+  functions = gypi_values.libudev_functions
+}
+
+group("udev") {
+  deps = [
+    ":udev0_loader",
+    ":udev1_loader",
+  ]
+}
diff --git a/build/config/linux/pkg_config.gni b/build/config/linux/pkg_config.gni
index 687afc5..631d60a 100644
--- a/build/config/linux/pkg_config.gni
+++ b/build/config/linux/pkg_config.gni
@@ -39,16 +39,24 @@
 # need to invoke it manually.
 if (sysroot != "") {
   # Pass the sysroot if we're using one (it requires the CPU arch also).
-  pkg_config_args = ["-s", sysroot, "-a", cpu_arch]
+  pkg_config_args = [
+    "-s",
+    sysroot,
+    "-a",
+    cpu_arch,
+  ]
 } else if (pkg_config != "") {
-  pkg_config_args = ["-p", pkg_config]
+  pkg_config_args = [
+    "-p",
+    pkg_config,
+  ]
 } else {
   pkg_config_args = []
 }
 
 template("pkg_config") {
   assert(defined(invoker.packages),
-        "Variable |packages| must be defined to be a list in pkg_config.")
+         "Variable |packages| must be defined to be a list in pkg_config.")
   config(target_name) {
     args = pkg_config_args + invoker.packages
     if (defined(invoker.extra_args)) {
diff --git a/build/config/mac/BUILD.gn b/build/config/mac/BUILD.gn
index 2ebf458..9288add 100644
--- a/build/config/mac/BUILD.gn
+++ b/build/config/mac/BUILD.gn
@@ -6,8 +6,9 @@
 
 config("sdk") {
   common_flags = [
-    "-isysroot", sysroot,
-    "-mmacosx-version-min=10.6"
+    "-isysroot",
+    sysroot,
+    "-mmacosx-version-min=10.6",
   ]
 
   cflags = common_flags
@@ -19,8 +20,10 @@
   ldflags = [
     "-Wl,-search_paths_first",
     "-L.",
+
     # Path for loading shared libraries for unbundled binaries.
     "-Wl,-rpath,@loader_path/.",
+
     # Path for loading shared libraries for bundled binaries. Get back from
     # Binary.app/Contents/MacOS.
     "-Wl,-rpath,@loader_path/../../..",
@@ -29,7 +32,5 @@
 
 # On Mac, this is used only for executables.
 config("mac_executable_flags") {
-  ldflags = [
-    "-Wl,-pie",  # Position independent.
-  ]
+  ldflags = [ "-Wl,-pie" ]  # Position independent.
 }
diff --git a/build/config/mac/mac_sdk.gni b/build/config/mac/mac_sdk.gni
index aa03332..44995a3 100644
--- a/build/config/mac/mac_sdk.gni
+++ b/build/config/mac/mac_sdk.gni
@@ -14,10 +14,15 @@
 
 find_sdk_args = [ "--print_sdk_path" ]
 if (is_chrome_branded && is_official_build) {
-  find_sdk_args += [ "--verify", mac_sdk_min, "--sdk_path=" + mac_sdk_path ]
+  find_sdk_args += [
+    "--verify",
+    mac_sdk_min,
+    "--sdk_path=" + mac_sdk_path,
+  ]
 } else {
   find_sdk_args += [ mac_sdk_min ]
 }
+
 # The tool will print the SDK path on the first line, and the version on the
 # second line.
 find_sdk_lines =
diff --git a/build/config/sanitizers/BUILD.gn b/build/config/sanitizers/BUILD.gn
index 6012b48..63728d9 100644
--- a/build/config/sanitizers/BUILD.gn
+++ b/build/config/sanitizers/BUILD.gn
@@ -8,17 +8,24 @@
 group("deps") {
   if (is_asan) {
     public_configs = [ ":sanitizer_options_link_helper" ]
-    deps = [ ":options_sources" ]
+    deps = [
+      ":options_sources",
+    ]
   }
 }
 
 config("sanitizer_options_link_helper") {
-  ldflags = [ "-Wl,-u_sanitizer_options_link_helper", "-fsanitize=address" ]
+  ldflags = [
+    "-Wl,-u_sanitizer_options_link_helper",
+    "-fsanitize=address",
+  ]
 }
 
 source_set("options_sources") {
   visibility = [ ":deps" ]
-  sources = [ "//build/sanitizers/sanitizer_options.cc" ]
+  sources = [
+    "//build/sanitizers/sanitizer_options.cc",
+  ]
 
   if (is_tsan) {
     sources += [ "//build/sanitizers/tsan_suppressions.cc" ]
diff --git a/build/config/win/BUILD.gn b/build/config/win/BUILD.gn
index f623064..bc2ea88 100644
--- a/build/config/win/BUILD.gn
+++ b/build/config/win/BUILD.gn
@@ -122,9 +122,7 @@
 # to have a separate config for it. Remove this config from your target to
 # get the "bloaty and accomodating" version of windows.h.
 config("lean_and_mean") {
-  defines = [
-    "WIN32_LEAN_AND_MEAN",
-  ]
+  defines = [ "WIN32_LEAN_AND_MEAN" ]
 }
 
 # Nominmax --------------------------------------------------------------------
@@ -134,7 +132,5 @@
 # For such targets, this config can be removed.
 
 config("nominmax") {
-  defines = [
-    "NOMINMAX",
-  ]
+  defines = [ "NOMINMAX" ]
 }
diff --git a/build/get_landmines.py b/build/get_landmines.py
index 2c3b3d7..74d9561 100755
--- a/build/get_landmines.py
+++ b/build/get_landmines.py
@@ -62,6 +62,7 @@
     print 'Delete stale generated .java files yet again. crbug.com/349592'
     print 'Clobber to delete incompatible object binary format with NDK r10c'
   print 'Clobber to fix missing NaCl gyp dependencies (crbug.com/427427).'
+  print 'Another clobber for missing NaCl gyp deps (crbug.com/427427).'
 
 
 def main():
diff --git a/build/go/rules.gni b/build/go/rules.gni
index 55dd386..d4b1f50 100644
--- a/build/go/rules.gni
+++ b/build/go/rules.gni
@@ -40,23 +40,24 @@
     ]
     script = "//build/go/go.py"
     outputs = [ "${target_out_dir}/${target_name}" ]
+
     # Since go test does not permit specifying an output directory or output
     # binary name, we create a temporary build directory, and the python
     # script will later identify the output, copy it to the target location,
     # and clean up the temporary build directory.
     build_dir = "${target_out_dir}/${target_name}_build"
     args = [
-      "--", 
-      "${go_build_tool}",
-      rebase_path(build_dir, root_build_dir),
-      rebase_path(target_out_dir, root_build_dir) + "/${target_name}",
-      rebase_path("//", root_build_dir),
-      "-I" + rebase_path("//"),
-      " -L" + rebase_path(target_out_dir) +
-      " -l" + static_library_name +
-      " -lstdc++ -lpthread -lm -lglib-2.0",
-      "test", "-c",
-    ] + rebase_path(invoker.sources, build_dir)
+             "--",
+             "${go_build_tool}",
+             rebase_path(build_dir, root_build_dir),
+             rebase_path(target_out_dir, root_build_dir) + "/${target_name}",
+             rebase_path("//", root_build_dir),
+             "-I" + rebase_path("//"),
+             " -L" + rebase_path(target_out_dir) + " -l" + static_library_name +
+                 " -lstdc++ -lpthread -lm -lglib-2.0",
+             "test",
+             "-c",
+           ] + rebase_path(invoker.sources, build_dir)
   }
 }
 
@@ -74,24 +75,27 @@
   }
 
   action(target_name) {
-    deps = [ ":$static_library_name" ]
+    deps = [
+      ":$static_library_name",
+    ]
     script = "//build/go/go.py"
     outputs = [ "${target_out_dir}/${target_name}" ]
+
     # Since go test does not permit specifying an output directory or output
     # binary name, we create a temporary build directory, and the python
     # script will later identify the output, copy it to the target location,
     # and clean up the temporary build directory.
     build_dir = "${target_out_dir}/${target_name}_build"
     args = [
-      "--", 
-      "CGO_ENABLED=1 GOOS=android GOARCH=arm GOARM=7 ${go_build_tool}",
-      rebase_path(build_dir, root_build_dir),
-      rebase_path(target_out_dir, root_build_dir) + "/${target_name}",
-      rebase_path("//", root_build_dir),
-      "-I" + rebase_path("//"),
-      " -L" + rebase_path(target_out_dir) +
-       " -l" + static_library_name + "",
-      "build -ldflags=-shared",
-    ] + rebase_path(invoker.sources, build_dir)
+             "--",
+             "CGO_ENABLED=1 GOOS=android GOARCH=arm GOARM=7 ${go_build_tool}",
+             rebase_path(build_dir, root_build_dir),
+             rebase_path(target_out_dir, root_build_dir) + "/${target_name}",
+             rebase_path("//", root_build_dir),
+             "-I" + rebase_path("//"),
+             " -L" + rebase_path(target_out_dir) + " -l" + static_library_name +
+                 "",
+             "build -ldflags=-shared",
+           ] + rebase_path(invoker.sources, build_dir)
   }
-}
\ No newline at end of file
+}
diff --git a/build/install-build-deps-android.sh b/build/install-build-deps-android.sh
index e740910..1fcf4fb 100755
--- a/build/install-build-deps-android.sh
+++ b/build/install-build-deps-android.sh
@@ -19,7 +19,9 @@
 
 # Install first the default Linux build deps.
 "$(dirname "${BASH_SOURCE[0]}")/install-build-deps.sh" \
-    --no-syms --no-arm --no-chromeos-fonts --no-nacl --no-prompt "$@"
+    --no-syms --lib32 --no-arm --no-chromeos-fonts --no-nacl --no-prompt "$@"
+
+lsb_release=$(lsb_release --codename --short)
 
 # The temporary directory used to store output of update-java-alternatives
 TEMPDIR=$(mktemp -d)
@@ -31,8 +33,6 @@
 }
 trap cleanup EXIT
 
-sudo apt-get update
-
 # Fix deps
 sudo apt-get -f install
 
@@ -44,13 +44,13 @@
 # common
 sudo apt-get -y install lighttpd python-pexpect xvfb x11-utils
 
-# Few binaries in the Android SDK require 32-bit libraries on the host.
-sudo apt-get -y install lib32z1 g++-multilib
-
-# On Trusty-based systems you can't compile V8's mksnapshot without this one.
-# It is compiled for the host, using the -m32 flag, so it needs some 32 bit
-# development support. It seems harmless on older Linux releases.
-sudo apt-get -y install linux-libc-dev:i386
+# Some binaries in the Android SDK require 32-bit libraries on the host.
+# See https://developer.android.com/sdk/installing/index.html?pkg=tools
+if [[ $lsb_release == "precise" ]]; then
+  sudo apt-get -y install ia32-libs
+else
+  sudo apt-get -y install libncurses5:i386 libstdc++6:i386 zlib1g:i386
+fi
 
 sudo apt-get -y install ant
 
diff --git a/build/install-build-deps.sh b/build/install-build-deps.sh
index 3093505..d1d844a 100755
--- a/build/install-build-deps.sh
+++ b/build/install-build-deps.sh
@@ -12,6 +12,7 @@
   echo "Usage: $0 [--options]"
   echo "Options:"
   echo "--[no-]syms: enable or disable installation of debugging symbols"
+  echo "--lib32: enable installation of 32-bit libraries, e.g. for V8 snapshot"
   echo "--[no-]arm: enable or disable installation of arm cross toolchain"
   echo "--[no-]chromeos-fonts: enable or disable installation of Chrome OS"\
        "fonts"
@@ -44,9 +45,7 @@
   case "$1" in
   --syms)                   do_inst_syms=1;;
   --no-syms)                do_inst_syms=0;;
-  # TODO(phajdan.jr): Remove the lib32 flags when nothing else refers to them.
   --lib32)                  do_inst_lib32=1;;
-  --no-lib32)               do_inst_lib32=0;;
   --arm)                    do_inst_arm=1;;
   --no-arm)                 do_inst_arm=0;;
   --chromeos-fonts)         do_inst_chromeos_fonts=1;;
@@ -63,6 +62,10 @@
   shift
 done
 
+if test "$do_inst_arm" = "1"; then
+  do_inst_lib32=1
+fi
+
 # Check for lsb_release command in $PATH
 if ! which lsb_release > /dev/null; then
   echo "ERROR: lsb_release not found in \$PATH" >&2
@@ -70,10 +73,10 @@
 fi
 
 lsb_release=$(lsb_release --codename --short)
-ubuntu_codenames="(precise|quantal|raring|saucy|trusty)"
+ubuntu_codenames="(precise|quantal|raring|saucy|trusty|utopic)"
 if [ 0 -eq "${do_unsupported-0}" ] && [ 0 -eq "${do_quick_check-0}" ] ; then
   if [[ ! $lsb_release =~ $ubuntu_codenames ]]; then
-    echo "ERROR: Only Ubuntu 12.04 (precise) through 14.04 (trusty) are"\
+    echo "ERROR: Only Ubuntu 12.04 (precise) through 14.10 (utopic) are"\
         "currently supported" >&2
     exit 1
   fi
@@ -137,11 +140,13 @@
           libxrandr2-dbg libxrender1-dbg libxtst6-dbg zlib1g-dbg
           libstdc++6-4.6-dbg"
 
+# 32-bit libraries needed e.g. to compile V8 snapshot for Android or armhf
+lib32_list="linux-libc-dev:i386"
+
 # arm cross toolchain packages needed to build chrome on armhf
 arm_list="libc6-dev-armhf-cross
           linux-libc-dev-armhf-cross
-          g++-arm-linux-gnueabihf
-          linux-libc-dev:i386"
+          g++-arm-linux-gnueabihf"
 
 # Packages to build NaCl, its toolchains, and its ports.
 naclports_list="ant autoconf bison cmake gawk intltool xutils-dev xsltproc"
@@ -207,6 +212,19 @@
   lib_list="$lib_list appmenu-gtk"
 fi
 
+# When cross building for arm/Android on 64-bit systems the host binaries
+# that are part of v8 need to be compiled with -m32 which means
+# that basic multilib support is needed.
+if file /sbin/init | grep -q 'ELF 64-bit'; then
+  # gcc-multilib conflicts with the arm cross compiler (at least in trusty) but
+  # g++-X.Y-multilib gives us the 32-bit support that we need. Find out the
+  # appropriate value of X and Y by seeing what version the current
+  # distribution's g++-multilib package depends on.
+  multilib_package=$(apt-cache depends g++-multilib --important | \
+      grep -E --color=never --only-matching '\bg\+\+-[0-9.]+-multilib\b')
+  lib32_list="$lib32_list $multilib_package"
+fi
+
 # Waits for the user to press 'Y' or 'N'. Either uppercase of lowercase is
 # accepted. Returns 0 for 'Y' and 1 for 'N'. If an optional parameter has
 # been provided to yes_no(), the function also accepts RETURN as a user input.
@@ -265,17 +283,11 @@
   dbg_list=
 fi
 
-# When cross building for arm on 64-bit systems the host binaries
-# that are part of v8 need to be compiled with -m32 which means
-# that basic multilib support is needed.
-if file /sbin/init | grep -q 'ELF 64-bit'; then
-  if [ "$lsb_release" = "trusty" ]; then
-    # gcc-multilib conflicts with the arm cross compiler in trusty but
-    # g++-4.8-multilib gives us the 32-bit support that we need.
-    arm_list="$arm_list g++-4.8-multilib"
-  else
-    arm_list="$arm_list g++-multilib"
-  fi
+if test "$do_inst_lib32" = "1" ; then
+  echo "Including 32-bit libraries for ARM/Android."
+else
+  echo "Skipping 32-bit libraries for ARM/Android."
+  lib32_list=
 fi
 
 if test "$do_inst_arm" = "1" ; then
@@ -293,8 +305,8 @@
 fi
 
 packages="$(
-  echo "${dev_list} ${lib_list} ${dbg_list} ${arm_list} ${nacl_list}" |
-  tr " " "\n" | sort -u | tr "\n" " "
+  echo "${dev_list} ${lib_list} ${dbg_list} ${lib32_list} ${arm_list}"\
+       "${nacl_list}" | tr " " "\n" | sort -u | tr "\n" " "
 )"
 
 if [ 1 -eq "${do_quick_check-0}" ] ; then
@@ -333,6 +345,11 @@
   exit 0
 fi
 
+if test "$do_inst_lib32" = "1" || test "$do_inst_nacl" = "1"; then
+  if [[ ! $lsb_release =~ (precise|quantal|raring) ]]; then
+    sudo dpkg --add-architecture i386
+  fi
+fi
 sudo apt-get update
 
 # We initially run "apt-get" with the --reinstall option and parse its output.
diff --git a/build/ios/grit_whitelist.txt b/build/ios/grit_whitelist.txt
index aa579ce..6fbe58d 100644
--- a/build/ios/grit_whitelist.txt
+++ b/build/ios/grit_whitelist.txt
@@ -154,6 +154,7 @@
 IDS_AUTOFILL_FIELD_LABEL_STATE
 IDS_AUTOFILL_FIELD_LABEL_ZIP_CODE
 IDS_AUTOFILL_OPTIONS_POPUP
+IDS_AUTOFILL_SCAN_CREDIT_CARD
 IDS_AUTOFILL_WARNING_FORM_DISABLED
 IDS_AUTOFILL_WARNING_INSECURE_CONNECTION
 IDS_AUTOLOGIN_INFOBAR_CANCEL_BUTTON
diff --git a/build/java_prebuilt.gypi b/build/java_prebuilt.gypi
index a3a8cc0..8efc4ef 100644
--- a/build/java_prebuilt.gypi
+++ b/build/java_prebuilt.gypi
@@ -27,6 +27,7 @@
     'intermediate_dir': '<(SHARED_INTERMEDIATE_DIR)/<(_target_name)',
     'android_jar': '<(android_sdk)/android.jar',
     'input_jars_paths': [ '<(android_jar)' ],
+    'neverlink%': 0,
     'proguard_config%': '',
     'proguard_preprocess%': '0',
     'variables': {
@@ -46,7 +47,13 @@
   'all_dependent_settings': {
     'variables': {
       'input_jars_paths': ['<(dex_input_jar_path)'],
-      'library_dexed_jars_paths': ['<(dex_path)'],
+      'conditions': [
+        ['neverlink == 1', {
+          'library_dexed_jars_paths': [],
+        }, {
+          'library_dexed_jars_paths': ['<(dex_path)'],
+        }],
+      ],
     },
   },
   'conditions' : [
@@ -76,18 +83,20 @@
         },
       ],
     }],
-  ],
-  'actions': [
-    {
-      'action_name': 'dex_<(_target_name)',
-      'message': 'Dexing <(_target_name) jar',
-      'variables': {
-        'dex_input_paths': [
-          '<(dex_input_jar_path)',
-        ],
-        'output_path': '<(dex_path)',
-      },
-      'includes': [ 'android/dex_action.gypi' ],
-    },
+    ['neverlink == 0', {
+      'actions': [
+        {
+          'action_name': 'dex_<(_target_name)',
+          'message': 'Dexing <(_target_name) jar',
+          'variables': {
+            'dex_input_paths': [
+              '<(dex_input_jar_path)',
+            ],
+            'output_path': '<(dex_path)',
+          },
+          'includes': [ 'android/dex_action.gypi' ],
+        },
+      ],
+    }],
   ],
 }
diff --git a/build/json_schema_api.gni b/build/json_schema_api.gni
index 5857739..dd8ab92 100644
--- a/build/json_schema_api.gni
+++ b/build/json_schema_api.gni
@@ -57,8 +57,8 @@
 
   schemas = defined(invoker.schemas) && invoker.schemas
   bundle = defined(invoker.bundle) && invoker.bundle
-  bundle_registration = defined(invoker.bundle_registration) &&
-      invoker.bundle_registration
+  bundle_registration =
+      defined(invoker.bundle_registration) && invoker.bundle_registration
 
   schema_include_rules = ""
   if (defined(invoker.schema_include_rules)) {
@@ -108,11 +108,15 @@
         "--destdir=" + rebase_path(root_gen_dir, root_build_dir),
         "--namespace=$root_namespace",
         "--generator=cpp",
-        "--include-rules=$schema_include_rules" ]
+        "--include-rules=$schema_include_rules",
+      ]
 
       if (defined(invoker.visibility)) {
         # If visibility is restricted, add our own target to it.
-        visibility = [ invoker.visibility, target_visibility ]
+        visibility = [
+          invoker.visibility,
+          target_visibility,
+        ]
       }
     }
   }
@@ -120,7 +124,7 @@
   if (bundle) {
     uncompiled_sources = []
     if (defined(invoker.uncompiled_sources)) {
-     uncompiled_sources = invoker.uncompiled_sources
+      uncompiled_sources = invoker.uncompiled_sources
     }
 
     bundle_generator_schema_name = target_name + "_bundle_generator_schema"
@@ -132,28 +136,28 @@
         "$target_gen_dir/generated_schemas.h",
       ]
       args = [
-        "--root=" + rebase_path("//", root_build_dir),
-        "--destdir=" + rebase_path(root_gen_dir, root_build_dir),
-        "--namespace=$root_namespace",
-        "--generator=cpp-bundle-schema",
-        "--include-rules=$schema_include_rules" ]
-        + rebase_path(sources, root_build_dir)
-        + rebase_path(uncompiled_sources, root_build_dir)
+               "--root=" + rebase_path("//", root_build_dir),
+               "--destdir=" + rebase_path(root_gen_dir, root_build_dir),
+               "--namespace=$root_namespace",
+               "--generator=cpp-bundle-schema",
+               "--include-rules=$schema_include_rules",
+             ] + rebase_path(sources, root_build_dir) +
+             rebase_path(uncompiled_sources, root_build_dir)
     }
   }
 
   if (bundle_registration) {
     uncompiled_sources = []
     if (defined(invoker.uncompiled_sources)) {
-     uncompiled_sources = invoker.uncompiled_sources
+      uncompiled_sources = invoker.uncompiled_sources
     }
 
     assert(defined(invoker.impl_dir),
            "\"impl_dir\" must be defined for the $target_name template.")
     impl_dir = invoker.impl_dir
 
-    bundle_generator_registration_name = target_name +
-        "_bundle_generator_registration"
+    bundle_generator_registration_name =
+        target_name + "_bundle_generator_registration"
     action(bundle_generator_registration_name) {
       script = compiler_script
       inputs = compiler_sources + sources + uncompiled_sources
@@ -162,14 +166,14 @@
         "$root_gen_dir/$impl_dir/generated_api_registration.h",
       ]
       args = [
-        "--root=" + rebase_path("//", root_build_dir),
-        "--destdir=" + rebase_path(root_gen_dir, root_build_dir),
-        "--namespace=$root_namespace",
-        "--generator=cpp-bundle-registration",
-        "--impl-dir=" + rebase_path(impl_dir, "//"),
-        "--include-rules=$schema_include_rules" ]
-        + rebase_path(sources, root_build_dir)
-        + rebase_path(uncompiled_sources, root_build_dir)
+               "--root=" + rebase_path("//", root_build_dir),
+               "--destdir=" + rebase_path(root_gen_dir, root_build_dir),
+               "--namespace=$root_namespace",
+               "--generator=cpp-bundle-registration",
+               "--impl-dir=" + rebase_path(impl_dir, "//"),
+               "--include-rules=$schema_include_rules",
+             ] + rebase_path(sources, root_build_dir) +
+             rebase_path(uncompiled_sources, root_build_dir)
     }
   }
 
diff --git a/build/landmine_utils.py b/build/landmine_utils.py
index 9b667d0..6d18b6d 100644
--- a/build/landmine_utils.py
+++ b/build/landmine_utils.py
@@ -33,7 +33,7 @@
 
 @memoize()
 def IsLinux():
-  return sys.platform.startswith(('linux', 'freebsd'))
+  return sys.platform.startswith(('linux', 'freebsd', 'openbsd'))
 
 
 @memoize()
diff --git a/build/linux/system.gyp b/build/linux/system.gyp
index 3e88093..cd0288b 100644
--- a/build/linux/system.gyp
+++ b/build/linux/system.gyp
@@ -20,6 +20,69 @@
     'linux_link_libpci%': 0,
     'linux_link_libspeechd%': 0,
     'linux_link_libbrlapi%': 0,
+
+    # Used below for the various libraries. In this scope for sharing with GN.
+    'libbrlapi_functions': [
+      'brlapi_getHandleSize',
+      'brlapi_error_location',
+      'brlapi_strerror',
+      'brlapi__acceptKeys',
+      'brlapi__openConnection',
+      'brlapi__closeConnection',
+      'brlapi__getDisplaySize',
+      'brlapi__enterTtyModeWithPath',
+      'brlapi__leaveTtyMode',
+      'brlapi__writeDots',
+      'brlapi__readKey',
+    ],
+    'libgio_functions': [
+      'g_settings_new',
+      'g_settings_get_child',
+      'g_settings_get_string',
+      'g_settings_get_boolean',
+      'g_settings_get_int',
+      'g_settings_get_strv',
+      'g_settings_list_schemas',
+    ],
+    'libpci_functions': [
+      'pci_alloc',
+      'pci_init',
+      'pci_cleanup',
+      'pci_scan_bus',
+      'pci_fill_info',
+      'pci_lookup_name',
+    ],
+    'libudev_functions': [
+      'udev_device_get_action',
+      'udev_device_get_devnode',
+      'udev_device_get_parent',
+      'udev_device_get_parent_with_subsystem_devtype',
+      'udev_device_get_property_value',
+      'udev_device_get_subsystem',
+      'udev_device_get_sysattr_value',
+      'udev_device_get_sysname',
+      'udev_device_get_syspath',
+      'udev_device_new_from_devnum',
+      'udev_device_new_from_syspath',
+      'udev_device_unref',
+      'udev_enumerate_add_match_subsystem',
+      'udev_enumerate_get_list_entry',
+      'udev_enumerate_new',
+      'udev_enumerate_scan_devices',
+      'udev_enumerate_unref',
+      'udev_list_entry_get_next',
+      'udev_list_entry_get_name',
+      'udev_monitor_enable_receiving',
+      'udev_monitor_filter_add_match_subsystem_devtype',
+      'udev_monitor_get_fd',
+      'udev_monitor_new_from_netlink',
+      'udev_monitor_receive_device',
+      'udev_monitor_unref',
+      'udev_new',
+      'udev_set_log_fn',
+      'udev_set_log_priority',
+      'udev_unref',
+    ],
   },
   'conditions': [
     [ 'chromeos==0 and use_ozone==0', {
@@ -445,22 +508,67 @@
       'targets': [
         {
           'target_name': 'udev',
-          'type': 'none',
+          'type': 'static_library',
           'conditions': [
             ['_toolset=="target"', {
-              'direct_dependent_settings': {
-                'cflags': [
-                  '<!@(<(pkg-config) --cflags libudev)'
-                ],
-              },
-              'link_settings': {
-                'ldflags': [
-                  '<!@(<(pkg-config) --libs-only-L --libs-only-other libudev)',
-                ],
-                'libraries': [
-                  '<!@(<(pkg-config) --libs-only-l libudev)',
-                ],
-              },
+              'include_dirs': [
+                '../..',
+              ],
+              'hard_dependency': 1,
+              'actions': [
+                {
+                  'variables': {
+                    'output_h': '<(SHARED_INTERMEDIATE_DIR)/library_loaders/libudev0.h',
+                    'output_cc': '<(INTERMEDIATE_DIR)/libudev0_loader.cc',
+                    'generator': '../../tools/generate_library_loader/generate_library_loader.py',
+                  },
+                  'action_name': 'generate_libudev0_loader',
+                  'inputs': [
+                    '<(generator)',
+                  ],
+                  'outputs': [
+                    '<(output_h)',
+                    '<(output_cc)',
+                  ],
+                  'action': ['python',
+                             '<(generator)',
+                             '--name', 'LibUdev0Loader',
+                             '--output-h', '<(output_h)',
+                             '--output-cc', '<(output_cc)',
+                             '--header', '"third_party/libudev/libudev0.h"',
+                             '--link-directly=0',
+                             '<@(libudev_functions)',
+                  ],
+                  'message': 'Generating libudev0 library loader',
+                  'process_outputs_as_sources': 1,
+                },
+                {
+                  'variables': {
+                    'output_h': '<(SHARED_INTERMEDIATE_DIR)/library_loaders/libudev1.h',
+                    'output_cc': '<(INTERMEDIATE_DIR)/libudev1_loader.cc',
+                    'generator': '../../tools/generate_library_loader/generate_library_loader.py',
+                  },
+                  'action_name': 'generate_libudev1_loader',
+                  'inputs': [
+                    '<(generator)',
+                  ],
+                  'outputs': [
+                    '<(output_h)',
+                    '<(output_cc)',
+                  ],
+                  'action': ['python',
+                             '<(generator)',
+                             '--name', 'LibUdev1Loader',
+                             '--output-h', '<(output_h)',
+                             '--output-cc', '<(output_cc)',
+                             '--header', '"third_party/libudev/libudev1.h"',
+                             '--link-directly=0',
+                             '<@(libudev_functions)',
+                  ],
+                  'message': 'Generating libudev1 library loader',
+                  'process_outputs_as_sources': 1,
+                },
+              ],
             }],
           ],
         },
@@ -520,12 +628,7 @@
                          # and get it fixed so that we don't need --use-extern-c.
                          '--use-extern-c',
                          '--link-directly=<(linux_link_libpci)',
-                         'pci_alloc',
-                         'pci_init',
-                         'pci_cleanup',
-                         'pci_scan_bus',
-                         'pci_fill_info',
-                         'pci_lookup_name',
+                         '<@(libpci_functions)',
               ],
               'message': 'Generating libpci library loader',
               'process_outputs_as_sources': 1,
@@ -706,13 +809,7 @@
                          '--output-cc', '<(output_cc)',
                          '--header', '<gio/gio.h>',
                          '--link-directly=<(linux_link_gsettings)',
-                         'g_settings_new',
-                         'g_settings_get_child',
-                         'g_settings_get_string',
-                         'g_settings_get_boolean',
-                         'g_settings_get_int',
-                         'g_settings_get_strv',
-                         'g_settings_list_schemas',
+                         '<@(libgio_functions)',
               ],
               'message': 'Generating libgio library loader',
               'process_outputs_as_sources': 1,
@@ -882,17 +979,7 @@
                      '--output-cc', '<(output_cc)',
                      '--header', '<brlapi.h>',
                      '--link-directly=<(linux_link_libbrlapi)',
-                     'brlapi_getHandleSize',
-                     'brlapi_error_location',
-                     'brlapi_strerror',
-                     'brlapi__acceptKeys',
-                     'brlapi__openConnection',
-                     'brlapi__closeConnection',
-                     'brlapi__getDisplaySize',
-                     'brlapi__enterTtyModeWithPath',
-                     'brlapi__leaveTtyMode',
-                     'brlapi__writeDots',
-                     'brlapi__readKey',
+                     '<@(libbrlapi_functions)',
           ],
           'message': 'Generating libbrlapi library loader',
           'process_outputs_as_sources': 1,
diff --git a/build/sanitizers/tsan_suppressions.cc b/build/sanitizers/tsan_suppressions.cc
index 09cf522..49e860d 100644
--- a/build/sanitizers/tsan_suppressions.cc
+++ b/build/sanitizers/tsan_suppressions.cc
@@ -169,10 +169,6 @@
 "race:PrepareTextureMailbox\n"
 "race:cc::LayerTreeHost::PaintLayerContents\n"
 
-// http://crbug.com/328804
-"race:v8::internal::Heap::SetStackLimits\n"
-"race:ScavengePointer\n"
-
 // http://crbug.com/328826
 "race:gLCDOrder\n"
 "race:gLCDOrientation\n"
diff --git a/build/secondary/testing/BUILD.gn b/build/secondary/testing/BUILD.gn
index 2cafa68..fc50637 100644
--- a/build/secondary/testing/BUILD.gn
+++ b/build/secondary/testing/BUILD.gn
@@ -7,5 +7,7 @@
     "gmock_mutant.h",  # gMock helpers
   ]
 
-  deps = [ "//base" ]
+  deps = [
+    "//base",
+  ]
 }
diff --git a/build/secondary/testing/gmock/BUILD.gn b/build/secondary/testing/gmock/BUILD.gn
index a0dbad7..4ec6224 100644
--- a/build/secondary/testing/gmock/BUILD.gn
+++ b/build/secondary/testing/gmock/BUILD.gn
@@ -24,6 +24,7 @@
     "include/gmock/internal/gmock-generated-internal-utils.h",
     "include/gmock/internal/gmock-internal-utils.h",
     "include/gmock/internal/gmock-port.h",
+
     #"src/gmock-all.cc",  # Not needed by our build.
     "src/gmock-cardinalities.cc",
     "src/gmock-internal-utils.cc",
@@ -44,6 +45,10 @@
 static_library("gmock_main") {
   # TODO http://crbug.com/412064 enable this flag all the time.
   testonly = !is_component_build
-  sources = [ "src/gmock_main.cc" ]
-  deps = [ ":gmock" ]
+  sources = [
+    "src/gmock_main.cc",
+  ]
+  deps = [
+    ":gmock",
+  ]
 }
diff --git a/build/secondary/testing/gtest/BUILD.gn b/build/secondary/testing/gtest/BUILD.gn
index f50afb6..96f4112 100644
--- a/build/secondary/testing/gtest/BUILD.gn
+++ b/build/secondary/testing/gtest/BUILD.gn
@@ -9,10 +9,10 @@
   ]
 
   defines = [
-
     # In order to allow regex matches in gtest to be shared between Windows
     # and other systems, we tell gtest to always use it's internal engine.
     "GTEST_HAS_POSIX_RE=0",
+
     # Chrome doesn't support / require C++11, yet.
     "GTEST_LANG_CXX11=0",
   ]
@@ -81,6 +81,7 @@
     "include/gtest/internal/gtest-string.h",
     "include/gtest/internal/gtest-tuple.h",
     "include/gtest/internal/gtest-type-util.h",
+
     #"gtest/src/gtest-all.cc",  # Not needed by our build.
     "src/gtest-death-test.cc",
     "src/gtest-filepath.cc",
@@ -115,6 +116,10 @@
 source_set("gtest_main") {
   # TODO http://crbug.com/412064 enable this flag all the time.
   testonly = !is_component_build
-  sources = [ "src/gtest_main.cc" ]
-  deps = [ ":gtest" ]
+  sources = [
+    "src/gtest_main.cc",
+  ]
+  deps = [
+    ":gtest",
+  ]
 }
diff --git a/build/secondary/third_party/android_tools/BUILD.gn b/build/secondary/third_party/android_tools/BUILD.gn
index 14e6c07..0df6545 100644
--- a/build/secondary/third_party/android_tools/BUILD.gn
+++ b/build/secondary/third_party/android_tools/BUILD.gn
@@ -11,7 +11,9 @@
 # This is the GN version of
 # //build/android/cpufeatures.gypi:cpufeatures
 source_set("cpu_features") {
-  sources = [ "ndk/sources/android/cpufeatures/cpu-features.c" ]
+  sources = [
+    "ndk/sources/android/cpufeatures/cpu-features.c",
+  ]
   public_configs = [ ":cpu_features_include" ]
 
   configs -= [ "//build/config/compiler:chromium_code" ]
@@ -27,27 +29,29 @@
 }
 
 android_java_prebuilt("android_support_v13_java") {
-  jar_path = "$android_sdk_root/extras/android/support/v13/android-support-v13.jar"
+  jar_path =
+      "$android_sdk_root/extras/android/support/v13/android-support-v13.jar"
 }
 
 android_resources("android_support_v7_appcompat_resources") {
   v14_verify_only = true
-  resource_dirs = [
-    "$android_sdk_root/extras/android/support/v7/appcompat/res"
-  ]
+  resource_dirs =
+      [ "$android_sdk_root/extras/android/support/v7/appcompat/res" ]
   custom_package = "android.support.v7.appcompat"
 }
 
 android_java_prebuilt("android_support_v7_appcompat_java") {
-  deps = [ ":android_support_v7_appcompat_resources" ]
-  jar_path = "$android_sdk_root/extras/android/support/v7/appcompat/libs/android-support-v7-appcompat.jar"
+  deps = [
+    ":android_support_v7_appcompat_resources",
+  ]
+  jar_path =
+      "$android_sdk_root/extras/android/support/v7/appcompat/libs/android-support-v7-appcompat.jar"
 }
 
 android_resources("android_support_v7_mediarouter_resources") {
   v14_verify_only = true
-  resource_dirs = [
-    "$android_sdk_root/extras/android/support/v7/mediarouter/res"
-  ]
+  resource_dirs =
+      [ "$android_sdk_root/extras/android/support/v7/mediarouter/res" ]
   deps = [
     ":android_support_v7_appcompat_resources",
   ]
@@ -59,5 +63,6 @@
     ":android_support_v7_mediarouter_resources",
     ":android_support_v7_appcompat_java",
   ]
-  jar_path = "$android_sdk_root/extras/android/support/v7/mediarouter/libs/android-support-v7-mediarouter.jar"
+  jar_path =
+      "$android_sdk_root/extras/android/support/v7/mediarouter/libs/android-support-v7-mediarouter.jar"
 }
diff --git a/build/secondary/third_party/cacheinvalidation/src/google/cacheinvalidation/BUILD.gn b/build/secondary/third_party/cacheinvalidation/src/google/cacheinvalidation/BUILD.gn
index 2dc1b99..3bbb844 100644
--- a/build/secondary/third_party/cacheinvalidation/src/google/cacheinvalidation/BUILD.gn
+++ b/build/secondary/third_party/cacheinvalidation/src/google/cacheinvalidation/BUILD.gn
@@ -25,4 +25,3 @@
 
   proto_out_dir = "google/cacheinvalidation"
 }
-
diff --git a/build/secondary/third_party/freetype/BUILD.gn b/build/secondary/third_party/freetype/BUILD.gn
index 2b96239..2181d87 100644
--- a/build/secondary/third_party/freetype/BUILD.gn
+++ b/build/secondary/third_party/freetype/BUILD.gn
@@ -39,9 +39,7 @@
     "DARWIN_NO_CARBON",
   ]
 
-  include_dirs = [
-    "build",
-  ]
+  include_dirs = [ "build" ]
 
   public_configs = [ ":freetype_config" ]
 
diff --git a/build/secondary/third_party/icu/BUILD.gn b/build/secondary/third_party/icu/BUILD.gn
index 865a5e4..b618673 100644
--- a/build/secondary/third_party/icu/BUILD.gn
+++ b/build/secondary/third_party/icu/BUILD.gn
@@ -224,9 +224,7 @@
     "source/i18n/zrule.cpp",
     "source/i18n/ztrans.cpp",
   ]
-  defines = [
-    "U_I18N_IMPLEMENTATION",
-  ]
+  defines = [ "U_I18N_IMPLEMENTATION" ]
   deps = [
     ":icuuc",
   ]
@@ -259,6 +257,7 @@
 
     cflags += [
       "-Wno-header-hygiene",
+
       # Looks like a real issue, see http://crbug.com/114660
       "-Wno-return-type-c-linkage",
     ]
@@ -439,9 +438,7 @@
     "source/common/uvectr64.cpp",
     "source/common/wintz.c",
   ]
-  defines = [
-    "U_COMMON_IMPLEMENTATION",
-  ]
+  defines = [ "U_COMMON_IMPLEMENTATION" ]
   deps = [
     ":icudata",
   ]
@@ -475,9 +472,13 @@
   } else {
     copy("icudata") {
       if (is_android) {
-        sources = [ "android/icudtl.dat" ]
+        sources = [
+          "android/icudtl.dat",
+        ]
       } else {
-        sources = [ "source/data/in/icudtl.dat" ]
+        sources = [
+          "source/data/in/icudtl.dat",
+        ]
       }
 
       outputs = [ "$root_out_dir/icudtl.dat" ]
@@ -487,7 +488,9 @@
   if (is_win) {
     # On Windows the target DLL is pre-built so just use a copy rule.
     copy("icudata") {
-      sources = [ "windows/icudt.dll" ]
+      sources = [
+        "windows/icudt.dll",
+      ]
       outputs = [ "$root_out_dir/icudt.dll" ]
     }
   } else {
@@ -497,11 +500,17 @@
       # TODO(GYP): Gyp has considerations here for QNX and for the host toolchain
       #  that have not been ported over.
       if (is_linux) {
-        sources = [ "linux/icudtl_dat.S" ]
+        sources = [
+          "linux/icudtl_dat.S",
+        ]
       } else if (is_mac) {
-        sources = [ "mac/icudtl_dat.S" ]
+        sources = [
+          "mac/icudtl_dat.S",
+        ]
       } else if (is_android) {
-        sources = [ "android/icudtl_dat.S" ]
+        sources = [
+          "android/icudtl_dat.S",
+        ]
       } else {
         assert(false, "No icu data for this platform")
       }
diff --git a/build/secondary/third_party/leveldatabase/BUILD.gn b/build/secondary/third_party/leveldatabase/BUILD.gn
index 3653a98..67cda92 100644
--- a/build/secondary/third_party/leveldatabase/BUILD.gn
+++ b/build/secondary/third_party/leveldatabase/BUILD.gn
@@ -70,6 +70,7 @@
     "src/include/leveldb/write_batch.h",
     "src/port/port.h",
     "src/port/port_example.h",
+
     #"src/port/port_posix.cc",  # We use the chromium port instead of this.
     #"src/port/port_posix.h",
     "src/table/block.cc",
@@ -205,7 +206,7 @@
 
   test("leveldb_crc32c_test") {
     sources = [
-      "src/util/crc32c_test.cc"
+      "src/util/crc32c_test.cc",
     ]
     configs -= [ "//build/config/compiler:chromium_code" ]
     configs += [ "//build/config/compiler:no_chromium_code" ]
diff --git a/build/secondary/third_party/libjpeg_turbo/BUILD.gn b/build/secondary/third_party/libjpeg_turbo/BUILD.gn
index 4dbca97..82472e7 100644
--- a/build/secondary/third_party/libjpeg_turbo/BUILD.gn
+++ b/build/secondary/third_party/libjpeg_turbo/BUILD.gn
@@ -10,106 +10,92 @@
 }
 
 if (cpu_arch == "x86" || cpu_arch == "x64") {
+  import("//third_party/yasm/yasm_assemble.gni")
 
-import("//third_party/yasm/yasm_assemble.gni")
+  yasm_assemble("simd_asm") {
+    defines = []
 
-yasm_assemble("simd_asm") {
-  defines = []
-
-  if (cpu_arch == "x86") {
-    sources = [
-      "simd/jccolmmx.asm",
-      "simd/jccolss2.asm",
-      "simd/jcgrammx.asm",
-      "simd/jcgrass2.asm",
-      "simd/jcqnt3dn.asm",
-      "simd/jcqntmmx.asm",
-      "simd/jcqnts2f.asm",
-      "simd/jcqnts2i.asm",
-      "simd/jcqntsse.asm",
-      "simd/jcsammmx.asm",
-      "simd/jcsamss2.asm",
-      "simd/jdcolmmx.asm",
-      "simd/jdcolss2.asm",
-      "simd/jdmermmx.asm",
-      "simd/jdmerss2.asm",
-      "simd/jdsammmx.asm",
-      "simd/jdsamss2.asm",
-      "simd/jf3dnflt.asm",
-      "simd/jfmmxfst.asm",
-      "simd/jfmmxint.asm",
-      "simd/jfss2fst.asm",
-      "simd/jfss2int.asm",
-      "simd/jfsseflt.asm",
-      "simd/ji3dnflt.asm",
-      "simd/jimmxfst.asm",
-      "simd/jimmxint.asm",
-      "simd/jimmxred.asm",
-      "simd/jiss2flt.asm",
-      "simd/jiss2fst.asm",
-      "simd/jiss2int.asm",
-      "simd/jiss2red.asm",
-      "simd/jisseflt.asm",
-      "simd/jsimdcpu.asm",
-    ]
-    defines += [
-      "__x86__",
-    ]
-  } else if (cpu_arch == "x64") {
-    sources = [
-      "simd/jccolss2-64.asm",
-      "simd/jcgrass2-64.asm",
-      "simd/jcqnts2f-64.asm",
-      "simd/jcqnts2i-64.asm",
-      "simd/jcsamss2-64.asm",
-      "simd/jdcolss2-64.asm",
-      "simd/jdmerss2-64.asm",
-      "simd/jdsamss2-64.asm",
-      "simd/jfss2fst-64.asm",
-      "simd/jfss2int-64.asm",
-      "simd/jfsseflt-64.asm",
-      "simd/jiss2flt-64.asm",
-      "simd/jiss2fst-64.asm",
-      "simd/jiss2int-64.asm",
-      "simd/jiss2red-64.asm",
-    ]
-    defines += [
-      "__x86_64__",
-    ]
-  }
-
-  if (is_win) {
-    defines += [
-      "MSVC",
-    ]
-    include_dirs = [ "win" ]
     if (cpu_arch == "x86") {
-      defines += [
-        "WIN32",
+      sources = [
+        "simd/jccolmmx.asm",
+        "simd/jccolss2.asm",
+        "simd/jcgrammx.asm",
+        "simd/jcgrass2.asm",
+        "simd/jcqnt3dn.asm",
+        "simd/jcqntmmx.asm",
+        "simd/jcqnts2f.asm",
+        "simd/jcqnts2i.asm",
+        "simd/jcqntsse.asm",
+        "simd/jcsammmx.asm",
+        "simd/jcsamss2.asm",
+        "simd/jdcolmmx.asm",
+        "simd/jdcolss2.asm",
+        "simd/jdmermmx.asm",
+        "simd/jdmerss2.asm",
+        "simd/jdsammmx.asm",
+        "simd/jdsamss2.asm",
+        "simd/jf3dnflt.asm",
+        "simd/jfmmxfst.asm",
+        "simd/jfmmxint.asm",
+        "simd/jfss2fst.asm",
+        "simd/jfss2int.asm",
+        "simd/jfsseflt.asm",
+        "simd/ji3dnflt.asm",
+        "simd/jimmxfst.asm",
+        "simd/jimmxint.asm",
+        "simd/jimmxred.asm",
+        "simd/jiss2flt.asm",
+        "simd/jiss2fst.asm",
+        "simd/jiss2int.asm",
+        "simd/jiss2red.asm",
+        "simd/jisseflt.asm",
+        "simd/jsimdcpu.asm",
       ]
-    } else {
-      defines += [
-        "WIN64",
+      defines += [ "__x86__" ]
+    } else if (cpu_arch == "x64") {
+      sources = [
+        "simd/jccolss2-64.asm",
+        "simd/jcgrass2-64.asm",
+        "simd/jcqnts2f-64.asm",
+        "simd/jcqnts2i-64.asm",
+        "simd/jcsamss2-64.asm",
+        "simd/jdcolss2-64.asm",
+        "simd/jdmerss2-64.asm",
+        "simd/jdsamss2-64.asm",
+        "simd/jfss2fst-64.asm",
+        "simd/jfss2int-64.asm",
+        "simd/jfsseflt-64.asm",
+        "simd/jiss2flt-64.asm",
+        "simd/jiss2fst-64.asm",
+        "simd/jiss2int-64.asm",
+        "simd/jiss2red-64.asm",
       ]
+      defines += [ "__x86_64__" ]
     }
-  } else if (is_mac) {
-    defines += [
-      "MACHO",
-    ]
-    include_dirs = [ "mac" ]
-  } else if (is_linux) {
-    defines += [
-      "ELF",
-    ]
-    include_dirs = [ "linux" ]
-  }
-}
 
+    if (is_win) {
+      defines += [ "MSVC" ]
+      include_dirs = [ "win" ]
+      if (cpu_arch == "x86") {
+        defines += [ "WIN32" ]
+      } else {
+        defines += [ "WIN64" ]
+      }
+    } else if (is_mac) {
+      defines += [ "MACHO" ]
+      include_dirs = [ "mac" ]
+    } else if (is_linux) {
+      defines += [ "ELF" ]
+      include_dirs = [ "linux" ]
+    }
+  }
 }
 
 source_set("simd") {
   if (cpu_arch == "x86") {
-    deps = [ ":simd_asm" ]
+    deps = [
+      ":simd_asm",
+    ]
     sources = [
       "simd/jsimd_i386.c",
     ]
@@ -117,7 +103,9 @@
       cflags = [ "/wd4245" ]
     }
   } else if (cpu_arch == "x64") {
-    deps = [ ":simd_asm" ]
+    deps = [
+      ":simd_asm",
+    ]
     sources = [
       "simd/jsimd_x86_64.c",
     ]
@@ -128,7 +116,9 @@
       "simd/jsimd_arm_neon.S",
     ]
   } else {
-    sources = [ "jsimd_none.c" ]
+    sources = [
+      "jsimd_none.c",
+    ]
   }
 }
 
@@ -212,7 +202,9 @@
   if (is_msan || is_linux) {
     sources += [ "jsimd_none.c" ]
   } else {
-    deps = [ ":simd" ]
+    deps = [
+      ":simd",
+    ]
   }
 
   # TODO(GYP): Compile the .asm files with YASM as GYP does.
diff --git a/build/secondary/third_party/libsrtp/BUILD.gn b/build/secondary/third_party/libsrtp/BUILD.gn
index b0e0a91..506d19f 100644
--- a/build/secondary/third_party/libsrtp/BUILD.gn
+++ b/build/secondary/third_party/libsrtp/BUILD.gn
@@ -38,6 +38,7 @@
     defines += [
       "INLINE=__inline",
       "HAVE_BYTESWAP_METHODS_H",
+
       # All Windows architectures are this way.
       "SIZEOF_UNSIGNED_LONG=4",
       "SIZEOF_UNSIGNED_LONG_LONG=8",
@@ -67,7 +68,10 @@
 
 if (use_system_libsrtp) {
   group("libsrtp") {
-    public_configs = [ ":libsrtp_config", ":system_libsrtp_config" ]
+    public_configs = [
+      ":libsrtp_config",
+      ":system_libsrtp_config",
+    ]
     libs = [ "-lsrtp" ]
   }
 } else {
@@ -118,7 +122,6 @@
       # sources
       "srtp/srtp/ekt.c",
       "srtp/srtp/srtp.c",
-
       "srtp/crypto/cipher/aes.c",
       "srtp/crypto/cipher/aes_cbc.c",
       "srtp/crypto/cipher/aes_icm.c",
@@ -154,7 +157,9 @@
     executable("rdbx_driver") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/include/getopt_s.h",
         "srtp/test/getopt_s.c",
@@ -165,7 +170,9 @@
     executable("srtp_driver") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/include/getopt_s.h",
         "srtp/include/srtp_priv.h",
@@ -177,7 +184,9 @@
     executable("roc_driver") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/crypto/include/rdbx.h",
         "srtp/include/ut_sim.h",
@@ -188,7 +197,9 @@
     executable("replay_driver") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/crypto/include/rdbx.h",
         "srtp/include/ut_sim.h",
@@ -199,7 +210,9 @@
     executable("rtpw") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/include/getopt_s.h",
         "srtp/include/rtp.h",
@@ -220,7 +233,9 @@
     executable("srtp_test_cipher_driver") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/crypto/test/cipher_driver.c",
       ]
@@ -229,7 +244,9 @@
     executable("srtp_test_datatypes_driver") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/crypto/test/datatypes_driver.c",
       ]
@@ -238,7 +255,9 @@
     executable("srtp_test_stat_driver") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/crypto/test/stat_driver.c",
       ]
@@ -247,7 +266,9 @@
     executable("srtp_test_sha1_driver") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/crypto/test/sha1_driver.c",
       ]
@@ -256,7 +277,9 @@
     executable("srtp_test_kernel_driver") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/crypto/test/kernel_driver.c",
       ]
@@ -265,7 +288,9 @@
     executable("srtp_test_aes_calc") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/crypto/test/aes_calc.c",
       ]
@@ -274,7 +299,9 @@
     executable("srtp_test_rand_gen") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/crypto/test/rand_gen.c",
       ]
@@ -283,7 +310,9 @@
     executable("srtp_test_env") {
       configs -= [ "//build/config/compiler:chromium_code" ]
       configs += [ "//build/config/compiler:no_chromium_code" ]
-      deps = [ ":libsrtp" ]
+      deps = [
+        ":libsrtp",
+      ]
       sources = [
         "srtp/crypto/test/env.c",
       ]
diff --git a/build/secondary/third_party/nss/BUILD.gn b/build/secondary/third_party/nss/BUILD.gn
index a285ca1..768a85d 100644
--- a/build/secondary/third_party/nss/BUILD.gn
+++ b/build/secondary/third_party/nss/BUILD.gn
@@ -14,7 +14,10 @@
   # platform and build config.
   pkg_config("system_nss_no_ssl_config") {
     packages = [ "nss" ]
-    extra_args = [ "-v", "-lssl3" ]
+    extra_args = [
+      "-v",
+      "-lssl3",
+    ]
   }
 } else {
   include_nss_root_certs = is_ios
@@ -207,9 +210,7 @@
 
     public_configs = [ ":nspr_config" ]
 
-    configs -= [
-      "//build/config/compiler:chromium_code",
-    ]
+    configs -= [ "//build/config/compiler:chromium_code" ]
     if (is_win) {
       configs -= [
         "//build/config/win:unicode",  # Requires 8-bit mode.
@@ -224,9 +225,7 @@
       "FORCE_PR_LOG",
     ]
 
-    include_dirs = [
-      "nspr/pr/include/private",
-    ]
+    include_dirs = [ "nspr/pr/include/private" ]
 
     if (is_win) {
       cflags = [
@@ -314,9 +313,7 @@
     }
 
     if (is_mac) {
-      defines += [
-        "HAVE_CRT_EXTERNS_H",
-      ]
+      defines += [ "HAVE_CRT_EXTERNS_H" ]
       libs = [
         "CoreFoundation.framework",
         "CoreServices.framework",
@@ -328,14 +325,16 @@
         # nspr uses a bunch of deprecated functions (NSLinkModule etc) in
         # prlink.c on mac.
         "-Wno-deprecated-declarations",
+
         # nspr passes "const char*" through "void*".
         "-Wno-incompatible-pointer-types",
+
         # nspr passes "int*" through "unsigned int*".
         "-Wno-pointer-sign",
-
-        "-Wno-incompatible-pointer-types",
-        "-Wno-pointer-sign",
       ]
+
+      # nspr uses assert(!"foo") instead of assert(false && "foo").
+      configs -= [ "//build/config/clang:extra_warnings" ]
     }
   }
 
@@ -348,7 +347,9 @@
       "nss/lib/nss/nssver.c",
     ]
 
-    public_deps = [ ":nss_static" ]
+    public_deps = [
+      ":nss_static",
+    ]
 
     if (include_nss_root_certs) {
       public_deps += [ ":nssckbi" ]
@@ -359,9 +360,8 @@
         ldflags = [ "-all_load" ]
       } else if (is_win) {
         # Pass the def file to the linker.
-        ldflags = [
-          "/DEF:" + rebase_path("nss/exports_win.def", root_build_dir)
-        ]
+        ldflags =
+            [ "/DEF:" + rebase_path("nss/exports_win.def", root_build_dir) ]
       }
     }
   }
@@ -429,14 +429,10 @@
       "nss/lib/ckfw/wrap.c",
     ]
 
-    configs -= [
-      "//build/config/compiler:chromium_code"
-    ]
+    configs -= [ "//build/config/compiler:chromium_code" ]
 
     if (is_win) {
-      configs -= [
-        "//build/config/win:unicode",  # Requires 8-bit mode.
-      ]
+      configs -= [ "//build/config/win:unicode" ]  # Requires 8-bit mode.
     }
     configs += [ "//build/config/compiler:no_chromium_code" ]
 
@@ -870,22 +866,21 @@
       # NOTE: mpi_arm.c can be used directly on Linux. mpi_arm.c will need
       # to be excluded conditionally if we start to build NSS on Linux.
       "nss/lib/freebl/mpi/mpi_arm.c",
+
       # primes.c is included by mpprime.c.
       "nss/lib/freebl/mpi/primes.c",
+
       # unix_rand.c and win_rand.c are included by sysrand.c.
       "nss/lib/freebl/unix_rand.c",
       "nss/lib/freebl/win_rand.c",
+
       # debug_module.c is included by pk11load.c.
       "nss/lib/pk11wrap/debug_module.c",
     ]
 
-    configs -= [
-      "//build/config/compiler:chromium_code"
-    ]
+    configs -= [ "//build/config/compiler:chromium_code" ]
     if (is_win) {
-      configs -= [
-        "//build/config/win:unicode",  # Requires 8-bit mode.
-      ]
+      configs -= [ "//build/config/win:unicode" ]  # Requires 8-bit mode.
     }
     configs += [ "//build/config/compiler:no_chromium_code" ]
     public_configs = [ ":nss_static_config" ]
@@ -1112,9 +1107,7 @@
     }
 
     if (is_mac || is_ios) {
-      sources -= [
-        "nss/lib/freebl/mpi/mpi_amd64.c",
-      ]
+      sources -= [ "nss/lib/freebl/mpi/mpi_amd64.c" ]
       cflags += [
         "-include",
         rebase_path("//third_party/nss/nss/lib/freebl/nss_build_config_mac.h",
@@ -1159,10 +1152,7 @@
           "USE_HW_AES",
           "INTEL_GCM",
         ]
-        sources -= [
-          "nss/lib/freebl/mpi/mpi_amd64.c",
-        ]
-
+        sources -= [ "nss/lib/freebl/mpi/mpi_amd64.c" ]
       } else if (cpu_arch == "x64") {
         sources -= [
           "nss/lib/freebl/intel-aes-x86-masm.asm",
@@ -1191,12 +1181,16 @@
       cflags += [
         # nss doesn"t explicitly cast between different enum types.
         "-Wno-conversion",
+
         # nss passes "const char*" through "void*".
         "-Wno-incompatible-pointer-types",
+
         # nss prefers `a && b || c` over `(a && b) || c`.
         "-Wno-logical-op-parentheses",
+
         # nss doesn"t use exhaustive switches on enums
         "-Wno-switch",
+
         # nss has some `unsigned < 0` checks.
         "-Wno-tautological-compare",
       ]
@@ -1215,4 +1209,3 @@
     }
   }
 }  # Windows/Mac/iOS.
-
diff --git a/build/secondary/third_party/openmax_dl/dl/BUILD.gn b/build/secondary/third_party/openmax_dl/dl/BUILD.gn
index 158e3f8..40c1513 100644
--- a/build/secondary/third_party/openmax_dl/dl/BUILD.gn
+++ b/build/secondary/third_party/openmax_dl/dl/BUILD.gn
@@ -19,8 +19,7 @@
       # Enable run-time NEON selection.
       defines = [ "DL_ARM_NEON_OPTIONAL" ]
     }
-  }
-  else if (cpu_arch == "arm64") {
+  } else if (cpu_arch == "arm64") {
     # Enable build-time NEON selection.
     defines = [ "DL_ARM_NEON" ]
   }
@@ -40,9 +39,7 @@
   defines = []
 
   if (openmax_big_float_fft) {
-    defines += [
-      "BIG_FFT_TABLE",
-    ]
+    defines += [ "BIG_FFT_TABLE" ]
   }
 
   if (cpu_arch == "arm" || cpu_arch == "arm64") {
@@ -63,14 +60,10 @@
 
   if (cpu_arch == "arm") {
     if (arm_use_neon || is_android) {
-      deps += [
-        ":openmax_dl_armv7"
-      ]
+      deps += [ ":openmax_dl_armv7" ]
     }
     configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
-    cflags += [
-      "-mfpu=neon"
-    ]
+    cflags += [ "-mfpu=neon" ]
 
     if (arm_use_neon || is_android) {
       sources += [
@@ -95,10 +88,12 @@
         "sp/src/arm/neon/armSP_FFT_CToC_SC32_Radix8_fs_unsafe_s.S",
         "sp/src/arm/neon/omxSP_FFTFwd_CToC_SC32_Sfs_s.S",
         "sp/src/arm/neon/omxSP_FFTInv_CToC_SC32_Sfs_s.S",
+
         # Real 32-bit fixed-point FFT
         "sp/src/arm/neon/armSP_FFTInv_CCSToR_S32_preTwiddleRadix2_unsafe_s.S",
         "sp/src/arm/neon/omxSP_FFTFwd_RToCCS_S32_Sfs_s.S",
         "sp/src/arm/neon/omxSP_FFTInv_CCSToR_S32_Sfs_s.S",
+
         # Complex 16-bit fixed-point FFT
         "sp/src/arm/neon/armSP_FFTInv_CCSToR_S16_preTwiddleRadix2_unsafe_s.S",
         "sp/src/arm/neon/armSP_FFT_CToC_SC16_Radix2_fs_unsafe_s.S",
@@ -111,11 +106,13 @@
         "sp/src/arm/neon/armSP_FFT_CToC_SC16_Radix8_fs_unsafe_s.S",
         "sp/src/arm/neon/omxSP_FFTFwd_CToC_SC16_Sfs_s.S",
         "sp/src/arm/neon/omxSP_FFTInv_CToC_SC16_Sfs_s.S",
+
         # Real 16-bit fixed-point FFT
         "sp/src/arm/neon/omxSP_FFTFwd_RToCCS_S16_Sfs_s.S",
         "sp/src/arm/neon/omxSP_FFTInv_CCSToR_S16_Sfs_s.S",
         "sp/src/arm/neon/omxSP_FFTFwd_RToCCS_S16S32_Sfs_s.S",
         "sp/src/arm/neon/omxSP_FFTInv_CCSToR_S32S16_Sfs_s.S",
+
         # Complex floating-point FFT
         "sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix2_fs_unsafe_s.S",
         "sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix2_ls_unsafe_s.S",
@@ -126,6 +123,7 @@
         "sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix8_fs_unsafe_s.S",
         "sp/src/arm/neon/omxSP_FFTFwd_CToC_FC32_Sfs_s.S",
         "sp/src/arm/neon/omxSP_FFTInv_CToC_FC32_Sfs_s.S",
+
         # Real floating-point FFT
         "sp/src/arm/neon/armSP_FFTInv_CCSToR_F32_preTwiddleRadix2_unsafe_s.S",
         "sp/src/arm/neon/omxSP_FFTFwd_RToCCS_F32_Sfs_s.S",
@@ -135,9 +133,7 @@
   }
 
   if (cpu_arch == "ia32" || cpu_arch == "x64") {
-    cflags += [
-      "-msse2"
-    ]
+    cflags += [ "-msse2" ]
 
     sources += [
       # Real 32-bit floating-point FFT.
@@ -185,6 +181,7 @@
       "sp/src/arm/arm64/armSP_FFT_CToC_FC32_Radix8_fs_s.S",
       "sp/src/arm/arm64/omxSP_FFTInv_CToC_FC32.c",
       "sp/src/arm/arm64/omxSP_FFTFwd_CToC_FC32.c",
+
       # Real floating-point FFT
       "sp/src/arm/arm64/armSP_FFTInv_CCSToR_F32_preTwiddleRadix2_s.S",
       "sp/src/arm/arm64/omxSP_FFTFwd_RToCCS_F32.c",
@@ -193,12 +190,8 @@
     ]
   }
   if (cpu_arch == "mipsel") {
-    cflags += [
-      "-std=c99",
-    ]
-    sources -= [
-      "sp/src/armSP_FFT_F32TwiddleTable.c",
-    ]
+    cflags += [ "-std=c99" ]
+    sources -= [ "sp/src/armSP_FFT_F32TwiddleTable.c" ]
 
     sources += [
       "sp/api/mipsSP.h",
@@ -236,6 +229,7 @@
       "sp/src/arm/armv7/armSP_FFT_CToC_FC32_Radix8_fs_unsafe_s.S",
       "sp/src/arm/armv7/omxSP_FFTInv_CToC_FC32_Sfs_s.S",
       "sp/src/arm/armv7/omxSP_FFTFwd_CToC_FC32_Sfs_s.S",
+
       # Real floating-point FFT
       "sp/src/arm/armv7/armSP_FFTInv_CCSToR_F32_preTwiddleRadix2_unsafe_s.S",
       "sp/src/arm/armv7/omxSP_FFTFwd_RToCCS_F32_Sfs_s.S",
@@ -243,8 +237,11 @@
     ]
     if (is_android) {
       # We only do run-time NEON detection on Android.
-      deps = [ "//third_party/android_tools:cpu_features" ]
+      deps = [
+        "//third_party/android_tools:cpu_features",
+      ]
       libs = [ "log" ]
+
       # Detection routine
       sources += [ "sp/src/arm/detect.c" ]
     }
diff --git a/build/secondary/third_party/sfntly/BUILD.gn b/build/secondary/third_party/sfntly/BUILD.gn
index 74107af..a4dbd23 100644
--- a/build/secondary/third_party/sfntly/BUILD.gn
+++ b/build/secondary/third_party/sfntly/BUILD.gn
@@ -125,5 +125,7 @@
   configs -= [ "//build/config/compiler:chromium_code" ]
   configs += [ "//build/config/compiler:no_chromium_code" ]
 
-  deps = [ "//third_party/icu:icuuc" ]
+  deps = [
+    "//third_party/icu:icuuc",
+  ]
 }
diff --git a/build/secondary/tools/grit/BUILD.gn b/build/secondary/tools/grit/BUILD.gn
index f954537..dee3d06 100644
--- a/build/secondary/tools/grit/BUILD.gn
+++ b/build/secondary/tools/grit/BUILD.gn
@@ -9,7 +9,9 @@
   depfile = "$target_out_dir/grit_sources.d"
   script = "//build/secondary/tools/grit/stamp_grit_sources.py"
 
-  inputs = [ "grit.py" ]
+  inputs = [
+    "grit.py",
+  ]
 
   # Note that we can't call this "grit_sources.stamp" because that file is
   # implicitly created by GN for script actions.
@@ -18,6 +20,6 @@
   args = [
     rebase_path("//tools/grit", root_build_dir),
     rebase_path(outputs[0], root_build_dir),
-    rebase_path(depfile, root_build_dir)
+    rebase_path(depfile, root_build_dir),
   ]
 }
diff --git a/build/secondary/tools/grit/grit_rule.gni b/build/secondary/tools/grit/grit_rule.gni
index 8726927..9010abc 100644
--- a/build/secondary/tools/grit/grit_rule.gni
+++ b/build/secondary/tools/grit/grit_rule.gni
@@ -71,130 +71,215 @@
 #     # You can also put deps here if the grit source depends on generated
 #     # files.
 #   }
-import ("//build/config/crypto.gni")
-import ("//build/config/features.gni")
-import ("//build/config/ui.gni")
+import("//build/config/crypto.gni")
+import("//build/config/features.gni")
+import("//build/config/ui.gni")
 
 grit_defines = []
 
 # Mac and iOS want Title Case strings.
 use_titlecase_in_grd_files = is_mac || is_ios
 if (use_titlecase_in_grd_files) {
-  grit_defines += [ "-D", "use_titlecase" ]
+  grit_defines += [
+    "-D",
+    "use_titlecase",
+  ]
 }
 
 if (is_chrome_branded) {
   grit_defines += [
-    "-D", "_google_chrome",
-    "-E", "CHROMIUM_BUILD=google_chrome",
+    "-D",
+    "_google_chrome",
+    "-E",
+    "CHROMIUM_BUILD=google_chrome",
   ]
 } else {
   grit_defines += [
-    "-D", "_chromium",
-    "-E", "CHROMIUM_BUILD=chromium",
+    "-D",
+    "_chromium",
+    "-E",
+    "CHROMIUM_BUILD=chromium",
   ]
 }
 
 if (is_chromeos) {
   grit_defines += [
-    "-D", "chromeos",
-    "-D", "scale_factors=2x"
+    "-D",
+    "chromeos",
+    "-D",
+    "scale_factors=2x",
   ]
 }
 
 if (is_desktop_linux) {
-  grit_defines += [ "-D", "desktop_linux" ]
+  grit_defines += [
+    "-D",
+    "desktop_linux",
+  ]
 }
 
 if (toolkit_views) {
-  grit_defines += [ "-D", "toolkit_views" ]
+  grit_defines += [
+    "-D",
+    "toolkit_views",
+  ]
 }
 
 if (use_aura) {
-  grit_defines += [ "-D", "use_aura" ]
+  grit_defines += [
+    "-D",
+    "use_aura",
+  ]
 }
 
 if (use_ash) {
-  grit_defines += [ "-D", "use_ash" ]
+  grit_defines += [
+    "-D",
+    "use_ash",
+  ]
 }
 
 if (use_nss_certs) {
-  grit_defines += [ "-D", "use_nss" ]
+  grit_defines += [
+    "-D",
+    "use_nss",
+  ]
 }
 
 if (use_ozone) {
-  grit_defines += [ "-D", "use_ozone" ]
+  grit_defines += [
+    "-D",
+    "use_ozone",
+  ]
 }
 
 if (enable_image_loader_extension) {
-  grit_defines += [ "-D", "image_loader_extension" ]
+  grit_defines += [
+    "-D",
+    "image_loader_extension",
+  ]
 }
 
 if (enable_remoting) {
-  grit_defines += [ "-D", "remoting" ]
+  grit_defines += [
+    "-D",
+    "remoting",
+  ]
 }
 
 if (is_android) {
   grit_defines += [
-    "-t", "android",
-    "-E", "ANDROID_JAVA_TAGGED_ONLY=true",
+    "-t",
+    "android",
+    "-E",
+    "ANDROID_JAVA_TAGGED_ONLY=true",
   ]
 }
 
 if (is_mac || is_ios) {
-  grit_defines += [ "-D", "scale_factors=2x" ]
+  grit_defines += [
+    "-D",
+    "scale_factors=2x",
+  ]
 }
 
 if (is_ios) {
   grit_defines += [
-    "-t", "ios",
+    "-t",
+    "ios",
+
     # iOS uses a whitelist to filter resources.
-    "-w", rebase_path("//build/ios/grit_whitelist.txt", root_build_dir),
+    "-w",
+    rebase_path("//build/ios/grit_whitelist.txt", root_build_dir),
   ]
 }
 
 if (enable_extensions) {
-  grit_defines += [ "-D", "enable_extensions" ]
+  grit_defines += [
+    "-D",
+    "enable_extensions",
+  ]
 }
 if (enable_plugins) {
-  grit_defines += [ "-D", "enable_plugins" ]
+  grit_defines += [
+    "-D",
+    "enable_plugins",
+  ]
 }
 if (enable_basic_printing || enable_print_preview) {
-  grit_defines += [ "-D", "enable_printing" ]
+  grit_defines += [
+    "-D",
+    "enable_printing",
+  ]
   if (enable_print_preview) {
-    grit_defines += [ "-D", "enable_print_preview" ]
+    grit_defines += [
+      "-D",
+      "enable_print_preview",
+    ]
   }
 }
 if (enable_themes) {
-  grit_defines += [ "-D", "enable_themes" ]
+  grit_defines += [
+    "-D",
+    "enable_themes",
+  ]
 }
 if (enable_app_list) {
-  grit_defines += [ "-D", "enable_app_list" ]
+  grit_defines += [
+    "-D",
+    "enable_app_list",
+  ]
 }
 if (enable_settings_app) {
-  grit_defines += [ "-D", "enable_settings_app" ]
+  grit_defines += [
+    "-D",
+    "enable_settings_app",
+  ]
 }
 if (enable_google_now) {
-  grit_defines += [ "-D", "enable_google_now" ]
+  grit_defines += [
+    "-D",
+    "enable_google_now",
+  ]
 }
+
 # Note: use_concatenated_impulse_responses is omitted. It is never used and
 # should probably be removed from GYP build.
 if (enable_webrtc) {
-  grit_defines += [ "-D", "enable_webrtc" ]
+  grit_defines += [
+    "-D",
+    "enable_webrtc",
+  ]
 }
-# Note: enable_hangout_services_extension is omitted. It is never set in the
-# GYP build. Need to figure out what it's for.
+if (enable_hangout_services_extension) {
+  grit_defines += [
+    "-D",
+    "enable_hangout_services_extension",
+  ]
+}
 if (enable_task_manager) {
-  grit_defines += [ "-D", "enable_task_manager" ]
+  grit_defines += [
+    "-D",
+    "enable_task_manager",
+  ]
 }
 if (enable_notifications) {
-  grit_defines += [ "-D", "enable_notifications" ]
+  grit_defines += [
+    "-D",
+    "enable_notifications",
+  ]
 }
 if (enable_wifi_bootstrapping) {
-  grit_defines += [ "-D", "enable_wifi_bootstrapping" ]
+  grit_defines += [
+    "-D",
+    "enable_wifi_bootstrapping",
+  ]
 }
 if (enable_service_discovery) {
-  grit_defines += [ "-D", "enable_service_discovery" ]
+  grit_defines += [
+    "-D",
+    "enable_service_discovery",
+  ]
 }
 
 grit_resource_id_file = "//tools/gritsettings/resource_ids"
@@ -248,12 +333,10 @@
       "$target_out_dir/${grit_output_name}_expected_outputs.txt"
   write_file(asserted_list_file,
              rebase_path(invoker.outputs, root_build_dir, output_dir))
-  assert_files_flags += [
-    "--assert-file-list=" + rebase_path(asserted_list_file, root_build_dir),
-  ]
-  grit_outputs = get_path_info(
-      rebase_path(invoker.outputs, ".", output_dir),
-      "abspath")
+  assert_files_flags += [ "--assert-file-list=" +
+                          rebase_path(asserted_list_file, root_build_dir) ]
+  grit_outputs =
+      get_path_info(rebase_path(invoker.outputs, ".", output_dir), "abspath")
 
   # The config and the action below get this visibility son only the generated
   # source set can depend on them. The variable "target_name" will get
@@ -281,21 +364,32 @@
     depfile = "$output_dir/${grit_output_name}.d"
 
     args = [
-      "-i", source_path, "build",
+      "-i",
+      source_path,
+      "build",
     ]
     if (resource_ids != "") {
-      args += [ "-f", resource_ids ]
+      args += [
+        "-f",
+        resource_ids,
+      ]
     }
     args += [
-      "-o", rebased_output_dir,
-      "--depdir", ".",
-      "--depfile", rebase_path(depfile, root_build_dir),
-    ] + grit_defines
+              "-o",
+              rebased_output_dir,
+              "--depdir",
+              ".",
+              "--depfile",
+              rebase_path(depfile, root_build_dir),
+            ] + grit_defines
 
     # Add extra defines with -D flags.
     if (defined(invoker.defines)) {
-      foreach (i, invoker.defines) {
-        args += [ "-D", i ]
+      foreach(i, invoker.defines) {
+        args += [
+          "-D",
+          i,
+        ]
       }
     }
 
@@ -312,7 +406,9 @@
       visibility = target_visibility + invoker.visibility
     }
 
-    deps = [ "//tools/grit:grit_sources" ]
+    deps = [
+      "//tools/grit:grit_sources",
+    ]
     if (defined(invoker.deps)) {
       deps += invoker.deps
     }
@@ -327,7 +423,9 @@
 
     # Deps set on the template invocation will go on the grit script running
     # target rather than this library.
-    deps = [ ":$grit_custom_target" ]
+    deps = [
+      ":$grit_custom_target",
+    ]
     public_configs = [ ":$grit_config" ]
 
     if (defined(invoker.public_configs)) {
diff --git a/build/toolchain/android/BUILD.gn b/build/toolchain/android/BUILD.gn
index 9ae2218..e074333 100644
--- a/build/toolchain/android/BUILD.gn
+++ b/build/toolchain/android/BUILD.gn
@@ -3,6 +3,7 @@
 # found in the LICENSE file.
 
 import("//build/config/sysroot.gni")  # Imports android/config.gni.
+import("//build/toolchain/ccache.gni")
 import("//build/toolchain/clang.gni")
 import("//build/toolchain/goma.gni")
 import("//build/toolchain/gcc_toolchain.gni")
@@ -23,8 +24,8 @@
   gcc_toolchain(target_name) {
     # Make our manually injected libs relative to the build dir.
     android_ndk_lib = rebase_path(
-      invoker.android_ndk_sysroot + "/" + invoker.android_ndk_lib_dir,
-      root_build_dir)
+            invoker.android_ndk_sysroot + "/" + invoker.android_ndk_lib_dir,
+            root_build_dir)
 
     libs_section_prefix = "$android_ndk_lib/crtbegin_dynamic.o"
     libs_section_postfix = "$android_ndk_lib/crtend_android.o"
@@ -36,13 +37,16 @@
     tool_prefix = rebase_path(invoker.tool_prefix, root_build_dir)
 
     if (use_goma) {
-      goma_prefix = "$goma_dir/gomacc "
+      assert(!use_ccache, "Goma and ccache can't be used together.")
+      compiler_prefix = "$goma_dir/gomacc "
+    } else if (use_ccache) {
+      compiler_prefix = "ccache "
     } else {
-      goma_prefix = ""
+      compiler_prefix = ""
     }
 
-    cc = goma_prefix + tool_prefix + "gcc"
-    cxx = goma_prefix + tool_prefix + "g++"
+    cc = compiler_prefix + tool_prefix + "gcc"
+    cxx = compiler_prefix + tool_prefix + "g++"
     ar = tool_prefix + "ar"
     ld = cxx
 
@@ -59,8 +63,10 @@
     android_strip = "${tool_prefix}strip"
 
     mkdir_command = "mkdir -p lib.stripped"
-    strip_command = "$android_strip --strip-unneeded -o $temp_stripped_soname $soname"
-    replace_command = "if ! cmp -s $temp_stripped_soname $stripped_soname; then mv $temp_stripped_soname $stripped_soname; fi"
+    strip_command =
+        "$android_strip --strip-unneeded -o $temp_stripped_soname $soname"
+    replace_command =
+        "if ! cmp -s $temp_stripped_soname $stripped_soname; then mv $temp_stripped_soname $stripped_soname; fi"
     postsolink = "$mkdir_command && $strip_command && $replace_command"
     solink_outputs = [ stripped_soname ]
 
diff --git a/build/toolchain/ccache.gni b/build/toolchain/ccache.gni
new file mode 100644
index 0000000..806e079
--- /dev/null
+++ b/build/toolchain/ccache.gni
@@ -0,0 +1,25 @@
+# Copyright (c) 2014 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.
+
+# Defines the configuration of ccache - a c/c++ compiler cache which can
+# greatly reduce recompilation times.
+#
+# TIPS:
+#
+# Set clang_use_chrome_plugins=false if using ccache 3.1.9 or earlier, since
+# these versions don't support -Xclang.  (3.1.10 and later will silently
+# ignore -Xclang, so it doesn't matter if you disable clang_use_chrome_plugins
+# or not).
+#
+# Use ccache 3.2 or later to avoid clang unused argument warnings:
+# https://bugzilla.samba.org/show_bug.cgi?id=8118
+#
+# To avoid -Wparentheses-equality clang warnings, at some cost in terms of
+# speed, you can do:
+# export CCACHE_CPP2=yes
+
+declare_args() {
+  # Set to true to enable ccache.  Probably doesn't work on windows.
+  use_ccache = false
+}
diff --git a/build/toolchain/gcc_toolchain.gni b/build/toolchain/gcc_toolchain.gni
index e415459..4a4ef45 100644
--- a/build/toolchain/gcc_toolchain.gni
+++ b/build/toolchain/gcc_toolchain.gni
@@ -84,33 +84,33 @@
 
     tool("cc") {
       depfile = "{{output}}.d"
-      command = "$cc -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_c}} -c {{source}} -o {{output}}"
+      command =
+          "$cc -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_c}} -c {{source}} -o {{output}}"
       depsformat = "gcc"
       description = "CC {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o" ]
     }
 
     tool("cxx") {
       depfile = "{{output}}.d"
-      command = "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_cc}} -c {{source}} -o {{output}}"
+      command =
+          "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_cc}} -c {{source}} -o {{output}}"
       depsformat = "gcc"
       description = "CXX {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o" ]
     }
 
     tool("asm") {
       # For GCC we can just use the C compiler to compile assembly.
       depfile = "{{output}}.d"
-      command = "$cc -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_c}} -c {{source}} -o {{output}}"
+      command =
+          "$cc -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_c}} -c {{source}} -o {{output}}"
       depsformat = "gcc"
       description = "ASM {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o" ]
     }
 
     tool("alink") {
@@ -118,9 +118,8 @@
       command = "rm -f {{output}} && $ar rcs {{output}} @$rspfile"
       description = "AR {{output}}"
       rspfile_content = "{{inputs}}"
-      outputs = [
-        "{{target_out_dir}}/{{target_output_name}}{{output_extension}}"
-      ]
+      outputs =
+          [ "{{target_out_dir}}/{{target_output_name}}{{output_extension}}" ]
       default_output_extension = ".a"
       output_prefix = "lib"
     }
@@ -136,15 +135,19 @@
       # existing .TOC file, overwrite it, otherwise, don't change it.
       tocfile = sofile + ".TOC"
       temporary_tocname = sofile + ".tmp"
-      link_command = "$ld -shared {{ldflags}} -o $sofile -Wl,-soname=$soname @$rspfile"
-      toc_command = "{ readelf -d $sofile | grep SONAME ; nm -gD -f p $soname | cut -f1-2 -d' '; } > $temporary_tocname"
-      replace_command = "if ! cmp -s $temporary_tocname $tocfile; then mv $temporary_tocname $tocfile; fi"
+      link_command =
+          "$ld -shared {{ldflags}} -o $sofile -Wl,-soname=$soname @$rspfile"
+      toc_command =
+          "{ readelf -d $sofile | grep SONAME ; nm -gD -f p $soname | cut -f1-2 -d' '; } > $temporary_tocname"
+      replace_command =
+          "if ! cmp -s $temporary_tocname $tocfile; then mv $temporary_tocname $tocfile; fi"
 
       command = "$link_command && $toc_command && $replace_command"
       if (defined(invoker.postsolink)) {
         command += " && " + invoker.postsolink
       }
-      rspfile_content = "-Wl,--whole-archive {{inputs}} {{solibs}} -Wl,--no-whole-archive $solink_libs_section_prefix {{libs}} $solink_libs_section_postfix"
+      rspfile_content =
+          "-Wl,--whole-archive {{inputs}} {{solibs}} -Wl,--no-whole-archive $solink_libs_section_prefix {{libs}} $solink_libs_section_postfix"
 
       description = "SOLINK $sofile"
 
@@ -176,7 +179,8 @@
     tool("link") {
       outfile = "{{root_out_dir}}/{{target_output_name}}{{output_extension}}"
       rspfile = "$outfile.rsp"
-      command = "$ld {{ldflags}} -o $outfile -Wl,--start-group @$rspfile {{solibs}} -Wl,--end-group $libs_section_prefix {{libs}} $libs_section_postfix"
+      command =
+          "$ld {{ldflags}} -o $outfile -Wl,--start-group @$rspfile {{solibs}} -Wl,--end-group $libs_section_prefix {{libs}} $libs_section_postfix"
       if (defined(invoker.postlink)) {
         command += " && " + invoker.postlink
       }
@@ -194,7 +198,8 @@
     }
 
     tool("copy") {
-      command = "ln -f {{source}} {{output}} 2>/dev/null || (rm -rf {{output}} && cp -af {{source}} {{output}})"
+      command =
+          "ln -f {{source}} {{output}} 2>/dev/null || (rm -rf {{output}} && cp -af {{source}} {{output}})"
       description = "COPY {{source}} {{output}}"
     }
 
diff --git a/build/toolchain/linux/BUILD.gn b/build/toolchain/linux/BUILD.gn
index a98ea53..1d17772 100644
--- a/build/toolchain/linux/BUILD.gn
+++ b/build/toolchain/linux/BUILD.gn
@@ -3,19 +3,23 @@
 # found in the LICENSE file.
 
 import("//build/config/sysroot.gni")
+import("//build/toolchain/ccache.gni")
 import("//build/toolchain/clang.gni")
 import("//build/toolchain/gcc_toolchain.gni")
 import("//build/toolchain/goma.gni")
 
 if (use_goma) {
-  goma_prefix = "$goma_dir/gomacc "
+  assert(!use_ccache, "Goma and ccache can't be used together.")
+  compiler_prefix = "$goma_dir/gomacc "
+} else if (use_ccache) {
+  compiler_prefix = "ccache "
 } else {
-  goma_prefix = ""
+  compiler_prefix = ""
 }
 
 gcc_toolchain("arm") {
-  cc = "${goma_prefix}arm-linux-gnueabi-gcc"
-  cxx = "${goma_prefix}arm-linux-gnueabi-g++"
+  cc = "${compiler_prefix}arm-linux-gnueabi-gcc"
+  cxx = "${compiler_prefix}arm-linux-gnueabi-g++"
 
   ar = "arm-linux-gnueabi-ar"
   ld = cxx
@@ -33,8 +37,8 @@
     prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin",
                          root_build_dir)
   }
-  cc = "${goma_prefix}$prefix/clang"
-  cxx = "${goma_prefix}$prefix/clang++"
+  cc = "${compiler_prefix}$prefix/clang"
+  cxx = "${compiler_prefix}$prefix/clang++"
 
   ar = "ar"
   ld = cxx
@@ -45,8 +49,8 @@
 }
 
 gcc_toolchain("x86") {
-  cc = "${goma_prefix}gcc"
-  cxx = "$goma_prefix}g++"
+  cc = "${compiler_prefix}gcc"
+  cxx = "$compiler_prefix}g++"
 
   ar = "ar"
   ld = cxx
@@ -64,8 +68,8 @@
     prefix = rebase_path("//third_party/llvm-build/Release+Asserts/bin",
                          root_build_dir)
   }
-  cc = "${goma_prefix}$prefix/clang"
-  cxx = "${goma_prefix}$prefix/clang++"
+  cc = "${compiler_prefix}$prefix/clang"
+  cxx = "${compiler_prefix}$prefix/clang++"
 
   ar = "ar"
   ld = cxx
@@ -76,8 +80,8 @@
 }
 
 gcc_toolchain("x64") {
-  cc = "${goma_prefix}gcc"
-  cxx = "${goma_prefix}g++"
+  cc = "${compiler_prefix}gcc"
+  cxx = "${compiler_prefix}g++"
 
   ar = "ar"
   ld = cxx
diff --git a/build/toolchain/mac/BUILD.gn b/build/toolchain/mac/BUILD.gn
index b1cd36b..052e76c 100644
--- a/build/toolchain/mac/BUILD.gn
+++ b/build/toolchain/mac/BUILD.gn
@@ -28,7 +28,7 @@
 # This will copy the gyp-mac-tool to the build directory. We pass in the source
 # file of the win tool.
 gyp_mac_tool_source =
-  rebase_path("//tools/gyp/pylib/gyp/mac_tool.py", root_build_dir)
+    rebase_path("//tools/gyp/pylib/gyp/mac_tool.py", root_build_dir)
 exec_script("setup_toolchain.py", [ gyp_mac_tool_source ])
 
 # Shared toolchain definition. Invocations should set toolchain_os to set the
@@ -57,61 +57,61 @@
 
     tool("cc") {
       depfile = "{{output}}.d"
-      command = "$cc -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_c}} -c {{source}} -o {{output}}"
+      command =
+          "$cc -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_c}} -c {{source}} -o {{output}}"
       depsformat = "gcc"
       description = "CC {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o" ]
     }
 
     tool("cxx") {
       depfile = "{{output}}.d"
-      command = "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_cc}} -c {{source}} -o {{output}}"
+      command =
+          "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_cc}} -c {{source}} -o {{output}}"
       depsformat = "gcc"
       description = "CXX {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o" ]
     }
 
     tool("asm") {
       # For GCC we can just use the C compiler to compile assembly.
       depfile = "{{output}}.d"
-      command = "$cc -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_c}} -c {{source}} -o {{output}}"
+      command =
+          "$cc -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_c}} -c {{source}} -o {{output}}"
       depsformat = "gcc"
       description = "ASM {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o" ]
     }
 
     tool("objc") {
       depfile = "{{output}}.d"
-      command = "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_c}} {{cflags_objc}} -c {{source}} -o {{output}}"
+      command =
+          "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_c}} {{cflags_objc}} -c {{source}} -o {{output}}"
       depsformat = "gcc"
       description = "OBJC {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o" ]
     }
 
     tool("objcxx") {
       depfile = "{{output}}.d"
-      command = "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_cc}} {{cflags_objcc}} -c {{source}} -o {{output}}"
+      command =
+          "$cxx -MMD -MF $depfile {{defines}} {{include_dirs}} {{cflags}} {{cflags_cc}} {{cflags_objcc}} -c {{source}} -o {{output}}"
       depsformat = "gcc"
       description = "OBJCXX {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.o" ]
     }
 
     tool("alink") {
-      command = "rm -f {{output}} && ./gyp-mac-tool filter-libtool libtool -static -o {{output}} {{inputs}}"
+      command =
+          "rm -f {{output}} && ./gyp-mac-tool filter-libtool libtool -static -o {{output}} {{inputs}}"
       description = "LIBTOOL-STATIC {{output}}"
-      outputs = [
-        "{{target_out_dir}}/{{target_output_name}}{{output_extension}}"
-      ]
+      outputs =
+          [ "{{target_out_dir}}/{{target_output_name}}{{output_extension}}" ]
       default_output_extension = ".a"
       output_prefix = "lib"
     }
@@ -131,12 +131,17 @@
       tocname = dylib + ".TOC"
       temporary_tocname = dylib + ".tmp"
 
-      does_reexport_command = "[ ! -e $dylib -o ! -e $tocname ] || otool -l $dylib | grep -q LC_REEXPORT_DYLIB"
-      link_command = "$ld -shared {{ldflags}} -o $dylib -Wl,-filelist,$rspfile {{solibs}} {{libs}}"
-      replace_command = "if ! cmp -s $temporary_tocname $tocname; then mv $temporary_tocname $tocname"
-      extract_toc_command = "{ otool -l $dylib | grep LC_ID_DYLIB -A 5; nm -gP $dylib | cut -f1-2 -d' ' | grep -v U\$\$; true; }"
+      does_reexport_command =
+          "[ ! -e $dylib -o ! -e $tocname ] || otool -l $dylib | grep -q LC_REEXPORT_DYLIB"
+      link_command =
+          "$ld -shared {{ldflags}} -o $dylib -Wl,-filelist,$rspfile {{solibs}} {{libs}}"
+      replace_command =
+          "if ! cmp -s $temporary_tocname $tocname; then mv $temporary_tocname $tocname"
+      extract_toc_command =
+          "{ otool -l $dylib | grep LC_ID_DYLIB -A 5; nm -gP $dylib | cut -f1-2 -d' ' | grep -v U\$\$; true; }"
 
-      command = "if $does_reexport_command ; then $link_command && $extract_toc_command > $tocname; else $link_command && $extract_toc_command > $temporary_tocname && $replace_command ; fi; fi"
+      command =
+          "if $does_reexport_command ; then $link_command && $extract_toc_command > $tocname; else $link_command && $extract_toc_command > $temporary_tocname && $replace_command ; fi; fi"
 
       rspfile_content = "{{inputs_newline}}"
 
@@ -167,7 +172,8 @@
     tool("link") {
       outfile = "{{root_out_dir}}/{{target_output_name}}{{output_extension}}"
       rspfile = "$outfile.rsp"
-      command = "$ld {{ldflags}} -o $outfile -Wl,-filelist,$rspfile {{solibs}} {{libs}}"
+      command =
+          "$ld {{ldflags}} -o $outfile -Wl,-filelist,$rspfile {{solibs}} {{libs}}"
       description = "LINK $outfile"
       rspfile_content = "{{inputs_newline}}"
       outputs = [ outfile ]
@@ -179,7 +185,8 @@
     }
 
     tool("copy") {
-      command = "ln -f {{source}} {{output}} 2>/dev/null || (rm -rf {{output}} && cp -af {{source}} {{output}})"
+      command =
+          "ln -f {{source}} {{output}} 2>/dev/null || (rm -rf {{output}} && cp -af {{source}} {{output}})"
       description = "COPY {{source}} {{output}}"
     }
 
diff --git a/build/toolchain/nacl/BUILD.gn b/build/toolchain/nacl/BUILD.gn
index 8c76f5a..bea30e0 100644
--- a/build/toolchain/nacl/BUILD.gn
+++ b/build/toolchain/nacl/BUILD.gn
@@ -9,14 +9,16 @@
   ld = toolprefix + "g++"
 
   tool("cc") {
-    command = "$cc -MMD -MF \$out.d \$defines \$includes \$cflags \$cflags_c -c \$in -o \$out"
+    command =
+        "$cc -MMD -MF \$out.d \$defines \$includes \$cflags \$cflags_c -c \$in -o \$out"
     description = "CC(NaCl x86 Newlib) \$out"
     depfile = "\$out.d"
     depsformat = "gcc"
   }
   tool("cxx") {
     # cflags_pch_cc
-    command = "$cxx -MMD -MF \$out.d \$defines \$includes \$cflags \$cflags_cc -c \$in -o \$out"
+    command =
+        "$cxx -MMD -MF \$out.d \$defines \$includes \$cflags \$cflags_cc -c \$in -o \$out"
     description = "CXX(NaCl x86 Newlib) \$out"
     depfile = "\$out.d"
     depsformat = "gcc"
@@ -26,14 +28,18 @@
     description = "AR(NaCl x86 Newlib) \$out"
   }
   tool("solink") {
-    command = "if [ ! -e \$lib -o ! -e \${lib}.TOC ]; then $ld -shared \$ldflags -o \$lib -Wl,-soname=\$soname -Wl,--whole-archive \$in \$solibs -Wl,--no-whole-archive \$libs && { readelf -d \${lib} | grep SONAME ; nm -gD -f p \${lib} | cut -f1-2 -d' '; } > \${lib}.TOC; else $ld -shared \$ldflags -o \$lib -Wl,-soname=\$soname -Wl,--whole-archive \$in \$solibs -Wl,--no-whole-archive \$libs && { readelf -d \${lib} | grep SONAME ; nm -gD -f p \${lib} | cut -f1-2 -d' '; } > \${lib}.tmp && if ! cmp -s \${lib}.tmp \${lib}.TOC; then mv \${lib}.tmp \${lib}.TOC ; fi; fi"
+    command =
+        "if [ ! -e \$lib -o ! -e \${lib}.TOC ]; then $ld -shared \$ldflags -o \$lib -Wl,-soname=\$soname -Wl,--whole-archive \$in \$solibs -Wl,--no-whole-archive \$libs && { readelf -d \${lib} | grep SONAME ; nm -gD -f p \${lib} | cut -f1-2 -d' '; } > \${lib}.TOC; else $ld -shared \$ldflags -o \$lib -Wl,-soname=\$soname -Wl,--whole-archive \$in \$solibs -Wl,--no-whole-archive \$libs && { readelf -d \${lib} | grep SONAME ; nm -gD -f p \${lib} | cut -f1-2 -d' '; } > \${lib}.tmp && if ! cmp -s \${lib}.tmp \${lib}.TOC; then mv \${lib}.tmp \${lib}.TOC ; fi; fi"
     description = "SOLINK(NaCl x86 Newlib) \$lib"
+
     #pool = "link_pool"
     restat = "1"
   }
   tool("link") {
-    command = "$ld \$ldflags -o \$out -Wl,--start-group \$in \$solibs -Wl,--end-group \$libs"
+    command =
+        "$ld \$ldflags -o \$out -Wl,--start-group \$in \$solibs -Wl,--end-group \$libs"
     description = "LINK(NaCl x86 Newlib) \$out"
+
     #pool = "link_pool"
   }
 
diff --git a/build/toolchain/win/BUILD.gn b/build/toolchain/win/BUILD.gn
index 87bd254..1be1cf4 100644
--- a/build/toolchain/win/BUILD.gn
+++ b/build/toolchain/win/BUILD.gn
@@ -2,6 +2,15 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
+declare_args() {
+  # Path to the directory containing the VC binaries for the right
+  # combination of host and target architectures. Currently only the
+  # 64-bit host toolchain is supported, with either 32-bit or 64-bit targets.
+  # If vc_bin_dir is not specified on the command line (and it normally
+  # isn't), we will dynamically determine the right value to use at runtime.
+  vc_bin_dir = ""
+}
+
 import("//build/config/win/visual_studio_version.gni")
 import("//build/toolchain/goma.gni")
 
@@ -13,15 +22,22 @@
 # Its arguments are the VS path and the compiler wrapper tool. It will write
 # "environment.x86" and "environment.x64" to the build directory and return a
 # list to us.
-gyp_win_tool_path = rebase_path("//tools/gyp/pylib/gyp/win_tool.py",
-                                root_build_dir)
-exec_script("setup_toolchain.py",
-            [
-              visual_studio_path,
-              gyp_win_tool_path,
-              windows_sdk_path,
-              visual_studio_runtime_dirs
-            ])
+gyp_win_tool_path =
+    rebase_path("//tools/gyp/pylib/gyp/win_tool.py", root_build_dir)
+
+toolchain_data = exec_script("setup_toolchain.py",
+                             [
+                               visual_studio_path,
+                               gyp_win_tool_path,
+                               windows_sdk_path,
+                               visual_studio_runtime_dirs,
+                               cpu_arch,
+                             ],
+                             "scope")
+
+if (vc_bin_dir == "") {
+  vc_bin_dir = toolchain_data.vc_bin_dir
+}
 
 # This value will be inherited in the toolchain below.
 concurrent_links = exec_script("../get_concurrent_links.py", [], "value")
@@ -41,62 +57,75 @@
   } else {
     configuration = "Release"
   }
-  exec_script("../../vs_toolchain.py", ["copy_dlls",
-                                        rebase_path(root_build_dir),
-                                        configuration,
-                                        invoker.cpu_arch])
+  exec_script("../../vs_toolchain.py",
+              [
+                "copy_dlls",
+                rebase_path(root_build_dir),
+                configuration,
+                invoker.cpu_arch,
+              ])
+
+  if (use_goma) {
+    goma_prefix = "$goma_dir/gomacc.exe "
+  } else {
+    goma_prefix = ""
+  }
+
+  cl = "${goma_prefix}\"${vc_bin_dir}/cl.exe\""
 
   toolchain(target_name) {
     # Make these apply to all tools below.
     lib_switch = ""
-    lib_dir_switch="/LIBPATH:"
+    lib_dir_switch = "/LIBPATH:"
 
     tool("cc") {
       rspfile = "{{output}}.rsp"
       pdbname = "{{target_out_dir}}/{{target_output_name}}_c.pdb"
-      command = "ninja -t msvc -e $env -- cl.exe /nologo /showIncludes /FC @$rspfile /c {{source}} /Fo{{output}} /Fd$pdbname"
+      command =
+          "ninja -t msvc -e $env -- $cl /nologo /showIncludes /FC @$rspfile /c {{source}} /Fo{{output}} /Fd$pdbname"
       depsformat = "msvc"
       description = "CC {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.obj",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.obj" ]
       rspfile_content = "{{defines}} {{include_dirs}} {{cflags}} {{cflags_c}}"
     }
 
     tool("cxx") {
       rspfile = "{{output}}.rsp"
+
       # The PDB name needs to be different between C and C++ compiled files.
       pdbname = "{{target_out_dir}}/{{target_output_name}}_cc.pdb"
-      command = "ninja -t msvc -e $env -- cl.exe /nologo /showIncludes /FC @$rspfile /c {{source}} /Fo{{output}} /Fd$pdbname"
+      command =
+          "ninja -t msvc -e $env -- $cl /nologo /showIncludes /FC @$rspfile /c {{source}} /Fo{{output}} /Fd$pdbname"
       depsformat = "msvc"
       description = "CXX {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.obj",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.obj" ]
       rspfile_content = "{{defines}} {{include_dirs}} {{cflags}} {{cflags_c}}"
     }
 
     tool("rc") {
-      command = "$python_path gyp-win-tool rc-wrapper $env rc.exe {{defines}} {{include_dirs}} /fo{{output}} {{source}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.res",
-      ]
+      command =
+          "$python_path gyp-win-tool rc-wrapper $env rc.exe {{defines}} {{include_dirs}} /fo{{output}} {{source}}"
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.res" ]
       description = "RC {{output}}"
     }
 
     tool("asm") {
       # TODO(brettw): "/safeseh" assembler argument is hardcoded here. Extract
       # assembler flags to a variable like cflags. crbug.com/418613
-      command = "$python_path gyp-win-tool asm-wrapper $env ml.exe {{defines}} {{include_dirs}} /safeseh /c /Fo {{output}} {{source}}"
+      command =
+          "$python_path gyp-win-tool asm-wrapper $env ml.exe {{defines}} {{include_dirs}} /safeseh /c /Fo {{output}} {{source}}"
       description = "ASM {{output}}"
-      outputs = [
-        "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.obj",
-      ]
+      outputs =
+          [ "{{source_out_dir}}/{{target_output_name}}.{{source_name_part}}.obj" ]
     }
 
     tool("alink") {
       rspfile = "{{output}}.rsp"
-      command = "$python_path gyp-win-tool link-wrapper $env False lib.exe /nologo /ignore:4221 /OUT:{{output}} @$rspfile"
+      command =
+          "$python_path gyp-win-tool link-wrapper $env False lib.exe /nologo /ignore:4221 /OUT:{{output}} @$rspfile"
       description = "LIB {{output}}"
       outputs = [
         # Ignore {{output_extension}} and always use .lib, there's no reason to
@@ -104,6 +133,7 @@
         "{{target_out_dir}}/{{target_output_name}}.lib",
       ]
       default_output_extension = ".lib"
+
       # The use of inputs_newline is to work around a fixed per-line buffer
       # size in the linker.
       rspfile_content = "{{inputs_newline}}"
@@ -111,10 +141,12 @@
 
     tool("solink") {
       dllname = "{{root_out_dir}}/{{target_output_name}}{{output_extension}}"  # e.g. foo.dll
-      libname = "{{root_out_dir}}/{{target_output_name}}{{output_extension}}.lib"  # e.g. foo.dll.lib
+      libname =
+          "{{root_out_dir}}/{{target_output_name}}{{output_extension}}.lib"  # e.g. foo.dll.lib
       rspfile = "${dllname}.rsp"
 
-      link_command = "$python_path gyp-win-tool link-wrapper $env False link.exe /nologo /IMPLIB:$libname /DLL /OUT:$dllname /PDB:${dllname}.pdb @$rspfile"
+      link_command =
+          "$python_path gyp-win-tool link-wrapper $env False link.exe /nologo /IMPLIB:$libname /DLL /OUT:$dllname /PDB:${dllname}.pdb @$rspfile"
 
       # TODO(brettw) support manifests
       #manifest_command = "$python_path gyp-win-tool manifest-wrapper $env mt.exe -nologo -manifest $manifests -out:${dllname}.manifest"
@@ -129,6 +161,7 @@
       ]
       link_output = libname
       depend_output = libname
+
       # The use of inputs_newline is to work around a fixed per-line buffer
       # size in the linker.
       rspfile_content = "{{libs}} {{solibs}} {{inputs_newline}} {{ldflags}}"
@@ -137,7 +170,8 @@
     tool("link") {
       rspfile = "{{output}}.rsp"
 
-      link_command = "$python_path gyp-win-tool link-wrapper $env False link.exe /nologo /OUT:{{output}} /PDB:{{output}}.pdb @$rspfile"
+      link_command =
+          "$python_path gyp-win-tool link-wrapper $env False link.exe /nologo /OUT:{{output}} /PDB:{{output}}.pdb @$rspfile"
 
       # TODO(brettw) support manifests
       #manifest_command = "$python_path gyp-win-tool manifest-wrapper $env mt.exe -nologo -manifest $manifests -out:{{output}}.manifest"
@@ -146,9 +180,9 @@
 
       default_output_extension = ".exe"
       description = "LINK {{output}}"
-      outputs = [
-        "{{root_out_dir}}/{{target_output_name}}{{output_extension}}",
-      ]
+      outputs =
+          [ "{{root_out_dir}}/{{target_output_name}}{{output_extension}}" ]
+
       # The use of inputs_newline is to work around a fixed per-line buffer
       # size in the linker.
       rspfile_content = "{{inputs_newline}} {{libs}} {{solibs}} {{ldflags}}"
@@ -160,7 +194,8 @@
     }
 
     tool("copy") {
-      command =  "$python_path gyp-win-tool recursive-mirror {{source}} {{output}}"
+      command =
+          "$python_path gyp-win-tool recursive-mirror {{source}} {{output}}"
       description = "COPY {{source}} {{output}}"
     }
 
diff --git a/build/toolchain/win/midl.gni b/build/toolchain/win/midl.gni
index 7f068d0..9fda96b 100644
--- a/build/toolchain/win/midl.gni
+++ b/build/toolchain/win/midl.gni
@@ -67,7 +67,8 @@
     }
 
     args = [
-      "midl-wrapper", win_tool_arch,
+      "midl-wrapper",
+      win_tool_arch,
       rebase_path(out_dir, root_build_dir),
       type_library_file,
       header_file,
@@ -75,13 +76,18 @@
       interface_identifier_file,
       proxy_file,
       "{{source}}",
-      "/char", "signed",
-      "/env", idl_target_platform,
+      "/char",
+      "signed",
+      "/env",
+      idl_target_platform,
       "/Oicf",
     ]
 
     foreach(include, system_include_dirs) {
-      args += [ "/I", include ]
+      args += [
+        "/I",
+        include,
+      ]
     }
   }
 
@@ -91,10 +97,11 @@
     }
 
     # We only compile the IID files from the IDL tool rather than all outputs.
-    sources = process_file_template(
-        invoker.sources,
-        [ "$out_dir/$interface_identifier_file" ])
+    sources = process_file_template(invoker.sources,
+                                    [ "$out_dir/$interface_identifier_file" ])
 
-    deps = [ ":$action_name" ]
+    deps = [
+      ":$action_name",
+    ]
   }
 }
diff --git a/build/toolchain/win/setup_toolchain.py b/build/toolchain/win/setup_toolchain.py
index 42c3af1..6b7ea7a 100644
--- a/build/toolchain/win/setup_toolchain.py
+++ b/build/toolchain/win/setup_toolchain.py
@@ -98,20 +98,26 @@
 
 
 def main():
-  if len(sys.argv) != 5:
+  if len(sys.argv) != 6:
     print('Usage setup_toolchain.py '
-          '<visual studio path> <win tool path> <win sdk path> <runtime dirs>')
+          '<visual studio path> <win tool path> <win sdk path> '
+          '<runtime dirs> <cpu_arch>')
     sys.exit(2)
   vs_path = sys.argv[1]
   tool_source = sys.argv[2]
   win_sdk_path = sys.argv[3]
   runtime_dirs = sys.argv[4]
+  cpu_arch = sys.argv[5]
 
   _CopyTool(tool_source)
 
   archs = ('x86', 'x64')
+  assert cpu_arch in archs
+  vc_bin_dir = ''
+
   # TODO(scottmg|goma): Do we need an equivalent of
   # ninja_use_custom_environment_files?
+
   for arch in archs:
     # Extract environment variables for subprocesses.
     args = _SetupScript(arch, win_sdk_path)
@@ -122,6 +128,12 @@
     env = _ExtractImportantEnvironment(variables)
     env['PATH'] = runtime_dirs + ';' + env['PATH']
 
+    if arch == cpu_arch:
+      for path in env['PATH'].split(os.pathsep):
+        if os.path.exists(os.path.join(path, 'cl.exe')):
+          vc_bin_dir = os.path.realpath(path)
+          break
+
     # TODO(scottmg|thakis|dpranke): Is there an equivalent to
     # msvs_system_include_dirs that we need to inject into INCLUDE here?
 
@@ -129,6 +141,9 @@
     with open('environment.' + arch, 'wb') as f:
       f.write(env_block)
 
+  assert vc_bin_dir
+  print 'vc_bin_dir = "%s"' % vc_bin_dir
+
 
 if __name__ == '__main__':
   main()
diff --git a/build/util/BUILD.gn b/build/util/BUILD.gn
index 320c5ee..3fc7757 100644
--- a/build/util/BUILD.gn
+++ b/build/util/BUILD.gn
@@ -6,15 +6,20 @@
   script = "version.py"
 
   lastchange_file = "LASTCHANGE.blink"
+
   # TODO(brettw) move from content to this directory.
   template_file = "//content/webkit_version.h.in"
-  inputs = [ lastchange_file, template_file ]
+  inputs = [
+    lastchange_file,
+    template_file,
+  ]
 
   output_file = "$root_gen_dir/webkit_version.h"
   outputs = [ output_file ]
 
   args = [
-    "-f", rebase_path(lastchange_file, root_build_dir),
+    "-f",
+    rebase_path(lastchange_file, root_build_dir),
     rebase_path(template_file, root_build_dir),
     rebase_path(output_file, root_build_dir),
   ]
diff --git a/build/util/version.gypi b/build/util/version.gypi
index b05b415..327a5c2 100644
--- a/build/util/version.gypi
+++ b/build/util/version.gypi
@@ -14,8 +14,6 @@
     'lastchange_path': '<(lastchange_path)',
     'version_full':
         '<!(python <(version_py_path) -f <(version_path) -t "@MAJOR@.@MINOR@.@BUILD@.@PATCH@")',
-    'version_libchrome_short':
-        '<!(python <(version_py_path) -f <(version_path) -t "@BUILD@.@PATCH@")',
     'version_mac_dylib':
         '<!(python <(version_py_path) -f <(version_path) -t "@BUILD@.@PATCH_HI@.@PATCH_LO@" -e "PATCH_HI=int(PATCH)/256" -e "PATCH_LO=int(PATCH)%256")',
   },  # variables
diff --git a/cc/BUILD.gn b/cc/BUILD.gn
index 6d5fec4..7e66bd9 100644
--- a/cc/BUILD.gn
+++ b/cc/BUILD.gn
@@ -323,10 +323,24 @@
     "resources/bitmap_raster_worker_pool.h",
     "resources/bitmap_skpicture_content_layer_updater.cc",
     "resources/bitmap_skpicture_content_layer_updater.h",
+    "resources/clip_display_item.cc",
+    "resources/clip_display_item.h",
     "resources/content_layer_updater.cc",
     "resources/content_layer_updater.h",
+    "resources/display_item.cc",
+    "resources/display_item.h",
+    "resources/display_item_list.cc",
+    "resources/display_item_list.h",
+    "resources/display_list_raster_source.cc",
+    "resources/display_list_raster_source.h",
+    "resources/display_list_recording_source.cc",
+    "resources/display_list_recording_source.h",
+    "resources/drawing_display_item.cc",
+    "resources/drawing_display_item.h",
     "resources/eviction_tile_priority_queue.cc",
     "resources/eviction_tile_priority_queue.h",
+    "resources/filter_display_item.cc",
+    "resources/filter_display_item.h",
     "resources/gpu_raster_worker_pool.cc",
     "resources/gpu_raster_worker_pool.h",
     "resources/image_layer_updater.cc",
@@ -366,6 +380,8 @@
     "resources/raster_buffer.cc",
     "resources/raster_buffer.h",
     "resources/raster_source.h",
+    "resources/raster_source_helper.cc",
+    "resources/raster_source_helper.h",
     "resources/raster_tile_priority_queue.cc",
     "resources/raster_tile_priority_queue.h",
     "resources/raster_worker_pool.cc",
@@ -417,8 +433,14 @@
     "resources/tile_manager.h",
     "resources/tile_priority.cc",
     "resources/tile_priority.h",
+    "resources/tiling_set_eviction_queue.cc",
+    "resources/tiling_set_eviction_queue.h",
     "resources/transferable_resource.cc",
     "resources/transferable_resource.h",
+    "resources/transform_display_item.cc",
+    "resources/transform_display_item.h",
+    "resources/transparency_display_item.cc",
+    "resources/transparency_display_item.h",
     "resources/ui_resource_bitmap.cc",
     "resources/ui_resource_bitmap.h",
     "resources/ui_resource_client.h",
@@ -482,6 +504,7 @@
   deps = [
     "//base",
     "//base/third_party/dynamic_annotations",
+    "//cc/surfaces:surface_id",
     "//gpu",
     "//gpu/command_buffer/client:gles2_interface",
     "//gpu/command_buffer/client:gpu_memory_buffer_manager",
@@ -635,6 +658,7 @@
   ]
   deps = [
     "//base",
+    "//base/test:test_support",
     "//base/third_party/dynamic_annotations",
     "//gpu/command_buffer/client:gles2_c_lib",
     "//gpu/command_buffer/client:gles2_implementation",
@@ -720,6 +744,7 @@
     "quads/draw_quad_unittest.cc",
     "quads/list_container_unittest.cc",
     "quads/render_pass_unittest.cc",
+    "resources/display_item_list_unittest.cc",
     "resources/layer_quad_unittest.cc",
     "resources/picture_layer_tiling_set_unittest.cc",
     "resources/picture_layer_tiling_unittest.cc",
@@ -786,6 +811,7 @@
     ":test_support",
     "//base/test:test_support",
     "//cc/surfaces",
+    "//cc/surfaces:surface_id",
     "//gpu",
     "//gpu:test_support",
     "//gpu/command_buffer/client:gles2_interface",
@@ -795,6 +821,8 @@
     "//ui/events:events_base",
     "//ui/gfx",
     "//ui/gfx/geometry",
+    "//ui/gfx:test_support",
+    "//ui/gl",
   ]
 }
 
@@ -818,6 +846,7 @@
     ":cc",
     ":test_support",
     "//base",
+    "//base/test:test_support",
     "//gpu",
     "//gpu:test_support",
     "//gpu/command_buffer/common:gles2_utils",
@@ -827,5 +856,6 @@
     "//testing/perf",
     "//ui/gfx",
     "//ui/gfx/geometry",
+    "//ui/gl",
   ]
 }
diff --git a/cc/base/rolling_time_delta_history.cc b/cc/base/rolling_time_delta_history.cc
index 0f95cc5..db04f58 100644
--- a/cc/base/rolling_time_delta_history.cc
+++ b/cc/base/rolling_time_delta_history.cc
@@ -26,10 +26,6 @@
   chronological_sample_deque_.push_back(it);
 }
 
-size_t RollingTimeDeltaHistory::SampleCount() {
-  return sample_set_.size();
-}
-
 void RollingTimeDeltaHistory::Clear() {
   chronological_sample_deque_.clear();
   sample_set_.clear();
diff --git a/cc/base/rolling_time_delta_history.h b/cc/base/rolling_time_delta_history.h
index 603c813..e51fb86 100644
--- a/cc/base/rolling_time_delta_history.h
+++ b/cc/base/rolling_time_delta_history.h
@@ -23,8 +23,6 @@
 
   void InsertSample(base::TimeDelta time);
 
-  size_t SampleCount();
-
   void Clear();
 
   // Returns the smallest sample that is greater than or equal to the specified
diff --git a/cc/blink/BUILD.gn b/cc/blink/BUILD.gn
index fac991b..138be59 100644
--- a/cc/blink/BUILD.gn
+++ b/cc/blink/BUILD.gn
@@ -33,6 +33,8 @@
     "web_compositor_support_impl.h",
     "web_content_layer_impl.cc",
     "web_content_layer_impl.h",
+    "web_display_item_list_impl.cc",
+    "web_display_item_list_impl.h",
     "web_external_bitmap_impl.cc",
     "web_external_bitmap_impl.h",
     "web_external_texture_layer_impl.cc",
diff --git a/cc/blink/cc_blink.gyp b/cc/blink/cc_blink.gyp
index d9f19ea..892082c 100644
--- a/cc/blink/cc_blink.gyp
+++ b/cc/blink/cc_blink.gyp
@@ -36,6 +36,8 @@
         'web_compositor_support_impl.h',
         'web_content_layer_impl.cc',
         'web_content_layer_impl.h',
+        'web_display_item_list_impl.cc',
+        'web_display_item_list_impl.h',
         'web_external_bitmap_impl.cc',
         'web_external_bitmap_impl.h',
         'web_external_texture_layer_impl.cc',
diff --git a/cc/blink/web_compositor_support_impl.cc b/cc/blink/web_compositor_support_impl.cc
index ae098fc..042908c 100644
--- a/cc/blink/web_compositor_support_impl.cc
+++ b/cc/blink/web_compositor_support_impl.cc
@@ -9,6 +9,7 @@
 #include "cc/animation/transform_operations.h"
 #include "cc/blink/web_animation_impl.h"
 #include "cc/blink/web_content_layer_impl.h"
+#include "cc/blink/web_display_item_list_impl.h"
 #include "cc/blink/web_external_texture_layer_impl.h"
 #include "cc/blink/web_filter_animation_curve_impl.h"
 #include "cc/blink/web_filter_operations_impl.h"
@@ -27,6 +28,9 @@
 using blink::WebCompositorAnimationCurve;
 using blink::WebContentLayer;
 using blink::WebContentLayerClient;
+#if WEB_DISPLAY_ITEM_LIST_IS_DEFINED
+using blink::WebDisplayItemList;
+#endif
 using blink::WebExternalTextureLayer;
 using blink::WebExternalTextureLayerClient;
 using blink::WebFilterAnimationCurve;
@@ -91,6 +95,12 @@
                                    is_left_side_vertical_scrollbar);
 }
 
+#if WEB_DISPLAY_ITEM_LIST_IS_DEFINED
+WebDisplayItemList* WebCompositorSupportImpl::createDisplayItemList() {
+  return new WebDisplayItemListImpl();
+}
+#endif
+
 WebCompositorAnimation* WebCompositorSupportImpl::createAnimation(
     const blink::WebCompositorAnimationCurve& curve,
     blink::WebCompositorAnimation::TargetProperty target,
diff --git a/cc/blink/web_compositor_support_impl.h b/cc/blink/web_compositor_support_impl.h
index 0f6371a..1c5198c 100644
--- a/cc/blink/web_compositor_support_impl.h
+++ b/cc/blink/web_compositor_support_impl.h
@@ -10,6 +10,7 @@
 #include "cc/blink/cc_blink_export.h"
 #include "third_party/WebKit/public/platform/WebCompositorAnimationCurve.h"
 #include "third_party/WebKit/public/platform/WebCompositorSupport.h"
+#include "third_party/WebKit/public/platform/WebContentLayerClient.h"
 #include "third_party/WebKit/public/platform/WebLayer.h"
 #include "third_party/WebKit/public/platform/WebTransformOperations.h"
 
@@ -41,6 +42,9 @@
       int thumb_thickness,
       int track_start,
       bool is_left_side_vertical_scrollbar);
+#if WEB_DISPLAY_ITEM_LIST_IS_DEFINED
+  virtual blink::WebDisplayItemList* createDisplayItemList();
+#endif
   virtual blink::WebCompositorAnimation* createAnimation(
       const blink::WebCompositorAnimationCurve& curve,
       blink::WebCompositorAnimation::TargetProperty target,
diff --git a/cc/blink/web_content_layer_impl.cc b/cc/blink/web_content_layer_impl.cc
index d0a4cca..9757ff3 100644
--- a/cc/blink/web_content_layer_impl.cc
+++ b/cc/blink/web_content_layer_impl.cc
@@ -4,6 +4,7 @@
 
 #include "cc/blink/web_content_layer_impl.h"
 
+#include "cc/blink/web_display_item_list_impl.h"
 #include "cc/layers/content_layer.h"
 #include "cc/layers/picture_layer.h"
 #include "third_party/WebKit/public/platform/WebContentLayerClient.h"
@@ -63,6 +64,25 @@
           : blink::WebContentLayerClient::GraphicsContextDisabled);
 }
 
+scoped_refptr<cc::DisplayItemList>
+WebContentLayerImpl::PaintContentsToDisplayList(
+    const gfx::Rect& clip,
+    ContentLayerClient::GraphicsContextStatus graphics_context_status) {
+  if (!client_)
+    return cc::DisplayItemList::Create();
+
+  WebDisplayItemListImpl list;
+#if WEB_DISPLAY_ITEM_LIST_IS_DEFINED
+  bool can_use_lcd_text = true;
+  client_->paintContents(
+      &list, clip, can_use_lcd_text,
+      graphics_context_status == ContentLayerClient::GRAPHICS_CONTEXT_ENABLED
+          ? blink::WebContentLayerClient::GraphicsContextEnabled
+          : blink::WebContentLayerClient::GraphicsContextDisabled);
+#endif
+  return list.ToDisplayItemList();
+}
+
 bool WebContentLayerImpl::FillsBoundsCompletely() const {
   return false;
 }
diff --git a/cc/blink/web_content_layer_impl.h b/cc/blink/web_content_layer_impl.h
index 2966bd4..148f4fc 100644
--- a/cc/blink/web_content_layer_impl.h
+++ b/cc/blink/web_content_layer_impl.h
@@ -40,6 +40,9 @@
                      const gfx::Rect& clip,
                      ContentLayerClient::GraphicsContextStatus
                          graphics_context_status) override;
+  scoped_refptr<cc::DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus graphics_context_status) override;
   bool FillsBoundsCompletely() const override;
 
   scoped_ptr<WebLayerImpl> layer_;
@@ -47,9 +50,6 @@
   bool draws_content_;
 
  private:
-  bool can_use_lcd_text_;
-  bool ignore_lcd_text_change_;
-
   DISALLOW_COPY_AND_ASSIGN(WebContentLayerImpl);
 };
 
diff --git a/cc/blink/web_display_item_list_impl.cc b/cc/blink/web_display_item_list_impl.cc
new file mode 100644
index 0000000..4ba3431
--- /dev/null
+++ b/cc/blink/web_display_item_list_impl.cc
@@ -0,0 +1,90 @@
+// Copyright 2014 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.
+
+#include "cc/blink/web_display_item_list_impl.h"
+
+#include <vector>
+
+#include "cc/blink/web_blend_mode.h"
+#include "cc/resources/clip_display_item.h"
+#include "cc/resources/drawing_display_item.h"
+#include "cc/resources/filter_display_item.h"
+#include "cc/resources/transform_display_item.h"
+#include "cc/resources/transparency_display_item.h"
+#include "skia/ext/refptr.h"
+#include "third_party/WebKit/public/platform/WebFloatRect.h"
+#include "third_party/WebKit/public/platform/WebRect.h"
+#include "third_party/skia/include/core/SkImageFilter.h"
+#include "third_party/skia/include/core/SkPicture.h"
+#include "third_party/skia/include/utils/SkMatrix44.h"
+#include "ui/gfx/transform.h"
+
+namespace cc_blink {
+
+WebDisplayItemListImpl::WebDisplayItemListImpl()
+    : display_item_list_(cc::DisplayItemList::Create()) {
+}
+
+scoped_refptr<cc::DisplayItemList> WebDisplayItemListImpl::ToDisplayItemList() {
+  return display_item_list_;
+}
+
+void WebDisplayItemListImpl::appendDrawingItem(
+    SkPicture* picture,
+    const blink::WebFloatPoint& location) {
+  display_item_list_->AppendItem(
+      cc::DrawingDisplayItem::Create(skia::SharePtr(picture), location));
+}
+
+void WebDisplayItemListImpl::appendClipItem(
+    const blink::WebRect& clip_rect,
+    const blink::WebVector<SkRRect>& rounded_clip_rects) {
+  std::vector<SkRRect> rounded_rects;
+  for (size_t i = 0; i < rounded_clip_rects.size(); ++i) {
+    rounded_rects.push_back(rounded_clip_rects[i]);
+  }
+  display_item_list_->AppendItem(
+      cc::ClipDisplayItem::Create(clip_rect, rounded_rects));
+}
+
+void WebDisplayItemListImpl::appendEndClipItem() {
+  display_item_list_->AppendItem(cc::EndClipDisplayItem::Create());
+}
+
+void WebDisplayItemListImpl::appendTransformItem(const SkMatrix44& matrix) {
+  gfx::Transform transform;
+  transform.matrix() = matrix;
+  display_item_list_->AppendItem(cc::TransformDisplayItem::Create(transform));
+}
+
+void WebDisplayItemListImpl::appendTransparencyItem(
+    float opacity,
+    blink::WebBlendMode blend_mode) {
+  display_item_list_->AppendItem(cc::TransparencyDisplayItem::Create(
+      opacity, BlendModeToSkia(blend_mode)));
+}
+
+void WebDisplayItemListImpl::appendEndTransformItem() {
+  display_item_list_->AppendItem(cc::EndTransformDisplayItem::Create());
+}
+
+void WebDisplayItemListImpl::appendEndTransparencyItem() {
+  display_item_list_->AppendItem(cc::EndTransparencyDisplayItem::Create());
+}
+
+void WebDisplayItemListImpl::appendFilterItem(
+    SkImageFilter* filter,
+    const blink::WebFloatRect& bounds) {
+  display_item_list_->AppendItem(
+      cc::FilterDisplayItem::Create(skia::SharePtr(filter), bounds));
+}
+
+void WebDisplayItemListImpl::appendEndFilterItem() {
+  display_item_list_->AppendItem(cc::EndFilterDisplayItem::Create());
+}
+
+WebDisplayItemListImpl::~WebDisplayItemListImpl() {
+}
+
+}  // namespace cc_blink
diff --git a/cc/blink/web_display_item_list_impl.h b/cc/blink/web_display_item_list_impl.h
new file mode 100644
index 0000000..4725498
--- /dev/null
+++ b/cc/blink/web_display_item_list_impl.h
@@ -0,0 +1,63 @@
+// Copyright 2014 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.
+
+#ifndef CC_BLINK_WEB_DISPLAY_ITEM_LIST_IMPL_H_
+#define CC_BLINK_WEB_DISPLAY_ITEM_LIST_IMPL_H_
+
+#include "base/memory/ref_counted.h"
+#include "cc/blink/cc_blink_export.h"
+#include "cc/resources/display_item_list.h"
+#include "third_party/WebKit/public/platform/WebBlendMode.h"
+#include "third_party/WebKit/public/platform/WebContentLayerClient.h"
+#include "third_party/WebKit/public/platform/WebFloatPoint.h"
+#include "third_party/WebKit/public/platform/WebVector.h"
+
+#if WEB_DISPLAY_ITEM_LIST_IS_DEFINED
+#include "third_party/WebKit/public/platform/WebDisplayItemList.h"
+#endif
+
+class SkImageFilter;
+class SkMatrix44;
+class SkPicture;
+class SkRRect;
+
+namespace cc_blink {
+
+#if WEB_DISPLAY_ITEM_LIST_IS_DEFINED
+class WebDisplayItemListImpl : public blink::WebDisplayItemList {
+#else
+class WebDisplayItemListImpl {
+#endif
+
+ public:
+  CC_BLINK_EXPORT WebDisplayItemListImpl();
+  virtual ~WebDisplayItemListImpl();
+
+  scoped_refptr<cc::DisplayItemList> ToDisplayItemList();
+
+  // blink::WebDisplayItemList implementation.
+  virtual void appendDrawingItem(SkPicture* picture,
+                                 const blink::WebFloatPoint& location);
+  virtual void appendClipItem(
+      const blink::WebRect& clip_rect,
+      const blink::WebVector<SkRRect>& rounded_clip_rects);
+  virtual void appendEndClipItem();
+  virtual void appendTransformItem(const SkMatrix44& matrix);
+  virtual void appendEndTransformItem();
+  virtual void appendTransparencyItem(float opacity,
+                                      blink::WebBlendMode blend_mode);
+  virtual void appendEndTransparencyItem();
+  virtual void appendFilterItem(SkImageFilter* filter,
+                                const blink::WebFloatRect& bounds);
+  virtual void appendEndFilterItem();
+
+ private:
+  scoped_refptr<cc::DisplayItemList> display_item_list_;
+
+  DISALLOW_COPY_AND_ASSIGN(WebDisplayItemListImpl);
+};
+
+}  // namespace cc_blink
+
+#endif  // CC_BLINK_WEB_DISPLAY_ITEM_LIST_IMPL_H_
diff --git a/cc/cc.gyp b/cc/cc.gyp
index 046d43c..3374251 100644
--- a/cc/cc.gyp
+++ b/cc/cc.gyp
@@ -358,10 +358,24 @@
         'resources/bitmap_raster_worker_pool.h',
         'resources/bitmap_skpicture_content_layer_updater.cc',
         'resources/bitmap_skpicture_content_layer_updater.h',
+        'resources/clip_display_item.cc',
+        'resources/clip_display_item.h',
         'resources/content_layer_updater.cc',
         'resources/content_layer_updater.h',
+        'resources/display_item.cc',
+        'resources/display_item.h',
+        'resources/display_item_list.cc',
+        'resources/display_item_list.h',
+        'resources/display_list_raster_source.cc',
+        'resources/display_list_raster_source.h',
+        'resources/display_list_recording_source.cc',
+        'resources/display_list_recording_source.h',
+        'resources/drawing_display_item.cc',
+        'resources/drawing_display_item.h',
         'resources/eviction_tile_priority_queue.cc',
         'resources/eviction_tile_priority_queue.h',
+        'resources/filter_display_item.cc',
+        'resources/filter_display_item.h',
         'resources/gpu_raster_worker_pool.cc',
         'resources/gpu_raster_worker_pool.h',
         'resources/image_layer_updater.cc',
@@ -401,6 +415,8 @@
         'resources/raster_buffer.cc',
         'resources/raster_buffer.h',
         'resources/raster_source.h',
+        'resources/raster_source_helper.cc',
+        'resources/raster_source_helper.h',
         'resources/raster_tile_priority_queue.cc',
         'resources/raster_tile_priority_queue.h',
         'resources/raster_worker_pool.cc',
@@ -453,8 +469,14 @@
         'resources/tile_manager.h',
         'resources/tile_priority.cc',
         'resources/tile_priority.h',
+        'resources/tiling_set_eviction_queue.cc',
+        'resources/tiling_set_eviction_queue.h',
         'resources/transferable_resource.cc',
         'resources/transferable_resource.h',
+        'resources/transform_display_item.cc',
+        'resources/transform_display_item.h',
+        'resources/transparency_display_item.cc',
+        'resources/transparency_display_item.h',
         'resources/ui_resource_bitmap.cc',
         'resources/ui_resource_bitmap.h',
         'resources/ui_resource_client.h',
diff --git a/cc/cc_tests.gyp b/cc/cc_tests.gyp
index d4a031f..d0b1000 100644
--- a/cc/cc_tests.gyp
+++ b/cc/cc_tests.gyp
@@ -74,6 +74,7 @@
       'quads/draw_quad_unittest.cc',
       'quads/list_container_unittest.cc',
       'quads/render_pass_unittest.cc',
+      'resources/display_item_list_unittest.cc',
       'resources/layer_quad_unittest.cc',
       'resources/picture_layer_tiling_set_unittest.cc',
       'resources/picture_layer_tiling_unittest.cc',
diff --git a/cc/debug/rasterize_and_record_benchmark.cc b/cc/debug/rasterize_and_record_benchmark.cc
index a2052ab..41d6210 100644
--- a/cc/debug/rasterize_and_record_benchmark.cc
+++ b/cc/debug/rasterize_and_record_benchmark.cc
@@ -18,6 +18,7 @@
 #include "cc/resources/picture_pile.h"
 #include "cc/trees/layer_tree_host.h"
 #include "cc/trees/layer_tree_host_common.h"
+#include "third_party/skia/include/utils/SkPictureUtils.h"
 #include "ui/gfx/geometry/rect.h"
 
 namespace cc {
@@ -64,6 +65,7 @@
   DCHECK(!results_.get());
   results_ = make_scoped_ptr(new base::DictionaryValue);
   results_->SetInteger("pixels_recorded", record_results_.pixels_recorded);
+  results_->SetInteger("picture_memory_usage", record_results_.bytes_used);
 
   for (int i = 0; i < Picture::RECORDING_MODE_COUNT; i++) {
     std::string name = base::StringPrintf("record_time%s_ms", kModeSuffixes[i]);
@@ -119,6 +121,7 @@
     Picture::RecordingMode mode =
         static_cast<Picture::RecordingMode>(mode_index);
     base::TimeDelta min_time = base::TimeDelta::Max();
+    size_t memory_used = 0;
 
     // Parameters for LapTimer.
     const int kTimeLimitMillis = 1;
@@ -131,18 +134,21 @@
       LapTimer timer(kWarmupRuns,
                      base::TimeDelta::FromMilliseconds(kTimeLimitMillis),
                      kTimeCheckInterval);
+      scoped_refptr<Picture> picture;
       do {
-        scoped_refptr<Picture> picture = Picture::Create(
-            visible_content_rect, painter, tile_grid_info, false, mode);
+        picture = Picture::Create(visible_content_rect, painter, tile_grid_info,
+                                  false, mode);
         timer.NextLap();
       } while (!timer.HasTimeLimitExpired());
       base::TimeDelta duration =
           base::TimeDelta::FromMillisecondsD(timer.MsPerLap());
       if (duration < min_time)
         min_time = duration;
+      memory_used = picture->ApproximateMemoryUsage();
     }
 
     if (mode == Picture::RECORD_NORMALLY) {
+      record_results_.bytes_used += memory_used;
       record_results_.pixels_recorded +=
           visible_content_rect.width() * visible_content_rect.height();
     }
@@ -151,7 +157,8 @@
 }
 
 RasterizeAndRecordBenchmark::RecordResults::RecordResults()
-    : pixels_recorded(0) {}
+    : pixels_recorded(0), bytes_used(0) {
+}
 
 RasterizeAndRecordBenchmark::RecordResults::~RecordResults() {}
 
diff --git a/cc/debug/rasterize_and_record_benchmark.h b/cc/debug/rasterize_and_record_benchmark.h
index 68d5d05..8a23292 100644
--- a/cc/debug/rasterize_and_record_benchmark.h
+++ b/cc/debug/rasterize_and_record_benchmark.h
@@ -46,6 +46,7 @@
     ~RecordResults();
 
     int pixels_recorded;
+    size_t bytes_used;
     base::TimeDelta total_best_time[Picture::RECORDING_MODE_COUNT];
   };
 
diff --git a/cc/debug/rasterize_and_record_benchmark_impl.cc b/cc/debug/rasterize_and_record_benchmark_impl.cc
index e276a41..c1fc809 100644
--- a/cc/debug/rasterize_and_record_benchmark_impl.cc
+++ b/cc/debug/rasterize_and_record_benchmark_impl.cc
@@ -173,6 +173,8 @@
   scoped_ptr<base::DictionaryValue> result(new base::DictionaryValue());
   result->SetDouble("rasterize_time_ms",
                     rasterize_results_.total_best_time.InMillisecondsF());
+  result->SetDouble("total_pictures_in_pile_size",
+                    rasterize_results_.total_memory_usage);
   result->SetInteger("pixels_rasterized", rasterize_results_.pixels_rasterized);
   result->SetInteger("pixels_rasterized_with_non_solid_color",
                      rasterize_results_.pixels_rasterized_with_non_solid_color);
@@ -263,16 +265,22 @@
     rasterize_results_.pixels_rasterized += tile_size;
     rasterize_results_.total_best_time += min_time;
   }
+
+  const RasterSource* layer_raster_source = layer->GetRasterSource();
+  rasterize_results_.total_memory_usage +=
+      layer_raster_source->GetPictureMemoryUsage();
 }
 
 RasterizeAndRecordBenchmarkImpl::RasterizeResults::RasterizeResults()
     : pixels_rasterized(0),
       pixels_rasterized_with_non_solid_color(0),
       pixels_rasterized_as_opaque(0),
+      total_memory_usage(0),
       total_layers(0),
       total_picture_layers(0),
       total_picture_layers_with_no_content(0),
-      total_picture_layers_off_screen(0) {}
+      total_picture_layers_off_screen(0) {
+}
 
 RasterizeAndRecordBenchmarkImpl::RasterizeResults::~RasterizeResults() {}
 
diff --git a/cc/debug/rasterize_and_record_benchmark_impl.h b/cc/debug/rasterize_and_record_benchmark_impl.h
index c0f26fd..7ca471a 100644
--- a/cc/debug/rasterize_and_record_benchmark_impl.h
+++ b/cc/debug/rasterize_and_record_benchmark_impl.h
@@ -41,6 +41,7 @@
     int pixels_rasterized_with_non_solid_color;
     int pixels_rasterized_as_opaque;
     base::TimeDelta total_best_time;
+    int total_memory_usage;
     int total_layers;
     int total_picture_layers;
     int total_picture_layers_with_no_content;
diff --git a/cc/layers/content_layer_client.h b/cc/layers/content_layer_client.h
index ea22e97..c8d3a7e 100644
--- a/cc/layers/content_layer_client.h
+++ b/cc/layers/content_layer_client.h
@@ -6,6 +6,7 @@
 #define CC_LAYERS_CONTENT_LAYER_CLIENT_H_
 
 #include "cc/base/cc_export.h"
+#include "cc/resources/display_item_list.h"
 
 class SkCanvas;
 
@@ -27,6 +28,10 @@
                              const gfx::Rect& clip,
                              GraphicsContextStatus gc_status) = 0;
 
+  virtual scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus gc_status) = 0;
+
   // If true the layer may skip clearing the background before rasterizing,
   // because it will cover any uncleared data with content.
   virtual bool FillsBoundsCompletely() const = 0;
diff --git a/cc/layers/picture_image_layer.cc b/cc/layers/picture_image_layer.cc
index dba506e..5d76618 100644
--- a/cc/layers/picture_image_layer.cc
+++ b/cc/layers/picture_image_layer.cc
@@ -60,6 +60,13 @@
   canvas->drawBitmap(bitmap_, 0, 0);
 }
 
+scoped_refptr<DisplayItemList> PictureImageLayer::PaintContentsToDisplayList(
+    const gfx::Rect& clip,
+    GraphicsContextStatus gc_status) {
+  NOTIMPLEMENTED();
+  return DisplayItemList::Create();
+}
+
 bool PictureImageLayer::FillsBoundsCompletely() const {
   return false;
 }
diff --git a/cc/layers/picture_image_layer.h b/cc/layers/picture_image_layer.h
index 3f8d68d..57c7de2 100644
--- a/cc/layers/picture_image_layer.h
+++ b/cc/layers/picture_image_layer.h
@@ -27,6 +27,9 @@
       SkCanvas* canvas,
       const gfx::Rect& clip,
       ContentLayerClient::GraphicsContextStatus gc_status) override;
+  scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus gc_status) override;
   bool FillsBoundsCompletely() const override;
 
  protected:
diff --git a/cc/layers/picture_layer.cc b/cc/layers/picture_layer.cc
index d734538..55241d0 100644
--- a/cc/layers/picture_layer.cc
+++ b/cc/layers/picture_layer.cc
@@ -7,6 +7,7 @@
 #include "base/auto_reset.h"
 #include "cc/layers/content_layer_client.h"
 #include "cc/layers/picture_layer_impl.h"
+#include "cc/resources/display_list_recording_source.h"
 #include "cc/resources/picture_pile.h"
 #include "cc/trees/layer_tree_impl.h"
 #include "third_party/skia/include/core/SkPictureRecorder.h"
@@ -20,7 +21,6 @@
 
 PictureLayer::PictureLayer(ContentLayerClient* client)
     : client_(client),
-      recording_source_(new PicturePile),
       instrumentation_object_tracker_(id()),
       update_source_frame_number_(-1),
       can_use_lcd_text_for_update_(true),
@@ -79,6 +79,13 @@
 void PictureLayer::SetLayerTreeHost(LayerTreeHost* host) {
   Layer::SetLayerTreeHost(host);
   if (host) {
+    if (!recording_source_) {
+      if (host->settings().use_display_lists) {
+        recording_source_.reset(new DisplayListRecordingSource);
+      } else {
+        recording_source_.reset(new PicturePile);
+      }
+    }
     recording_source_->SetMinContentsScale(
         host->settings().minimum_contents_scale);
     recording_source_->SetTileGridSize(host->settings().default_tile_grid_size);
diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc
index 0eb9621..1827bea 100644
--- a/cc/layers/picture_layer_impl.cc
+++ b/cc/layers/picture_layer_impl.cc
@@ -98,6 +98,14 @@
   layer_tree_impl()->UnregisterPictureLayerImpl(this);
 }
 
+scoped_ptr<TilingSetEvictionQueue> PictureLayerImpl::CreateEvictionQueue(
+    TreePriority tree_priority) {
+  if (!tilings_)
+    return make_scoped_ptr(new TilingSetEvictionQueue());
+  return make_scoped_ptr(
+      new TilingSetEvictionQueue(tilings_.get(), tree_priority));
+}
+
 const char* PictureLayerImpl::LayerTypeAsString() const {
   return "cc::PictureLayerImpl";
 }
@@ -1475,158 +1483,4 @@
   }
 }
 
-PictureLayerImpl::LayerEvictionTileIterator::LayerEvictionTileIterator()
-    : layer_(nullptr),
-      tree_priority_(SAME_PRIORITY_FOR_BOTH_TREES),
-      current_category_(PictureLayerTiling::EVENTUALLY),
-      current_tiling_range_type_(PictureLayerTilingSet::HIGHER_THAN_HIGH_RES),
-      current_tiling_(0u) {
-}
-
-PictureLayerImpl::LayerEvictionTileIterator::LayerEvictionTileIterator(
-    PictureLayerImpl* layer,
-    TreePriority tree_priority)
-    : layer_(layer),
-      tree_priority_(tree_priority),
-      current_category_(PictureLayerTiling::EVENTUALLY),
-      current_tiling_range_type_(PictureLayerTilingSet::HIGHER_THAN_HIGH_RES),
-      current_tiling_(0u) {
-  // Early out if the layer has no tilings.
-  if (!layer_->tilings_ || !layer_->tilings_->num_tilings())
-    return;
-
-  current_tiling_ = CurrentTilingRange().start - 1u;
-  do {
-    if (!AdvanceToNextTiling())
-      break;
-
-    current_iterator_ = PictureLayerTiling::TilingEvictionTileIterator(
-        layer_->tilings_->tiling_at(CurrentTilingIndex()),
-        tree_priority,
-        current_category_);
-  } while (!current_iterator_);
-}
-
-PictureLayerImpl::LayerEvictionTileIterator::~LayerEvictionTileIterator() {
-}
-
-Tile* PictureLayerImpl::LayerEvictionTileIterator::operator*() {
-  DCHECK(*this);
-  return *current_iterator_;
-}
-
-const Tile* PictureLayerImpl::LayerEvictionTileIterator::operator*() const {
-  DCHECK(*this);
-  return *current_iterator_;
-}
-
-PictureLayerImpl::LayerEvictionTileIterator&
-PictureLayerImpl::LayerEvictionTileIterator::
-operator++() {
-  DCHECK(*this);
-  ++current_iterator_;
-  while (!current_iterator_) {
-    if (!AdvanceToNextTiling())
-      break;
-
-    current_iterator_ = PictureLayerTiling::TilingEvictionTileIterator(
-        layer_->tilings_->tiling_at(CurrentTilingIndex()),
-        tree_priority_,
-        current_category_);
-  }
-  return *this;
-}
-
-PictureLayerImpl::LayerEvictionTileIterator::operator bool() const {
-  return !!current_iterator_;
-}
-
-bool PictureLayerImpl::LayerEvictionTileIterator::AdvanceToNextCategory() {
-  switch (current_category_) {
-    case PictureLayerTiling::EVENTUALLY:
-      current_category_ =
-          PictureLayerTiling::EVENTUALLY_AND_REQUIRED_FOR_ACTIVATION;
-      return true;
-    case PictureLayerTiling::EVENTUALLY_AND_REQUIRED_FOR_ACTIVATION:
-      current_category_ = PictureLayerTiling::SOON;
-      return true;
-    case PictureLayerTiling::SOON:
-      current_category_ = PictureLayerTiling::SOON_AND_REQUIRED_FOR_ACTIVATION;
-      return true;
-    case PictureLayerTiling::SOON_AND_REQUIRED_FOR_ACTIVATION:
-      current_category_ = PictureLayerTiling::NOW;
-      return true;
-    case PictureLayerTiling::NOW:
-      current_category_ = PictureLayerTiling::NOW_AND_REQUIRED_FOR_ACTIVATION;
-      return true;
-    case PictureLayerTiling::NOW_AND_REQUIRED_FOR_ACTIVATION:
-      return false;
-  }
-  NOTREACHED();
-  return false;
-}
-
-bool
-PictureLayerImpl::LayerEvictionTileIterator::AdvanceToNextTilingRangeType() {
-  switch (current_tiling_range_type_) {
-    case PictureLayerTilingSet::HIGHER_THAN_HIGH_RES:
-      current_tiling_range_type_ = PictureLayerTilingSet::LOWER_THAN_LOW_RES;
-      return true;
-    case PictureLayerTilingSet::LOWER_THAN_LOW_RES:
-      current_tiling_range_type_ =
-          PictureLayerTilingSet::BETWEEN_HIGH_AND_LOW_RES;
-      return true;
-    case PictureLayerTilingSet::BETWEEN_HIGH_AND_LOW_RES:
-      current_tiling_range_type_ = PictureLayerTilingSet::LOW_RES;
-      return true;
-    case PictureLayerTilingSet::LOW_RES:
-      current_tiling_range_type_ = PictureLayerTilingSet::HIGH_RES;
-      return true;
-    case PictureLayerTilingSet::HIGH_RES:
-      if (!AdvanceToNextCategory())
-        return false;
-
-      current_tiling_range_type_ = PictureLayerTilingSet::HIGHER_THAN_HIGH_RES;
-      return true;
-  }
-  NOTREACHED();
-  return false;
-}
-
-bool PictureLayerImpl::LayerEvictionTileIterator::AdvanceToNextTiling() {
-  DCHECK_NE(current_tiling_, CurrentTilingRange().end);
-  ++current_tiling_;
-  while (current_tiling_ == CurrentTilingRange().end) {
-    if (!AdvanceToNextTilingRangeType())
-      return false;
-
-    current_tiling_ = CurrentTilingRange().start;
-  }
-  return true;
-}
-
-PictureLayerTilingSet::TilingRange
-PictureLayerImpl::LayerEvictionTileIterator::CurrentTilingRange() const {
-  return layer_->tilings_->GetTilingRange(current_tiling_range_type_);
-}
-
-size_t PictureLayerImpl::LayerEvictionTileIterator::CurrentTilingIndex() const {
-  DCHECK_NE(current_tiling_, CurrentTilingRange().end);
-  switch (current_tiling_range_type_) {
-    case PictureLayerTilingSet::HIGHER_THAN_HIGH_RES:
-    case PictureLayerTilingSet::LOW_RES:
-    case PictureLayerTilingSet::HIGH_RES:
-      return current_tiling_;
-    // Tilings in the following ranges are accessed in reverse order.
-    case PictureLayerTilingSet::BETWEEN_HIGH_AND_LOW_RES:
-    case PictureLayerTilingSet::LOWER_THAN_LOW_RES: {
-      PictureLayerTilingSet::TilingRange tiling_range = CurrentTilingRange();
-      size_t current_tiling_range_offset = current_tiling_ - tiling_range.start;
-      return tiling_range.end - 1 - current_tiling_range_offset;
-    }
-  }
-  NOTREACHED();
-  return 0;
-}
-
 }  // namespace cc
diff --git a/cc/layers/picture_layer_impl.h b/cc/layers/picture_layer_impl.h
index 9a77546..52d8433 100644
--- a/cc/layers/picture_layer_impl.h
+++ b/cc/layers/picture_layer_impl.h
@@ -15,6 +15,7 @@
 #include "cc/resources/picture_layer_tiling.h"
 #include "cc/resources/picture_layer_tiling_set.h"
 #include "cc/resources/picture_pile_impl.h"
+#include "cc/resources/tiling_set_eviction_queue.h"
 #include "skia/ext/refptr.h"
 #include "third_party/skia/include/core/SkPicture.h"
 
@@ -67,40 +68,14 @@
     PictureLayerTiling::TilingRasterTileIterator iterators_[NUM_ITERATORS];
   };
 
-  class CC_EXPORT LayerEvictionTileIterator {
-   public:
-    LayerEvictionTileIterator();
-    LayerEvictionTileIterator(PictureLayerImpl* layer,
-                              TreePriority tree_priority);
-    ~LayerEvictionTileIterator();
-
-    Tile* operator*();
-    const Tile* operator*() const;
-    LayerEvictionTileIterator& operator++();
-    operator bool() const;
-
-   private:
-    bool AdvanceToNextCategory();
-    bool AdvanceToNextTilingRangeType();
-    bool AdvanceToNextTiling();
-
-    PictureLayerTilingSet::TilingRange CurrentTilingRange() const;
-    size_t CurrentTilingIndex() const;
-
-    PictureLayerImpl* layer_;
-    TreePriority tree_priority_;
-
-    PictureLayerTiling::EvictionCategory current_category_;
-    PictureLayerTilingSet::TilingRangeType current_tiling_range_type_;
-    size_t current_tiling_;
-    PictureLayerTiling::TilingEvictionTileIterator current_iterator_;
-  };
-
   static scoped_ptr<PictureLayerImpl> Create(LayerTreeImpl* tree_impl, int id) {
     return make_scoped_ptr(new PictureLayerImpl(tree_impl, id));
   }
   ~PictureLayerImpl() override;
 
+  scoped_ptr<TilingSetEvictionQueue> CreateEvictionQueue(
+      TreePriority tree_priority);
+
   // LayerImpl overrides.
   const char* LayerTypeAsString() const override;
   scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) override;
@@ -154,6 +129,9 @@
   bool AllTilesRequiredForActivationAreReadyToDraw() const;
   bool AllTilesRequiredForDrawAreReadyToDraw() const;
 
+  // Used for benchmarking
+  const RasterSource* GetRasterSource() const { return raster_source_.get(); }
+
  protected:
   friend class LayerRasterTileIterator;
   using TileRequirementCheck = bool (PictureLayerTiling::*)(const Tile*) const;
diff --git a/cc/layers/picture_layer_impl_perftest.cc b/cc/layers/picture_layer_impl_perftest.cc
index 1f98a68..bfb5703 100644
--- a/cc/layers/picture_layer_impl_perftest.cc
+++ b/cc/layers/picture_layer_impl_perftest.cc
@@ -115,7 +115,7 @@
                            true);
   }
 
-  void RunEvictionIteratorConstructAndIterateTest(
+  void RunEvictionQueueConstructAndIterateTest(
       const std::string& test_name,
       int num_tiles,
       const gfx::Size& viewport_size) {
@@ -129,12 +129,12 @@
     timer_.Reset();
     do {
       int count = num_tiles;
-      PictureLayerImpl::LayerEvictionTileIterator it(
-          pending_layer_, priorities[priority_count]);
+      scoped_ptr<TilingSetEvictionQueue> queue =
+          pending_layer_->CreateEvictionQueue(priorities[priority_count]);
       while (count--) {
-        ASSERT_TRUE(it) << "count: " << count;
-        ASSERT_TRUE(*it != nullptr) << "count: " << count;
-        ++it;
+        ASSERT_TRUE(!queue->IsEmpty()) << "count: " << count;
+        ASSERT_TRUE(queue->Top() != nullptr) << "count: " << count;
+        queue->Pop();
       }
       priority_count = (priority_count + 1) % arraysize(priorities);
       timer_.NextLap();
@@ -148,8 +148,8 @@
                            true);
   }
 
-  void RunEvictionIteratorConstructTest(const std::string& test_name,
-                                        const gfx::Rect& viewport) {
+  void RunEvictionQueueConstructTest(const std::string& test_name,
+                                     const gfx::Rect& viewport) {
     host_impl_.SetViewportSize(viewport.size());
     pending_layer_->SetScrollOffset(
         gfx::ScrollOffset(viewport.x(), viewport.y()));
@@ -161,8 +161,8 @@
     int priority_count = 0;
     timer_.Reset();
     do {
-      PictureLayerImpl::LayerEvictionTileIterator it(
-          pending_layer_, priorities[priority_count]);
+      scoped_ptr<TilingSetEvictionQueue> queue =
+          pending_layer_->CreateEvictionQueue(priorities[priority_count]);
       priority_count = (priority_count + 1) % arraysize(priorities);
       timer_.NextLap();
     } while (!timer_.HasTimeLimitExpired());
@@ -225,6 +225,7 @@
                                  gfx::Rect(9999, 0, 100, 100));
 }
 
+// TODO(e_hakkinen): Rename these tests once the perf numbers are in.
 TEST_F(PictureLayerImplPerfTest, LayerEvictionTileIteratorConstructAndIterate) {
   SetupPendingTree(gfx::Size(10000, 10000), gfx::Size(256, 256));
 
@@ -240,16 +241,17 @@
   ASSERT_TRUE(host_impl_.tile_manager() != nullptr);
   host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(all_tiles);
 
-  RunEvictionIteratorConstructAndIterateTest(
+  RunEvictionQueueConstructAndIterateTest(
       "32_100x100", 32, gfx::Size(100, 100));
-  RunEvictionIteratorConstructAndIterateTest(
+  RunEvictionQueueConstructAndIterateTest(
       "32_500x500", 32, gfx::Size(500, 500));
-  RunEvictionIteratorConstructAndIterateTest(
+  RunEvictionQueueConstructAndIterateTest(
       "64_100x100", 64, gfx::Size(100, 100));
-  RunEvictionIteratorConstructAndIterateTest(
+  RunEvictionQueueConstructAndIterateTest(
       "64_500x500", 64, gfx::Size(500, 500));
 }
 
+// TODO(e_hakkinen): Rename these tests once the perf numbers are in.
 TEST_F(PictureLayerImplPerfTest, LayerEvictionTileIteratorConstruct) {
   SetupPendingTree(gfx::Size(10000, 10000), gfx::Size(256, 256));
 
@@ -265,11 +267,9 @@
   ASSERT_TRUE(host_impl_.tile_manager() != nullptr);
   host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(all_tiles);
 
-  RunEvictionIteratorConstructTest("0_0_100x100", gfx::Rect(0, 0, 100, 100));
-  RunEvictionIteratorConstructTest("5000_0_100x100",
-                                   gfx::Rect(5000, 0, 100, 100));
-  RunEvictionIteratorConstructTest("9999_0_100x100",
-                                   gfx::Rect(9999, 0, 100, 100));
+  RunEvictionQueueConstructTest("0_0_100x100", gfx::Rect(0, 0, 100, 100));
+  RunEvictionQueueConstructTest("5000_0_100x100", gfx::Rect(5000, 0, 100, 100));
+  RunEvictionQueueConstructTest("9999_0_100x100", gfx::Rect(9999, 0, 100, 100));
 }
 
 }  // namespace
diff --git a/cc/layers/picture_layer_impl_unittest.cc b/cc/layers/picture_layer_impl_unittest.cc
index 246e625..ce66675 100644
--- a/cc/layers/picture_layer_impl_unittest.cc
+++ b/cc/layers/picture_layer_impl_unittest.cc
@@ -330,7 +330,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(400, 400);
 
@@ -347,7 +347,7 @@
 
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   // Update tiles with viewport for tile priority as (0, 0, 100, 100) and the
   // identify transform for tile priority.
@@ -385,7 +385,7 @@
   // should be (200, 200, 100, 100) applied with the said transform.
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   viewport_rect_for_tile_priority = gfx::Rect(200, 200, 100, 100);
   transform_for_tile_priority.Translate(100, 100);
@@ -426,7 +426,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(400, 400);
@@ -468,7 +468,7 @@
   // Should update viewport and transform, but not update visible rect.
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   resourceless_software_draw = true;
   viewport = gfx::ScaleToEnclosingRect(viewport, 2);
   transform.Translate(1.f, 1.f);
@@ -492,7 +492,7 @@
   // Keep expanded viewport but mark it valid. Should update tile viewport.
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   resourceless_software_draw = false;
   host_impl_.SetExternalDrawConstraints(transform,
                                         viewport,
@@ -1561,7 +1561,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   pending_layer_->UpdateTiles(Occlusion(), resourceless_software_draw);
   EXPECT_EQ(HIGH_RESOLUTION, tiling->resolution());
 
@@ -1589,7 +1589,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(400, 400);
@@ -1625,7 +1625,7 @@
   pending_layer_->draw_properties().visible_content_rect = visible_content_rect;
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   pending_layer_->UpdateTiles(Occlusion(), resourceless_software_draw);
 
   // Intersect the two rects. Any tile outside should not be required for
@@ -1678,7 +1678,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(200, 200);
@@ -1714,7 +1714,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(200, 200);
@@ -1745,7 +1745,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(200, 200);
@@ -1779,7 +1779,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(200, 200);
@@ -1822,7 +1822,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(200, 200);
@@ -1890,6 +1890,9 @@
 TEST_F(PictureLayerImplTest, HighResRequiredWhenUnsharedActiveAllReady) {
   gfx::Size layer_bounds(400, 400);
   gfx::Size tile_size(100, 100);
+
+  host_impl_.SetViewportSize(layer_bounds);
+
   SetupDefaultTreesWithFixedTileSize(layer_bounds, tile_size);
 
   // No tiles shared.
@@ -1911,6 +1914,9 @@
 TEST_F(PictureLayerImplTest, HighResRequiredWhenMissingHighResFlagOn) {
   gfx::Size layer_bounds(400, 400);
   gfx::Size tile_size(100, 100);
+
+  host_impl_.SetViewportSize(layer_bounds);
+
   SetupDefaultTreesWithFixedTileSize(layer_bounds, tile_size);
 
   // All tiles shared (no invalidation).
@@ -1935,6 +1941,9 @@
 TEST_F(PictureLayerImplTest, AllHighResRequiredEvenIfShared) {
   gfx::Size layer_bounds(400, 400);
   gfx::Size tile_size(100, 100);
+
+  host_impl_.SetViewportSize(layer_bounds);
+
   SetupDefaultTreesWithFixedTileSize(layer_bounds, tile_size);
 
   CreateHighLowResAndSetAllTilesVisible();
@@ -2009,6 +2018,9 @@
 TEST_F(PictureLayerImplTest, HighResRequiredIfActiveCantHaveTiles) {
   gfx::Size layer_bounds(400, 400);
   gfx::Size tile_size(100, 100);
+
+  host_impl_.SetViewportSize(layer_bounds);
+
   scoped_refptr<FakePicturePileImpl> pending_pile =
       FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds);
   scoped_refptr<FakePicturePileImpl> active_pile =
@@ -2767,7 +2779,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(1000, 1000);
@@ -2837,7 +2849,7 @@
   // No NOW tiles.
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   pending_layer_->draw_properties().visible_content_rect =
       gfx::Rect(1100, 1100, 500, 500);
@@ -2868,7 +2880,7 @@
 
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   pending_layer_->draw_properties().visible_content_rect =
       gfx::Rect(0, 0, 500, 500);
@@ -2903,7 +2915,7 @@
   EXPECT_EQ(0u, high_res_tile_count);
 }
 
-TEST_F(PictureLayerImplTest, LayerEvictionTileIterator) {
+TEST_F(PictureLayerImplTest, TilingSetEvictionQueue) {
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(1000, 1000);
 
@@ -2964,14 +2976,10 @@
   EXPECT_GT(number_of_marked_tiles, 1u);
   EXPECT_GT(number_of_unmarked_tiles, 1u);
 
-  // Empty iterator.
-  PictureLayerImpl::LayerEvictionTileIterator it;
-  EXPECT_FALSE(it);
-
   // Tiles don't have resources yet.
-  it = PictureLayerImpl::LayerEvictionTileIterator(
-      pending_layer_, SAME_PRIORITY_FOR_BOTH_TREES);
-  EXPECT_FALSE(it);
+  scoped_ptr<TilingSetEvictionQueue> queue =
+      pending_layer_->CreateEvictionQueue(SAME_PRIORITY_FOR_BOTH_TREES);
+  EXPECT_TRUE(queue->IsEmpty());
 
   host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(all_tiles);
 
@@ -2980,11 +2988,9 @@
   size_t scale_index = 0;
   bool reached_visible = false;
   Tile* last_tile = nullptr;
-  for (it = PictureLayerImpl::LayerEvictionTileIterator(
-           pending_layer_, SAME_PRIORITY_FOR_BOTH_TREES);
-       it;
-       ++it) {
-    Tile* tile = *it;
+  queue = pending_layer_->CreateEvictionQueue(SAME_PRIORITY_FOR_BOTH_TREES);
+  while (!queue->IsEmpty()) {
+    Tile* tile = queue->Top();
     if (!last_tile)
       last_tile = tile;
 
@@ -3022,6 +3028,7 @@
     }
 
     last_tile = tile;
+    queue->Pop();
   }
 
   EXPECT_TRUE(reached_visible);
@@ -3029,8 +3036,8 @@
 
   scale_index = 0;
   bool reached_required = false;
-  for (; it; ++it) {
-    Tile* tile = *it;
+  while (!queue->IsEmpty()) {
+    Tile* tile = queue->Top();
     EXPECT_TRUE(tile);
 
     TilePriority priority = tile->priority(PENDING_TREE);
@@ -3051,6 +3058,7 @@
 
     EXPECT_FLOAT_EQ(tile->contents_scale(), expected_scales[scale_index]);
     unique_tiles.insert(tile);
+    queue->Pop();
   }
 
   EXPECT_TRUE(reached_required);
@@ -3155,6 +3163,8 @@
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(1000, 1000);
 
+  host_impl_.SetViewportSize(layer_bounds);
+
   SetupDefaultTreesWithFixedTileSize(layer_bounds, tile_size);
 
   // Make sure some tiles are not shared.
@@ -3182,6 +3192,8 @@
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(1000, 1000);
 
+  host_impl_.SetViewportSize(layer_bounds);
+
   SetupDefaultTreesWithFixedTileSize(layer_bounds, tile_size);
 
   // Make sure some tiles are not shared.
@@ -3205,6 +3217,8 @@
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(1000, 1000);
 
+  host_impl_.SetViewportSize(layer_bounds);
+
   SetupDefaultTreesWithFixedTileSize(layer_bounds, tile_size);
 
   // Make sure some tiles are not shared.
@@ -3229,6 +3243,8 @@
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(1000, 1000);
 
+  host_impl_.SetViewportSize(layer_bounds);
+
   SetupDefaultTreesWithFixedTileSize(layer_bounds, tile_size);
 
   // Make sure some tiles are not shared.
@@ -3316,6 +3332,9 @@
 TEST_F(NoLowResPictureLayerImplTest, AllHighResRequiredEvenIfShared) {
   gfx::Size layer_bounds(400, 400);
   gfx::Size tile_size(100, 100);
+
+  host_impl_.SetViewportSize(layer_bounds);
+
   SetupDefaultTreesWithFixedTileSize(layer_bounds, tile_size);
 
   CreateHighLowResAndSetAllTilesVisible();
@@ -3374,7 +3393,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(400, 400);
@@ -3416,7 +3435,7 @@
   // Should update viewport and transform, but not update visible rect.
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   resourceless_software_draw = true;
   viewport = gfx::ScaleToEnclosingRect(viewport, 2);
   transform.Translate(1.f, 1.f);
@@ -3440,7 +3459,7 @@
   // Keep expanded viewport but mark it valid. Should update tile viewport.
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   resourceless_software_draw = false;
   host_impl_.SetExternalDrawConstraints(transform,
                                         viewport,
@@ -3677,6 +3696,8 @@
   gfx::Size tile_size(400, 400);
   gfx::Size layer_bounds(1000, 2000);
 
+  host_impl_.SetViewportSize(layer_bounds);
+
   scoped_refptr<FakePicturePileImpl> pending_pile =
       FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds);
   scoped_refptr<FakePicturePileImpl> active_pile =
@@ -3841,12 +3862,10 @@
       size_t occluded_tile_count = 0u;
       Tile* last_tile = nullptr;
 
-      for (PictureLayerImpl::LayerEvictionTileIterator it =
-               PictureLayerImpl::LayerEvictionTileIterator(layer,
-                                                           tree_priority);
-           it;
-           ++it) {
-        Tile* tile = *it;
+      scoped_ptr<TilingSetEvictionQueue> queue =
+          layer->CreateEvictionQueue(tree_priority);
+      while (!queue->IsEmpty()) {
+        Tile* tile = queue->Top();
         if (!last_tile)
           last_tile = tile;
 
@@ -3874,6 +3893,7 @@
           }
         }
         last_tile = tile;
+        queue->Pop();
       }
       EXPECT_EQ(expected_occluded_tile_count[priority_count],
                 occluded_tile_count);
@@ -3886,7 +3906,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(102, 102);
   gfx::Size layer_bounds(1000, 1000);
@@ -3932,7 +3952,7 @@
 
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   host_impl_.pending_tree()->UpdateDrawProperties();
 
   unoccluded_tile_count = 0;
@@ -3956,7 +3976,7 @@
 
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   host_impl_.pending_tree()->UpdateDrawProperties();
 
   unoccluded_tile_count = 0;
@@ -3981,7 +4001,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(102, 102);
   gfx::Size layer_bounds(1000, 1000);
@@ -4032,7 +4052,7 @@
 
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   host_impl_.pending_tree()->UpdateDrawProperties();
 
   for (size_t i = 0; i < pending_layer_->num_tilings(); ++i) {
@@ -4072,7 +4092,7 @@
 
   time_ticks += base::TimeDelta::FromMilliseconds(200);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
   host_impl_.pending_tree()->UpdateDrawProperties();
 
   for (size_t i = 0; i < pending_layer_->num_tilings(); ++i) {
@@ -4501,7 +4521,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(200, 200);
@@ -4568,7 +4588,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(200, 200);
@@ -4625,7 +4645,7 @@
   base::TimeTicks time_ticks;
   time_ticks += base::TimeDelta::FromMilliseconds(1);
   host_impl_.SetCurrentBeginFrameArgs(
-      CreateBeginFrameArgsForTesting(time_ticks));
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 
   gfx::Size tile_size(100, 100);
   gfx::Size layer_bounds(400, 4000);
diff --git a/cc/layers/picture_layer_unittest.cc b/cc/layers/picture_layer_unittest.cc
index 3f81ef8..ac20e4c 100644
--- a/cc/layers/picture_layer_unittest.cc
+++ b/cc/layers/picture_layer_unittest.cc
@@ -24,6 +24,12 @@
       SkCanvas* canvas,
       const gfx::Rect& clip,
       ContentLayerClient::GraphicsContextStatus gc_status) override {}
+  scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus gc_status) override {
+    NOTIMPLEMENTED();
+    return DisplayItemList::Create();
+  }
   bool FillsBoundsCompletely() const override { return false; };
 };
 
@@ -73,6 +79,9 @@
 TEST(PictureLayerTest, SuitableForGpuRasterization) {
   MockContentLayerClient client;
   scoped_refptr<PictureLayer> layer = PictureLayer::Create(&client);
+  FakeLayerTreeHostClient host_client(FakeLayerTreeHostClient::DIRECT_3D);
+  scoped_ptr<FakeLayerTreeHost> host = FakeLayerTreeHost::Create(&host_client);
+  host->SetRootLayer(layer);
   RecordingSource* recording_source = layer->GetRecordingSourceForTesting();
 
   // Layer is suitable for gpu rasterization by default.
diff --git a/cc/layers/tiled_layer_unittest.cc b/cc/layers/tiled_layer_unittest.cc
index 908d428..512fa51 100644
--- a/cc/layers/tiled_layer_unittest.cc
+++ b/cc/layers/tiled_layer_unittest.cc
@@ -261,6 +261,8 @@
 };
 
 TEST_F(TiledLayerTest, PushDirtyTiles) {
+  layer_tree_host_->SetViewportSize(gfx::Size(1000, 1000));
+
   scoped_refptr<FakeTiledLayer> layer =
       make_scoped_refptr(new FakeTiledLayer(resource_manager_.get()));
   scoped_ptr<FakeTiledLayerImpl> layer_impl =
@@ -290,6 +292,8 @@
 }
 
 TEST_F(TiledLayerTest, Scale) {
+  layer_tree_host_->SetViewportSize(gfx::Size(1000, 1000));
+
   layer_tree_host_->SetDeviceScaleFactor(1.5);
 
   scoped_refptr<FakeTiledLayer> layer =
@@ -352,6 +356,8 @@
 }
 
 TEST_F(TiledLayerTest, PushDeletedTiles) {
+  layer_tree_host_->SetViewportSize(gfx::Size(1000, 1000));
+
   scoped_refptr<FakeTiledLayer> layer =
       make_scoped_refptr(new FakeTiledLayer(resource_manager_.get()));
   scoped_ptr<FakeTiledLayerImpl> layer_impl =
@@ -1201,6 +1207,8 @@
 }
 
 TEST_F(TiledLayerTest, TilesPaintedWithoutOcclusion) {
+  layer_tree_host_->SetViewportSize(gfx::Size(1000, 1000));
+
   scoped_refptr<FakeTiledLayer> layer =
       make_scoped_refptr(new FakeTiledLayer(resource_manager_.get()));
   RenderSurfaceLayerList render_surface_layer_list;
diff --git a/cc/output/begin_frame_args.cc b/cc/output/begin_frame_args.cc
index 0be9318..5744d9d 100644
--- a/cc/output/begin_frame_args.cc
+++ b/cc/output/begin_frame_args.cc
@@ -41,12 +41,19 @@
       type(type) {
 }
 
-BeginFrameArgs BeginFrameArgs::Create(base::TimeTicks frame_time,
+BeginFrameArgs BeginFrameArgs::Create(BeginFrameArgs::CreationLocation location,
+                                      base::TimeTicks frame_time,
                                       base::TimeTicks deadline,
                                       base::TimeDelta interval,
                                       BeginFrameArgs::BeginFrameArgsType type) {
   DCHECK_NE(type, BeginFrameArgs::INVALID);
+#ifdef NDEBUG
   return BeginFrameArgs(frame_time, deadline, interval, type);
+#else
+  BeginFrameArgs args = BeginFrameArgs(frame_time, deadline, interval, type);
+  args.created_from = location;
+  return args;
+#endif
 }
 
 scoped_refptr<base::debug::ConvertableToTraceFormat> BeginFrameArgs::AsValue()
@@ -63,6 +70,9 @@
   state->SetDouble("frame_time_us", frame_time.ToInternalValue());
   state->SetDouble("deadline_us", deadline.ToInternalValue());
   state->SetDouble("interval_us", interval.InMicroseconds());
+#ifndef NDEBUG
+  state->SetString("created_from", created_from.ToString());
+#endif
 }
 
 // This is a hard-coded deadline adjustment that assumes 60Hz, to be used in
diff --git a/cc/output/begin_frame_args.h b/cc/output/begin_frame_args.h
index 0be5241..ba29523 100644
--- a/cc/output/begin_frame_args.h
+++ b/cc/output/begin_frame_args.h
@@ -5,6 +5,7 @@
 #ifndef CC_OUTPUT_BEGIN_FRAME_ARGS_H_
 #define CC_OUTPUT_BEGIN_FRAME_ARGS_H_
 
+#include "base/location.h"
 #include "base/memory/ref_counted.h"
 #include "base/time/time.h"
 #include "base/values.h"
@@ -17,6 +18,22 @@
 }
 }
 
+/**
+ * In debug builds we trace the creation origin of BeginFrameArgs objects. We
+ * reuse the tracked_objects::Location system to do that.
+ *
+ * However, in release builds we don't want this as it doubles the size of the
+ * BeginFrameArgs object. As well it adds a number of largish strings to the
+ * binary. Despite the argument being unused, most compilers are unable to
+ * optimise it away even when unused. Instead we use the BEGINFRAME_FROM_HERE
+ * macro to prevent the data even getting referenced.
+ */
+#ifdef NDEBUG
+#define BEGINFRAME_FROM_HERE nullptr
+#else
+#define BEGINFRAME_FROM_HERE FROM_HERE
+#endif
+
 namespace cc {
 
 struct CC_EXPORT BeginFrameArgs {
@@ -31,9 +48,18 @@
   // Creates an invalid set of values.
   BeginFrameArgs();
 
+#ifdef NDEBUG
+  typedef const void* CreationLocation;
+#else
+  typedef const tracked_objects::Location& CreationLocation;
+  tracked_objects::Location created_from;
+#endif
+
   // You should be able to find all instances where a BeginFrame has been
   // created by searching for "BeginFrameArgs::Create".
-  static BeginFrameArgs Create(base::TimeTicks frame_time,
+  // The location argument should **always** be BEGINFRAME_FROM_HERE macro.
+  static BeginFrameArgs Create(CreationLocation location,
+                               base::TimeTicks frame_time,
                                base::TimeTicks deadline,
                                base::TimeDelta interval,
                                BeginFrameArgsType type);
diff --git a/cc/output/begin_frame_args_unittest.cc b/cc/output/begin_frame_args_unittest.cc
index 9d77a45..877a857 100644
--- a/cc/output/begin_frame_args_unittest.cc
+++ b/cc/output/begin_frame_args_unittest.cc
@@ -15,26 +15,29 @@
 
 TEST(BeginFrameArgsTest, Helpers) {
   // Quick create methods work
-  BeginFrameArgs args0 = CreateBeginFrameArgsForTesting();
+  BeginFrameArgs args0 = CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE);
   EXPECT_TRUE(args0.IsValid()) << args0;
 
-  BeginFrameArgs args1 = CreateBeginFrameArgsForTesting(0, 0, -1);
+  BeginFrameArgs args1 =
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 0, 0, -1);
   EXPECT_FALSE(args1.IsValid()) << args1;
 
-  BeginFrameArgs args2 = CreateBeginFrameArgsForTesting(1, 2, 3);
+  BeginFrameArgs args2 =
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 1, 2, 3);
   EXPECT_TRUE(args2.IsValid()) << args2;
   EXPECT_EQ(1, args2.frame_time.ToInternalValue());
   EXPECT_EQ(2, args2.deadline.ToInternalValue());
   EXPECT_EQ(3, args2.interval.ToInternalValue());
   EXPECT_EQ(BeginFrameArgs::NORMAL, args2.type);
 
-  BeginFrameArgs args3 = CreateExpiredBeginFrameArgsForTesting();
+  BeginFrameArgs args3 =
+      CreateExpiredBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE);
   EXPECT_TRUE(args3.IsValid()) << args3;
   EXPECT_GT(gfx::FrameTime::Now(), args3.deadline);
   EXPECT_EQ(BeginFrameArgs::NORMAL, args3.type);
 
-  BeginFrameArgs args4 =
-      CreateBeginFrameArgsForTesting(1, 2, 3, BeginFrameArgs::MISSED);
+  BeginFrameArgs args4 = CreateBeginFrameArgsForTesting(
+      BEGINFRAME_FROM_HERE, 1, 2, 3, BeginFrameArgs::MISSED);
   EXPECT_TRUE(args4.IsValid()) << args4;
   EXPECT_EQ(1, args4.frame_time.ToInternalValue());
   EXPECT_EQ(2, args4.deadline.ToInternalValue());
@@ -42,16 +45,19 @@
   EXPECT_EQ(BeginFrameArgs::MISSED, args4.type);
 
   // operator==
-  EXPECT_EQ(CreateBeginFrameArgsForTesting(4, 5, 6),
-            CreateBeginFrameArgsForTesting(4, 5, 6));
+  EXPECT_EQ(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 4, 5, 6),
+            CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 4, 5, 6));
 
   EXPECT_NONFATAL_FAILURE(
-      EXPECT_EQ(CreateBeginFrameArgsForTesting(7, 8, 9, BeginFrameArgs::MISSED),
-                CreateBeginFrameArgsForTesting(7, 8, 9)),
+      EXPECT_EQ(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 7, 8, 9,
+                                               BeginFrameArgs::MISSED),
+                CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 7, 8, 9)),
       "");
-  EXPECT_NONFATAL_FAILURE(EXPECT_EQ(CreateBeginFrameArgsForTesting(4, 5, 6),
-                                    CreateBeginFrameArgsForTesting(7, 8, 9)),
-                          "");
+
+  EXPECT_NONFATAL_FAILURE(
+      EXPECT_EQ(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 4, 5, 6),
+                CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 7, 8, 9)),
+      "");
 
   // operator<<
   std::stringstream out1;
@@ -74,7 +80,7 @@
   EXPECT_FALSE(args1.IsValid()) << args1;
 
   BeginFrameArgs args2 = BeginFrameArgs::Create(
-      base::TimeTicks::FromInternalValue(1),
+      BEGINFRAME_FROM_HERE, base::TimeTicks::FromInternalValue(1),
       base::TimeTicks::FromInternalValue(2),
       base::TimeDelta::FromInternalValue(3), BeginFrameArgs::NORMAL);
   EXPECT_TRUE(args2.IsValid()) << args2;
@@ -84,5 +90,14 @@
   EXPECT_EQ(BeginFrameArgs::NORMAL, args2.type) << args2;
 }
 
+#ifndef NDEBUG
+TEST(BeginFrameArgsTest, Location) {
+  tracked_objects::Location expected_location = BEGINFRAME_FROM_HERE;
+
+  BeginFrameArgs args = CreateBeginFrameArgsForTesting(expected_location);
+  EXPECT_EQ(expected_location.ToString(), args.created_from.ToString());
+}
+#endif
+
 }  // namespace
 }  // namespace cc
diff --git a/cc/output/renderer_settings.cc b/cc/output/renderer_settings.cc
index bacde5b..2277af3 100644
--- a/cc/output/renderer_settings.cc
+++ b/cc/output/renderer_settings.cc
@@ -15,6 +15,7 @@
       force_antialiasing(false),
       force_blending_with_shaders(false),
       partial_swap_enabled(false),
+      finish_rendering_on_resize(false),
       should_clear_root_render_pass(true),
       refresh_rate(60.0),
       highp_threshold_min(0),
diff --git a/cc/output/renderer_settings.h b/cc/output/renderer_settings.h
index 748d230..6da0238 100644
--- a/cc/output/renderer_settings.h
+++ b/cc/output/renderer_settings.h
@@ -19,6 +19,7 @@
   bool force_antialiasing;
   bool force_blending_with_shaders;
   bool partial_swap_enabled;
+  bool finish_rendering_on_resize;
   bool should_clear_root_render_pass;
   double refresh_rate;
   int highp_threshold_min;
diff --git a/cc/quads/largest_draw_quad.cc b/cc/quads/largest_draw_quad.cc
index 55fcb22..6445204 100644
--- a/cc/quads/largest_draw_quad.cc
+++ b/cc/quads/largest_draw_quad.cc
@@ -6,15 +6,62 @@
 
 #include <algorithm>
 
+#include "cc/quads/checkerboard_draw_quad.h"
+#include "cc/quads/debug_border_draw_quad.h"
+#include "cc/quads/io_surface_draw_quad.h"
+#include "cc/quads/picture_draw_quad.h"
 #include "cc/quads/render_pass_draw_quad.h"
+#include "cc/quads/solid_color_draw_quad.h"
 #include "cc/quads/stream_video_draw_quad.h"
+#include "cc/quads/surface_draw_quad.h"
+#include "cc/quads/texture_draw_quad.h"
+#include "cc/quads/tile_draw_quad.h"
+#include "cc/quads/yuv_video_draw_quad.h"
+
+namespace {
+const size_t kLargestDrawQuadSize =
+    sizeof(cc::RenderPassDrawQuad) > sizeof(cc::StreamVideoDrawQuad)
+        ? sizeof(cc::RenderPassDrawQuad)
+        : sizeof(cc::StreamVideoDrawQuad);
+}  // namespace
 
 namespace cc {
 
 size_t LargestDrawQuadSize() {
-  // The largest quad is either a RenderPassDrawQuad or a StreamVideoDrawQuad
-  // depends on hardware structure.
-  return std::max(sizeof(RenderPassDrawQuad), sizeof(StreamVideoDrawQuad));
+  // Currently the largest quad is either a RenderPassDrawQuad or a
+  // StreamVideoDrawQuad depends on hardware structure.
+
+  // Use compile assert to make sure largest is actually larger than all other
+  // type of draw quads.
+  COMPILE_ASSERT(sizeof(CheckerboardDrawQuad) <= kLargestDrawQuadSize,
+                 "Largest Draw Quad size needs update. CheckerboardDrawQuad is "
+                 "currently largest.");
+  COMPILE_ASSERT(sizeof(DebugBorderDrawQuad) <= kLargestDrawQuadSize,
+                 "Largest Draw Quad size needs update. DebugBorderDrawQuad is "
+                 "currently largest.");
+  COMPILE_ASSERT(sizeof(IOSurfaceDrawQuad) <= kLargestDrawQuadSize,
+                 "Largest Draw Quad size needs update. IOSurfaceDrawQuad is "
+                 "currently largest.");
+  COMPILE_ASSERT(sizeof(PictureDrawQuad) <= kLargestDrawQuadSize,
+                 "Largest Draw Quad size needs update. PictureDrawQuad is "
+                 "currently largest.");
+  COMPILE_ASSERT(sizeof(TextureDrawQuad) <= kLargestDrawQuadSize,
+                 "Largest Draw Quad size needs update. TextureDrawQuad is "
+                 "currently largest.");
+  COMPILE_ASSERT(sizeof(SolidColorDrawQuad) <= kLargestDrawQuadSize,
+                 "Largest Draw Quad size needs update. SolidColorDrawQuad is "
+                 "currently largest.");
+  COMPILE_ASSERT(sizeof(SurfaceDrawQuad) <= kLargestDrawQuadSize,
+                 "Largest Draw Quad size needs update. SurfaceDrawQuad is "
+                 "currently largest.");
+  COMPILE_ASSERT(sizeof(TileDrawQuad) <= kLargestDrawQuadSize,
+                 "Largest Draw Quad size needs update. TileDrawQuad is "
+                 "currently largest.");
+  COMPILE_ASSERT(sizeof(YUVVideoDrawQuad) <= kLargestDrawQuadSize,
+                 "Largest Draw Quad size needs update. YUVVideoDrawQuad is "
+                 "currently largest.");
+
+  return kLargestDrawQuadSize;
 }
 
 }  // namespace cc
diff --git a/cc/resources/clip_display_item.cc b/cc/resources/clip_display_item.cc
new file mode 100644
index 0000000..731c605
--- /dev/null
+++ b/cc/resources/clip_display_item.cc
@@ -0,0 +1,74 @@
+// Copyright 2014 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.
+
+#include "cc/resources/clip_display_item.h"
+
+#include "third_party/skia/include/core/SkCanvas.h"
+
+namespace cc {
+
+ClipDisplayItem::ClipDisplayItem(gfx::Rect clip_rect,
+                                 const std::vector<SkRRect>& rounded_clip_rects)
+    : clip_rect_(clip_rect), rounded_clip_rects_(rounded_clip_rects) {
+}
+
+ClipDisplayItem::~ClipDisplayItem() {
+}
+
+void ClipDisplayItem::Raster(SkCanvas* canvas,
+                             SkDrawPictureCallback* callback) const {
+  canvas->save();
+  canvas->clipRect(SkRect::MakeXYWH(clip_rect_.x(), clip_rect_.y(),
+                                    clip_rect_.width(), clip_rect_.height()));
+  for (size_t i = 0; i < rounded_clip_rects_.size(); ++i) {
+    if (rounded_clip_rects_[i].isRect()) {
+      canvas->clipRect(rounded_clip_rects_[i].rect());
+    } else {
+      bool antialiased = true;
+      canvas->clipRRect(rounded_clip_rects_[i], SkRegion::kIntersect_Op,
+                        antialiased);
+    }
+  }
+}
+
+bool ClipDisplayItem::IsSuitableForGpuRasterization() const {
+  return true;
+}
+
+int ClipDisplayItem::ApproximateOpCount() const {
+  return 1;
+}
+
+size_t ClipDisplayItem::PictureMemoryUsage() const {
+  size_t total_size = sizeof(gfx::Rect);
+  for (size_t i = 0; i < rounded_clip_rects_.size(); ++i) {
+    total_size += sizeof(rounded_clip_rects_[i]);
+  }
+  return total_size;
+}
+
+EndClipDisplayItem::EndClipDisplayItem() {
+}
+
+EndClipDisplayItem::~EndClipDisplayItem() {
+}
+
+void EndClipDisplayItem::Raster(SkCanvas* canvas,
+                                SkDrawPictureCallback* callback) const {
+  canvas->restore();
+}
+
+bool EndClipDisplayItem::IsSuitableForGpuRasterization() const {
+  return true;
+}
+
+int EndClipDisplayItem::ApproximateOpCount() const {
+  return 0;
+}
+
+size_t EndClipDisplayItem::PictureMemoryUsage() const {
+  return 0;
+}
+
+}  // namespace cc
diff --git a/cc/resources/clip_display_item.h b/cc/resources/clip_display_item.h
new file mode 100644
index 0000000..55c1ffd
--- /dev/null
+++ b/cc/resources/clip_display_item.h
@@ -0,0 +1,66 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_CLIP_DISPLAY_ITEM_H_
+#define CC_RESOURCES_CLIP_DISPLAY_ITEM_H_
+
+#include <vector>
+
+#include "base/memory/scoped_ptr.h"
+#include "cc/base/cc_export.h"
+#include "cc/resources/display_item.h"
+#include "third_party/skia/include/core/SkRRect.h"
+#include "ui/gfx/geometry/rect.h"
+
+class SkCanvas;
+class SkDrawPictureCallback;
+
+namespace cc {
+
+class CC_EXPORT ClipDisplayItem : public DisplayItem {
+ public:
+  virtual ~ClipDisplayItem();
+
+  static scoped_ptr<ClipDisplayItem> Create(
+      gfx::Rect clip_rect,
+      const std::vector<SkRRect>& rounded_clip_rects) {
+    return make_scoped_ptr(new ClipDisplayItem(clip_rect, rounded_clip_rects));
+  }
+
+  void Raster(SkCanvas* canvas, SkDrawPictureCallback* callback) const override;
+
+  bool IsSuitableForGpuRasterization() const override;
+  int ApproximateOpCount() const override;
+  size_t PictureMemoryUsage() const override;
+
+ protected:
+  ClipDisplayItem(gfx::Rect clip_rect,
+                  const std::vector<SkRRect>& rounded_clip_rects);
+
+ private:
+  gfx::Rect clip_rect_;
+  std::vector<SkRRect> rounded_clip_rects_;
+};
+
+class CC_EXPORT EndClipDisplayItem : public DisplayItem {
+ public:
+  virtual ~EndClipDisplayItem();
+
+  static scoped_ptr<EndClipDisplayItem> Create() {
+    return make_scoped_ptr(new EndClipDisplayItem());
+  }
+
+  void Raster(SkCanvas* canvas, SkDrawPictureCallback* callback) const override;
+
+  bool IsSuitableForGpuRasterization() const override;
+  int ApproximateOpCount() const override;
+  size_t PictureMemoryUsage() const override;
+
+ protected:
+  EndClipDisplayItem();
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_CLIP_DISPLAY_ITEM_H_
diff --git a/cc/resources/display_item.cc b/cc/resources/display_item.cc
new file mode 100644
index 0000000..33069a5
--- /dev/null
+++ b/cc/resources/display_item.cc
@@ -0,0 +1,12 @@
+// Copyright 2014 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.
+
+#include "cc/resources/display_item.h"
+
+namespace cc {
+
+DisplayItem::DisplayItem() {
+}
+
+}  // namespace cc
diff --git a/cc/resources/display_item.h b/cc/resources/display_item.h
new file mode 100644
index 0000000..6f1b5f7
--- /dev/null
+++ b/cc/resources/display_item.h
@@ -0,0 +1,34 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_DISPLAY_ITEM_H_
+#define CC_RESOURCES_DISPLAY_ITEM_H_
+
+#include "base/memory/scoped_ptr.h"
+#include "cc/base/cc_export.h"
+#include "ui/gfx/rect.h"
+
+class SkCanvas;
+class SkDrawPictureCallback;
+
+namespace cc {
+
+class CC_EXPORT DisplayItem {
+ public:
+  virtual ~DisplayItem() {}
+
+  virtual void Raster(SkCanvas* canvas,
+                      SkDrawPictureCallback* callback) const = 0;
+
+  virtual bool IsSuitableForGpuRasterization() const = 0;
+  virtual int ApproximateOpCount() const = 0;
+  virtual size_t PictureMemoryUsage() const = 0;
+
+ protected:
+  DisplayItem();
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_DISPLAY_ITEM_H_
diff --git a/cc/resources/display_item_list.cc b/cc/resources/display_item_list.cc
new file mode 100644
index 0000000..2ead28d
--- /dev/null
+++ b/cc/resources/display_item_list.cc
@@ -0,0 +1,79 @@
+// Copyright 2014 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.
+
+#include "cc/resources/display_item_list.h"
+
+#include "base/debug/trace_event.h"
+#include "base/debug/trace_event_argument.h"
+#include "third_party/skia/include/core/SkCanvas.h"
+
+namespace cc {
+
+DisplayItemList::DisplayItemList()
+    : is_suitable_for_gpu_rasterization_(true), approximate_op_count_(0) {
+}
+
+scoped_refptr<DisplayItemList> DisplayItemList::Create() {
+  return make_scoped_refptr(new DisplayItemList());
+}
+
+DisplayItemList::~DisplayItemList() {
+}
+
+void DisplayItemList::Raster(SkCanvas* canvas,
+                             SkDrawPictureCallback* callback,
+                             float contents_scale) const {
+  canvas->save();
+  canvas->scale(contents_scale, contents_scale);
+  for (size_t i = 0; i < items_.size(); ++i) {
+    items_[i]->Raster(canvas, callback);
+  }
+  canvas->restore();
+}
+
+void DisplayItemList::AppendItem(scoped_ptr<DisplayItem> item) {
+  is_suitable_for_gpu_rasterization_ &= item->IsSuitableForGpuRasterization();
+  approximate_op_count_ += item->ApproximateOpCount();
+  items_.push_back(item.Pass());
+}
+
+bool DisplayItemList::IsSuitableForGpuRasterization() const {
+  // This is more permissive than Picture's implementation, since none of the
+  // items might individually trigger a veto even though they collectively have
+  // enough "bad" operations that a corresponding Picture would get vetoed.
+  return is_suitable_for_gpu_rasterization_;
+}
+
+int DisplayItemList::ApproximateOpCount() const {
+  return approximate_op_count_;
+}
+
+size_t DisplayItemList::PictureMemoryUsage() const {
+  size_t total_size = 0;
+
+  for (const auto& item : items_) {
+    total_size += item->PictureMemoryUsage();
+  }
+
+  return total_size;
+}
+
+scoped_refptr<base::debug::ConvertableToTraceFormat> DisplayItemList::AsValue()
+    const {
+  scoped_refptr<base::debug::TracedValue> state =
+      new base::debug::TracedValue();
+
+  // TODO(ajuma): Include the value of each item.
+  state->SetInteger("length", items_.size());
+  return state;
+}
+
+void DisplayItemList::EmitTraceSnapshot() const {
+  TRACE_EVENT_OBJECT_SNAPSHOT_WITH_ID(
+      TRACE_DISABLED_BY_DEFAULT("cc.debug") "," TRACE_DISABLED_BY_DEFAULT(
+          "devtools.timeline.picture"),
+      "cc::DisplayItemList", this, AsValue());
+}
+
+}  // namespace cc
diff --git a/cc/resources/display_item_list.h b/cc/resources/display_item_list.h
new file mode 100644
index 0000000..10d052f
--- /dev/null
+++ b/cc/resources/display_item_list.h
@@ -0,0 +1,53 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_DISPLAY_ITEM_LIST_H_
+#define CC_RESOURCES_DISPLAY_ITEM_LIST_H_
+
+#include "base/debug/trace_event.h"
+#include "base/memory/ref_counted.h"
+#include "base/memory/scoped_ptr.h"
+#include "cc/base/cc_export.h"
+#include "cc/base/scoped_ptr_vector.h"
+#include "cc/resources/display_item.h"
+#include "ui/gfx/rect.h"
+
+class SkCanvas;
+class SkDrawPictureCallback;
+
+namespace cc {
+
+class CC_EXPORT DisplayItemList
+    : public base::RefCountedThreadSafe<DisplayItemList> {
+ public:
+  static scoped_refptr<DisplayItemList> Create();
+
+  void Raster(SkCanvas* canvas,
+              SkDrawPictureCallback* callback,
+              float contents_scale) const;
+
+  void AppendItem(scoped_ptr<DisplayItem> item);
+
+  bool IsSuitableForGpuRasterization() const;
+  int ApproximateOpCount() const;
+  size_t PictureMemoryUsage() const;
+
+  scoped_refptr<base::debug::ConvertableToTraceFormat> AsValue() const;
+
+  void EmitTraceSnapshot() const;
+
+ private:
+  DisplayItemList();
+  ~DisplayItemList();
+  ScopedPtrVector<DisplayItem> items_;
+  bool is_suitable_for_gpu_rasterization_;
+  int approximate_op_count_;
+
+  friend class base::RefCountedThreadSafe<DisplayItemList>;
+  DISALLOW_COPY_AND_ASSIGN(DisplayItemList);
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_DISPLAY_ITEM_LIST_H_
diff --git a/cc/resources/display_item_list_unittest.cc b/cc/resources/display_item_list_unittest.cc
new file mode 100644
index 0000000..d6455a2
--- /dev/null
+++ b/cc/resources/display_item_list_unittest.cc
@@ -0,0 +1,166 @@
+// Copyright 2014 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.
+
+#include "cc/resources/display_item_list.h"
+
+#include <vector>
+
+#include "cc/resources/clip_display_item.h"
+#include "cc/resources/drawing_display_item.h"
+#include "cc/resources/transform_display_item.h"
+#include "cc/test/skia_common.h"
+#include "skia/ext/refptr.h"
+#include "testing/gtest/include/gtest/gtest.h"
+#include "third_party/skia/include/core/SkBitmap.h"
+#include "third_party/skia/include/core/SkCanvas.h"
+#include "third_party/skia/include/core/SkColor.h"
+#include "third_party/skia/include/core/SkPictureRecorder.h"
+#include "ui/gfx/skia_util.h"
+
+namespace cc {
+namespace {
+
+TEST(DisplayItemListTest, SingleDrawingItem) {
+  gfx::Rect layer_rect(100, 100);
+  SkPictureRecorder recorder;
+  skia::RefPtr<SkCanvas> canvas;
+  skia::RefPtr<SkPicture> picture;
+  SkPaint blue_paint;
+  blue_paint.setColor(SK_ColorBLUE);
+  SkPaint red_paint;
+  red_paint.setColor(SK_ColorRED);
+  unsigned char pixels[4 * 100 * 100] = {0};
+  scoped_refptr<DisplayItemList> list = DisplayItemList::Create();
+
+  canvas = skia::SharePtr(
+      recorder.beginRecording(layer_rect.width(), layer_rect.height()));
+  canvas->drawRectCoords(0.f, 0.f, 60.f, 60.f, red_paint);
+  canvas->drawRectCoords(50.f, 50.f, 75.f, 75.f, blue_paint);
+  picture = skia::AdoptRef(recorder.endRecording());
+  gfx::PointF offset(8.f, 9.f);
+  list->AppendItem(DrawingDisplayItem::Create(picture, offset));
+  DrawDisplayList(pixels, layer_rect, list);
+
+  SkBitmap expected_bitmap;
+  unsigned char expected_pixels[4 * 100 * 100] = {0};
+  SkImageInfo info =
+      SkImageInfo::MakeN32Premul(layer_rect.width(), layer_rect.height());
+  expected_bitmap.installPixels(info, expected_pixels, info.minRowBytes());
+  SkCanvas expected_canvas(expected_bitmap);
+  expected_canvas.clipRect(gfx::RectToSkRect(layer_rect));
+  expected_canvas.drawRectCoords(0.f + offset.x(), 0.f + offset.y(),
+                                 60.f + offset.x(), 60.f + offset.y(),
+                                 red_paint);
+  expected_canvas.drawRectCoords(50.f + offset.x(), 50.f + offset.y(),
+                                 75.f + offset.x(), 75.f + offset.y(),
+                                 blue_paint);
+
+  EXPECT_EQ(0, memcmp(pixels, expected_pixels, 4 * 100 * 100));
+}
+
+TEST(DisplayItemListTest, ClipItem) {
+  gfx::Rect layer_rect(100, 100);
+  SkPictureRecorder recorder;
+  skia::RefPtr<SkCanvas> canvas;
+  skia::RefPtr<SkPicture> picture;
+  SkPaint blue_paint;
+  blue_paint.setColor(SK_ColorBLUE);
+  SkPaint red_paint;
+  red_paint.setColor(SK_ColorRED);
+  unsigned char pixels[4 * 100 * 100] = {0};
+  scoped_refptr<DisplayItemList> list = DisplayItemList::Create();
+
+  canvas = skia::SharePtr(
+      recorder.beginRecording(layer_rect.width(), layer_rect.height()));
+  canvas->drawRectCoords(0.f, 0.f, 60.f, 60.f, red_paint);
+  picture = skia::AdoptRef(recorder.endRecording());
+  gfx::PointF first_offset(8.f, 9.f);
+  list->AppendItem(DrawingDisplayItem::Create(picture, first_offset));
+
+  gfx::Rect clip_rect(60, 60, 10, 10);
+  list->AppendItem(ClipDisplayItem::Create(clip_rect, std::vector<SkRRect>()));
+
+  canvas = skia::SharePtr(
+      recorder.beginRecording(layer_rect.width(), layer_rect.height()));
+  canvas->drawRectCoords(50.f, 50.f, 75.f, 75.f, blue_paint);
+  picture = skia::AdoptRef(recorder.endRecording());
+  gfx::PointF second_offset(2.f, 3.f);
+  list->AppendItem(DrawingDisplayItem::Create(picture, second_offset));
+
+  list->AppendItem(EndClipDisplayItem::Create());
+
+  DrawDisplayList(pixels, layer_rect, list);
+
+  SkBitmap expected_bitmap;
+  unsigned char expected_pixels[4 * 100 * 100] = {0};
+  SkImageInfo info =
+      SkImageInfo::MakeN32Premul(layer_rect.width(), layer_rect.height());
+  expected_bitmap.installPixels(info, expected_pixels, info.minRowBytes());
+  SkCanvas expected_canvas(expected_bitmap);
+  expected_canvas.clipRect(gfx::RectToSkRect(layer_rect));
+  expected_canvas.drawRectCoords(0.f + first_offset.x(), 0.f + first_offset.y(),
+                                 60.f + first_offset.x(),
+                                 60.f + first_offset.y(), red_paint);
+  expected_canvas.clipRect(gfx::RectToSkRect(clip_rect));
+  expected_canvas.drawRectCoords(
+      50.f + second_offset.x(), 50.f + second_offset.y(),
+      75.f + second_offset.x(), 75.f + second_offset.y(), blue_paint);
+
+  EXPECT_EQ(0, memcmp(pixels, expected_pixels, 4 * 100 * 100));
+}
+
+TEST(DisplayItemListTest, TransformItem) {
+  gfx::Rect layer_rect(100, 100);
+  SkPictureRecorder recorder;
+  skia::RefPtr<SkCanvas> canvas;
+  skia::RefPtr<SkPicture> picture;
+  SkPaint blue_paint;
+  blue_paint.setColor(SK_ColorBLUE);
+  SkPaint red_paint;
+  red_paint.setColor(SK_ColorRED);
+  unsigned char pixels[4 * 100 * 100] = {0};
+  scoped_refptr<DisplayItemList> list = DisplayItemList::Create();
+
+  canvas = skia::SharePtr(
+      recorder.beginRecording(layer_rect.width(), layer_rect.height()));
+  canvas->drawRectCoords(0.f, 0.f, 60.f, 60.f, red_paint);
+  picture = skia::AdoptRef(recorder.endRecording());
+  gfx::PointF first_offset(8.f, 9.f);
+  list->AppendItem(DrawingDisplayItem::Create(picture, first_offset));
+
+  gfx::Transform transform;
+  transform.Rotate(45.0);
+  list->AppendItem(TransformDisplayItem::Create(transform));
+
+  canvas = skia::SharePtr(
+      recorder.beginRecording(layer_rect.width(), layer_rect.height()));
+  canvas->drawRectCoords(50.f, 50.f, 75.f, 75.f, blue_paint);
+  picture = skia::AdoptRef(recorder.endRecording());
+  gfx::PointF second_offset(2.f, 3.f);
+  list->AppendItem(DrawingDisplayItem::Create(picture, second_offset));
+
+  list->AppendItem(EndTransformDisplayItem::Create());
+
+  DrawDisplayList(pixels, layer_rect, list);
+
+  SkBitmap expected_bitmap;
+  unsigned char expected_pixels[4 * 100 * 100] = {0};
+  SkImageInfo info =
+      SkImageInfo::MakeN32Premul(layer_rect.width(), layer_rect.height());
+  expected_bitmap.installPixels(info, expected_pixels, info.minRowBytes());
+  SkCanvas expected_canvas(expected_bitmap);
+  expected_canvas.clipRect(gfx::RectToSkRect(layer_rect));
+  expected_canvas.drawRectCoords(0.f + first_offset.x(), 0.f + first_offset.y(),
+                                 60.f + first_offset.x(),
+                                 60.f + first_offset.y(), red_paint);
+  expected_canvas.setMatrix(transform.matrix());
+  expected_canvas.drawRectCoords(
+      50.f + second_offset.x(), 50.f + second_offset.y(),
+      75.f + second_offset.x(), 75.f + second_offset.y(), blue_paint);
+
+  EXPECT_EQ(0, memcmp(pixels, expected_pixels, 4 * 100 * 100));
+}
+
+}  // namespace
+}  // namespace cc
diff --git a/cc/resources/display_list_raster_source.cc b/cc/resources/display_list_raster_source.cc
new file mode 100644
index 0000000..f3ff816
--- /dev/null
+++ b/cc/resources/display_list_raster_source.cc
@@ -0,0 +1,208 @@
+// Copyright 2014 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.
+
+#include "cc/resources/display_list_raster_source.h"
+
+#include "base/debug/trace_event.h"
+#include "cc/base/region.h"
+#include "cc/debug/debug_colors.h"
+#include "cc/resources/display_item_list.h"
+#include "cc/resources/raster_source_helper.h"
+#include "skia/ext/analysis_canvas.h"
+#include "third_party/skia/include/core/SkCanvas.h"
+#include "third_party/skia/include/core/SkPictureRecorder.h"
+#include "ui/gfx/geometry/rect_conversions.h"
+
+namespace {
+
+#ifdef NDEBUG
+const bool kDefaultClearCanvasSetting = false;
+#else
+const bool kDefaultClearCanvasSetting = true;
+#endif
+
+}  // namespace
+
+namespace cc {
+
+scoped_refptr<DisplayListRasterSource> DisplayListRasterSource::Create() {
+  return make_scoped_refptr(new DisplayListRasterSource);
+}
+
+scoped_refptr<DisplayListRasterSource>
+DisplayListRasterSource::CreateFromDisplayListRecordingSource(
+    const DisplayListRecordingSource* other) {
+  return make_scoped_refptr(new DisplayListRasterSource(other));
+}
+
+DisplayListRasterSource::DisplayListRasterSource()
+    : background_color_(SK_ColorTRANSPARENT),
+      requires_clear_(true),
+      can_use_lcd_text_(true),
+      is_solid_color_(false),
+      solid_color_(SK_ColorTRANSPARENT),
+      clear_canvas_with_debug_color_(kDefaultClearCanvasSetting),
+      slow_down_raster_scale_factor_for_debug_(0),
+      should_attempt_to_use_distance_field_text_(false) {
+}
+
+DisplayListRasterSource::DisplayListRasterSource(
+    const DisplayListRecordingSource* other)
+    : display_list_(other->display_list_),
+      background_color_(SK_ColorTRANSPARENT),
+      requires_clear_(true),
+      can_use_lcd_text_(other->can_use_lcd_text_),
+      is_solid_color_(other->is_solid_color_),
+      solid_color_(other->solid_color_),
+      recorded_viewport_(other->recorded_viewport_),
+      size_(other->size_),
+      clear_canvas_with_debug_color_(kDefaultClearCanvasSetting),
+      slow_down_raster_scale_factor_for_debug_(
+          other->slow_down_raster_scale_factor_for_debug_),
+      should_attempt_to_use_distance_field_text_(false) {
+}
+
+DisplayListRasterSource::~DisplayListRasterSource() {
+}
+
+void DisplayListRasterSource::PlaybackToSharedCanvas(
+    SkCanvas* canvas,
+    const gfx::Rect& canvas_rect,
+    float contents_scale) const {
+  RasterCommon(canvas, NULL, canvas_rect, contents_scale, false);
+}
+
+void DisplayListRasterSource::RasterForAnalysis(skia::AnalysisCanvas* canvas,
+                                                const gfx::Rect& canvas_rect,
+                                                float contents_scale) const {
+  RasterCommon(canvas, canvas, canvas_rect, contents_scale, true);
+}
+
+void DisplayListRasterSource::PlaybackToCanvas(SkCanvas* canvas,
+                                               const gfx::Rect& canvas_rect,
+                                               float contents_scale) const {
+  RasterSourceHelper::PrepareForPlaybackToCanvas(
+      canvas, canvas_rect, gfx::Rect(size_), contents_scale, background_color_,
+      clear_canvas_with_debug_color_, requires_clear_);
+
+  RasterCommon(canvas, NULL, canvas_rect, contents_scale, false);
+}
+
+void DisplayListRasterSource::RasterCommon(SkCanvas* canvas,
+                                           SkDrawPictureCallback* callback,
+                                           const gfx::Rect& canvas_rect,
+                                           float contents_scale,
+                                           bool is_analysis) const {
+  canvas->translate(-canvas_rect.x(), -canvas_rect.y());
+  gfx::Rect content_rect =
+      gfx::ToEnclosingRect(gfx::ScaleRect(gfx::Rect(size_), contents_scale));
+  content_rect.Intersect(canvas_rect);
+
+  canvas->clipRect(gfx::RectToSkRect(content_rect), SkRegion::kIntersect_Op);
+
+  DCHECK(display_list_.get());
+  display_list_->Raster(canvas, callback, contents_scale);
+}
+
+skia::RefPtr<SkPicture> DisplayListRasterSource::GetFlattenedPicture() {
+  TRACE_EVENT0("cc", "DisplayListRasterSource::GetFlattenedPicture");
+
+  gfx::Rect display_list_rect(size_);
+  SkPictureRecorder recorder;
+  SkCanvas* canvas = recorder.beginRecording(display_list_rect.width(),
+                                             display_list_rect.height());
+  if (!display_list_rect.IsEmpty())
+    PlaybackToCanvas(canvas, display_list_rect, 1.0);
+  skia::RefPtr<SkPicture> picture = skia::AdoptRef(recorder.endRecording());
+
+  return picture;
+}
+
+size_t DisplayListRasterSource::GetPictureMemoryUsage() const {
+  return display_list_->PictureMemoryUsage();
+}
+
+void DisplayListRasterSource::PerformSolidColorAnalysis(
+    const gfx::Rect& content_rect,
+    float contents_scale,
+    RasterSource::SolidColorAnalysis* analysis) const {
+  DCHECK(analysis);
+  TRACE_EVENT0("cc", "DisplayListRasterSource::PerformSolidColorAnalysis");
+
+  gfx::Rect layer_rect =
+      gfx::ScaleToEnclosingRect(content_rect, 1.0f / contents_scale);
+
+  layer_rect.Intersect(gfx::Rect(size_));
+  skia::AnalysisCanvas canvas(layer_rect.width(), layer_rect.height());
+  RasterForAnalysis(&canvas, layer_rect, 1.0f);
+  analysis->is_solid_color = canvas.GetColorIfSolid(&analysis->solid_color);
+}
+
+void DisplayListRasterSource::GatherPixelRefs(
+    const gfx::Rect& content_rect,
+    float contents_scale,
+    std::vector<SkPixelRef*>* pixel_refs) const {
+  // TODO(ajuma): Implement this.
+}
+
+bool DisplayListRasterSource::CoversRect(const gfx::Rect& content_rect,
+                                         float contents_scale) const {
+  if (size_.IsEmpty())
+    return false;
+  gfx::Rect layer_rect =
+      gfx::ScaleToEnclosingRect(content_rect, 1.f / contents_scale);
+  layer_rect.Intersect(gfx::Rect(size_));
+
+  return recorded_viewport_.Contains(layer_rect);
+}
+
+gfx::Size DisplayListRasterSource::GetSize() const {
+  return size_;
+}
+
+bool DisplayListRasterSource::IsSolidColor() const {
+  return is_solid_color_;
+}
+
+SkColor DisplayListRasterSource::GetSolidColor() const {
+  DCHECK(IsSolidColor());
+  return solid_color_;
+}
+
+bool DisplayListRasterSource::HasRecordings() const {
+  return !!display_list_.get();
+}
+
+void DisplayListRasterSource::SetShouldAttemptToUseDistanceFieldText() {
+  should_attempt_to_use_distance_field_text_ = true;
+}
+
+void DisplayListRasterSource::SetBackgoundColor(SkColor background_color) {
+  background_color_ = background_color;
+}
+
+void DisplayListRasterSource::SetRequiresClear(bool requires_clear) {
+  requires_clear_ = requires_clear;
+}
+
+bool DisplayListRasterSource::ShouldAttemptToUseDistanceFieldText() const {
+  return should_attempt_to_use_distance_field_text_;
+}
+
+void DisplayListRasterSource::AsValueInto(
+    base::debug::TracedValue* array) const {
+  if (display_list_.get())
+    TracedValue::AppendIDRef(display_list_.get(), array);
+}
+
+void DisplayListRasterSource::DidBeginTracing() {
+  if (display_list_.get())
+    display_list_->EmitTraceSnapshot();
+}
+
+bool DisplayListRasterSource::CanUseLCDText() const {
+  return can_use_lcd_text_;
+}
+
+}  // namespace cc
diff --git a/cc/resources/display_list_raster_source.h b/cc/resources/display_list_raster_source.h
new file mode 100644
index 0000000..8f1fd12
--- /dev/null
+++ b/cc/resources/display_list_raster_source.h
@@ -0,0 +1,94 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_DISPLAY_LIST_RASTER_SOURCE_H_
+#define CC_RESOURCES_DISPLAY_LIST_RASTER_SOURCE_H_
+
+#include <vector>
+
+#include "base/memory/scoped_ptr.h"
+#include "cc/base/cc_export.h"
+#include "cc/debug/rendering_stats_instrumentation.h"
+#include "cc/resources/display_list_recording_source.h"
+#include "cc/resources/raster_source.h"
+#include "skia/ext/analysis_canvas.h"
+#include "skia/ext/refptr.h"
+#include "third_party/skia/include/core/SkPicture.h"
+
+namespace cc {
+class DisplayItemList;
+
+class CC_EXPORT DisplayListRasterSource : public RasterSource {
+ public:
+  static scoped_refptr<DisplayListRasterSource> Create();
+  static scoped_refptr<DisplayListRasterSource>
+  CreateFromDisplayListRecordingSource(const DisplayListRecordingSource* other);
+
+  // RasterSource overrides.
+  void PlaybackToCanvas(SkCanvas* canvas,
+                        const gfx::Rect& canvas_rect,
+                        float contents_scale) const override;
+  void PlaybackToSharedCanvas(SkCanvas* canvas,
+                              const gfx::Rect& canvas_rect,
+                              float contents_scale) const override;
+  void PerformSolidColorAnalysis(
+      const gfx::Rect& content_rect,
+      float contents_scale,
+      RasterSource::SolidColorAnalysis* analysis) const override;
+  bool IsSolidColor() const override;
+  SkColor GetSolidColor() const override;
+  gfx::Size GetSize() const override;
+  void GatherPixelRefs(const gfx::Rect& content_rect,
+                       float contents_scale,
+                       std::vector<SkPixelRef*>* pixel_refs) const override;
+  bool CoversRect(const gfx::Rect& content_rect,
+                  float contents_scale) const override;
+  bool HasRecordings() const override;
+  void SetShouldAttemptToUseDistanceFieldText() override;
+  void SetBackgoundColor(SkColor background_color) override;
+  void SetRequiresClear(bool requires_clear) override;
+  bool ShouldAttemptToUseDistanceFieldText() const override;
+  void DidBeginTracing() override;
+  void AsValueInto(base::debug::TracedValue* array) const override;
+  skia::RefPtr<SkPicture> GetFlattenedPicture() override;
+  size_t GetPictureMemoryUsage() const override;
+  bool CanUseLCDText() const override;
+
+ protected:
+  DisplayListRasterSource();
+  explicit DisplayListRasterSource(const DisplayListRecordingSource* other);
+  ~DisplayListRasterSource() override;
+
+  scoped_refptr<DisplayItemList> display_list_;
+  SkColor background_color_;
+  bool requires_clear_;
+  bool can_use_lcd_text_;
+  bool is_solid_color_;
+  SkColor solid_color_;
+  gfx::Rect recorded_viewport_;
+  gfx::Size size_;
+  bool clear_canvas_with_debug_color_;
+  int slow_down_raster_scale_factor_for_debug_;
+
+ private:
+  // Called when analyzing a tile. We can use AnalysisCanvas as
+  // SkDrawPictureCallback, which allows us to early out from analysis.
+  void RasterForAnalysis(skia::AnalysisCanvas* canvas,
+                         const gfx::Rect& canvas_rect,
+                         float contents_scale) const;
+
+  void RasterCommon(SkCanvas* canvas,
+                    SkDrawPictureCallback* callback,
+                    const gfx::Rect& canvas_rect,
+                    float contents_scale,
+                    bool is_analysis) const;
+
+  bool should_attempt_to_use_distance_field_text_;
+
+  DISALLOW_COPY_AND_ASSIGN(DisplayListRasterSource);
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_DISPLAY_LIST_RASTER_SOURCE_H_
diff --git a/cc/resources/display_list_recording_source.cc b/cc/resources/display_list_recording_source.cc
new file mode 100644
index 0000000..3c0e0e4
--- /dev/null
+++ b/cc/resources/display_list_recording_source.cc
@@ -0,0 +1,158 @@
+// Copyright 2014 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.
+
+#include "cc/resources/display_list_recording_source.h"
+
+#include <algorithm>
+
+#include "cc/base/region.h"
+#include "cc/layers/content_layer_client.h"
+#include "cc/resources/display_item_list.h"
+#include "cc/resources/display_list_raster_source.h"
+#include "skia/ext/analysis_canvas.h"
+
+namespace {
+
+// Layout pixel buffer around the visible layer rect to record.  Any base
+// picture that intersects the visible layer rect expanded by this distance
+// will be recorded.
+const int kPixelDistanceToRecord = 8000;
+// We don't perform solid color analysis on images that have more than 10 skia
+// operations.
+const int kOpCountThatIsOkToAnalyze = 10;
+
+}  // namespace
+
+namespace cc {
+
+DisplayListRecordingSource::DisplayListRecordingSource()
+    : slow_down_raster_scale_factor_for_debug_(0),
+      can_use_lcd_text_(true),
+      is_solid_color_(false),
+      solid_color_(SK_ColorTRANSPARENT),
+      pixel_record_distance_(kPixelDistanceToRecord),
+      is_suitable_for_gpu_rasterization_(true) {
+}
+
+DisplayListRecordingSource::~DisplayListRecordingSource() {
+}
+
+bool DisplayListRecordingSource::UpdateAndExpandInvalidation(
+    ContentLayerClient* painter,
+    Region* invalidation,
+    bool can_use_lcd_text,
+    const gfx::Size& layer_size,
+    const gfx::Rect& visible_layer_rect,
+    int frame_number,
+    Picture::RecordingMode recording_mode) {
+  bool updated = false;
+
+  if (size_ != layer_size) {
+    size_ = layer_size;
+    updated = true;
+  }
+
+  if (can_use_lcd_text_ != can_use_lcd_text) {
+    can_use_lcd_text_ = can_use_lcd_text;
+    invalidation->Union(gfx::Rect(GetSize()));
+    updated = true;
+  }
+
+  gfx::Rect old_recorded_viewport = recorded_viewport_;
+  recorded_viewport_ = visible_layer_rect;
+  recorded_viewport_.Inset(-pixel_record_distance_, -pixel_record_distance_);
+  recorded_viewport_.Intersect(gfx::Rect(GetSize()));
+
+  if (recorded_viewport_ != old_recorded_viewport) {
+    // Invalidate newly-exposed and no-longer-exposed areas.
+    Region newly_exposed_region(recorded_viewport_);
+    newly_exposed_region.Subtract(old_recorded_viewport);
+    invalidation->Union(newly_exposed_region);
+
+    Region no_longer_exposed_region(old_recorded_viewport);
+    no_longer_exposed_region.Subtract(recorded_viewport_);
+    invalidation->Union(no_longer_exposed_region);
+
+    updated = true;
+  }
+
+  if (!updated && !invalidation->Intersects(recorded_viewport_))
+    return false;
+
+  // TODO(ajuma): Does repeating this way really makes sense with display lists?
+  // With Blink caching recordings, repeated calls will not cause re-recording.
+  int repeat_count = std::max(1, slow_down_raster_scale_factor_for_debug_);
+  for (int i = 0; i < repeat_count; ++i) {
+    display_list_ = painter->PaintContentsToDisplayList(
+        recorded_viewport_, ContentLayerClient::GRAPHICS_CONTEXT_ENABLED);
+  }
+  is_suitable_for_gpu_rasterization_ =
+      display_list_->IsSuitableForGpuRasterization();
+
+  DetermineIfSolidColor();
+  display_list_->EmitTraceSnapshot();
+  return true;
+}
+
+gfx::Size DisplayListRecordingSource::GetSize() const {
+  return size_;
+}
+
+void DisplayListRecordingSource::SetEmptyBounds() {
+  size_ = gfx::Size();
+  Clear();
+}
+
+void DisplayListRecordingSource::SetMinContentsScale(float min_contents_scale) {
+}
+
+void DisplayListRecordingSource::SetTileGridSize(
+    const gfx::Size& tile_grid_size) {
+}
+
+void DisplayListRecordingSource::SetSlowdownRasterScaleFactor(int factor) {
+  slow_down_raster_scale_factor_for_debug_ = factor;
+}
+
+void DisplayListRecordingSource::SetUnsuitableForGpuRasterizationForTesting() {
+  is_suitable_for_gpu_rasterization_ = false;
+}
+
+bool DisplayListRecordingSource::IsSuitableForGpuRasterization() const {
+  return is_suitable_for_gpu_rasterization_;
+}
+
+scoped_refptr<RasterSource> DisplayListRecordingSource::CreateRasterSource()
+    const {
+  return scoped_refptr<RasterSource>(
+      DisplayListRasterSource::CreateFromDisplayListRecordingSource(this));
+}
+
+SkTileGridFactory::TileGridInfo
+DisplayListRecordingSource::GetTileGridInfoForTesting() const {
+  return SkTileGridFactory::TileGridInfo();
+}
+
+void DisplayListRecordingSource::DetermineIfSolidColor() {
+  DCHECK(display_list_.get());
+  is_solid_color_ = false;
+  solid_color_ = SK_ColorTRANSPARENT;
+
+  if (display_list_->ApproximateOpCount() > kOpCountThatIsOkToAnalyze)
+    return;
+
+  skia::AnalysisCanvas canvas(recorded_viewport_.width(),
+                              recorded_viewport_.height());
+  canvas.translate(-recorded_viewport_.x(), -recorded_viewport_.y());
+  display_list_->Raster(&canvas, nullptr, 1.f);
+  is_solid_color_ = canvas.GetColorIfSolid(&solid_color_);
+}
+
+void DisplayListRecordingSource::Clear() {
+  recorded_viewport_ = gfx::Rect();
+  display_list_ = NULL;
+  is_solid_color_ = false;
+}
+
+}  // namespace cc
diff --git a/cc/resources/display_list_recording_source.h b/cc/resources/display_list_recording_source.h
new file mode 100644
index 0000000..6bc8208
--- /dev/null
+++ b/cc/resources/display_list_recording_source.h
@@ -0,0 +1,64 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_DISPLAY_LIST_RECORDING_SOURCE_H_
+#define CC_RESOURCES_DISPLAY_LIST_RECORDING_SOURCE_H_
+
+#include "base/memory/scoped_ptr.h"
+#include "cc/resources/recording_source.h"
+
+namespace cc {
+class DisplayItemList;
+class DisplayListRasterSource;
+
+class CC_EXPORT DisplayListRecordingSource : public RecordingSource {
+ public:
+  DisplayListRecordingSource();
+  ~DisplayListRecordingSource() override;
+
+  // RecordingSource overrides.
+  bool UpdateAndExpandInvalidation(
+      ContentLayerClient* painter,
+      Region* invalidation,
+      bool can_use_lcd_text,
+      const gfx::Size& layer_size,
+      const gfx::Rect& visible_layer_rect,
+      int frame_number,
+      Picture::RecordingMode recording_mode) override;
+  scoped_refptr<RasterSource> CreateRasterSource() const override;
+  gfx::Size GetSize() const final;
+  void SetEmptyBounds() override;
+  void SetMinContentsScale(float min_contents_scale) override;
+  void SetSlowdownRasterScaleFactor(int factor) override;
+  bool IsSuitableForGpuRasterization() const override;
+  void SetTileGridSize(const gfx::Size& tile_grid_size) override;
+  void SetUnsuitableForGpuRasterizationForTesting() override;
+  SkTileGridFactory::TileGridInfo GetTileGridInfoForTesting() const override;
+
+ protected:
+  void Clear();
+
+  gfx::Rect recorded_viewport_;
+  gfx::Size size_;
+  int slow_down_raster_scale_factor_for_debug_;
+  bool can_use_lcd_text_;
+  bool is_solid_color_;
+  SkColor solid_color_;
+  int pixel_record_distance_;
+
+  scoped_refptr<DisplayItemList> display_list_;
+
+ private:
+  friend class DisplayListRasterSource;
+
+  void DetermineIfSolidColor();
+
+  bool is_suitable_for_gpu_rasterization_;
+
+  DISALLOW_COPY_AND_ASSIGN(DisplayListRecordingSource);
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_DISPLAY_LIST_RECORDING_SOURCE_H_
diff --git a/cc/resources/drawing_display_item.cc b/cc/resources/drawing_display_item.cc
new file mode 100644
index 0000000..9466d5c
--- /dev/null
+++ b/cc/resources/drawing_display_item.cc
@@ -0,0 +1,47 @@
+// Copyright 2014 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.
+
+#include "cc/resources/drawing_display_item.h"
+
+#include "base/logging.h"
+#include "third_party/skia/include/core/SkCanvas.h"
+#include "third_party/skia/include/core/SkMatrix.h"
+#include "third_party/skia/include/core/SkPicture.h"
+#include "third_party/skia/include/utils/SkPictureUtils.h"
+
+namespace cc {
+
+DrawingDisplayItem::DrawingDisplayItem(skia::RefPtr<SkPicture> picture,
+                                       gfx::PointF location)
+    : picture_(picture), location_(location) {
+}
+
+DrawingDisplayItem::~DrawingDisplayItem() {
+}
+
+void DrawingDisplayItem::Raster(SkCanvas* canvas,
+                                SkDrawPictureCallback* callback) const {
+  canvas->save();
+  canvas->translate(location_.x(), location_.y());
+  if (callback)
+    picture_->draw(canvas, callback);
+  else
+    canvas->drawPicture(picture_.get());
+  canvas->restore();
+}
+
+bool DrawingDisplayItem::IsSuitableForGpuRasterization() const {
+  return picture_->suitableForGpuRasterization(NULL);
+}
+
+int DrawingDisplayItem::ApproximateOpCount() const {
+  return picture_->approximateOpCount() + sizeof(gfx::PointF);
+}
+
+size_t DrawingDisplayItem::PictureMemoryUsage() const {
+  DCHECK(picture_);
+  return SkPictureUtils::ApproximateBytesUsed(picture_.get());
+}
+
+}  // namespace cc
diff --git a/cc/resources/drawing_display_item.h b/cc/resources/drawing_display_item.h
new file mode 100644
index 0000000..544e4eb
--- /dev/null
+++ b/cc/resources/drawing_display_item.h
@@ -0,0 +1,45 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_DRAWING_DISPLAY_ITEM_H_
+#define CC_RESOURCES_DRAWING_DISPLAY_ITEM_H_
+
+#include "base/memory/scoped_ptr.h"
+#include "cc/base/cc_export.h"
+#include "cc/resources/display_item.h"
+#include "skia/ext/refptr.h"
+#include "ui/gfx/geometry/point_f.h"
+
+class SkCanvas;
+class SkDrawPictureCallback;
+class SkPicture;
+
+namespace cc {
+
+class CC_EXPORT DrawingDisplayItem : public DisplayItem {
+ public:
+  virtual ~DrawingDisplayItem();
+
+  static scoped_ptr<DrawingDisplayItem> Create(skia::RefPtr<SkPicture> picture,
+                                               gfx::PointF location) {
+    return make_scoped_ptr(new DrawingDisplayItem(picture, location));
+  }
+
+  void Raster(SkCanvas* canvas, SkDrawPictureCallback* callback) const override;
+
+  bool IsSuitableForGpuRasterization() const override;
+  int ApproximateOpCount() const override;
+  size_t PictureMemoryUsage() const override;
+
+ protected:
+  DrawingDisplayItem(skia::RefPtr<SkPicture> picture, gfx::PointF location);
+
+ private:
+  skia::RefPtr<SkPicture> picture_;
+  gfx::PointF location_;
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_DRAWING_DISPLAY_ITEM_H_
diff --git a/cc/resources/eviction_tile_priority_queue.cc b/cc/resources/eviction_tile_priority_queue.cc
index 9f05e81..4d66987 100644
--- a/cc/resources/eviction_tile_priority_queue.cc
+++ b/cc/resources/eviction_tile_priority_queue.cc
@@ -14,8 +14,8 @@
       : tree_priority_(tree_priority) {}
 
   bool operator()(
-      const EvictionTilePriorityQueue::PairedPictureLayerQueue* a,
-      const EvictionTilePriorityQueue::PairedPictureLayerQueue* b) const {
+      const EvictionTilePriorityQueue::PairedTilingSetQueue* a,
+      const EvictionTilePriorityQueue::PairedTilingSetQueue* b) const {
     // Note that in this function, we have to return true if and only if
     // b is strictly lower priority than a. Note that for the sake of
     // completeness, empty queue is considered to have lowest priority.
@@ -23,15 +23,15 @@
       return b->IsEmpty() < a->IsEmpty();
 
     WhichTree a_tree = a->NextTileIteratorTree(tree_priority_);
-    const PictureLayerImpl::LayerEvictionTileIterator* a_iterator =
-        a_tree == ACTIVE_TREE ? &a->active_iterator : &a->pending_iterator;
+    const TilingSetEvictionQueue* a_queue =
+        a_tree == ACTIVE_TREE ? a->active_queue.get() : a->pending_queue.get();
 
     WhichTree b_tree = b->NextTileIteratorTree(tree_priority_);
-    const PictureLayerImpl::LayerEvictionTileIterator* b_iterator =
-        b_tree == ACTIVE_TREE ? &b->active_iterator : &b->pending_iterator;
+    const TilingSetEvictionQueue* b_queue =
+        b_tree == ACTIVE_TREE ? b->active_queue.get() : b->pending_queue.get();
 
-    const Tile* a_tile = **a_iterator;
-    const Tile* b_tile = **b_iterator;
+    const Tile* a_tile = a_queue->Top();
+    const Tile* b_tile = b_queue->Top();
 
     const TilePriority& a_priority =
         a_tile->priority_for_tree_priority(tree_priority_);
@@ -94,7 +94,7 @@
        it != paired_layers.end();
        ++it) {
     paired_queues_.push_back(
-        make_scoped_ptr(new PairedPictureLayerQueue(*it, tree_priority_)));
+        make_scoped_ptr(new PairedTilingSetQueue(*it, tree_priority_)));
   }
 
   paired_queues_.make_heap(EvictionOrderComparator(tree_priority_));
@@ -117,94 +117,89 @@
   DCHECK(!IsEmpty());
 
   paired_queues_.pop_heap(EvictionOrderComparator(tree_priority_));
-  PairedPictureLayerQueue* paired_queue = paired_queues_.back();
+  PairedTilingSetQueue* paired_queue = paired_queues_.back();
   paired_queue->Pop(tree_priority_);
   paired_queues_.push_heap(EvictionOrderComparator(tree_priority_));
 }
 
-EvictionTilePriorityQueue::PairedPictureLayerQueue::PairedPictureLayerQueue() {
+EvictionTilePriorityQueue::PairedTilingSetQueue::PairedTilingSetQueue() {
 }
 
-EvictionTilePriorityQueue::PairedPictureLayerQueue::PairedPictureLayerQueue(
+EvictionTilePriorityQueue::PairedTilingSetQueue::PairedTilingSetQueue(
     const PictureLayerImpl::Pair& layer_pair,
-    TreePriority tree_priority)
-    : active_iterator(
-          layer_pair.active
-              ? PictureLayerImpl::LayerEvictionTileIterator(layer_pair.active,
-                                                            tree_priority)
-              : PictureLayerImpl::LayerEvictionTileIterator()),
-      pending_iterator(
-          layer_pair.pending
-              ? PictureLayerImpl::LayerEvictionTileIterator(layer_pair.pending,
-                                                            tree_priority)
-              : PictureLayerImpl::LayerEvictionTileIterator()) {
+    TreePriority tree_priority) {
+  if (layer_pair.active)
+    active_queue = layer_pair.active->CreateEvictionQueue(tree_priority);
+  if (layer_pair.pending)
+    pending_queue = layer_pair.pending->CreateEvictionQueue(tree_priority);
 }
 
-EvictionTilePriorityQueue::PairedPictureLayerQueue::~PairedPictureLayerQueue() {
+EvictionTilePriorityQueue::PairedTilingSetQueue::~PairedTilingSetQueue() {
 }
 
-bool EvictionTilePriorityQueue::PairedPictureLayerQueue::IsEmpty() const {
-  return !active_iterator && !pending_iterator;
+bool EvictionTilePriorityQueue::PairedTilingSetQueue::IsEmpty() const {
+  return (!active_queue || active_queue->IsEmpty()) &&
+         (!pending_queue || pending_queue->IsEmpty());
 }
 
-Tile* EvictionTilePriorityQueue::PairedPictureLayerQueue::Top(
+Tile* EvictionTilePriorityQueue::PairedTilingSetQueue::Top(
     TreePriority tree_priority) {
   DCHECK(!IsEmpty());
 
   WhichTree next_tree = NextTileIteratorTree(tree_priority);
-  PictureLayerImpl::LayerEvictionTileIterator* next_iterator =
-      next_tree == ACTIVE_TREE ? &active_iterator : &pending_iterator;
-  DCHECK(*next_iterator);
+  TilingSetEvictionQueue* next_queue =
+      next_tree == ACTIVE_TREE ? active_queue.get() : pending_queue.get();
+  DCHECK(next_queue && !next_queue->IsEmpty());
 
-  Tile* tile = **next_iterator;
+  Tile* tile = next_queue->Top();
   DCHECK(std::find(returned_shared_tiles.begin(),
                    returned_shared_tiles.end(),
                    tile) == returned_shared_tiles.end());
   return tile;
 }
 
-void EvictionTilePriorityQueue::PairedPictureLayerQueue::Pop(
+void EvictionTilePriorityQueue::PairedTilingSetQueue::Pop(
     TreePriority tree_priority) {
   DCHECK(!IsEmpty());
 
   WhichTree next_tree = NextTileIteratorTree(tree_priority);
-  PictureLayerImpl::LayerEvictionTileIterator* next_iterator =
-      next_tree == ACTIVE_TREE ? &active_iterator : &pending_iterator;
-  DCHECK(*next_iterator);
-  returned_shared_tiles.push_back(**next_iterator);
-  ++(*next_iterator);
+  TilingSetEvictionQueue* next_queue =
+      next_tree == ACTIVE_TREE ? active_queue.get() : pending_queue.get();
+  DCHECK(next_queue && !next_queue->IsEmpty());
+  returned_shared_tiles.push_back(next_queue->Top());
+  next_queue->Pop();
 
   if (IsEmpty())
     return;
 
   next_tree = NextTileIteratorTree(tree_priority);
-  next_iterator =
-      next_tree == ACTIVE_TREE ? &active_iterator : &pending_iterator;
+  next_queue =
+      next_tree == ACTIVE_TREE ? active_queue.get() : pending_queue.get();
   while (std::find(returned_shared_tiles.begin(),
                    returned_shared_tiles.end(),
-                   **next_iterator) != returned_shared_tiles.end()) {
-    ++(*next_iterator);
+                   next_queue->Top()) != returned_shared_tiles.end()) {
+    next_queue->Pop();
     if (IsEmpty())
       break;
     next_tree = NextTileIteratorTree(tree_priority);
-    next_iterator =
-        next_tree == ACTIVE_TREE ? &active_iterator : &pending_iterator;
+    next_queue =
+        next_tree == ACTIVE_TREE ? active_queue.get() : pending_queue.get();
   }
 }
 
 WhichTree
-EvictionTilePriorityQueue::PairedPictureLayerQueue::NextTileIteratorTree(
+EvictionTilePriorityQueue::PairedTilingSetQueue::NextTileIteratorTree(
     TreePriority tree_priority) const {
   DCHECK(!IsEmpty());
 
   // If we only have one iterator with tiles, return it.
-  if (!active_iterator)
+  if (!active_queue || active_queue->IsEmpty())
     return PENDING_TREE;
-  if (!pending_iterator)
+  if (!pending_queue || pending_queue->IsEmpty())
     return ACTIVE_TREE;
 
-  const Tile* active_tile = *active_iterator;
-  const Tile* pending_tile = *pending_iterator;
+  const Tile* active_tile = active_queue->Top();
+  const Tile* pending_tile = pending_queue->Top();
   if (active_tile == pending_tile)
     return ACTIVE_TREE;
 
diff --git a/cc/resources/eviction_tile_priority_queue.h b/cc/resources/eviction_tile_priority_queue.h
index e91f0d2..6f5d964 100644
--- a/cc/resources/eviction_tile_priority_queue.h
+++ b/cc/resources/eviction_tile_priority_queue.h
@@ -11,16 +11,17 @@
 #include "cc/base/cc_export.h"
 #include "cc/layers/picture_layer_impl.h"
 #include "cc/resources/tile_priority.h"
+#include "cc/resources/tiling_set_eviction_queue.h"
 
 namespace cc {
 
 class CC_EXPORT EvictionTilePriorityQueue {
  public:
-  struct PairedPictureLayerQueue {
-    PairedPictureLayerQueue();
-    PairedPictureLayerQueue(const PictureLayerImpl::Pair& layer_pair,
-                            TreePriority tree_priority);
-    ~PairedPictureLayerQueue();
+  struct PairedTilingSetQueue {
+    PairedTilingSetQueue();
+    PairedTilingSetQueue(const PictureLayerImpl::Pair& layer_pair,
+                         TreePriority tree_priority);
+    ~PairedTilingSetQueue();
 
     bool IsEmpty() const;
     Tile* Top(TreePriority tree_priority);
@@ -28,8 +29,8 @@
 
     WhichTree NextTileIteratorTree(TreePriority tree_priority) const;
 
-    PictureLayerImpl::LayerEvictionTileIterator active_iterator;
-    PictureLayerImpl::LayerEvictionTileIterator pending_iterator;
+    scoped_ptr<TilingSetEvictionQueue> active_queue;
+    scoped_ptr<TilingSetEvictionQueue> pending_queue;
 
     // TODO(vmpstr): Investigate removing this.
     std::vector<Tile*> returned_shared_tiles;
@@ -48,9 +49,9 @@
 
  private:
   // TODO(vmpstr): This is potentially unnecessary if it becomes the case that
-  // PairedPictureLayerQueue is fast enough to copy. In that case, we can use
-  // objects directly (ie std::vector<PairedPictureLayerQueue>).
-  ScopedPtrVector<PairedPictureLayerQueue> paired_queues_;
+  // PairedTilingSetQueue is fast enough to copy. In that case, we can use
+  // objects directly (ie std::vector<PairedTilingSetQueue>).
+  ScopedPtrVector<PairedTilingSetQueue> paired_queues_;
   TreePriority tree_priority_;
 
   DISALLOW_COPY_AND_ASSIGN(EvictionTilePriorityQueue);
diff --git a/cc/resources/filter_display_item.cc b/cc/resources/filter_display_item.cc
new file mode 100644
index 0000000..63bfeee
--- /dev/null
+++ b/cc/resources/filter_display_item.cc
@@ -0,0 +1,75 @@
+// Copyright 2014 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.
+
+#include "cc/resources/filter_display_item.h"
+
+#include "third_party/skia/include/core/SkCanvas.h"
+#include "third_party/skia/include/core/SkImageFilter.h"
+#include "third_party/skia/include/core/SkPaint.h"
+#include "third_party/skia/include/core/SkXfermode.h"
+#include "ui/gfx/skia_util.h"
+
+namespace cc {
+
+FilterDisplayItem::FilterDisplayItem(skia::RefPtr<SkImageFilter> filter,
+                                     gfx::RectF bounds)
+    : filter_(filter), bounds_(bounds) {
+}
+
+FilterDisplayItem::~FilterDisplayItem() {
+}
+
+void FilterDisplayItem::Raster(SkCanvas* canvas,
+                               SkDrawPictureCallback* callback) const {
+  canvas->save();
+  SkRect boundaries;
+  filter_->computeFastBounds(gfx::RectFToSkRect(bounds_), &boundaries);
+  canvas->translate(bounds_.x(), bounds_.y());
+  boundaries.offset(-bounds_.x(), -bounds_.y());
+
+  SkPaint paint;
+  paint.setXfermodeMode(SkXfermode::kSrcOver_Mode);
+  paint.setImageFilter(filter_.get());
+  canvas->saveLayer(&boundaries, &paint);
+
+  canvas->translate(-bounds_.x(), -bounds_.y());
+}
+
+bool FilterDisplayItem::IsSuitableForGpuRasterization() const {
+  return true;
+}
+
+int FilterDisplayItem::ApproximateOpCount() const {
+  return 1;
+}
+
+size_t FilterDisplayItem::PictureMemoryUsage() const {
+  return sizeof(skia::RefPtr<SkImageFilter>) + sizeof(gfx::RectF);
+}
+
+EndFilterDisplayItem::EndFilterDisplayItem() {
+}
+
+EndFilterDisplayItem::~EndFilterDisplayItem() {
+}
+
+void EndFilterDisplayItem::Raster(SkCanvas* canvas,
+                                  SkDrawPictureCallback* callback) const {
+  canvas->restore();
+  canvas->restore();
+}
+
+bool EndFilterDisplayItem::IsSuitableForGpuRasterization() const {
+  return true;
+}
+
+int EndFilterDisplayItem::ApproximateOpCount() const {
+  return 0;
+}
+
+size_t EndFilterDisplayItem::PictureMemoryUsage() const {
+  return 0;
+}
+
+}  // namespace cc
diff --git a/cc/resources/filter_display_item.h b/cc/resources/filter_display_item.h
new file mode 100644
index 0000000..4c1b265
--- /dev/null
+++ b/cc/resources/filter_display_item.h
@@ -0,0 +1,64 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_FILTER_DISPLAY_ITEM_H_
+#define CC_RESOURCES_FILTER_DISPLAY_ITEM_H_
+
+#include "base/memory/scoped_ptr.h"
+#include "cc/base/cc_export.h"
+#include "cc/resources/display_item.h"
+#include "skia/ext/refptr.h"
+#include "ui/gfx/geometry/rect_f.h"
+
+class SkCanvas;
+class SkDrawPictureCallback;
+class SkImageFilter;
+
+namespace cc {
+
+class CC_EXPORT FilterDisplayItem : public DisplayItem {
+ public:
+  virtual ~FilterDisplayItem();
+
+  static scoped_ptr<FilterDisplayItem> Create(
+      skia::RefPtr<SkImageFilter> filter,
+      gfx::RectF bounds) {
+    return make_scoped_ptr(new FilterDisplayItem(filter, bounds));
+  }
+
+  void Raster(SkCanvas* canvas, SkDrawPictureCallback* callback) const override;
+
+  bool IsSuitableForGpuRasterization() const override;
+  int ApproximateOpCount() const override;
+  size_t PictureMemoryUsage() const override;
+
+ protected:
+  FilterDisplayItem(skia::RefPtr<SkImageFilter> filter, gfx::RectF bounds);
+
+ private:
+  skia::RefPtr<SkImageFilter> filter_;
+  gfx::RectF bounds_;
+};
+
+class CC_EXPORT EndFilterDisplayItem : public DisplayItem {
+ public:
+  virtual ~EndFilterDisplayItem();
+
+  static scoped_ptr<EndFilterDisplayItem> Create() {
+    return make_scoped_ptr(new EndFilterDisplayItem());
+  }
+
+  void Raster(SkCanvas* canvas, SkDrawPictureCallback* callback) const override;
+
+  bool IsSuitableForGpuRasterization() const override;
+  int ApproximateOpCount() const override;
+  size_t PictureMemoryUsage() const override;
+
+ protected:
+  EndFilterDisplayItem();
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_FILTER_DISPLAY_ITEM_H_
diff --git a/cc/resources/managed_tile_state.cc b/cc/resources/managed_tile_state.cc
index 2841711..a60c28af 100644
--- a/cc/resources/managed_tile_state.cc
+++ b/cc/resources/managed_tile_state.cc
@@ -12,38 +12,9 @@
 
 namespace cc {
 
-std::string ManagedTileBinToString(ManagedTileBin bin) {
-  switch (bin) {
-    case NOW_AND_READY_TO_DRAW_BIN:
-      return "NOW_AND_READY_TO_DRAW_BIN";
-    case NOW_BIN:
-      return "NOW_BIN";
-    case SOON_BIN:
-      return "SOON_BIN";
-    case EVENTUALLY_AND_ACTIVE_BIN:
-      return "EVENTUALLY_AND_ACTIVE_BIN";
-    case EVENTUALLY_BIN:
-      return "EVENTUALLY_BIN";
-    case AT_LAST_AND_ACTIVE_BIN:
-      return "AT_LAST_AND_ACTIVE_BIN";
-    case AT_LAST_BIN:
-      return "AT_LAST_BIN";
-    case NEVER_BIN:
-      return "NEVER_BIN";
-    case NUM_BINS:
-      NOTREACHED();
-      return "Invalid Bin (NUM_BINS)";
-  }
-  return "Invalid Bin (UNKNOWN)";
-}
-
 ManagedTileState::ManagedTileState()
-    : bin(NEVER_BIN),
-      resolution(NON_IDEAL_RESOLUTION),
-      required_for_activation(false),
+    : resolution(NON_IDEAL_RESOLUTION),
       priority_bin(TilePriority::EVENTUALLY),
-      distance_to_visible(std::numeric_limits<float>::infinity()),
-      visible_and_ready_to_draw(false),
       scheduled_priority(0) {
 }
 
@@ -77,12 +48,8 @@
 
   state->SetBoolean("has_resource", has_resource);
   state->SetBoolean("is_using_gpu_memory", is_using_gpu_memory);
-  state->SetString("bin", ManagedTileBinToString(bin));
   state->SetString("resolution", TileResolutionToString(resolution));
   state->SetString("priority_bin", TilePriorityBinToString(priority_bin));
-  state->SetDouble("distance_to_visible",
-                   MathUtil::AsFloatSafely(distance_to_visible));
-  state->SetBoolean("required_for_activation", required_for_activation);
   state->SetBoolean("is_solid_color",
                     draw_info.mode_ == DrawInfo::SOLID_COLOR_MODE);
   state->SetBoolean("is_transparent",
diff --git a/cc/resources/managed_tile_state.h b/cc/resources/managed_tile_state.h
index 58b77c6..a0905c7 100644
--- a/cc/resources/managed_tile_state.h
+++ b/cc/resources/managed_tile_state.h
@@ -15,24 +15,6 @@
 
 namespace cc {
 
-class TileManager;
-
-// Tile manager classifying tiles into a few basic bins:
-enum ManagedTileBin {
-  NOW_AND_READY_TO_DRAW_BIN = 0,  // Ready to draw and within viewport.
-  NOW_BIN = 1,                    // Needed ASAP.
-  SOON_BIN = 2,                   // Impl-side version of prepainting.
-  EVENTUALLY_AND_ACTIVE_BIN = 3,  // Nice to have, and has a task or resource.
-  EVENTUALLY_BIN = 4,             // Nice to have, if we've got memory and time.
-  AT_LAST_AND_ACTIVE_BIN = 5,     // Only do this after all other bins.
-  AT_LAST_BIN = 6,                // Only do this after all other bins.
-  NEVER_BIN = 7,                  // Dont bother.
-  NUM_BINS = 8
-  // NOTE: Be sure to update ManagedTileBinAsValue and kBinPolicyMap when adding
-  // or reordering fields.
-};
-scoped_ptr<base::Value> ManagedTileBinAsValue(ManagedTileBin bin);
-
 // This is state that is specific to a tile that is
 // managed by the TileManager.
 class CC_EXPORT ManagedTileState {
@@ -107,13 +89,8 @@
   DrawInfo draw_info;
   scoped_refptr<RasterTask> raster_task;
 
-  ManagedTileBin bin;
-
   TileResolution resolution;
-  bool required_for_activation;
   TilePriority::PriorityBin priority_bin;
-  float distance_to_visible;
-  bool visible_and_ready_to_draw;
 
   // Priority for this state from the last time we assigned memory.
   unsigned scheduled_priority;
diff --git a/cc/resources/picture.cc b/cc/resources/picture.cc
index 9a45ad1..5b90571 100644
--- a/cc/resources/picture.cc
+++ b/cc/resources/picture.cc
@@ -25,6 +25,7 @@
 #include "third_party/skia/include/core/SkPictureRecorder.h"
 #include "third_party/skia/include/core/SkStream.h"
 #include "third_party/skia/include/utils/SkNullCanvas.h"
+#include "third_party/skia/include/utils/SkPictureUtils.h"
 #include "ui/gfx/codec/jpeg_codec.h"
 #include "ui/gfx/codec/png_codec.h"
 #include "ui/gfx/geometry/rect_conversions.h"
@@ -192,6 +193,11 @@
   return picture_->approximateOpCount();
 }
 
+size_t Picture::ApproximateMemoryUsage() const {
+  DCHECK(picture_);
+  return SkPictureUtils::ApproximateBytesUsed(picture_.get());
+}
+
 bool Picture::HasText() const {
   DCHECK(picture_);
   return picture_->hasText();
diff --git a/cc/resources/picture.h b/cc/resources/picture.h
index 1677309..771d715 100644
--- a/cc/resources/picture.h
+++ b/cc/resources/picture.h
@@ -67,6 +67,7 @@
 
   bool IsSuitableForGpuRasterization() const;
   int ApproximateOpCount() const;
+  size_t ApproximateMemoryUsage() const;
 
   bool HasText() const;
 
diff --git a/cc/resources/picture_layer_tiling.cc b/cc/resources/picture_layer_tiling.cc
index 9d8ea84..e9e3b86 100644
--- a/cc/resources/picture_layer_tiling.cc
+++ b/cc/resources/picture_layer_tiling.cc
@@ -1216,50 +1216,4 @@
   return *this;
 }
 
-PictureLayerTiling::TilingEvictionTileIterator::TilingEvictionTileIterator()
-    : eviction_tiles_(NULL), current_eviction_tiles_index_(0u) {
-}
-
-PictureLayerTiling::TilingEvictionTileIterator::TilingEvictionTileIterator(
-    PictureLayerTiling* tiling,
-    TreePriority tree_priority,
-    EvictionCategory category)
-    : eviction_tiles_(tiling->GetEvictionTiles(tree_priority, category)),
-      // Note: initializing to "0 - 1" works as overflow is well defined for
-      // unsigned integers.
-      current_eviction_tiles_index_(static_cast<size_t>(0) - 1) {
-  DCHECK(eviction_tiles_);
-  ++(*this);
-}
-
-PictureLayerTiling::TilingEvictionTileIterator::~TilingEvictionTileIterator() {
-}
-
-PictureLayerTiling::TilingEvictionTileIterator::operator bool() const {
-  return eviction_tiles_ &&
-         current_eviction_tiles_index_ != eviction_tiles_->size();
-}
-
-Tile* PictureLayerTiling::TilingEvictionTileIterator::operator*() {
-  DCHECK(*this);
-  return (*eviction_tiles_)[current_eviction_tiles_index_];
-}
-
-const Tile* PictureLayerTiling::TilingEvictionTileIterator::operator*() const {
-  DCHECK(*this);
-  return (*eviction_tiles_)[current_eviction_tiles_index_];
-}
-
-PictureLayerTiling::TilingEvictionTileIterator&
-PictureLayerTiling::TilingEvictionTileIterator::
-operator++() {
-  DCHECK(*this);
-  do {
-    ++current_eviction_tiles_index_;
-  } while (current_eviction_tiles_index_ != eviction_tiles_->size() &&
-           !(*eviction_tiles_)[current_eviction_tiles_index_]->HasResources());
-
-  return *this;
-}
-
 }  // namespace cc
diff --git a/cc/resources/picture_layer_tiling.h b/cc/resources/picture_layer_tiling.h
index e1ccde4..daa0485 100644
--- a/cc/resources/picture_layer_tiling.h
+++ b/cc/resources/picture_layer_tiling.h
@@ -118,24 +118,6 @@
     TilingData::SpiralDifferenceIterator spiral_iterator_;
   };
 
-  class CC_EXPORT TilingEvictionTileIterator {
-   public:
-    TilingEvictionTileIterator();
-    TilingEvictionTileIterator(PictureLayerTiling* tiling,
-                               TreePriority tree_priority,
-                               EvictionCategory category);
-    ~TilingEvictionTileIterator();
-
-    operator bool() const;
-    const Tile* operator*() const;
-    Tile* operator*();
-    TilingEvictionTileIterator& operator++();
-
-   private:
-    const std::vector<Tile*>* eviction_tiles_;
-    size_t current_eviction_tiles_index_;
-  };
-
   ~PictureLayerTiling();
 
   // Create a tiling with no tiles.  CreateTiles must be called to add some.
@@ -299,7 +281,7 @@
  protected:
   friend class CoverageIterator;
   friend class TilingRasterTileIterator;
-  friend class TilingEvictionTileIterator;
+  friend class TilingSetEvictionQueue;
 
   typedef std::pair<int, int> TileMapKey;
   typedef base::hash_map<TileMapKey, scoped_refptr<Tile>> TileMap;
diff --git a/cc/resources/picture_layer_tiling_perftest.cc b/cc/resources/picture_layer_tiling_perftest.cc
index 55d495b..3944e46 100644
--- a/cc/resources/picture_layer_tiling_perftest.cc
+++ b/cc/resources/picture_layer_tiling_perftest.cc
@@ -178,98 +178,6 @@
                            true);
   }
 
-  void RunEvictionIteratorConstructTest(const std::string& test_name,
-                                        const gfx::Rect& viewport) {
-    gfx::Size bounds(viewport.size());
-    picture_layer_tiling_ =
-        PictureLayerTiling::Create(1, bounds, &picture_layer_tiling_client_);
-    picture_layer_tiling_client_.set_tree(ACTIVE_TREE);
-    picture_layer_tiling_->ComputeTilePriorityRects(viewport, 1.0f, 1.0,
-                                                    Occlusion());
-
-    timer_.Reset();
-    TreePriority priorities[] = {SAME_PRIORITY_FOR_BOTH_TREES,
-                                 SMOOTHNESS_TAKES_PRIORITY,
-                                 NEW_CONTENT_TAKES_PRIORITY};
-    int priority_count = 0;
-    do {
-      PictureLayerTiling::TilingEvictionTileIterator it(
-          picture_layer_tiling_.get(),
-          priorities[priority_count],
-          PictureLayerTiling::NOW);
-      priority_count = (priority_count + 1) % arraysize(priorities);
-      timer_.NextLap();
-    } while (!timer_.HasTimeLimitExpired());
-
-    perf_test::PrintResult("tiling_eviction_tile_iterator_construct",
-                           "",
-                           test_name,
-                           timer_.LapsPerSecond(),
-                           "runs/s",
-                           true);
-  }
-
-  void RunEvictionIteratorConstructAndIterateTest(const std::string& test_name,
-                                                  int num_tiles,
-                                                  const gfx::Rect& viewport) {
-    gfx::Size bounds(10000, 10000);
-    picture_layer_tiling_ =
-        PictureLayerTiling::Create(1, bounds, &picture_layer_tiling_client_);
-    picture_layer_tiling_client_.set_tree(ACTIVE_TREE);
-    picture_layer_tiling_->ComputeTilePriorityRects(viewport, 1.0f, 1.0,
-                                                    Occlusion());
-
-    TreePriority priorities[] = {SAME_PRIORITY_FOR_BOTH_TREES,
-                                 SMOOTHNESS_TAKES_PRIORITY,
-                                 NEW_CONTENT_TAKES_PRIORITY};
-
-    // Ensure all tiles have resources.
-    std::vector<Tile*> all_tiles = picture_layer_tiling_->AllTilesForTesting();
-    for (std::vector<Tile*>::iterator tile_it = all_tiles.begin();
-         tile_it != all_tiles.end();
-         ++tile_it) {
-      Tile* tile = *tile_it;
-      ManagedTileState::DrawInfo& draw_info = tile->draw_info();
-      draw_info.SetResourceForTesting(
-          ScopedResource::Create(resource_provider_.get()).Pass());
-    }
-
-    int priority_count = 0;
-    timer_.Reset();
-    do {
-      int count = num_tiles;
-      PictureLayerTiling::TilingEvictionTileIterator it(
-          picture_layer_tiling_.get(),
-          priorities[priority_count],
-          PictureLayerTiling::EVENTUALLY);
-      while (count--) {
-        ASSERT_TRUE(it) << "count: " << count;
-        ASSERT_TRUE(*it != NULL) << "count: " << count;
-        ++it;
-      }
-      priority_count = (priority_count + 1) % arraysize(priorities);
-      timer_.NextLap();
-    } while (!timer_.HasTimeLimitExpired());
-
-    // Remove all resources from tiles to make sure the tile version destructor
-    // doesn't complain.
-    for (std::vector<Tile*>::iterator tile_it = all_tiles.begin();
-         tile_it != all_tiles.end();
-         ++tile_it) {
-      Tile* tile = *tile_it;
-      ManagedTileState::DrawInfo& draw_info = tile->draw_info();
-      draw_info.SetResourceForTesting(nullptr);
-    }
-
-    perf_test::PrintResult(
-        "tiling_eviction_tile_iterator_construct_and_iterate",
-        "",
-        test_name,
-        timer_.LapsPerSecond(),
-        "runs/s",
-        true);
-  }
-
  private:
   FakePictureLayerTilingClient picture_layer_tiling_client_;
   scoped_ptr<PictureLayerTiling> picture_layer_tiling_;
@@ -333,27 +241,6 @@
       "64_500x500", 64, gfx::Rect(0, 0, 500, 500));
 }
 
-TEST_F(PictureLayerTilingPerfTest, TilingEvictionTileIteratorConstruct) {
-  RunEvictionIteratorConstructTest("0_0_100x100", gfx::Rect(0, 0, 100, 100));
-  RunEvictionIteratorConstructTest("50_0_100x100", gfx::Rect(50, 0, 100, 100));
-  RunEvictionIteratorConstructTest("100_0_100x100",
-                                   gfx::Rect(100, 0, 100, 100));
-  RunEvictionIteratorConstructTest("150_0_100x100",
-                                   gfx::Rect(150, 0, 100, 100));
-}
-
-TEST_F(PictureLayerTilingPerfTest,
-       TilingEvictionTileIteratorConstructAndIterate) {
-  RunEvictionIteratorConstructAndIterateTest(
-      "32_100x100", 32, gfx::Rect(0, 0, 100, 100));
-  RunEvictionIteratorConstructAndIterateTest(
-      "32_500x500", 32, gfx::Rect(0, 0, 500, 500));
-  RunEvictionIteratorConstructAndIterateTest(
-      "64_100x100", 64, gfx::Rect(0, 0, 100, 100));
-  RunEvictionIteratorConstructAndIterateTest(
-      "64_500x500", 64, gfx::Rect(0, 0, 500, 500));
-}
-
 }  // namespace
 
 }  // namespace cc
diff --git a/cc/resources/picture_layer_tiling_unittest.cc b/cc/resources/picture_layer_tiling_unittest.cc
index b982dc1..9190b98 100644
--- a/cc/resources/picture_layer_tiling_unittest.cc
+++ b/cc/resources/picture_layer_tiling_unittest.cc
@@ -1247,102 +1247,6 @@
   EXPECT_EQ(exists, tile != NULL) << geometry_rect.ToString();
 }
 
-TEST(PictureLayerTilingTest, TilingEvictionTileIteratorStaticViewport) {
-  FakeOutputSurfaceClient output_surface_client;
-  scoped_ptr<FakeOutputSurface> output_surface = FakeOutputSurface::Create3d();
-  CHECK(output_surface->BindToClient(&output_surface_client));
-  TestSharedBitmapManager shared_bitmap_manager;
-  scoped_ptr<ResourceProvider> resource_provider = ResourceProvider::Create(
-      output_surface.get(), &shared_bitmap_manager, NULL, NULL, 0, false, 1);
-
-  FakePictureLayerTilingClient client(resource_provider.get());
-  scoped_ptr<TestablePictureLayerTiling> tiling;
-
-  gfx::Rect viewport(50, 50, 100, 100);
-  gfx::Size layer_bounds(2000, 2000);
-
-  client.SetTileSize(gfx::Size(30, 30));
-  client.set_tree(ACTIVE_TREE);
-
-  tiling = TestablePictureLayerTiling::Create(1.0f, layer_bounds, &client);
-  tiling->ComputeTilePriorityRects(viewport, 1.0f, 1.0, Occlusion());
-  tiling->UpdateAllTilePrioritiesForTesting();
-
-  PictureLayerTiling::TilingRasterTileIterator empty_iterator;
-  EXPECT_FALSE(empty_iterator);
-
-  std::vector<Tile*> all_tiles = tiling->AllTilesForTesting();
-
-  PictureLayerTiling::TilingEvictionTileIterator it(
-      tiling.get(), SMOOTHNESS_TAKES_PRIORITY, PictureLayerTiling::NOW);
-
-  // Tiles don't have resources to evict.
-  EXPECT_FALSE(it);
-
-  // Sanity check.
-  EXPECT_EQ(5184u, all_tiles.size());
-
-  client.tile_manager()->InitializeTilesWithResourcesForTesting(all_tiles);
-
-  std::set<Tile*> all_tiles_set(all_tiles.begin(), all_tiles.end());
-
-  std::set<Tile*> eviction_tiles;
-
-  it = PictureLayerTiling::TilingEvictionTileIterator(
-      tiling.get(), SMOOTHNESS_TAKES_PRIORITY, PictureLayerTiling::EVENTUALLY);
-  EXPECT_TRUE(it);
-  for (; it; ++it) {
-    Tile* tile = *it;
-    EXPECT_TRUE(tile);
-    EXPECT_EQ(TilePriority::EVENTUALLY,
-              tile->priority(ACTIVE_TREE).priority_bin);
-    EXPECT_FALSE(tile->required_for_activation());
-    eviction_tiles.insert(tile);
-  }
-
-  it = PictureLayerTiling::TilingEvictionTileIterator(
-      tiling.get(), SMOOTHNESS_TAKES_PRIORITY, PictureLayerTiling::SOON);
-  EXPECT_TRUE(it);
-  for (; it; ++it) {
-    Tile* tile = *it;
-    EXPECT_TRUE(tile);
-    EXPECT_EQ(TilePriority::SOON, tile->priority(ACTIVE_TREE).priority_bin);
-    EXPECT_FALSE(tile->required_for_activation());
-    eviction_tiles.insert(tile);
-  }
-
-  it = PictureLayerTiling::TilingEvictionTileIterator(
-      tiling.get(), SMOOTHNESS_TAKES_PRIORITY, PictureLayerTiling::NOW);
-  EXPECT_TRUE(it);
-  for (; it; ++it) {
-    Tile* tile = *it;
-    EXPECT_TRUE(tile);
-    EXPECT_EQ(TilePriority::NOW, tile->priority(ACTIVE_TREE).priority_bin);
-    EXPECT_FALSE(tile->required_for_activation());
-    eviction_tiles.insert(tile);
-  }
-
-  it = PictureLayerTiling::TilingEvictionTileIterator(
-      tiling.get(),
-      SMOOTHNESS_TAKES_PRIORITY,
-      PictureLayerTiling::NOW_AND_REQUIRED_FOR_ACTIVATION);
-  EXPECT_FALSE(it);
-
-  EXPECT_GT(all_tiles_set.size(), 0u);
-  EXPECT_EQ(all_tiles_set, eviction_tiles);
-
-  EXPECT_TRUE(tiling->eviction_tiles_cache_valid());
-  tiling->RemoveTileAt(0, 0, nullptr);
-  EXPECT_FALSE(tiling->eviction_tiles_cache_valid());
-
-  it = PictureLayerTiling::TilingEvictionTileIterator(
-      tiling.get(), SMOOTHNESS_TAKES_PRIORITY,
-      PictureLayerTiling::NOW_AND_REQUIRED_FOR_ACTIVATION);
-  EXPECT_TRUE(tiling->eviction_tiles_cache_valid());
-  tiling->Reset();
-  EXPECT_FALSE(tiling->eviction_tiles_cache_valid());
-}
-
 TEST_F(PictureLayerTilingIteratorTest, TilesExist) {
   gfx::Size layer_bounds(1099, 801);
   Initialize(gfx::Size(100, 100), 1.f, layer_bounds);
diff --git a/cc/resources/picture_pile_impl.cc b/cc/resources/picture_pile_impl.cc
index 2655d24..5cd7bd6 100644
--- a/cc/resources/picture_pile_impl.cc
+++ b/cc/resources/picture_pile_impl.cc
@@ -4,11 +4,13 @@
 
 #include <algorithm>
 #include <limits>
+#include <set>
 
 #include "base/debug/trace_event.h"
 #include "cc/base/region.h"
 #include "cc/debug/debug_colors.h"
 #include "cc/resources/picture_pile_impl.h"
+#include "cc/resources/raster_source_helper.h"
 #include "skia/ext/analysis_canvas.h"
 #include "third_party/skia/include/core/SkCanvas.h"
 #include "third_party/skia/include/core/SkPictureRecorder.h"
@@ -87,62 +89,9 @@
 void PicturePileImpl::PlaybackToCanvas(SkCanvas* canvas,
                                        const gfx::Rect& canvas_rect,
                                        float contents_scale) const {
-  canvas->discard();
-  if (clear_canvas_with_debug_color_) {
-    // Any non-painted areas in the content bounds will be left in this color.
-    canvas->clear(DebugColors::NonPaintedFillColor());
-  }
-
-  // If this picture has opaque contents, it is guaranteeing that it will
-  // draw an opaque rect the size of the layer.  If it is not, then we must
-  // clear this canvas ourselves.
-  if (requires_clear_) {
-    TRACE_EVENT_INSTANT0("cc", "SkCanvas::clear", TRACE_EVENT_SCOPE_THREAD);
-    // Clearing is about ~4x faster than drawing a rect even if the content
-    // isn't covering a majority of the canvas.
-    canvas->clear(SK_ColorTRANSPARENT);
-  } else {
-    // Even if completely covered, for rasterizations that touch the edge of the
-    // layer, we also need to raster the background color underneath the last
-    // texel (since the recording won't cover it) and outside the last texel
-    // (due to linear filtering when using this texture).
-    gfx::Rect content_tiling_rect = gfx::ToEnclosingRect(
-        gfx::ScaleRect(gfx::Rect(tiling_.tiling_size()), contents_scale));
-
-    // The final texel of content may only be partially covered by a
-    // rasterization; this rect represents the content rect that is fully
-    // covered by content.
-    gfx::Rect deflated_content_tiling_rect = content_tiling_rect;
-    deflated_content_tiling_rect.Inset(0, 0, 1, 1);
-    if (!deflated_content_tiling_rect.Contains(canvas_rect)) {
-      if (clear_canvas_with_debug_color_) {
-        // Any non-painted areas outside of the content bounds are left in
-        // this color.  If this is seen then it means that cc neglected to
-        // rerasterize a tile that used to intersect with the content rect
-        // after the content bounds grew.
-        canvas->save();
-        canvas->translate(-canvas_rect.x(), -canvas_rect.y());
-        canvas->clipRect(gfx::RectToSkRect(content_tiling_rect),
-                         SkRegion::kDifference_Op);
-        canvas->drawColor(DebugColors::MissingResizeInvalidations(),
-                          SkXfermode::kSrc_Mode);
-        canvas->restore();
-      }
-
-      // Drawing at most 2 x 2 x (canvas width + canvas height) texels is 2-3X
-      // faster than clearing, so special case this.
-      canvas->save();
-      canvas->translate(-canvas_rect.x(), -canvas_rect.y());
-      gfx::Rect inflated_content_tiling_rect = content_tiling_rect;
-      inflated_content_tiling_rect.Inset(0, 0, -1, -1);
-      canvas->clipRect(gfx::RectToSkRect(inflated_content_tiling_rect),
-                       SkRegion::kReplace_Op);
-      canvas->clipRect(gfx::RectToSkRect(deflated_content_tiling_rect),
-                       SkRegion::kDifference_Op);
-      canvas->drawColor(background_color_, SkXfermode::kSrc_Mode);
-      canvas->restore();
-    }
-  }
+  RasterSourceHelper::PrepareForPlaybackToCanvas(
+      canvas, canvas_rect, gfx::Rect(tiling_.tiling_size()), contents_scale,
+      background_color_, clear_canvas_with_debug_color_, requires_clear_);
 
   RasterCommon(canvas,
                NULL,
@@ -319,6 +268,19 @@
   return picture;
 }
 
+size_t PicturePileImpl::GetPictureMemoryUsage() const {
+  // Place all pictures in a set to de-dupe.
+  size_t total_size = 0;
+  std::set<const Picture*> pictures_seen;
+  for (const auto& map_value : picture_map_) {
+    const Picture* picture = map_value.second.GetPicture();
+    if (picture && pictures_seen.insert(picture).second)
+      total_size += picture->ApproximateMemoryUsage();
+  }
+
+  return total_size;
+}
+
 void PicturePileImpl::PerformSolidColorAnalysis(
     const gfx::Rect& content_rect,
     float contents_scale,
diff --git a/cc/resources/picture_pile_impl.h b/cc/resources/picture_pile_impl.h
index d7d0399..3e0dd78 100644
--- a/cc/resources/picture_pile_impl.h
+++ b/cc/resources/picture_pile_impl.h
@@ -67,6 +67,7 @@
   void DidBeginTracing() override;
   void AsValueInto(base::debug::TracedValue* array) const override;
   skia::RefPtr<SkPicture> GetFlattenedPicture() override;
+  size_t GetPictureMemoryUsage() const override;
 
   // Iterator used to return SkPixelRefs from this picture pile.
   // Public for testing.
diff --git a/cc/resources/raster_source.h b/cc/resources/raster_source.h
index 3584436..88c9962 100644
--- a/cc/resources/raster_source.h
+++ b/cc/resources/raster_source.h
@@ -18,6 +18,8 @@
 
 namespace cc {
 
+class Picture;
+
 class CC_EXPORT RasterSource : public base::RefCountedThreadSafe<RasterSource> {
  public:
   struct CC_EXPORT SolidColorAnalysis {
@@ -92,6 +94,7 @@
   virtual void DidBeginTracing() = 0;
   virtual void AsValueInto(base::debug::TracedValue* array) const = 0;
   virtual skia::RefPtr<SkPicture> GetFlattenedPicture() = 0;
+  virtual size_t GetPictureMemoryUsage() const = 0;
 
   // Return true if LCD anti-aliasing may be used when rastering text.
   virtual bool CanUseLCDText() const = 0;
diff --git a/cc/resources/raster_source_helper.cc b/cc/resources/raster_source_helper.cc
new file mode 100644
index 0000000..f7ef305
--- /dev/null
+++ b/cc/resources/raster_source_helper.cc
@@ -0,0 +1,81 @@
+// Copyright 2014 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.
+
+#include "cc/resources/raster_source_helper.h"
+
+#include "base/debug/trace_event.h"
+#include "cc/debug/debug_colors.h"
+#include "third_party/skia/include/core/SkCanvas.h"
+#include "ui/gfx/geometry/rect_conversions.h"
+#include "ui/gfx/skia_util.h"
+
+namespace cc {
+
+void RasterSourceHelper::PrepareForPlaybackToCanvas(
+    SkCanvas* canvas,
+    const gfx::Rect& canvas_rect,
+    const gfx::Rect& source_rect,
+    float contents_scale,
+    SkColor background_color,
+    bool clear_canvas_with_debug_color,
+    bool requires_clear) {
+  canvas->discard();
+  if (clear_canvas_with_debug_color) {
+    // Any non-painted areas in the content bounds will be left in this color.
+    canvas->clear(DebugColors::NonPaintedFillColor());
+  }
+
+  // If this raster source has opaque contents, it is guaranteeing that it will
+  // draw an opaque rect the size of the layer.  If it is not, then we must
+  // clear this canvas ourselves.
+  if (requires_clear) {
+    TRACE_EVENT_INSTANT0("cc", "SkCanvas::clear", TRACE_EVENT_SCOPE_THREAD);
+    // Clearing is about ~4x faster than drawing a rect even if the content
+    // isn't covering a majority of the canvas.
+    canvas->clear(SK_ColorTRANSPARENT);
+  } else {
+    // Even if completely covered, for rasterizations that touch the edge of the
+    // layer, we also need to raster the background color underneath the last
+    // texel (since the recording won't cover it) and outside the last texel
+    // (due to linear filtering when using this texture).
+    gfx::Rect content_rect =
+        gfx::ToEnclosingRect(gfx::ScaleRect(source_rect, contents_scale));
+
+    // The final texel of content may only be partially covered by a
+    // rasterization; this rect represents the content rect that is fully
+    // covered by content.
+    gfx::Rect deflated_content_rect = content_rect;
+    deflated_content_rect.Inset(0, 0, 1, 1);
+    if (!deflated_content_rect.Contains(canvas_rect)) {
+      if (clear_canvas_with_debug_color) {
+        // Any non-painted areas outside of the content bounds are left in
+        // this color.  If this is seen then it means that cc neglected to
+        // rerasterize a tile that used to intersect with the content rect
+        // after the content bounds grew.
+        canvas->save();
+        canvas->translate(-canvas_rect.x(), -canvas_rect.y());
+        canvas->clipRect(gfx::RectToSkRect(content_rect),
+                         SkRegion::kDifference_Op);
+        canvas->drawColor(DebugColors::MissingResizeInvalidations(),
+                          SkXfermode::kSrc_Mode);
+        canvas->restore();
+      }
+
+      // Drawing at most 2 x 2 x (canvas width + canvas height) texels is 2-3X
+      // faster than clearing, so special case this.
+      canvas->save();
+      canvas->translate(-canvas_rect.x(), -canvas_rect.y());
+      gfx::Rect inflated_content_rect = content_rect;
+      inflated_content_rect.Inset(0, 0, -1, -1);
+      canvas->clipRect(gfx::RectToSkRect(inflated_content_rect),
+                       SkRegion::kReplace_Op);
+      canvas->clipRect(gfx::RectToSkRect(deflated_content_rect),
+                       SkRegion::kDifference_Op);
+      canvas->drawColor(background_color, SkXfermode::kSrc_Mode);
+      canvas->restore();
+    }
+  }
+}
+
+}  // namespace cc
diff --git a/cc/resources/raster_source_helper.h b/cc/resources/raster_source_helper.h
new file mode 100644
index 0000000..abdea3e
--- /dev/null
+++ b/cc/resources/raster_source_helper.h
@@ -0,0 +1,29 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_RASTER_SOURCE_HELPER_H_
+#define CC_RESOURCES_RASTER_SOURCE_HELPER_H_
+
+#include "cc/base/cc_export.h"
+#include "third_party/skia/include/core/SkColor.h"
+#include "ui/gfx/geometry/rect.h"
+
+class SkCanvas;
+
+namespace cc {
+
+class CC_EXPORT RasterSourceHelper {
+ public:
+  static void PrepareForPlaybackToCanvas(SkCanvas* canvas,
+                                         const gfx::Rect& canvas_rect,
+                                         const gfx::Rect& source_rect,
+                                         float contents_scale,
+                                         SkColor background_color,
+                                         bool clear_canvas_with_debug_color,
+                                         bool requires_clear);
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_RASTER_SOURCE_HELPER_H_
diff --git a/cc/resources/raster_worker_pool.cc b/cc/resources/raster_worker_pool.cc
index 4511f9d..ca951f6 100644
--- a/cc/resources/raster_worker_pool.cc
+++ b/cc/resources/raster_worker_pool.cc
@@ -206,6 +206,7 @@
     case LUMINANCE_8:
     case RGB_565:
     case ETC1:
+    case RED_8:
       return false;
   }
   NOTREACHED();
diff --git a/cc/resources/resource_format.cc b/cc/resources/resource_format.cc
index 6cd0a93..45581b8 100644
--- a/cc/resources/resource_format.cc
+++ b/cc/resources/resource_format.cc
@@ -17,6 +17,7 @@
     case ALPHA_8:
     case LUMINANCE_8:
     case RGB_565:
+    case RED_8:
       NOTREACHED();
       break;
   }
diff --git a/cc/resources/resource_format.h b/cc/resources/resource_format.h
index b51ac7c..d785ab7 100644
--- a/cc/resources/resource_format.h
+++ b/cc/resources/resource_format.h
@@ -19,7 +19,8 @@
   LUMINANCE_8,
   RGB_565,
   ETC1,
-  RESOURCE_FORMAT_MAX = ETC1,
+  RED_8,
+  RESOURCE_FORMAT_MAX = RED_8,
 };
 
 SkColorType ResourceFormatToSkColorType(ResourceFormat format);
diff --git a/cc/resources/resource_provider.cc b/cc/resources/resource_provider.cc
index 636e797..fe7cc00 100644
--- a/cc/resources/resource_provider.cc
+++ b/cc/resources/resource_provider.cc
@@ -76,6 +76,7 @@
     case LUMINANCE_8:
     case RGB_565:
     case ETC1:
+    case RED_8:
       NOTREACHED();
       break;
   }
@@ -94,6 +95,7 @@
     case LUMINANCE_8:
     case RGB_565:
     case ETC1:
+    case RED_8:
       return false;
   }
   return false;
@@ -125,6 +127,7 @@
     case LUMINANCE_8:
     case RGB_565:
     case ETC1:
+    case RED_8:
       break;
   }
   NOTREACHED();
@@ -1216,6 +1219,7 @@
       use_texture_format_bgra_(false),
       use_texture_usage_hint_(false),
       use_compressed_texture_etc1_(false),
+      yuv_resource_format_(LUMINANCE_8),
       max_texture_size_(0),
       best_texture_format_(RGBA_8888),
       use_rgba_4444_texture_format_(use_rgba_4444_texture_format),
@@ -1254,6 +1258,7 @@
   use_texture_format_bgra_ = caps.gpu.texture_format_bgra8888;
   use_texture_usage_hint_ = caps.gpu.texture_usage;
   use_compressed_texture_etc1_ = caps.gpu.texture_format_etc1;
+  yuv_resource_format_ = caps.gpu.texture_rg ? RED_8 : LUMINANCE_8;
   use_sync_query_ = caps.gpu.sync_query;
 
   GLES2Interface* gl = ContextGL();
diff --git a/cc/resources/resource_provider.h b/cc/resources/resource_provider.h
index bfd3ebb..3a8d2e0 100644
--- a/cc/resources/resource_provider.h
+++ b/cc/resources/resource_provider.h
@@ -99,6 +99,7 @@
     return use_rgba_4444_texture_format_ ? RGBA_4444 : best_texture_format_;
   }
   ResourceFormat best_texture_format() const { return best_texture_format_; }
+  ResourceFormat yuv_resource_format() const { return yuv_resource_format_; }
   bool use_sync_query() const { return use_sync_query_; }
   size_t num_resources() const { return resources_.size(); }
 
@@ -578,6 +579,7 @@
   bool use_texture_format_bgra_;
   bool use_texture_usage_hint_;
   bool use_compressed_texture_etc1_;
+  ResourceFormat yuv_resource_format_;
   scoped_ptr<TextureUploader> texture_uploader_;
   int max_texture_size_;
   ResourceFormat best_texture_format_;
@@ -610,6 +612,7 @@
       return 16;
     case ALPHA_8:
     case LUMINANCE_8:
+    case RED_8:
       return 8;
     case ETC1:
       return 4;
@@ -621,13 +624,14 @@
 inline GLenum GLDataType(ResourceFormat format) {
   DCHECK_LE(format, RESOURCE_FORMAT_MAX);
   static const unsigned format_gl_data_type[RESOURCE_FORMAT_MAX + 1] = {
-    GL_UNSIGNED_BYTE,           // RGBA_8888
-    GL_UNSIGNED_SHORT_4_4_4_4,  // RGBA_4444
-    GL_UNSIGNED_BYTE,           // BGRA_8888
-    GL_UNSIGNED_BYTE,           // ALPHA_8
-    GL_UNSIGNED_BYTE,           // LUMINANCE_8
-    GL_UNSIGNED_SHORT_5_6_5,    // RGB_565,
-    GL_UNSIGNED_BYTE            // ETC1
+      GL_UNSIGNED_BYTE,           // RGBA_8888
+      GL_UNSIGNED_SHORT_4_4_4_4,  // RGBA_4444
+      GL_UNSIGNED_BYTE,           // BGRA_8888
+      GL_UNSIGNED_BYTE,           // ALPHA_8
+      GL_UNSIGNED_BYTE,           // LUMINANCE_8
+      GL_UNSIGNED_SHORT_5_6_5,    // RGB_565,
+      GL_UNSIGNED_BYTE,           // ETC1
+      GL_UNSIGNED_BYTE            // RED_8
   };
   return format_gl_data_type[format];
 }
@@ -635,13 +639,14 @@
 inline GLenum GLDataFormat(ResourceFormat format) {
   DCHECK_LE(format, RESOURCE_FORMAT_MAX);
   static const unsigned format_gl_data_format[RESOURCE_FORMAT_MAX + 1] = {
-    GL_RGBA,           // RGBA_8888
-    GL_RGBA,           // RGBA_4444
-    GL_BGRA_EXT,       // BGRA_8888
-    GL_ALPHA,          // ALPHA_8
-    GL_LUMINANCE,      // LUMINANCE_8
-    GL_RGB,            // RGB_565
-    GL_ETC1_RGB8_OES   // ETC1
+      GL_RGBA,           // RGBA_8888
+      GL_RGBA,           // RGBA_4444
+      GL_BGRA_EXT,       // BGRA_8888
+      GL_ALPHA,          // ALPHA_8
+      GL_LUMINANCE,      // LUMINANCE_8
+      GL_RGB,            // RGB_565
+      GL_ETC1_RGB8_OES,  // ETC1
+      GL_RED_EXT         // RED_8
   };
   return format_gl_data_format[format];
 }
diff --git a/cc/resources/shared_bitmap.cc b/cc/resources/shared_bitmap.cc
index 31cf245..1ac0323 100644
--- a/cc/resources/shared_bitmap.cc
+++ b/cc/resources/shared_bitmap.cc
@@ -10,25 +10,13 @@
 
 namespace cc {
 
-SharedBitmap::SharedBitmap(
-    base::SharedMemory* memory,
-    const SharedBitmapId& id,
-    const base::Callback<void(SharedBitmap* bitmap)>& free_callback)
-    : memory_(memory),
-      pixels_(static_cast<uint8*>(memory_->memory())),
-      id_(id),
-      free_callback_(free_callback) {
+SharedBitmap::SharedBitmap(uint8* pixels, const SharedBitmapId& id)
+    : pixels_(pixels), id_(id) {
 }
 
-SharedBitmap::SharedBitmap(
-    uint8* pixels,
-    const SharedBitmapId& id,
-    const base::Callback<void(SharedBitmap* bitmap)>& free_callback)
-    : memory_(NULL), pixels_(pixels), id_(id), free_callback_(free_callback) {
+SharedBitmap::~SharedBitmap() {
 }
 
-SharedBitmap::~SharedBitmap() { free_callback_.Run(this); }
-
 // static
 bool SharedBitmap::SizeInBytes(const gfx::Size& size, size_t* size_in_bytes) {
   if (size.IsEmpty())
diff --git a/cc/resources/shared_bitmap.h b/cc/resources/shared_bitmap.h
index ca12710..bbf0823 100644
--- a/cc/resources/shared_bitmap.h
+++ b/cc/resources/shared_bitmap.h
@@ -6,8 +6,7 @@
 #define CC_RESOURCES_SHARED_BITMAP_H_
 
 #include "base/basictypes.h"
-#include "base/callback.h"
-#include "base/memory/shared_memory.h"
+#include "base/memory/scoped_ptr.h"
 #include "cc/base/cc_export.h"
 #include "gpu/command_buffer/common/mailbox.h"
 #include "ui/gfx/geometry/size.h"
@@ -19,29 +18,15 @@
 
 class CC_EXPORT SharedBitmap {
  public:
-  SharedBitmap(base::SharedMemory* memory,
-               const SharedBitmapId& id,
-               const base::Callback<void(SharedBitmap* bitmap)>& free_callback);
+  SharedBitmap(uint8* pixels, const SharedBitmapId& id);
 
-  SharedBitmap(uint8* pixels,
-               const SharedBitmapId& id,
-               const base::Callback<void(SharedBitmap* bitmap)>& free_callback);
-
-  ~SharedBitmap();
-
-  bool operator<(const SharedBitmap& right) const {
-    if (memory_ < right.memory_)
-      return true;
-    if (memory_ > right.memory_)
-      return false;
-    return id_ < right.id_;
-  }
+  virtual ~SharedBitmap();
 
   uint8* pixels() { return pixels_; }
 
-  base::SharedMemory* memory() { return memory_; }
+  virtual base::SharedMemory* memory() = 0;
 
-  SharedBitmapId id() { return id_; }
+  const SharedBitmapId& id() { return id_; }
 
   // Returns true if the size is valid and false otherwise.
   static bool SizeInBytes(const gfx::Size& size, size_t* size_in_bytes);
@@ -57,10 +42,8 @@
   static SharedBitmapId GenerateId();
 
  private:
-  base::SharedMemory* memory_;
   uint8* pixels_;
   SharedBitmapId id_;
-  base::Callback<void(SharedBitmap* bitmap)> free_callback_;
 
   DISALLOW_COPY_AND_ASSIGN(SharedBitmap);
 };
diff --git a/cc/resources/texture_uploader_unittest.cc b/cc/resources/texture_uploader_unittest.cc
index 7249172..b168962 100644
--- a/cc/resources/texture_uploader_unittest.cc
+++ b/cc/resources/texture_uploader_unittest.cc
@@ -111,6 +111,14 @@
         EXPECT_EQ(static_cast<unsigned>(GL_UNSIGNED_BYTE), type);
         bytes_per_pixel = 2;
         break;
+      case GL_RED_EXT:
+        EXPECT_EQ(static_cast<unsigned>(GL_UNSIGNED_BYTE), type);
+        bytes_per_pixel = 1;
+        break;
+      case GL_RG_EXT:
+        EXPECT_EQ(static_cast<unsigned>(GL_UNSIGNED_BYTE), type);
+        bytes_per_pixel = 2;
+        break;
     }
 
     // If NULL, we aren't checking texture contents.
@@ -232,6 +240,15 @@
     buffer[(i + 1) * 82 - 1] = 0x2;
   }
   UploadTexture(uploader.get(), LUMINANCE_8, gfx::Size(82, 86), buffer);
+
+  // Upload a tightly packed 82x86 RED texture.
+  memset(buffer, 0, sizeof(buffer));
+  for (int i = 0; i < 86; ++i) {
+    // Mark the beginning and end of each row, for the test.
+    buffer[i * 1 * 82] = 0x1;
+    buffer[(i + 1) * 82 - 1] = 0x2;
+  }
+  UploadTexture(uploader.get(), RED_8, gfx::Size(82, 86), buffer);
 }
 
 }  // namespace
diff --git a/cc/resources/tile.h b/cc/resources/tile.h
index 042d5ae..a35cffe 100644
--- a/cc/resources/tile.h
+++ b/cc/resources/tile.h
@@ -15,6 +15,8 @@
 
 namespace cc {
 
+class TileManager;
+
 class CC_EXPORT Tile : public RefCountedManaged<Tile> {
  public:
   enum TileRasterFlags { USE_PICTURE_ANALYSIS = 1 << 0 };
diff --git a/cc/resources/tile_manager.cc b/cc/resources/tile_manager.cc
index d83b824..66f95da 100644
--- a/cc/resources/tile_manager.cc
+++ b/cc/resources/tile_manager.cc
@@ -239,9 +239,11 @@
           task_runner_.get(),
           base::Bind(&TileManager::CheckIfReadyToActivate,
                      base::Unretained(this))),
-      ready_to_draw_check_notifier_(task_runner_.get(),
-                                    base::Bind(&TileManager::CheckIfReadyToDraw,
-                                               base::Unretained(this))) {
+      ready_to_draw_check_notifier_(
+          task_runner_.get(),
+          base::Bind(&TileManager::CheckIfReadyToDraw, base::Unretained(this))),
+      did_notify_ready_to_activate_(false),
+      did_notify_ready_to_draw_(false) {
   rasterizer_->SetClient(this);
 }
 
@@ -416,9 +418,12 @@
   TileVector tiles_that_need_to_be_rasterized;
   AssignGpuMemoryToTiles(&tiles_that_need_to_be_rasterized);
 
-  // Finally, schedule rasterizer tasks.
+  // Schedule rasterizer tasks.
   ScheduleTasks(tiles_that_need_to_be_rasterized);
 
+  did_notify_ready_to_activate_ = false;
+  did_notify_ready_to_draw_ = false;
+
   TRACE_EVENT_INSTANT1("cc",
                        "DidManage",
                        TRACE_EVENT_SCOPE_THREAD,
@@ -882,8 +887,13 @@
   rasterizer_->CheckForCompletedTasks();
   did_check_for_completed_tasks_since_last_schedule_tasks_ = true;
 
-  if (IsReadyToActivate())
-    client_->NotifyReadyToActivate();
+  if (did_notify_ready_to_activate_)
+    return;
+  if (!IsReadyToActivate())
+    return;
+
+  client_->NotifyReadyToActivate();
+  did_notify_ready_to_activate_ = true;
 }
 
 void TileManager::CheckIfReadyToDraw() {
@@ -892,8 +902,13 @@
   rasterizer_->CheckForCompletedTasks();
   did_check_for_completed_tasks_since_last_schedule_tasks_ = true;
 
-  if (IsReadyToDraw())
-    client_->NotifyReadyToDraw();
+  if (did_notify_ready_to_draw_)
+    return;
+  if (!IsReadyToDraw())
+    return;
+
+  client_->NotifyReadyToDraw();
+  did_notify_ready_to_draw_ = true;
 }
 
 TileManager::MemoryUsage::MemoryUsage() : memory_bytes_(0), resource_count_(0) {
diff --git a/cc/resources/tile_manager.h b/cc/resources/tile_manager.h
index e94fb7c..8d19520 100644
--- a/cc/resources/tile_manager.h
+++ b/cc/resources/tile_manager.h
@@ -162,6 +162,10 @@
     return tiles;
   }
 
+  void SetScheduledRasterTaskLimitForTesting(size_t limit) {
+    scheduled_raster_task_limit_ = limit;
+  }
+
  protected:
   TileManager(TileManagerClient* client,
               const scoped_refptr<base::SequencedTaskRunner>& task_runner,
@@ -243,7 +247,7 @@
   ResourcePool* resource_pool_;
   Rasterizer* rasterizer_;
   GlobalStateThatImpactsTilePriority global_state_;
-  const size_t scheduled_raster_task_limit_;
+  size_t scheduled_raster_task_limit_;
 
   typedef base::hash_map<Tile::Id, Tile*> TileMap;
   TileMap tiles_;
@@ -282,6 +286,9 @@
   EvictionTilePriorityQueue eviction_priority_queue_;
   bool eviction_priority_queue_is_up_to_date_;
 
+  bool did_notify_ready_to_activate_;
+  bool did_notify_ready_to_draw_;
+
   DISALLOW_COPY_AND_ASSIGN(TileManager);
 };
 
diff --git a/cc/resources/tile_manager_perftest.cc b/cc/resources/tile_manager_perftest.cc
index 7b096bd..2204ab8 100644
--- a/cc/resources/tile_manager_perftest.cc
+++ b/cc/resources/tile_manager_perftest.cc
@@ -400,7 +400,8 @@
     timer_.Reset();
     bool resourceless_software_draw = false;
     do {
-      BeginFrameArgs args = CreateBeginFrameArgsForTesting();
+      BeginFrameArgs args =
+          CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE);
       host_impl_.UpdateCurrentBeginFrameArgs(args);
       for (unsigned i = 0; i < layers.size(); ++i) {
         layers[i]->UpdateTiles(Occlusion(), resourceless_software_draw);
diff --git a/cc/resources/tile_manager_unittest.cc b/cc/resources/tile_manager_unittest.cc
index 49a93d3..fdd876e 100644
--- a/cc/resources/tile_manager_unittest.cc
+++ b/cc/resources/tile_manager_unittest.cc
@@ -149,7 +149,9 @@
 };
 
 TEST_F(TileManagerTilePriorityQueueTest, RasterTilePriorityQueue) {
-  SetupDefaultTrees(gfx::Size(1000, 1000));
+  const gfx::Size layer_bounds(1000, 1000);
+  host_impl_.SetViewportSize(layer_bounds);
+  SetupDefaultTrees(layer_bounds);
 
   active_layer_->CreateDefaultTilingsAndTiles();
   pending_layer_->CreateDefaultTilingsAndTiles();
@@ -391,7 +393,9 @@
 }
 
 TEST_F(TileManagerTilePriorityQueueTest, EvictionTilePriorityQueue) {
-  SetupDefaultTrees(gfx::Size(1000, 1000));
+  const gfx::Size layer_bounds(1000, 1000);
+  host_impl_.SetViewportSize(layer_bounds);
+  SetupDefaultTrees(layer_bounds);
 
   active_layer_->CreateDefaultTilingsAndTiles();
   pending_layer_->CreateDefaultTilingsAndTiles();
@@ -560,6 +564,8 @@
   gfx::Size tile_size(102, 102);
   gfx::Size layer_bounds(1000, 1000);
 
+  host_impl_.SetViewportSize(layer_bounds);
+
   scoped_refptr<FakePicturePileImpl> pending_pile =
       FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds);
   SetupPendingTree(pending_pile);
@@ -768,7 +774,9 @@
 }
 
 TEST_F(TileManagerTilePriorityQueueTest, RasterTilePriorityQueueEmptyLayers) {
-  SetupDefaultTrees(gfx::Size(1000, 1000));
+  const gfx::Size layer_bounds(1000, 1000);
+  host_impl_.SetViewportSize(layer_bounds);
+  SetupDefaultTrees(layer_bounds);
 
   active_layer_->CreateDefaultTilingsAndTiles();
   pending_layer_->CreateDefaultTilingsAndTiles();
@@ -815,7 +823,9 @@
 }
 
 TEST_F(TileManagerTilePriorityQueueTest, EvictionTilePriorityQueueEmptyLayers) {
-  SetupDefaultTrees(gfx::Size(1000, 1000));
+  const gfx::Size layer_bounds(1000, 1000);
+  host_impl_.SetViewportSize(layer_bounds);
+  SetupDefaultTrees(layer_bounds);
 
   active_layer_->CreateDefaultTilingsAndTiles();
   pending_layer_->CreateDefaultTilingsAndTiles();
diff --git a/cc/resources/tiling_set_eviction_queue.cc b/cc/resources/tiling_set_eviction_queue.cc
new file mode 100644
index 0000000..8c5ff52
--- /dev/null
+++ b/cc/resources/tiling_set_eviction_queue.cc
@@ -0,0 +1,197 @@
+// Copyright 2014 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.
+
+#include "cc/resources/tiling_set_eviction_queue.h"
+
+namespace cc {
+
+TilingSetEvictionQueue::TilingSetEvictionQueue()
+    : tiling_set_(nullptr),
+      tree_priority_(SAME_PRIORITY_FOR_BOTH_TREES),
+      current_category_(PictureLayerTiling::EVENTUALLY),
+      current_tiling_index_(0u),
+      current_tiling_range_type_(PictureLayerTilingSet::HIGHER_THAN_HIGH_RES),
+      current_eviction_tile_(nullptr),
+      eviction_tiles_(nullptr),
+      next_eviction_tile_index_(0u) {
+}
+
+TilingSetEvictionQueue::TilingSetEvictionQueue(
+    PictureLayerTilingSet* tiling_set,
+    TreePriority tree_priority)
+    : tiling_set_(tiling_set),
+      tree_priority_(tree_priority),
+      current_category_(PictureLayerTiling::EVENTUALLY),
+      current_tiling_index_(0u),
+      current_tiling_range_type_(PictureLayerTilingSet::HIGHER_THAN_HIGH_RES),
+      current_eviction_tile_(nullptr),
+      eviction_tiles_(nullptr),
+      next_eviction_tile_index_(0u) {
+  DCHECK(tiling_set_);
+
+  // Early out if the layer has no tilings.
+  if (!tiling_set_->num_tilings())
+    return;
+
+  current_tiling_index_ = CurrentTilingRange().start - 1u;
+  AdvanceToNextValidTiling();
+}
+
+TilingSetEvictionQueue::~TilingSetEvictionQueue() {
+}
+
+bool TilingSetEvictionQueue::IsEmpty() const {
+  return !current_eviction_tile_;
+}
+
+void TilingSetEvictionQueue::Pop() {
+  DCHECK(!IsEmpty());
+
+  if (!AdvanceToNextEvictionTile())
+    AdvanceToNextValidTiling();
+}
+
+Tile* TilingSetEvictionQueue::Top() {
+  DCHECK(!IsEmpty());
+  return current_eviction_tile_;
+}
+
+const Tile* TilingSetEvictionQueue::Top() const {
+  DCHECK(!IsEmpty());
+  return current_eviction_tile_;
+}
+
+bool TilingSetEvictionQueue::AdvanceToNextCategory() {
+  // Advance to the next category. This is done only after all tiling range
+  // types within the previous category have been gone through.
+  DCHECK_EQ(current_tiling_range_type_, PictureLayerTilingSet::HIGH_RES);
+
+  switch (current_category_) {
+    case PictureLayerTiling::EVENTUALLY:
+      current_category_ =
+          PictureLayerTiling::EVENTUALLY_AND_REQUIRED_FOR_ACTIVATION;
+      return true;
+    case PictureLayerTiling::EVENTUALLY_AND_REQUIRED_FOR_ACTIVATION:
+      current_category_ = PictureLayerTiling::SOON;
+      return true;
+    case PictureLayerTiling::SOON:
+      current_category_ = PictureLayerTiling::SOON_AND_REQUIRED_FOR_ACTIVATION;
+      return true;
+    case PictureLayerTiling::SOON_AND_REQUIRED_FOR_ACTIVATION:
+      current_category_ = PictureLayerTiling::NOW;
+      return true;
+    case PictureLayerTiling::NOW:
+      current_category_ = PictureLayerTiling::NOW_AND_REQUIRED_FOR_ACTIVATION;
+      return true;
+    case PictureLayerTiling::NOW_AND_REQUIRED_FOR_ACTIVATION:
+      return false;
+  }
+  NOTREACHED();
+  return false;
+}
+
+bool TilingSetEvictionQueue::AdvanceToNextEvictionTile() {
+  // Advance to the next eviction tile within the current category and tiling.
+  // This is done while advancing to a new tiling (in which case the next
+  // eviction tile index is 0) and while popping the current tile (in which
+  // case the next eviction tile index is greater than 0).
+  DCHECK_EQ(next_eviction_tile_index_ > 0, current_eviction_tile_ != nullptr);
+
+  while (next_eviction_tile_index_ < eviction_tiles_->size()) {
+    Tile* tile = (*eviction_tiles_)[next_eviction_tile_index_];
+    ++next_eviction_tile_index_;
+    if (tile->HasResources()) {
+      current_eviction_tile_ = tile;
+      return true;
+    }
+  }
+
+  current_eviction_tile_ = nullptr;
+  return false;
+}
+
+bool TilingSetEvictionQueue::AdvanceToNextTilingRangeType() {
+  // Advance to the next tiling range type within the current category or to
+  // the first tiling range type within the next category. This is done only
+  // after all tilings within the previous tiling range type have been gone
+  // through.
+  DCHECK_EQ(current_tiling_index_, CurrentTilingRange().end);
+
+  switch (current_tiling_range_type_) {
+    case PictureLayerTilingSet::HIGHER_THAN_HIGH_RES:
+      current_tiling_range_type_ = PictureLayerTilingSet::LOWER_THAN_LOW_RES;
+      return true;
+    case PictureLayerTilingSet::LOWER_THAN_LOW_RES:
+      current_tiling_range_type_ =
+          PictureLayerTilingSet::BETWEEN_HIGH_AND_LOW_RES;
+      return true;
+    case PictureLayerTilingSet::BETWEEN_HIGH_AND_LOW_RES:
+      current_tiling_range_type_ = PictureLayerTilingSet::LOW_RES;
+      return true;
+    case PictureLayerTilingSet::LOW_RES:
+      current_tiling_range_type_ = PictureLayerTilingSet::HIGH_RES;
+      return true;
+    case PictureLayerTilingSet::HIGH_RES:
+      if (!AdvanceToNextCategory())
+        return false;
+
+      current_tiling_range_type_ = PictureLayerTilingSet::HIGHER_THAN_HIGH_RES;
+      return true;
+  }
+  NOTREACHED();
+  return false;
+}
+
+bool TilingSetEvictionQueue::AdvanceToNextValidTiling() {
+  // Advance to the next tiling within current tiling range type or to
+  // the first tiling within the next tiling range type or category until
+  // the next eviction tile is found. This is done only after all eviction
+  // tiles within the previous tiling within the current category and tiling
+  // range type have been gone through.
+  DCHECK(!current_eviction_tile_);
+  DCHECK_NE(current_tiling_index_, CurrentTilingRange().end);
+
+  for (;;) {
+    ++current_tiling_index_;
+    while (current_tiling_index_ == CurrentTilingRange().end) {
+      if (!AdvanceToNextTilingRangeType())
+        return false;
+      current_tiling_index_ = CurrentTilingRange().start;
+    }
+
+    PictureLayerTiling* tiling = tiling_set_->tiling_at(CurrentTilingIndex());
+    eviction_tiles_ =
+        tiling->GetEvictionTiles(tree_priority_, current_category_);
+    next_eviction_tile_index_ = 0u;
+    if (AdvanceToNextEvictionTile())
+      return true;
+  }
+}
+
+PictureLayerTilingSet::TilingRange
+TilingSetEvictionQueue::CurrentTilingRange() const {
+  return tiling_set_->GetTilingRange(current_tiling_range_type_);
+}
+
+size_t TilingSetEvictionQueue::CurrentTilingIndex() const {
+  DCHECK_NE(current_tiling_index_, CurrentTilingRange().end);
+  switch (current_tiling_range_type_) {
+    case PictureLayerTilingSet::HIGHER_THAN_HIGH_RES:
+    case PictureLayerTilingSet::LOW_RES:
+    case PictureLayerTilingSet::HIGH_RES:
+      return current_tiling_index_;
+    // Tilings in the following ranges are accessed in reverse order.
+    case PictureLayerTilingSet::BETWEEN_HIGH_AND_LOW_RES:
+    case PictureLayerTilingSet::LOWER_THAN_LOW_RES: {
+      PictureLayerTilingSet::TilingRange tiling_range = CurrentTilingRange();
+      size_t current_tiling_range_offset =
+          current_tiling_index_ - tiling_range.start;
+      return tiling_range.end - 1 - current_tiling_range_offset;
+    }
+  }
+  NOTREACHED();
+  return 0;
+}
+
+}
diff --git a/cc/resources/tiling_set_eviction_queue.h b/cc/resources/tiling_set_eviction_queue.h
new file mode 100644
index 0000000..f88ce3b
--- /dev/null
+++ b/cc/resources/tiling_set_eviction_queue.h
@@ -0,0 +1,48 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_TILING_SET_EVICTION_QUEUE_H_
+#define CC_RESOURCES_TILING_SET_EVICTION_QUEUE_H_
+
+#include "cc/base/cc_export.h"
+#include "cc/resources/picture_layer_tiling_set.h"
+
+namespace cc {
+
+class CC_EXPORT TilingSetEvictionQueue {
+ public:
+  TilingSetEvictionQueue();
+  TilingSetEvictionQueue(PictureLayerTilingSet* tiling_set,
+                         TreePriority tree_priority);
+  ~TilingSetEvictionQueue();
+
+  Tile* Top();
+  const Tile* Top() const;
+  void Pop();
+  bool IsEmpty() const;
+
+ private:
+  bool AdvanceToNextCategory();
+  bool AdvanceToNextEvictionTile();
+  bool AdvanceToNextTilingRangeType();
+  bool AdvanceToNextValidTiling();
+
+  PictureLayerTilingSet::TilingRange CurrentTilingRange() const;
+  size_t CurrentTilingIndex() const;
+
+  PictureLayerTilingSet* tiling_set_;
+  TreePriority tree_priority_;
+
+  PictureLayerTiling::EvictionCategory current_category_;
+  size_t current_tiling_index_;
+  PictureLayerTilingSet::TilingRangeType current_tiling_range_type_;
+  Tile* current_eviction_tile_;
+
+  const std::vector<Tile*>* eviction_tiles_;
+  size_t next_eviction_tile_index_;
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_TILING_SET_RASTER_QUEUE_H_
diff --git a/cc/resources/transform_display_item.cc b/cc/resources/transform_display_item.cc
new file mode 100644
index 0000000..c7f4d60
--- /dev/null
+++ b/cc/resources/transform_display_item.cc
@@ -0,0 +1,60 @@
+// Copyright 2014 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.
+
+#include "cc/resources/transform_display_item.h"
+
+#include "third_party/skia/include/core/SkCanvas.h"
+
+namespace cc {
+
+TransformDisplayItem::TransformDisplayItem(const gfx::Transform& transform)
+    : transform_(transform) {
+}
+
+TransformDisplayItem::~TransformDisplayItem() {
+}
+
+void TransformDisplayItem::Raster(SkCanvas* canvas,
+                                  SkDrawPictureCallback* callback) const {
+  canvas->save();
+  if (!transform_.IsIdentity())
+    canvas->concat(transform_.matrix());
+}
+
+bool TransformDisplayItem::IsSuitableForGpuRasterization() const {
+  return true;
+}
+
+int TransformDisplayItem::ApproximateOpCount() const {
+  return 1;
+}
+
+size_t TransformDisplayItem::PictureMemoryUsage() const {
+  return sizeof(gfx::Transform);
+}
+
+EndTransformDisplayItem::EndTransformDisplayItem() {
+}
+
+EndTransformDisplayItem::~EndTransformDisplayItem() {
+}
+
+void EndTransformDisplayItem::Raster(SkCanvas* canvas,
+                                     SkDrawPictureCallback* callback) const {
+  canvas->restore();
+}
+
+bool EndTransformDisplayItem::IsSuitableForGpuRasterization() const {
+  return true;
+}
+
+int EndTransformDisplayItem::ApproximateOpCount() const {
+  return 0;
+}
+
+size_t EndTransformDisplayItem::PictureMemoryUsage() const {
+  return 0;
+}
+
+}  // namespace cc
diff --git a/cc/resources/transform_display_item.h b/cc/resources/transform_display_item.h
new file mode 100644
index 0000000..1671f49
--- /dev/null
+++ b/cc/resources/transform_display_item.h
@@ -0,0 +1,60 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_TRANSFORM_DISPLAY_ITEM_H_
+#define CC_RESOURCES_TRANSFORM_DISPLAY_ITEM_H_
+
+#include "base/memory/scoped_ptr.h"
+#include "cc/base/cc_export.h"
+#include "cc/resources/display_item.h"
+#include "ui/gfx/transform.h"
+
+class SkCanvas;
+class SkDrawPictureCallback;
+
+namespace cc {
+
+class CC_EXPORT TransformDisplayItem : public DisplayItem {
+ public:
+  virtual ~TransformDisplayItem();
+
+  static scoped_ptr<TransformDisplayItem> Create(
+      const gfx::Transform& transform) {
+    return make_scoped_ptr(new TransformDisplayItem(transform));
+  }
+
+  void Raster(SkCanvas* canvas, SkDrawPictureCallback* callback) const override;
+
+  bool IsSuitableForGpuRasterization() const override;
+  int ApproximateOpCount() const override;
+  size_t PictureMemoryUsage() const override;
+
+ protected:
+  explicit TransformDisplayItem(const gfx::Transform& transform);
+
+ private:
+  gfx::Transform transform_;
+};
+
+class CC_EXPORT EndTransformDisplayItem : public DisplayItem {
+ public:
+  virtual ~EndTransformDisplayItem();
+
+  static scoped_ptr<EndTransformDisplayItem> Create() {
+    return make_scoped_ptr(new EndTransformDisplayItem());
+  }
+
+  void Raster(SkCanvas* canvas, SkDrawPictureCallback* callback) const override;
+
+  bool IsSuitableForGpuRasterization() const override;
+  int ApproximateOpCount() const override;
+  size_t PictureMemoryUsage() const override;
+
+ protected:
+  EndTransformDisplayItem();
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_TRANSFORM_DISPLAY_ITEM_H_
diff --git a/cc/resources/transparency_display_item.cc b/cc/resources/transparency_display_item.cc
new file mode 100644
index 0000000..0401d90
--- /dev/null
+++ b/cc/resources/transparency_display_item.cc
@@ -0,0 +1,65 @@
+// Copyright 2014 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.
+
+#include "cc/resources/transparency_display_item.h"
+
+#include "third_party/skia/include/core/SkCanvas.h"
+#include "third_party/skia/include/core/SkPaint.h"
+#include "third_party/skia/include/core/SkXfermode.h"
+#include "ui/gfx/skia_util.h"
+
+namespace cc {
+
+TransparencyDisplayItem::TransparencyDisplayItem(float opacity,
+                                                 SkXfermode::Mode blend_mode)
+    : opacity_(opacity), blend_mode_(blend_mode) {
+}
+
+TransparencyDisplayItem::~TransparencyDisplayItem() {
+}
+
+void TransparencyDisplayItem::Raster(SkCanvas* canvas,
+                                     SkDrawPictureCallback* callback) const {
+  SkPaint paint;
+  paint.setXfermodeMode(blend_mode_);
+  paint.setAlpha(opacity_ * 255);
+  canvas->saveLayer(NULL, &paint);
+}
+
+bool TransparencyDisplayItem::IsSuitableForGpuRasterization() const {
+  return true;
+}
+
+int TransparencyDisplayItem::ApproximateOpCount() const {
+  return 1;
+}
+
+size_t TransparencyDisplayItem::PictureMemoryUsage() const {
+  return sizeof(float) + sizeof(SkXfermode::Mode);
+}
+
+EndTransparencyDisplayItem::EndTransparencyDisplayItem() {
+}
+
+EndTransparencyDisplayItem::~EndTransparencyDisplayItem() {
+}
+
+void EndTransparencyDisplayItem::Raster(SkCanvas* canvas,
+                                        SkDrawPictureCallback* callback) const {
+  canvas->restore();
+}
+
+bool EndTransparencyDisplayItem::IsSuitableForGpuRasterization() const {
+  return true;
+}
+
+int EndTransparencyDisplayItem::ApproximateOpCount() const {
+  return 0;
+}
+
+size_t EndTransparencyDisplayItem::PictureMemoryUsage() const {
+  return 0;
+}
+
+}  // namespace cc
diff --git a/cc/resources/transparency_display_item.h b/cc/resources/transparency_display_item.h
new file mode 100644
index 0000000..6766d91
--- /dev/null
+++ b/cc/resources/transparency_display_item.h
@@ -0,0 +1,64 @@
+// Copyright 2014 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.
+
+#ifndef CC_RESOURCES_TRANSPARENCY_DISPLAY_ITEM_H_
+#define CC_RESOURCES_TRANSPARENCY_DISPLAY_ITEM_H_
+
+#include "base/memory/scoped_ptr.h"
+#include "cc/base/cc_export.h"
+#include "cc/resources/display_item.h"
+#include "skia/ext/refptr.h"
+#include "third_party/skia/include/core/SkXfermode.h"
+#include "ui/gfx/geometry/rect_f.h"
+
+class SkCanvas;
+class SkDrawPictureCallback;
+
+namespace cc {
+
+class CC_EXPORT TransparencyDisplayItem : public DisplayItem {
+ public:
+  virtual ~TransparencyDisplayItem();
+
+  static scoped_ptr<TransparencyDisplayItem> Create(
+      float opacity,
+      SkXfermode::Mode blend_mode) {
+    return make_scoped_ptr(new TransparencyDisplayItem(opacity, blend_mode));
+  }
+
+  void Raster(SkCanvas* canvas, SkDrawPictureCallback* callback) const override;
+
+  bool IsSuitableForGpuRasterization() const override;
+  int ApproximateOpCount() const override;
+  size_t PictureMemoryUsage() const override;
+
+ protected:
+  TransparencyDisplayItem(float opacity, SkXfermode::Mode blend_mode);
+
+ private:
+  float opacity_;
+  SkXfermode::Mode blend_mode_;
+};
+
+class CC_EXPORT EndTransparencyDisplayItem : public DisplayItem {
+ public:
+  virtual ~EndTransparencyDisplayItem();
+
+  static scoped_ptr<EndTransparencyDisplayItem> Create() {
+    return make_scoped_ptr(new EndTransparencyDisplayItem());
+  }
+
+  void Raster(SkCanvas* canvas, SkDrawPictureCallback* callback) const override;
+
+  bool IsSuitableForGpuRasterization() const override;
+  int ApproximateOpCount() const override;
+  size_t PictureMemoryUsage() const override;
+
+ protected:
+  EndTransparencyDisplayItem();
+};
+
+}  // namespace cc
+
+#endif  // CC_RESOURCES_TRANSPARENCY_DISPLAY_ITEM_H_
diff --git a/cc/resources/video_resource_updater.cc b/cc/resources/video_resource_updater.cc
index 7a775d9..2c9a688 100644
--- a/cc/resources/video_resource_updater.cc
+++ b/cc/resources/video_resource_updater.cc
@@ -20,7 +20,6 @@
 
 namespace {
 
-const ResourceFormat kYUVResourceFormat = LUMINANCE_8;
 const ResourceFormat kRGBResourceFormat = RGBA_8888;
 
 class SyncPointClientImpl : public media::VideoFrame::SyncPointClient {
@@ -40,6 +39,37 @@
 
 }  // namespace
 
+VideoResourceUpdater::PlaneResource::PlaneResource(
+    unsigned int resource_id,
+    const gfx::Size& resource_size,
+    ResourceFormat resource_format,
+    gpu::Mailbox mailbox)
+    : resource_id(resource_id),
+      resource_size(resource_size),
+      resource_format(resource_format),
+      mailbox(mailbox),
+      frame_ptr(nullptr),
+      plane_index(0) {
+}
+
+bool VideoResourceUpdater::PlaneResourceMatchesUniqueID(
+    const PlaneResource& plane_resource,
+    const media::VideoFrame* video_frame,
+    int plane_index) {
+  return plane_resource.frame_ptr == video_frame &&
+         plane_resource.plane_index == plane_index &&
+         plane_resource.timestamp == video_frame->timestamp();
+}
+
+void VideoResourceUpdater::SetPlaneResourceUniqueId(
+    const media::VideoFrame* video_frame,
+    int plane_index,
+    PlaneResource* plane_resource) {
+  plane_resource->frame_ptr = video_frame;
+  plane_resource->plane_index = plane_index;
+  plane_resource->timestamp = video_frame->timestamp();
+}
+
 VideoFrameExternalResources::VideoFrameExternalResources() : type(NONE) {}
 
 VideoFrameExternalResources::~VideoFrameExternalResources() {}
@@ -104,14 +134,12 @@
 // each plane in the frame.
 static gfx::Size SoftwarePlaneDimension(
     const scoped_refptr<media::VideoFrame>& input_frame,
-    ResourceFormat output_resource_format,
+    bool software_compositor,
     size_t plane_index) {
-  if (output_resource_format == kYUVResourceFormat) {
+  if (!software_compositor) {
     return media::VideoFrame::PlaneSize(
         input_frame->format(), plane_index, input_frame->coded_size());
   }
-
-  DCHECK_EQ(output_resource_format, kRGBResourceFormat);
   return input_frame->coded_size();
 }
 
@@ -145,7 +173,8 @@
 
   bool software_compositor = context_provider_ == NULL;
 
-  ResourceFormat output_resource_format = kYUVResourceFormat;
+  ResourceFormat output_resource_format =
+      resource_provider_->yuv_resource_format();
   size_t output_plane_count = media::VideoFrame::NumPlanes(input_frame_format);
 
   // TODO(skaslev): If we're in software compositing mode, we do the YUV -> RGB
@@ -163,7 +192,7 @@
 
   for (size_t i = 0; i < output_plane_count; ++i) {
     gfx::Size output_plane_resource_size =
-        SoftwarePlaneDimension(video_frame, output_resource_format, i);
+        SoftwarePlaneDimension(video_frame, software_compositor, i);
     if (output_plane_resource_size.IsEmpty() ||
         output_plane_resource_size.width() > max_resource_size ||
         output_plane_resource_size.height() > max_resource_size) {
@@ -171,57 +200,56 @@
       break;
     }
 
-    ResourceProvider::ResourceId resource_id = 0;
-    gpu::Mailbox mailbox;
-
     // Try recycle a previously-allocated resource.
-    for (size_t i = 0; i < recycled_resources_.size(); ++i) {
-      bool resource_matches =
-          recycled_resources_[i].resource_format == output_resource_format &&
-          recycled_resources_[i].resource_size == output_plane_resource_size;
-      bool not_in_use =
-          !software_compositor || !resource_provider_->InUseByConsumer(
-                                       recycled_resources_[i].resource_id);
-      if (resource_matches && not_in_use) {
-        resource_id = recycled_resources_[i].resource_id;
-        mailbox = recycled_resources_[i].mailbox;
-        recycled_resources_.erase(recycled_resources_.begin() + i);
-        break;
+    auto recycled_it = recycled_resources_.end();
+    for (auto it = recycled_resources_.begin(); it != recycled_resources_.end();
+         ++it) {
+      const bool resource_matches =
+          it->resource_format == output_resource_format &&
+          it->resource_size == output_plane_resource_size;
+      const bool in_use = software_compositor &&
+                          resource_provider_->InUseByConsumer(it->resource_id);
+      if (resource_matches && !in_use) {
+        // We found a recycled resource with the allocation size and format we
+        // are looking for.
+        recycled_it = it;
+        // Keep looking for a recycled resource that also contains the data we
+        // are planning to put in it.
+        if (PlaneResourceMatchesUniqueID(*it, video_frame.get(), i))
+          break;
       }
     }
 
-    if (resource_id == 0) {
-      // TODO(danakj): Abstract out hw/sw resource create/delete from
-      // ResourceProvider and stop using ResourceProvider in this class.
-      resource_id = resource_provider_->CreateResource(
-          output_plane_resource_size,
-          GL_CLAMP_TO_EDGE,
-          ResourceProvider::TextureHintImmutable,
-          output_resource_format);
-
-      DCHECK(mailbox.IsZero());
-
-      if (!software_compositor) {
-        DCHECK(context_provider_);
-
-        gpu::gles2::GLES2Interface* gl = context_provider_->ContextGL();
-
-        GLC(gl, gl->GenMailboxCHROMIUM(mailbox.name));
-        ResourceProvider::ScopedWriteLockGL lock(resource_provider_,
-                                                 resource_id);
-        GLC(gl,
-            gl->ProduceTextureDirectCHROMIUM(
-                lock.texture_id(), GL_TEXTURE_2D, mailbox.name));
-      }
-
-      if (resource_id)
-        all_resources_.push_back(resource_id);
+    // Check if we can avoid allocating a new resource.
+    if (recycled_it != recycled_resources_.end()) {
+      plane_resources.push_back(*recycled_it);
+      recycled_resources_.erase(recycled_it);
+      continue;
     }
 
+    // TODO(danakj): Abstract out hw/sw resource create/delete from
+    // ResourceProvider and stop using ResourceProvider in this class.
+    const ResourceProvider::ResourceId resource_id =
+        resource_provider_->CreateResource(
+            output_plane_resource_size, GL_CLAMP_TO_EDGE,
+            ResourceProvider::TextureHintImmutable, output_resource_format);
     if (resource_id == 0) {
       allocation_success = false;
       break;
     }
+    all_resources_.push_back(resource_id);
+
+    gpu::Mailbox mailbox;
+    if (!software_compositor) {
+      DCHECK(context_provider_);
+
+      gpu::gles2::GLES2Interface* gl = context_provider_->ContextGL();
+
+      GLC(gl, gl->GenMailboxCHROMIUM(mailbox.name));
+      ResourceProvider::ScopedWriteLockGL lock(resource_provider_, resource_id);
+      GLC(gl, gl->ProduceTextureDirectCHROMIUM(lock.texture_id(), GL_TEXTURE_2D,
+                                               mailbox.name));
+    }
 
     DCHECK(software_compositor || !mailbox.IsZero());
     plane_resources.push_back(PlaneResource(resource_id,
@@ -243,26 +271,23 @@
     DCHECK_EQ(plane_resources[0].resource_format, kRGBResourceFormat);
     DCHECK(plane_resources[0].mailbox.IsZero());
 
-    if (!video_renderer_)
-      video_renderer_.reset(new media::SkCanvasVideoRenderer);
+    if (!PlaneResourceMatchesUniqueID(plane_resources[0], video_frame.get(),
+                                      0)) {
+      // We need to transfer data from |video_frame| to the plane resource.
+      if (!video_renderer_)
+        video_renderer_.reset(new media::SkCanvasVideoRenderer);
 
-    {
       ResourceProvider::ScopedWriteLockSoftware lock(
           resource_provider_, plane_resources[0].resource_id);
       SkCanvas canvas(lock.sk_bitmap());
       video_renderer_->Copy(video_frame, &canvas);
+      SetPlaneResourceUniqueId(video_frame.get(), 0, &plane_resources[0]);
     }
 
-    RecycleResourceData recycle_data = {
-      plane_resources[0].resource_id,
-      plane_resources[0].resource_size,
-      plane_resources[0].resource_format,
-      gpu::Mailbox()
-    };
     external_resources.software_resources.push_back(
         plane_resources[0].resource_id);
     external_resources.software_release_callback =
-        base::Bind(&RecycleResource, AsWeakPtr(), recycle_data);
+        base::Bind(&RecycleResource, AsWeakPtr(), plane_resources[0]);
     external_resources.type = VideoFrameExternalResources::SOFTWARE_RESOURCE;
 
     return external_resources;
@@ -270,32 +295,27 @@
 
   for (size_t i = 0; i < plane_resources.size(); ++i) {
     // Update each plane's resource id with its content.
-    DCHECK_EQ(plane_resources[i].resource_format, kYUVResourceFormat);
+    DCHECK_EQ(plane_resources[i].resource_format,
+              resource_provider_->yuv_resource_format());
 
-    const uint8_t* input_plane_pixels = video_frame->data(i);
+    if (!PlaneResourceMatchesUniqueID(plane_resources[i], video_frame.get(),
+                                      i)) {
+      // We need to transfer data from |video_frame| to the plane resource.
+      const uint8_t* input_plane_pixels = video_frame->data(i);
 
-    gfx::Rect image_rect(0,
-                         0,
-                         video_frame->stride(i),
-                         plane_resources[i].resource_size.height());
-    gfx::Rect source_rect(plane_resources[i].resource_size);
-    resource_provider_->SetPixels(plane_resources[i].resource_id,
-                                  input_plane_pixels,
-                                  image_rect,
-                                  source_rect,
-                                  gfx::Vector2d());
-
-    RecycleResourceData recycle_data = {
-      plane_resources[i].resource_id,
-      plane_resources[i].resource_size,
-      plane_resources[i].resource_format,
-      plane_resources[i].mailbox
-    };
+      gfx::Rect image_rect(0, 0, video_frame->stride(i),
+                           plane_resources[i].resource_size.height());
+      gfx::Rect source_rect(plane_resources[i].resource_size);
+      resource_provider_->SetPixels(plane_resources[i].resource_id,
+                                    input_plane_pixels, image_rect, source_rect,
+                                    gfx::Vector2d());
+      SetPlaneResourceUniqueId(video_frame.get(), i, &plane_resources[i]);
+    }
 
     external_resources.mailboxes.push_back(
         TextureMailbox(plane_resources[i].mailbox, GL_TEXTURE_2D, 0));
     external_resources.release_callbacks.push_back(
-        base::Bind(&RecycleResource, AsWeakPtr(), recycle_data));
+        base::Bind(&RecycleResource, AsWeakPtr(), plane_resources[i]));
   }
 
   external_resources.type = VideoFrameExternalResources::YUV_RESOURCE;
@@ -362,7 +382,7 @@
 // static
 void VideoResourceUpdater::RecycleResource(
     base::WeakPtr<VideoResourceUpdater> updater,
-    RecycleResourceData data,
+    PlaneResource data,
     uint32 sync_point,
     bool lost_resource,
     BlockingTaskRunner* main_thread_task_runner) {
@@ -385,16 +405,12 @@
   // Drop recycled resources that are the wrong format.
   while (!updater->recycled_resources_.empty() &&
          updater->recycled_resources_.back().resource_format !=
-         data.resource_format) {
+             data.resource_format) {
     updater->DeleteResource(updater->recycled_resources_.back().resource_id);
     updater->recycled_resources_.pop_back();
   }
 
-  PlaneResource recycled_resource(data.resource_id,
-                                  data.resource_size,
-                                  data.resource_format,
-                                  data.mailbox);
-  updater->recycled_resources_.push_back(recycled_resource);
+  updater->recycled_resources_.push_back(data);
 }
 
 }  // namespace cc
diff --git a/cc/resources/video_resource_updater.h b/cc/resources/video_resource_updater.h
index 99800b4..38f6033 100644
--- a/cc/resources/video_resource_updater.h
+++ b/cc/resources/video_resource_updater.h
@@ -10,6 +10,7 @@
 #include "base/basictypes.h"
 #include "base/memory/ref_counted.h"
 #include "base/memory/weak_ptr.h"
+#include "base/time/time.h"
 #include "cc/base/cc_export.h"
 #include "cc/resources/release_callback_impl.h"
 #include "cc/resources/resource_format.h"
@@ -77,17 +78,28 @@
     gfx::Size resource_size;
     ResourceFormat resource_format;
     gpu::Mailbox mailbox;
+    // These last three members will be used for identifying the data stored in
+    // this resource, and uniquely identifies a media::VideoFrame plane. The
+    // frame pointer will only be used for pointer comparison, i.e. the
+    // underlying data will not be accessed.
+    const void* frame_ptr;
+    int plane_index;
+    base::TimeDelta timestamp;
 
     PlaneResource(unsigned resource_id,
                   const gfx::Size& resource_size,
                   ResourceFormat resource_format,
-                  gpu::Mailbox mailbox)
-        : resource_id(resource_id),
-          resource_size(resource_size),
-          resource_format(resource_format),
-          mailbox(mailbox) {}
+                  gpu::Mailbox mailbox);
   };
 
+  static bool PlaneResourceMatchesUniqueID(const PlaneResource& plane_resource,
+                                           const media::VideoFrame* video_frame,
+                                           int plane_index);
+
+  static void SetPlaneResourceUniqueId(const media::VideoFrame* video_frame,
+                                       int plane_index,
+                                       PlaneResource* plane_resource);
+
   void DeleteResource(unsigned resource_id);
   bool VerifyFrame(const scoped_refptr<media::VideoFrame>& video_frame);
   VideoFrameExternalResources CreateForHardwarePlanes(
@@ -95,14 +107,8 @@
   VideoFrameExternalResources CreateForSoftwarePlanes(
       const scoped_refptr<media::VideoFrame>& video_frame);
 
-  struct RecycleResourceData {
-    unsigned resource_id;
-    gfx::Size resource_size;
-    ResourceFormat resource_format;
-    gpu::Mailbox mailbox;
-  };
   static void RecycleResource(base::WeakPtr<VideoResourceUpdater> updater,
-                              RecycleResourceData data,
+                              PlaneResource data,
                               uint32 sync_point,
                               bool lost_resource,
                               BlockingTaskRunner* main_thread_task_runner);
@@ -117,6 +123,8 @@
   scoped_ptr<media::SkCanvasVideoRenderer> video_renderer_;
 
   std::vector<unsigned> all_resources_;
+  // Recycle resources so that we can reduce the number of allocations and
+  // data transfers.
   std::vector<PlaneResource> recycled_resources_;
 
   DISALLOW_COPY_AND_ASSIGN(VideoResourceUpdater);
diff --git a/cc/resources/video_resource_updater_unittest.cc b/cc/resources/video_resource_updater_unittest.cc
index c0a4af4..1e3481b 100644
--- a/cc/resources/video_resource_updater_unittest.cc
+++ b/cc/resources/video_resource_updater_unittest.cc
@@ -17,11 +17,33 @@
 namespace cc {
 namespace {
 
+class WebGraphicsContext3DUploadCounter : public TestWebGraphicsContext3D {
+ public:
+  void texSubImage2D(GLenum target,
+                     GLint level,
+                     GLint xoffset,
+                     GLint yoffset,
+                     GLsizei width,
+                     GLsizei height,
+                     GLenum format,
+                     GLenum type,
+                     const void* pixels) override {
+    ++upload_count_;
+  }
+
+  int UploadCount() { return upload_count_; }
+  void ResetUploadCount() { upload_count_ = 0; }
+
+ private:
+  int upload_count_;
+};
+
 class VideoResourceUpdaterTest : public testing::Test {
  protected:
   VideoResourceUpdaterTest() {
-    scoped_ptr<TestWebGraphicsContext3D> context3d =
-        TestWebGraphicsContext3D::Create();
+    scoped_ptr<WebGraphicsContext3DUploadCounter> context3d(
+        new WebGraphicsContext3DUploadCounter());
+
     context3d_ = context3d.get();
 
     output_surface3d_ =
@@ -60,7 +82,7 @@
         base::Closure());         // no_longer_needed_cb
   }
 
-  TestWebGraphicsContext3D* context3d_;
+  WebGraphicsContext3DUploadCounter* context3d_;
   FakeOutputSurfaceClient client_;
   scoped_ptr<FakeOutputSurface> output_surface3d_;
   scoped_ptr<TestSharedBitmapManager> shared_bitmap_manager_;
@@ -77,5 +99,52 @@
   EXPECT_EQ(VideoFrameExternalResources::YUV_RESOURCE, resources.type);
 }
 
+TEST_F(VideoResourceUpdaterTest, ReuseResource) {
+  VideoResourceUpdater updater(output_surface3d_->context_provider(),
+                               resource_provider3d_.get());
+  scoped_refptr<media::VideoFrame> video_frame = CreateTestYUVVideoFrame();
+  video_frame->set_timestamp(base::TimeDelta::FromSeconds(1234));
+
+  // Allocate the resources for a YUV video frame.
+  context3d_->ResetUploadCount();
+  VideoFrameExternalResources resources =
+      updater.CreateExternalResourcesFromVideoFrame(video_frame);
+  EXPECT_EQ(VideoFrameExternalResources::YUV_RESOURCE, resources.type);
+  EXPECT_EQ(size_t(3), resources.mailboxes.size());
+  EXPECT_EQ(size_t(3), resources.release_callbacks.size());
+  // Expect exactly three texture uploads, one for each plane.
+  EXPECT_EQ(3, context3d_->UploadCount());
+
+  const ResourceProvider::ResourceId y_resource =
+      resource_provider3d_->CreateResourceFromTextureMailbox(
+          resources.mailboxes[media::VideoFrame::kYPlane],
+          SingleReleaseCallbackImpl::Create(
+              resources.release_callbacks[media::VideoFrame::kYPlane]));
+  const ResourceProvider::ResourceId u_resource =
+      resource_provider3d_->CreateResourceFromTextureMailbox(
+          resources.mailboxes[media::VideoFrame::kUPlane],
+          SingleReleaseCallbackImpl::Create(
+              resources.release_callbacks[media::VideoFrame::kUPlane]));
+  const ResourceProvider::ResourceId v_resource =
+      resource_provider3d_->CreateResourceFromTextureMailbox(
+          resources.mailboxes[media::VideoFrame::kVPlane],
+          SingleReleaseCallbackImpl::Create(
+              resources.release_callbacks[media::VideoFrame::kVPlane]));
+
+  // Delete the resources.
+  resource_provider3d_->DeleteResource(y_resource);
+  resource_provider3d_->DeleteResource(u_resource);
+  resource_provider3d_->DeleteResource(v_resource);
+
+  // Allocate resources for the same frame.
+  context3d_->ResetUploadCount();
+  resources = updater.CreateExternalResourcesFromVideoFrame(video_frame);
+  EXPECT_EQ(VideoFrameExternalResources::YUV_RESOURCE, resources.type);
+  EXPECT_EQ(size_t(3), resources.mailboxes.size());
+  EXPECT_EQ(size_t(3), resources.release_callbacks.size());
+  // The data should be reused so expect no texture uploads.
+  EXPECT_EQ(0, context3d_->UploadCount());
+}
+
 }  // namespace
 }  // namespace cc
diff --git a/cc/scheduler/begin_frame_source.cc b/cc/scheduler/begin_frame_source.cc
index 5252dcc..89b794e 100644
--- a/cc/scheduler/begin_frame_source.cc
+++ b/cc/scheduler/begin_frame_source.cc
@@ -7,6 +7,7 @@
 #include "base/auto_reset.h"
 #include "base/debug/trace_event.h"
 #include "base/debug/trace_event_argument.h"
+#include "base/location.h"
 #include "base/logging.h"
 #include "base/strings/string_number_conversions.h"
 #include "cc/scheduler/delay_based_time_source.h"
@@ -182,7 +183,7 @@
 
   base::TimeTicks now = Now();
   BeginFrameArgs args = BeginFrameArgs::Create(
-      now, now + BeginFrameArgs::DefaultInterval(),
+      BEGINFRAME_FROM_HERE, now, now + BeginFrameArgs::DefaultInterval(),
       BeginFrameArgs::DefaultInterval(), BeginFrameArgs::NORMAL);
   CallOnBeginFrame(args);
 }
@@ -242,8 +243,8 @@
     base::TimeTicks frame_time,
     BeginFrameArgs::BeginFrameArgsType type) {
   base::TimeTicks deadline = time_source_->NextTickTime();
-  return BeginFrameArgs::Create(frame_time, deadline, time_source_->Interval(),
-                                type);
+  return BeginFrameArgs::Create(BEGINFRAME_FROM_HERE, frame_time, deadline,
+                                time_source_->Interval(), type);
 }
 
 // TimeSourceClient support
diff --git a/cc/scheduler/begin_frame_source_unittest.cc b/cc/scheduler/begin_frame_source_unittest.cc
index 498d10b..0972762 100644
--- a/cc/scheduler/begin_frame_source_unittest.cc
+++ b/cc/scheduler/begin_frame_source_unittest.cc
@@ -15,19 +15,18 @@
 #include "testing/gtest/include/gtest/gtest.h"
 
 // Macros to help set up expected calls on the MockBeginFrameObserver.
-#define EXPECT_BEGIN_FRAME_DROP(obs, frame_time, deadline, interval) \
-  {                                                                  \
-    ::testing::Expectation exp =                                     \
-        EXPECT_CALL((obs),                                           \
-                    OnBeginFrame(CreateBeginFrameArgsForTesting(     \
-                        frame_time, deadline, interval)))            \
-            .InSequence((obs).sequence);                             \
+#define EXPECT_BEGIN_FRAME_DROP(obs, frame_time, deadline, interval)       \
+  {                                                                        \
+    ::testing::Expectation exp =                                           \
+        EXPECT_CALL((obs), OnBeginFrame(CreateBeginFrameArgsForTesting(    \
+                               BEGINFRAME_FROM_HERE, frame_time, deadline, \
+                               interval))).InSequence((obs).sequence);     \
   }
 
 #define EXPECT_BEGIN_FRAME_USED(obs, frame_time, deadline, interval)       \
   {                                                                        \
-    BeginFrameArgs args =                                                  \
-        CreateBeginFrameArgsForTesting(frame_time, deadline, interval);    \
+    BeginFrameArgs args = CreateBeginFrameArgsForTesting(                  \
+        BEGINFRAME_FROM_HERE, frame_time, deadline, interval);             \
     ::testing::Expectation exp =                                           \
         EXPECT_CALL((obs), OnBeginFrame(args)).InSequence((obs).sequence); \
     EXPECT_CALL((obs), LastUsedBeginFrameArgs())                           \
@@ -38,15 +37,15 @@
 
 // Macros to send BeginFrameArgs on a FakeBeginFrameSink (and verify resulting
 // observer behaviour).
-#define SEND_BEGIN_FRAME(args_equal_to, source, frame_time, deadline,   \
-                         interval)                                      \
-  {                                                                     \
-    BeginFrameArgs old_args = (source).TestLastUsedBeginFrameArgs();    \
-    BeginFrameArgs new_args =                                           \
-        CreateBeginFrameArgsForTesting(frame_time, deadline, interval); \
-    ASSERT_FALSE(old_args == new_args);                                 \
-    (source).TestOnBeginFrame(new_args);                                \
-    EXPECT_EQ(args_equal_to, (source).TestLastUsedBeginFrameArgs());    \
+#define SEND_BEGIN_FRAME(args_equal_to, source, frame_time, deadline, \
+                         interval)                                    \
+  {                                                                   \
+    BeginFrameArgs old_args = (source).TestLastUsedBeginFrameArgs();  \
+    BeginFrameArgs new_args = CreateBeginFrameArgsForTesting(         \
+        BEGINFRAME_FROM_HERE, frame_time, deadline, interval);        \
+    ASSERT_FALSE(old_args == new_args);                               \
+    (source).TestOnBeginFrame(new_args);                              \
+    EXPECT_EQ(args_equal_to, (source).TestLastUsedBeginFrameArgs());  \
   }
 
 // When dropping LastUsedBeginFrameArgs **shouldn't** change.
@@ -99,19 +98,25 @@
             MockBeginFrameObserver::kDefaultBeginFrameArgs);
 
   obs.OnBeginFrame(CreateBeginFrameArgsForTesting(
-      100, 200, 300));  // One call to LastUsedBeginFrameArgs
-  EXPECT_EQ(obs.LastUsedBeginFrameArgs(),
-            CreateBeginFrameArgsForTesting(100, 200, 300));
+      BEGINFRAME_FROM_HERE, 100, 200,
+      300));  // One call to LastUsedBeginFrameArgs
+  EXPECT_EQ(
+      obs.LastUsedBeginFrameArgs(),
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 100, 200, 300));
 
   obs.OnBeginFrame(CreateBeginFrameArgsForTesting(
-      400, 600, 300));  // Multiple calls to LastUsedBeginFrameArgs
-  EXPECT_EQ(obs.LastUsedBeginFrameArgs(),
-            CreateBeginFrameArgsForTesting(400, 600, 300));
-  EXPECT_EQ(obs.LastUsedBeginFrameArgs(),
-            CreateBeginFrameArgsForTesting(400, 600, 300));
+      BEGINFRAME_FROM_HERE, 400, 600,
+      300));  // Multiple calls to LastUsedBeginFrameArgs
+  EXPECT_EQ(
+      obs.LastUsedBeginFrameArgs(),
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 400, 600, 300));
+  EXPECT_EQ(
+      obs.LastUsedBeginFrameArgs(),
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 400, 600, 300));
 
   obs.OnBeginFrame(CreateBeginFrameArgsForTesting(
-      700, 900, 300));  // No calls to LastUsedBeginFrameArgs
+      BEGINFRAME_FROM_HERE, 700, 900,
+      300));  // No calls to LastUsedBeginFrameArgs
 }
 
 TEST(MockBeginFrameObserverTest, ExpectOnBeginFrameStatus) {
@@ -125,28 +130,45 @@
             MockBeginFrameObserver::kDefaultBeginFrameArgs);
 
   // Used
-  obs.OnBeginFrame(CreateBeginFrameArgsForTesting(100, 200, 300));
-  EXPECT_EQ(obs.LastUsedBeginFrameArgs(),
-            CreateBeginFrameArgsForTesting(100, 200, 300));
+  obs.OnBeginFrame(
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 100, 200, 300));
+  EXPECT_EQ(
+      obs.LastUsedBeginFrameArgs(),
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 100, 200, 300));
 
   // Dropped
-  obs.OnBeginFrame(CreateBeginFrameArgsForTesting(400, 600, 300));
-  EXPECT_EQ(obs.LastUsedBeginFrameArgs(),
-            CreateBeginFrameArgsForTesting(100, 200, 300));
+  obs.OnBeginFrame(
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 400, 600, 300));
+  EXPECT_EQ(
+      obs.LastUsedBeginFrameArgs(),
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 100, 200, 300));
 
   // Dropped
-  obs.OnBeginFrame(CreateBeginFrameArgsForTesting(450, 650, 300));
-  EXPECT_EQ(obs.LastUsedBeginFrameArgs(),
-            CreateBeginFrameArgsForTesting(100, 200, 300));
+  obs.OnBeginFrame(
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 450, 650, 300));
+  EXPECT_EQ(
+      obs.LastUsedBeginFrameArgs(),
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 100, 200, 300));
 
   // Used
-  obs.OnBeginFrame(CreateBeginFrameArgsForTesting(700, 900, 300));
-  EXPECT_EQ(obs.LastUsedBeginFrameArgs(),
-            CreateBeginFrameArgsForTesting(700, 900, 300));
+  obs.OnBeginFrame(
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 700, 900, 300));
+  EXPECT_EQ(
+      obs.LastUsedBeginFrameArgs(),
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 700, 900, 300));
 }
 
 const BeginFrameArgs MockBeginFrameObserver::kDefaultBeginFrameArgs =
-    CreateBeginFrameArgsForTesting(-1, -1, -1);
+    CreateBeginFrameArgsForTesting(
+#ifdef NDEBUG
+        nullptr,
+#else
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "MockBeginFrameObserver::kDefaultBeginFrameArgs"),
+#endif
+        -1,
+        -1,
+        -1);
 
 // BeginFrameObserverMixIn testing ---------------------------------------
 class MockMinimalBeginFrameObserverMixIn : public BeginFrameObserverMixIn {
@@ -168,25 +190,31 @@
   EXPECT_DEATH({ obs.OnBeginFrame(BeginFrameArgs()); }, "");
 #endif
 
-  BeginFrameArgs args1 = CreateBeginFrameArgsForTesting(100, 200, 300);
+  BeginFrameArgs args1 =
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 100, 200, 300);
   EXPECT_CALL(obs, OnBeginFrameMixInDelegate(args1)).WillOnce(Return(true));
   obs.OnBeginFrame(args1);
   EXPECT_EQ(args1, obs.LastUsedBeginFrameArgs());
   EXPECT_EQ(0, obs.dropped_begin_frame_args());
 
 #ifndef NDEBUG
-  EXPECT_DEATH(
-      { obs.OnBeginFrame(CreateBeginFrameArgsForTesting(50, 200, 300)); }, "");
+  EXPECT_DEATH({
+                 obs.OnBeginFrame(CreateBeginFrameArgsForTesting(
+                     BEGINFRAME_FROM_HERE, 50, 200, 300));
+               },
+               "");
 #endif
 
   // Returning false shouldn't update the LastUsedBeginFrameArgs value.
-  BeginFrameArgs args2 = CreateBeginFrameArgsForTesting(200, 300, 400);
+  BeginFrameArgs args2 =
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 200, 300, 400);
   EXPECT_CALL(obs, OnBeginFrameMixInDelegate(args2)).WillOnce(Return(false));
   obs.OnBeginFrame(args2);
   EXPECT_EQ(args1, obs.LastUsedBeginFrameArgs());
   EXPECT_EQ(1, obs.dropped_begin_frame_args());
 
-  BeginFrameArgs args3 = CreateBeginFrameArgsForTesting(150, 300, 400);
+  BeginFrameArgs args3 =
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 150, 300, 400);
   EXPECT_CALL(obs, OnBeginFrameMixInDelegate(args3)).WillOnce(Return(true));
   obs.OnBeginFrame(args3);
   EXPECT_EQ(args3, obs.LastUsedBeginFrameArgs());
@@ -495,7 +523,8 @@
        SetNeedsBeginFramesCallsOnBeginFrameWithMissedTick) {
   now_src_->SetNowMicroseconds(10010);
   EXPECT_CALL((*obs_), OnBeginFrame(CreateBeginFrameArgsForTesting(
-                           10000, 20000, 10000, BeginFrameArgs::MISSED)));
+                           BEGINFRAME_FROM_HERE, 10000, 20000, 10000,
+                           BeginFrameArgs::MISSED)));
   source_->SetNeedsBeginFrames(true);  // Should cause the last tick to be sent
   // No tasks should need to be run for this to occur.
 }
diff --git a/cc/scheduler/scheduler.cc b/cc/scheduler/scheduler.cc
index 3e6f6c6..0cce5dc 100644
--- a/cc/scheduler/scheduler.cc
+++ b/cc/scheduler/scheduler.cc
@@ -470,20 +470,16 @@
   // draining the queue if we don't catch up. If we consistently can't catch
   // up, our fallback should be to lower our frame rate.
   base::TimeTicks now = Now();
-  base::TimeDelta draw_duration_estimate = client_->DrawDurationEstimate();
-  while (!begin_retro_frame_args_.empty()) {
-    base::TimeTicks adjusted_deadline = AdjustedBeginImplFrameDeadline(
-        begin_retro_frame_args_.front(), draw_duration_estimate);
-    if (now <= adjusted_deadline)
-      break;
 
-    TRACE_EVENT_INSTANT2("cc",
-                         "Scheduler::BeginRetroFrame discarding",
-                         TRACE_EVENT_SCOPE_THREAD,
-                         "deadline - now",
-                         (adjusted_deadline - now).InMicroseconds(),
-                         "BeginFrameArgs",
-                         begin_retro_frame_args_.front().AsValue());
+  while (!begin_retro_frame_args_.empty()) {
+    const BeginFrameArgs& args = begin_retro_frame_args_.front();
+    base::TimeTicks expiration_time = args.frame_time + args.interval;
+    if (now <= expiration_time)
+      break;
+    TRACE_EVENT_INSTANT2(
+        "cc", "Scheduler::BeginRetroFrame discarding", TRACE_EVENT_SCOPE_THREAD,
+        "expiration_time - now", (expiration_time - now).InMillisecondsF(),
+        "BeginFrameArgs", begin_retro_frame_args_.front().AsValue());
     begin_retro_frame_args_.pop_front();
     frame_source_->DidFinishFrame(begin_retro_frame_args_.size());
   }
@@ -564,19 +560,38 @@
   ProcessScheduledActions();
 
   state_machine_.OnBeginImplFrameDeadlinePending();
-  ScheduleBeginImplFrameDeadline(
-      AdjustedBeginImplFrameDeadline(args, draw_duration_estimate));
+
+  if (settings_.using_synchronous_renderer_compositor) {
+    // The synchronous renderer compositor has to make its GL calls
+    // within this call.
+    // TODO(brianderson): Have the OutputSurface initiate the deadline tasks
+    // so the synchronous renderer compositor can take advantage of splitting
+    // up the BeginImplFrame and deadline as well.
+    OnBeginImplFrameDeadline();
+  } else {
+    ScheduleBeginImplFrameDeadline(
+        AdjustedBeginImplFrameDeadline(args, draw_duration_estimate));
+  }
 }
 
 base::TimeTicks Scheduler::AdjustedBeginImplFrameDeadline(
     const BeginFrameArgs& args,
     base::TimeDelta draw_duration_estimate) const {
-  if (settings_.using_synchronous_renderer_compositor) {
-    // The synchronous compositor needs to draw right away.
+  // The synchronous compositor does not post a deadline task.
+  DCHECK(!settings_.using_synchronous_renderer_compositor);
+  if (settings_.main_thread_should_always_be_low_latency) {
+    // In main thread low latency mode, always start deadline early.
     return base::TimeTicks();
   } else if (state_machine_.ShouldTriggerBeginImplFrameDeadlineEarly()) {
     // We are ready to draw a new active tree immediately.
+    // We don't use Now() here because it's somewhat expensive to call.
     return base::TimeTicks();
+  } else if (settings_.main_thread_should_always_be_low_latency) {
+    // Post long deadline to keep advancing during idle period. After activation
+    // we will be able to trigger deadline early.
+    // TODO(weiliangc): Don't post deadline once input is deferred with
+    // BeginRetroFrames.
+    return args.frame_time + args.interval;
   } else if (state_machine_.needs_redraw()) {
     // We have an animation or fast input path on the impl thread that wants
     // to draw, so don't wait too long for a new active tree.
@@ -596,15 +611,6 @@
 void Scheduler::ScheduleBeginImplFrameDeadline(base::TimeTicks deadline) {
   TRACE_EVENT1(
       "cc", "Scheduler::ScheduleBeginImplFrameDeadline", "deadline", deadline);
-  if (settings_.using_synchronous_renderer_compositor) {
-    // The synchronous renderer compositor has to make its GL calls
-    // within this call.
-    // TODO(brianderson): Have the OutputSurface initiate the deadline tasks
-    // so the sychronous renderer compositor can take advantage of splitting
-    // up the BeginImplFrame and deadline as well.
-    OnBeginImplFrameDeadline();
-    return;
-  }
   begin_impl_frame_deadline_task_.Cancel();
   begin_impl_frame_deadline_task_.Reset(begin_impl_frame_deadline_closure_);
 
@@ -618,7 +624,6 @@
 void Scheduler::OnBeginImplFrameDeadline() {
   TRACE_EVENT0("cc", "Scheduler::OnBeginImplFrameDeadline");
   begin_impl_frame_deadline_task_.Cancel();
-
   // We split the deadline actions up into two phases so the state machine
   // has a chance to trigger actions that should occur durring and after
   // the deadline separately. For example:
diff --git a/cc/scheduler/scheduler_settings.cc b/cc/scheduler/scheduler_settings.cc
index 84f0fcd..53abe7b 100644
--- a/cc/scheduler/scheduler_settings.cc
+++ b/cc/scheduler/scheduler_settings.cc
@@ -19,6 +19,7 @@
       using_synchronous_renderer_compositor(false),
       throttle_frame_production(true),
       disable_hi_res_timer_tasks_on_battery(false),
+      main_thread_should_always_be_low_latency(false),
       background_frame_interval(base::TimeDelta::FromSeconds(1)) {
 }
 
@@ -38,6 +39,8 @@
       throttle_frame_production(settings.throttle_frame_production),
       disable_hi_res_timer_tasks_on_battery(
           settings.disable_hi_res_timer_tasks_on_battery),
+      main_thread_should_always_be_low_latency(
+          settings.main_thread_should_always_be_low_latency),
       background_frame_interval(base::TimeDelta::FromSecondsD(
           1.0 / settings.background_animation_rate)) {
 }
@@ -64,6 +67,8 @@
   state->SetBoolean("throttle_frame_production", throttle_frame_production);
   state->SetBoolean("disable_hi_res_timer_tasks_on_battery",
                     disable_hi_res_timer_tasks_on_battery);
+  state->SetBoolean("main_thread_should_always_be_low_latency",
+                    main_thread_should_always_be_low_latency);
   state->SetInteger("background_frame_interval",
                     background_frame_interval.InMicroseconds());
   return state;
diff --git a/cc/scheduler/scheduler_settings.h b/cc/scheduler/scheduler_settings.h
index e3fd425..4ff3c7e 100644
--- a/cc/scheduler/scheduler_settings.h
+++ b/cc/scheduler/scheduler_settings.h
@@ -35,6 +35,12 @@
   bool throttle_frame_production;
   bool disable_hi_res_timer_tasks_on_battery;
 
+  // In main thread low latency mode the entire
+  // BeginMainFrame->Commit->Activation->Draw cycle should complete before
+  // starting the next cycle.  Additionally, BeginMainFrame and Commit are
+  // completed atomically with no other tasks or actions occuring between them.
+  bool main_thread_should_always_be_low_latency;
+
   base::TimeDelta background_frame_interval;
 
   scoped_refptr<base::debug::ConvertableToTraceFormat> AsValue() const;
diff --git a/cc/scheduler/scheduler_state_machine.cc b/cc/scheduler/scheduler_state_machine.cc
index 5f56255..2946a2c 100644
--- a/cc/scheduler/scheduler_state_machine.cc
+++ b/cc/scheduler/scheduler_state_machine.cc
@@ -97,6 +97,8 @@
       return "COMMIT_STATE_READY_TO_COMMIT";
     case COMMIT_STATE_WAITING_FOR_ACTIVATION:
       return "COMMIT_STATE_WAITING_FOR_ACTIVATION";
+    case COMMIT_STATE_WAITING_FOR_DRAW:
+      return "COMMIT_STATE_WAITING_FOR_DRAW";
   }
   NOTREACHED();
   return "???";
@@ -592,9 +594,11 @@
 
   if (commit_was_aborted || settings_.main_frame_before_activation_enabled) {
     commit_state_ = COMMIT_STATE_IDLE;
+  } else if (settings_.impl_side_painting) {
+    commit_state_ = COMMIT_STATE_WAITING_FOR_ACTIVATION;
   } else {
-    commit_state_ = settings_.impl_side_painting
-                        ? COMMIT_STATE_WAITING_FOR_ACTIVATION
+    commit_state_ = settings_.main_thread_should_always_be_low_latency
+                        ? COMMIT_STATE_WAITING_FOR_DRAW
                         : COMMIT_STATE_IDLE;
   }
 
@@ -637,8 +641,11 @@
 }
 
 void SchedulerStateMachine::UpdateStateOnActivation() {
-  if (commit_state_ == COMMIT_STATE_WAITING_FOR_ACTIVATION)
-    commit_state_ = COMMIT_STATE_IDLE;
+  if (commit_state_ == COMMIT_STATE_WAITING_FOR_ACTIVATION) {
+    commit_state_ = settings_.main_thread_should_always_be_low_latency
+                        ? COMMIT_STATE_WAITING_FOR_DRAW
+                        : COMMIT_STATE_IDLE;
+  }
 
   if (output_surface_state_ == OUTPUT_SURFACE_WAITING_FOR_FIRST_ACTIVATION)
     output_surface_state_ = OUTPUT_SURFACE_ACTIVE;
@@ -656,6 +663,9 @@
   if (forced_redraw_state_ == FORCED_REDRAW_STATE_WAITING_FOR_DRAW)
     forced_redraw_state_ = FORCED_REDRAW_STATE_IDLE;
 
+  if (commit_state_ == COMMIT_STATE_WAITING_FOR_DRAW)
+    commit_state_ = COMMIT_STATE_IDLE;
+
   needs_redraw_ = false;
   active_tree_needs_first_draw_ = false;
 
@@ -991,6 +1001,11 @@
   DCHECK(commit_state_ == COMMIT_STATE_BEGIN_MAIN_FRAME_STARTED)
       << AsValue()->ToString();
   commit_state_ = COMMIT_STATE_READY_TO_COMMIT;
+  // In main thread low latency mode, commit should happen right after
+  // BeginFrame, meaning when this function is called, next action should be
+  // commit.
+  if (settings_.main_thread_should_always_be_low_latency)
+    DCHECK(ShouldCommit());
 }
 
 void SchedulerStateMachine::BeginMainFrameAborted(bool did_handle) {
diff --git a/cc/scheduler/scheduler_state_machine.h b/cc/scheduler/scheduler_state_machine.h
index c69c959..12f8635 100644
--- a/cc/scheduler/scheduler_state_machine.h
+++ b/cc/scheduler/scheduler_state_machine.h
@@ -68,6 +68,7 @@
     COMMIT_STATE_BEGIN_MAIN_FRAME_STARTED,
     COMMIT_STATE_READY_TO_COMMIT,
     COMMIT_STATE_WAITING_FOR_ACTIVATION,
+    COMMIT_STATE_WAITING_FOR_DRAW,
   };
   static const char* CommitStateToString(CommitState state);
 
diff --git a/cc/scheduler/scheduler_state_machine_unittest.cc b/cc/scheduler/scheduler_state_machine_unittest.cc
index af6d83a..f46389b 100644
--- a/cc/scheduler/scheduler_state_machine_unittest.cc
+++ b/cc/scheduler/scheduler_state_machine_unittest.cc
@@ -44,7 +44,8 @@
     SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_SENT,
     SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_STARTED,
     SchedulerStateMachine::COMMIT_STATE_READY_TO_COMMIT,
-    SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_ACTIVATION};
+    SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_ACTIVATION,
+    SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_DRAW};
 
 // Exposes the protected state fields of the SchedulerStateMachine for testing
 class StateMachine : public SchedulerStateMachine {
@@ -122,7 +123,8 @@
 
     EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
     EXPECT_FALSE(state.BeginFrameNeeded());
-    state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+    state.OnBeginImplFrame(
+        CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
 
     EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
     state.OnBeginImplFrameDeadline();
@@ -140,7 +142,8 @@
 
     EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
     EXPECT_FALSE(state.BeginFrameNeeded());
-    state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+    state.OnBeginImplFrame(
+        CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
     EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
     state.OnBeginImplFrameDeadline();
   }
@@ -158,7 +161,8 @@
 
     EXPECT_TRUE(state.BeginFrameNeeded());
 
-    state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+    state.OnBeginImplFrame(
+        CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
     EXPECT_ACTION_UPDATE_STATE(
         SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   }
@@ -195,7 +199,7 @@
   EXPECT_TRUE(state.BeginFrameNeeded());
 
   // Commit to the pending tree.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
@@ -211,7 +215,7 @@
 
   // Verify that the next commit starts while there is still a pending tree.
   state.SetNeedsCommit();
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
@@ -252,7 +256,7 @@
   state.SetNeedsRedraw(true);
   EXPECT_TRUE(state.RedrawPending());
   EXPECT_TRUE(state.BeginFrameNeeded());
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   state.OnBeginImplFrameDeadline();
@@ -269,7 +273,7 @@
 
   // Failing the draw makes us require a commit.
   state.DidDrawIfPossibleCompleted(DRAW_ABORTED_CHECKERBOARD_ANIMATIONS);
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
@@ -289,7 +293,7 @@
   EXPECT_TRUE(state.RedrawPending());
   EXPECT_TRUE(state.BeginFrameNeeded());
 
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   state.OnBeginImplFrameDeadline();
@@ -303,7 +307,7 @@
 
   // Missing high res content requires a commit (but not a redraw)
   state.DidDrawIfPossibleCompleted(DRAW_ABORTED_MISSING_HIGH_RES_CONTENT);
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_FALSE(state.RedrawPending());
@@ -323,7 +327,7 @@
   state.SetNeedsRedraw(true);
   EXPECT_TRUE(state.RedrawPending());
   EXPECT_TRUE(state.BeginFrameNeeded());
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   state.OnBeginImplFrameDeadline();
@@ -344,7 +348,7 @@
 
   // Failing the draw for animation checkerboards makes us require a commit.
   state.DidDrawIfPossibleCompleted(DRAW_ABORTED_CHECKERBOARD_ANIMATIONS);
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
@@ -365,7 +369,7 @@
   // Start a commit.
   state.SetNeedsCommit();
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
@@ -395,7 +399,7 @@
   EXPECT_TRUE(state.RedrawPending());
 
   // The redraw should be forced at the end of the next BeginImplFrame.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
@@ -423,7 +427,7 @@
   // Start a commit.
   state.SetNeedsCommit();
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
@@ -480,7 +484,7 @@
   // Start a draw.
   state.SetNeedsRedraw(true);
   EXPECT_TRUE(state.BeginFrameNeeded());
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   state.OnBeginImplFrameDeadline();
@@ -497,7 +501,7 @@
 
   // We should not be trying to draw again now, but we have a commit pending.
   EXPECT_TRUE(state.BeginFrameNeeded());
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
@@ -523,7 +527,7 @@
 
   // Draw the first frame.
   EXPECT_TRUE(state.BeginFrameNeeded());
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
@@ -542,7 +546,7 @@
 
   // Move to another frame. This should now draw.
   EXPECT_TRUE(state.BeginFrameNeeded());
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
 
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
@@ -680,7 +684,8 @@
       state.SetVisible(false);
       state.SetNeedsRedraw(true);
       if (j == 1)
-        state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+        state.OnBeginImplFrame(
+            CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
 
       state.SetCanDraw(false);
       EXPECT_NE(SchedulerStateMachine::ACTION_DRAW_AND_SWAP_IF_POSSIBLE,
@@ -702,7 +707,7 @@
   state.SetNeedsRedraw(true);
   state.SetVisible(true);
   state.SetCanDraw(false);
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_DRAW_AND_SWAP_ABORT);
   EXPECT_ACTION_UPDATE_STATE(
@@ -730,7 +735,7 @@
   EXPECT_TRUE(state.BeginFrameNeeded());
 
   // Begin the frame.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_SENT,
@@ -766,7 +771,7 @@
             state.begin_impl_frame_state());
   EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
 
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_EQ(SchedulerStateMachine::BEGIN_IMPL_FRAME_STATE_BEGIN_FRAME_STARTING,
             state.begin_impl_frame_state());
   EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
@@ -803,7 +808,7 @@
   state.SetNeedsCommit();
 
   // Begin the frame.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_SENT,
@@ -840,6 +845,160 @@
   EXPECT_FALSE(state.needs_redraw());
 }
 
+TEST(SchedulerStateMachineTest, TestFullCycleWithMainThreadLowLatencyMode) {
+  SchedulerSettings scheduler_settings;
+  scheduler_settings.main_thread_should_always_be_low_latency = true;
+  StateMachine state(scheduler_settings);
+  state.SetCanStart();
+  state.UpdateState(state.NextAction());
+  state.CreateAndInitializeOutputSurfaceWithActivatedCommit();
+  state.SetVisible(true);
+  state.SetCanDraw(true);
+
+  // Start clean and set commit.
+  state.SetNeedsCommit();
+
+  // Begin the frame.
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
+  EXPECT_ACTION_UPDATE_STATE(
+      SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
+  EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_SENT,
+            state.CommitState());
+  EXPECT_FALSE(state.NeedsCommit());
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
+
+  // Tell the scheduler the frame finished.
+  state.NotifyBeginMainFrameStarted();
+  state.NotifyReadyToCommit();
+  EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_READY_TO_COMMIT,
+            state.CommitState());
+
+  // Commit.
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_COMMIT);
+  EXPECT_TRUE(state.active_tree_needs_first_draw());
+  EXPECT_TRUE(state.needs_redraw());
+
+  // Now commit should wait for draw.
+  EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_DRAW,
+            state.CommitState());
+
+  // Swap throttled. Do not draw.
+  state.DidSwapBuffers();
+  state.OnBeginImplFrameDeadline();
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
+  state.DidSwapBuffersComplete();
+
+  // Haven't draw since last commit, do not begin new main frame.
+  state.SetNeedsCommit();
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
+
+  // At BeginImplFrame deadline, draw.
+  state.OnBeginImplFrameDeadline();
+  EXPECT_ACTION_UPDATE_STATE(
+      SchedulerStateMachine::ACTION_DRAW_AND_SWAP_IF_POSSIBLE);
+  state.DidSwapBuffers();
+  state.DidDrawIfPossibleCompleted(DRAW_SUCCESS);
+  state.DidSwapBuffersComplete();
+
+  // Now will be able to start main frame.
+  EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_IDLE, state.CommitState());
+  EXPECT_FALSE(state.needs_redraw());
+  EXPECT_ACTION_UPDATE_STATE(
+      SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
+}
+
+TEST(SchedulerStateMachineTest,
+     TestFullCycleWithMainThreadLowLatencyMode_ImplSidePaint) {
+  SchedulerSettings scheduler_settings;
+  scheduler_settings.main_thread_should_always_be_low_latency = true;
+  scheduler_settings.impl_side_painting = true;
+  StateMachine state(scheduler_settings);
+  state.SetCanStart();
+  state.UpdateState(state.NextAction());
+  state.CreateAndInitializeOutputSurfaceWithActivatedCommit();
+  state.SetVisible(true);
+  state.SetCanDraw(true);
+
+  // Start clean and set commit.
+  state.SetNeedsCommit();
+
+  // Begin the frame.
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
+  EXPECT_ACTION_UPDATE_STATE(
+      SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
+  EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_SENT,
+            state.CommitState());
+  EXPECT_FALSE(state.NeedsCommit());
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
+
+  // Tell the scheduler the frame finished.
+  state.NotifyBeginMainFrameStarted();
+  state.NotifyReadyToCommit();
+  EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_READY_TO_COMMIT,
+            state.CommitState());
+
+  // Commit.
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_COMMIT);
+
+  // Now commit should wait for activation.
+  EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_ACTIVATION,
+            state.CommitState());
+
+  // No activation yet, so this commit is not drawn yet. Force to draw this
+  // frame, and still block BeginMainFrame.
+  state.SetNeedsRedraw(true);
+  state.SetNeedsCommit();
+  state.OnBeginImplFrameDeadline();
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
+  EXPECT_ACTION_UPDATE_STATE(
+      SchedulerStateMachine::ACTION_DRAW_AND_SWAP_IF_POSSIBLE);
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
+
+  // Cannot BeginMainFrame yet since last commit is not yet activated and drawn.
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
+  EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_ACTIVATION,
+            state.CommitState());
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
+
+  // Now activate sync tree.
+  state.NotifyReadyToActivate();
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ACTIVATE_SYNC_TREE);
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
+  EXPECT_TRUE(state.active_tree_needs_first_draw());
+  EXPECT_TRUE(state.needs_redraw());
+  EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_DRAW,
+            state.CommitState());
+
+  // Swap throttled. Do not draw.
+  state.DidSwapBuffers();
+  state.OnBeginImplFrameDeadline();
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
+  state.DidSwapBuffersComplete();
+
+  // Haven't draw since last commit, do not begin new main frame.
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
+  EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
+
+  // At BeginImplFrame deadline, draw. This draws unblocks BeginMainFrame.
+  state.OnBeginImplFrameDeadline();
+  EXPECT_ACTION_UPDATE_STATE(
+      SchedulerStateMachine::ACTION_DRAW_AND_SWAP_IF_POSSIBLE);
+  state.DidSwapBuffers();
+  state.DidDrawIfPossibleCompleted(DRAW_SUCCESS);
+  state.DidSwapBuffersComplete();
+
+  // Now will be able to start main frame.
+  EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_IDLE, state.CommitState());
+  EXPECT_FALSE(state.needs_redraw());
+  EXPECT_ACTION_UPDATE_STATE(
+      SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
+}
+
 TEST(SchedulerStateMachineTest, TestFullCycleWithCommitRequestInbetween) {
   SchedulerSettings default_scheduler_settings;
   StateMachine state(default_scheduler_settings);
@@ -853,7 +1012,7 @@
   state.SetNeedsCommit();
 
   // Begin the frame.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_SENT,
@@ -894,7 +1053,7 @@
   EXPECT_FALSE(state.needs_redraw());
 
   // Next BeginImplFrame should initiate second commit.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
 }
@@ -922,7 +1081,7 @@
   state.SetNeedsCommit();
 
   // Begin the frame while visible.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_BEGIN_MAIN_FRAME_SENT,
@@ -952,7 +1111,7 @@
   EXPECT_TRUE(state.NeedsCommit());
 
   // Start a new frame.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
 
@@ -991,7 +1150,7 @@
 
   // Start a new frame; draw because this is the first frame since output
   // surface init'd.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   state.OnBeginImplFrameDeadline();
@@ -1043,7 +1202,7 @@
 
   // Become visible and start a new frame.
   state.SetVisible(true);
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
@@ -1108,7 +1267,7 @@
   EXPECT_TRUE(state.NeedsCommit());
 
   // We should get that commit when we begin the next frame.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
@@ -1145,7 +1304,7 @@
   EXPECT_TRUE(state.NeedsCommit());
 
   // Begin a frame when not visible, the scheduler animates but does not commit.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_IDLE, state.CommitState());
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
@@ -1171,14 +1330,14 @@
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
   // Check that the first init does not SetNeedsCommit.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   state.OnBeginImplFrameDeadline();
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
   // Check that a needs commit initiates a BeginMainFrame.
   state.SetNeedsCommit();
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
 }
@@ -1208,7 +1367,7 @@
   state.CreateAndInitializeOutputSurfaceWithActivatedCommit();
 
   // When the context is recreated, we should begin a commit.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
 }
@@ -1232,14 +1391,14 @@
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
   // Once context recreation begins, nothing should happen.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   state.OnBeginImplFrameDeadline();
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
   // While context is recreating, commits shouldn't begin.
   state.SetNeedsCommit();
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   state.OnBeginImplFrameDeadline();
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
@@ -1265,7 +1424,7 @@
 
   // Once the context is recreated, whether we draw should be based on
   // SetCanDraw.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   state.OnBeginImplFrameDeadline();
@@ -1293,7 +1452,7 @@
 
   // Set damage and expect a draw.
   state.SetNeedsRedraw(true);
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
@@ -1328,7 +1487,7 @@
   EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_OUTPUT_SURFACE_CREATION,
             state.NextAction());
 
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_EQ(SchedulerStateMachine::BEGIN_IMPL_FRAME_STATE_BEGIN_FRAME_STARTING,
             state.begin_impl_frame_state());
   EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
@@ -1360,7 +1519,7 @@
 
   // Set damage and expect a draw.
   state.SetNeedsRedraw(true);
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
@@ -1395,7 +1554,7 @@
   EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_OUTPUT_SURFACE_CREATION,
             state.NextAction());
 
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_EQ(SchedulerStateMachine::BEGIN_IMPL_FRAME_STATE_BEGIN_FRAME_STARTING,
             state.begin_impl_frame_state());
   EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
@@ -1416,7 +1575,7 @@
 
   // After we get a new output surface, the commit flow should start.
   state.CreateAndInitializeOutputSurfaceWithActivatedCommit();
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
@@ -1452,7 +1611,7 @@
   state.DidCreateAndInitializeOutputSurface();
 
   EXPECT_FALSE(state.RedrawPending());
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME,
             state.NextAction());
 }
@@ -1584,7 +1743,7 @@
 
   // This test mirrors what happens during the first frame of a scroll gesture.
   // First we get the input event and a BeginFrame.
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
 
   // As a response the compositor requests a redraw and a commit to tell the
   // main thread about the new scroll offset.
@@ -1619,7 +1778,7 @@
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ACTIVATE_SYNC_TREE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
@@ -1644,7 +1803,7 @@
   // in prefer impl latency mode.
   state.SetNeedsRedraw(true);
   state.SetNeedsCommit();
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
@@ -1681,7 +1840,7 @@
   // and did not just swap.
   state.SetNeedsCommit();
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   EXPECT_FALSE(state.ShouldTriggerBeginImplFrameDeadlineEarly());
   state.OnBeginImplFrameDeadline();
@@ -1699,7 +1858,7 @@
 
   state.SetNeedsCommit();
 
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
@@ -1726,7 +1885,7 @@
   EXPECT_TRUE(state.BeginFrameNeeded());
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
 
   state.OnBeginImplFrameDeadlinePending();
@@ -1752,7 +1911,7 @@
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   EXPECT_TRUE(state.BeginFrameNeeded());
 
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
@@ -1780,7 +1939,7 @@
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
   EXPECT_TRUE(state.BeginFrameNeeded());
 
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
   EXPECT_ACTION_UPDATE_STATE(
       SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
@@ -1812,7 +1971,7 @@
   EXPECT_TRUE(state.BeginFrameNeeded());
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
 
-  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
+  state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
 
   state.SetNeedsAnimate();
diff --git a/cc/scheduler/scheduler_unittest.cc b/cc/scheduler/scheduler_unittest.cc
index 636beb0..2992dbc 100644
--- a/cc/scheduler/scheduler_unittest.cc
+++ b/cc/scheduler/scheduler_unittest.cc
@@ -168,19 +168,32 @@
   void AdvanceFrame() {
     TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("cc.debug.scheduler.frames"),
                  "FakeSchedulerClient::AdvanceFrame");
+    bool previous_deadline_pending =
+        scheduler_->BeginImplFrameDeadlinePending();
     if (ExternalBeginFrame()) {
-      // Creep the time forward so that any BeginFrameArgs is not equal to the
-      // last one otherwise we violate the BeginFrameSource contract.
-      now_src_->AdvanceNowMicroseconds(1);
-      fake_external_begin_frame_source_->TestOnBeginFrame(
-          CreateBeginFrameArgsForTesting(now_src_));
+      SendNextBeginFrame();
+      // This could be the previous deadline or a new one.
       EXPECT_TRUE(scheduler_->BeginImplFrameDeadlinePending());
     }
-
+    // Consume previous deadline first. It is important that we check for the
+    // existence of a previous deadline so that we do not consume the new one.
+    if (previous_deadline_pending) {
+      EXPECT_TRUE(task_runner().RunTasksWhile(ImplFrameDeadlinePending(true)));
+    }
+    // Then run tasks until new deadline is scheduled.
     EXPECT_TRUE(task_runner().RunTasksWhile(ImplFrameDeadlinePending(false)));
     EXPECT_TRUE(scheduler_->BeginImplFrameDeadlinePending());
   }
 
+  void SendNextBeginFrame() {
+    DCHECK(ExternalBeginFrame());
+    // Creep the time forward so that any BeginFrameArgs is not equal to the
+    // last one otherwise we violate the BeginFrameSource contract.
+    now_src_->AdvanceNow(BeginFrameArgs::DefaultInterval());
+    fake_external_begin_frame_source_->TestOnBeginFrame(
+        CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, now_src_));
+  }
+
   OrderedSimpleTaskRunner& task_runner() { return *task_runner_; }
   TestNowSource* now_src() { return now_src_.get(); }
 
@@ -1167,7 +1180,8 @@
   scheduler->NotifyReadyToCommit();
   scheduler->SetNeedsRedraw();
 
-  BeginFrameArgs frame_args = CreateBeginFrameArgsForTesting(client.now_src());
+  BeginFrameArgs frame_args =
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, client.now_src());
   frame_args.interval = base::TimeDelta::FromMilliseconds(1000);
   client.fake_external_begin_frame_source()->TestOnBeginFrame(frame_args);
 
@@ -1240,7 +1254,8 @@
 
   // Create a BeginFrame with a long deadline to avoid race conditions.
   // This is the first BeginFrame, which will be handled immediately.
-  BeginFrameArgs args = CreateBeginFrameArgsForTesting(client.now_src());
+  BeginFrameArgs args =
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, client.now_src());
   args.deadline += base::TimeDelta::FromHours(1);
   client.fake_external_begin_frame_source()->TestOnBeginFrame(args);
   EXPECT_ACTION("WillBeginImplFrame", client, 0, 2);
@@ -1318,7 +1333,8 @@
 
   // Create a BeginFrame with a long deadline to avoid race conditions.
   // This is the first BeginFrame, which will be handled immediately.
-  BeginFrameArgs args = CreateBeginFrameArgsForTesting(client.now_src());
+  BeginFrameArgs args =
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, client.now_src());
   args.deadline += base::TimeDelta::FromHours(1);
   client.fake_external_begin_frame_source()->TestOnBeginFrame(args);
   EXPECT_ACTION("WillBeginImplFrame", client, 0, 2);
@@ -1387,6 +1403,131 @@
   client.Reset();
 }
 
+TEST(SchedulerTest, RetroFrameDoesNotExpireTooEarly) {
+  FakeSchedulerClient client;
+  SchedulerSettings scheduler_settings;
+  scheduler_settings.use_external_begin_frame_source = true;
+  TestScheduler* scheduler = client.CreateScheduler(scheduler_settings);
+  scheduler->SetCanStart();
+  scheduler->SetVisible(true);
+  scheduler->SetCanDraw(true);
+  InitializeOutputSurfaceAndFirstCommit(scheduler, &client);
+
+  client.Reset();
+  scheduler->SetNeedsCommit();
+  EXPECT_TRUE(client.needs_begin_frames());
+  EXPECT_SINGLE_ACTION("SetNeedsBeginFrames(true)", client);
+
+  client.Reset();
+  client.AdvanceFrame();
+  EXPECT_ACTION("WillBeginImplFrame", client, 0, 2);
+  EXPECT_ACTION("ScheduledActionSendBeginMainFrame", client, 1, 2);
+  EXPECT_TRUE(scheduler->BeginImplFrameDeadlinePending());
+
+  client.Reset();
+  scheduler->NotifyBeginMainFrameStarted();
+
+  client.Reset();
+  client.SendNextBeginFrame();
+  // This BeginFrame is queued up as a retro frame.
+  EXPECT_NO_ACTION(client);
+  // The previous deadline is still pending.
+  EXPECT_TRUE(scheduler->BeginImplFrameDeadlinePending());
+
+  client.Reset();
+  // This commit should schedule the (previous) deadline to trigger immediately.
+  scheduler->NotifyReadyToCommit();
+  EXPECT_SINGLE_ACTION("ScheduledActionCommit", client);
+
+  client.Reset();
+  // The deadline task should trigger causing a draw.
+  EXPECT_TRUE(scheduler->BeginImplFrameDeadlinePending());
+  client.task_runner().RunTasksWhile(client.ImplFrameDeadlinePending(true));
+  EXPECT_ACTION("ScheduledActionAnimate", client, 0, 2);
+  EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 1, 2);
+
+  // Keep animating.
+  client.Reset();
+  scheduler->SetNeedsAnimate();
+  scheduler->SetNeedsRedraw();
+  EXPECT_NO_ACTION(client);
+
+  // Let's advance sufficiently past the next frame's deadline.
+  client.now_src()->AdvanceNow(
+      BeginFrameArgs::DefaultInterval() -
+      BeginFrameArgs::DefaultEstimatedParentDrawTime() +
+      base::TimeDelta::FromMicroseconds(1));
+
+  // The retro frame hasn't expired yet.
+  client.task_runner().RunTasksWhile(client.ImplFrameDeadlinePending(false));
+  EXPECT_ACTION("WillBeginImplFrame", client, 0, 2);
+  EXPECT_ACTION("ScheduledActionAnimate", client, 1, 2);
+  EXPECT_TRUE(scheduler->BeginImplFrameDeadlinePending());
+
+  // This is an immediate deadline case.
+  client.Reset();
+  client.task_runner().RunPendingTasks();
+  EXPECT_FALSE(scheduler->BeginImplFrameDeadlinePending());
+  EXPECT_SINGLE_ACTION("ScheduledActionDrawAndSwapIfPossible", client);
+}
+
+TEST(SchedulerTest, RetroFrameDoesNotExpireTooLate) {
+  FakeSchedulerClient client;
+  SchedulerSettings scheduler_settings;
+  scheduler_settings.use_external_begin_frame_source = true;
+  TestScheduler* scheduler = client.CreateScheduler(scheduler_settings);
+  scheduler->SetCanStart();
+  scheduler->SetVisible(true);
+  scheduler->SetCanDraw(true);
+  InitializeOutputSurfaceAndFirstCommit(scheduler, &client);
+
+  client.Reset();
+  scheduler->SetNeedsCommit();
+  EXPECT_TRUE(client.needs_begin_frames());
+  EXPECT_SINGLE_ACTION("SetNeedsBeginFrames(true)", client);
+
+  client.Reset();
+  client.AdvanceFrame();
+  EXPECT_ACTION("WillBeginImplFrame", client, 0, 2);
+  EXPECT_ACTION("ScheduledActionSendBeginMainFrame", client, 1, 2);
+  EXPECT_TRUE(scheduler->BeginImplFrameDeadlinePending());
+
+  client.Reset();
+  scheduler->NotifyBeginMainFrameStarted();
+
+  client.Reset();
+  client.SendNextBeginFrame();
+  // This BeginFrame is queued up as a retro frame.
+  EXPECT_NO_ACTION(client);
+  // The previous deadline is still pending.
+  EXPECT_TRUE(scheduler->BeginImplFrameDeadlinePending());
+
+  client.Reset();
+  // This commit should schedule the (previous) deadline to trigger immediately.
+  scheduler->NotifyReadyToCommit();
+  EXPECT_SINGLE_ACTION("ScheduledActionCommit", client);
+
+  client.Reset();
+  // The deadline task should trigger causing a draw.
+  EXPECT_TRUE(scheduler->BeginImplFrameDeadlinePending());
+  client.task_runner().RunTasksWhile(client.ImplFrameDeadlinePending(true));
+  EXPECT_ACTION("ScheduledActionAnimate", client, 0, 2);
+  EXPECT_ACTION("ScheduledActionDrawAndSwapIfPossible", client, 1, 2);
+
+  // Keep animating.
+  client.Reset();
+  scheduler->SetNeedsAnimate();
+  scheduler->SetNeedsRedraw();
+  EXPECT_NO_ACTION(client);
+
+  // Let's advance sufficiently past the next frame's deadline.
+  client.now_src()->AdvanceNow(BeginFrameArgs::DefaultInterval() +
+                               base::TimeDelta::FromMicroseconds(1));
+
+  // The retro frame should've expired.
+  EXPECT_NO_ACTION(client);
+}
+
 void BeginFramesNotFromClient(bool use_external_begin_frame_source,
                               bool throttle_frame_production) {
   FakeSchedulerClient client;
@@ -1793,7 +1934,8 @@
   // Create a BeginFrame with a long deadline to avoid race conditions.
   // This is the first BeginFrame, which will be handled immediately.
   client.Reset();
-  BeginFrameArgs args = CreateBeginFrameArgsForTesting(client.now_src());
+  BeginFrameArgs args =
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, client.now_src());
   args.deadline += base::TimeDelta::FromHours(1);
   client.fake_external_begin_frame_source()->TestOnBeginFrame(args);
   EXPECT_ACTION("WillBeginImplFrame", client, 0, 2);
@@ -1852,7 +1994,8 @@
   // Create a BeginFrame with a long deadline to avoid race conditions.
   // This is the first BeginFrame, which will be handled immediately.
   client.Reset();
-  BeginFrameArgs args = CreateBeginFrameArgsForTesting(client.now_src());
+  BeginFrameArgs args =
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, client.now_src());
   args.deadline += base::TimeDelta::FromHours(1);
   client.fake_external_begin_frame_source()->TestOnBeginFrame(args);
   EXPECT_ACTION("WillBeginImplFrame", client, 0, 2);
diff --git a/cc/surfaces/BUILD.gn b/cc/surfaces/BUILD.gn
index a45e786..ea44068 100644
--- a/cc/surfaces/BUILD.gn
+++ b/cc/surfaces/BUILD.gn
@@ -2,6 +2,14 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
+source_set("surface_id") {
+  sources = [
+    "surface_id.h",
+  ]
+
+  deps = [ "//base" ]
+}
+
 component("surfaces") {
   output_name = "cc_surfaces"
   sources = [
@@ -15,7 +23,6 @@
     "surface_factory.cc",
     "surface_factory.h",
     "surface_factory_client.h",
-    "surface_id.h",
     "surface_id_allocator.cc",
     "surface_id_allocator.h",
     "surface_manager.cc",
@@ -28,6 +35,7 @@
   defines = [ "CC_SURFACES_IMPLEMENTATION=1" ]
 
   deps = [
+    ":surface_id",
     "//base",
     "//base/third_party/dynamic_annotations",
     "//cc",
diff --git a/cc/surfaces/display.cc b/cc/surfaces/display.cc
index a8ae27a..9257446 100644
--- a/cc/surfaces/display.cc
+++ b/cc/surfaces/display.cc
@@ -49,15 +49,23 @@
   return output_surface_->BindToClient(this);
 }
 
-void Display::Resize(SurfaceId id,
-                     const gfx::Size& size,
-                     float device_scale_factor) {
+void Display::SetSurfaceId(SurfaceId id, float device_scale_factor) {
   current_surface_id_ = id;
-  current_surface_size_ = size;
   device_scale_factor_ = device_scale_factor;
   client_->DisplayDamaged();
 }
 
+void Display::Resize(const gfx::Size& size) {
+  if (size == current_surface_size_)
+    return;
+  // Need to ensure all pending swaps have executed before the window is
+  // resized, or D3D11 will scale the swap output.
+  if (renderer_ && settings_.finish_rendering_on_resize)
+    renderer_->Finish();
+  current_surface_size_ = size;
+  client_->DisplayDamaged();
+}
+
 void Display::InitializeRenderer() {
   if (resource_provider_)
     return;
@@ -112,6 +120,9 @@
   benchmark_instrumentation::IssueDisplayRenderingStatsEvent();
   DelegatedFrameData* frame_data = frame->delegated_frame_data.get();
 
+  gfx::Size surface_size =
+      frame_data->render_pass_list.back()->output_rect.size();
+
   gfx::Rect device_viewport_rect = gfx::Rect(current_surface_size_);
   gfx::Rect device_clip_rect = device_viewport_rect;
   bool disable_picture_quad_image_filtering = false;
@@ -122,7 +133,14 @@
                        device_viewport_rect,
                        device_clip_rect,
                        disable_picture_quad_image_filtering);
-  renderer_->SwapBuffers(frame->metadata);
+
+  bool disable_swap = surface_size != current_surface_size_;
+  if (disable_swap) {
+    DidSwapBuffers();
+  } else {
+    renderer_->SwapBuffers(frame->metadata);
+  }
+
   for (SurfaceAggregator::SurfaceIndexMap::iterator it =
            aggregator_->previous_contained_surfaces().begin();
        it != aggregator_->previous_contained_surfaces().end();
@@ -131,6 +149,8 @@
     if (surface)
       surface->RunDrawCallbacks();
   }
+  if (disable_swap)
+    DidSwapBuffersComplete();
   return true;
 }
 
diff --git a/cc/surfaces/display.h b/cc/surfaces/display.h
index a0bb62a..47c55bb 100644
--- a/cc/surfaces/display.h
+++ b/cc/surfaces/display.h
@@ -51,9 +51,8 @@
 
   // device_scale_factor is used to communicate to the external window system
   // what scale this was rendered at.
-  void Resize(SurfaceId id,
-              const gfx::Size& new_size,
-              float device_scale_factor);
+  void SetSurfaceId(SurfaceId id, float device_scale_factor);
+  void Resize(const gfx::Size& new_size);
   bool Draw();
 
   SurfaceId CurrentSurfaceId();
diff --git a/cc/surfaces/surface.cc b/cc/surfaces/surface.cc
index 600455f..c7b1145 100644
--- a/cc/surfaces/surface.cc
+++ b/cc/surfaces/surface.cc
@@ -18,9 +18,8 @@
 // completely damaged the first time they're drawn from.
 static const int kFrameIndexStart = 2;
 
-Surface::Surface(SurfaceId id, const gfx::Size& size, SurfaceFactory* factory)
+Surface::Surface(SurfaceId id, SurfaceFactory* factory)
     : surface_id_(id),
-      size_(size),
       factory_(factory->AsWeakPtr()),
       frame_index_(kFrameIndexStart) {
 }
diff --git a/cc/surfaces/surface.h b/cc/surfaces/surface.h
index 7b3fbc1..ed0061d 100644
--- a/cc/surfaces/surface.h
+++ b/cc/surfaces/surface.h
@@ -34,10 +34,9 @@
 
 class CC_SURFACES_EXPORT Surface {
  public:
-  Surface(SurfaceId id, const gfx::Size& size, SurfaceFactory* factory);
+  Surface(SurfaceId id, SurfaceFactory* factory);
   ~Surface();
 
-  const gfx::Size& size() const { return size_; }
   SurfaceId surface_id() const { return surface_id_; }
 
   void QueueFrame(scoped_ptr<CompositorFrame> frame,
@@ -74,7 +73,6 @@
   void ClearCopyRequests();
 
   SurfaceId surface_id_;
-  gfx::Size size_;
   base::WeakPtr<SurfaceFactory> factory_;
   // TODO(jamesr): Support multiple frames in flight.
   scoped_ptr<CompositorFrame> current_frame_;
diff --git a/cc/surfaces/surface_aggregator.cc b/cc/surfaces/surface_aggregator.cc
index f5689c5..2334d14 100644
--- a/cc/surfaces/surface_aggregator.cc
+++ b/cc/surfaces/surface_aggregator.cc
@@ -153,13 +153,14 @@
 }
 
 gfx::Rect SurfaceAggregator::DamageRectForSurface(const Surface* surface,
-                                                  const RenderPass& source) {
+                                                  const RenderPass& source,
+                                                  const gfx::Rect& full_rect) {
   int previous_index = previous_contained_surfaces_[surface->surface_id()];
   if (previous_index == surface->frame_index())
     return gfx::Rect();
   else if (previous_index == surface->frame_index() - 1)
     return source.damage_rect;
-  return gfx::Rect(surface->size());
+  return full_rect;
 }
 
 void SurfaceAggregator::HandleSurfaceQuad(const SurfaceDrawQuad* surface_quad,
@@ -267,7 +268,8 @@
       gfx::UnionRects(dest_pass->damage_rect,
                       MathUtil::MapEnclosingClippedRect(
                           surface_quad->quadTransform(),
-                          DamageRectForSurface(surface, last_pass)));
+                          DamageRectForSurface(surface, last_pass,
+                                               surface_quad->visible_rect)));
 
   referenced_surfaces_.erase(it);
 }
@@ -364,9 +366,8 @@
     RenderPassId remapped_pass_id =
         RemapPassId(source.id, surface->surface_id());
 
-    copy_pass->SetAll(remapped_pass_id,
-                      source.output_rect,
-                      DamageRectForSurface(surface, source),
+    copy_pass->SetAll(remapped_pass_id, source.output_rect,
+                      DamageRectForSurface(surface, source, source.output_rect),
                       source.transform_to_root_target,
                       source.has_transparent_background);
 
@@ -415,6 +416,9 @@
   referenced_surfaces_.erase(it);
   DCHECK(referenced_surfaces_.empty());
 
+  if (dest_pass_list_->empty())
+    return nullptr;
+
   dest_pass_list_ = NULL;
   RemoveUnreferencedChildren();
   contained_surfaces_.swap(previous_contained_surfaces_);
diff --git a/cc/surfaces/surface_aggregator.h b/cc/surfaces/surface_aggregator.h
index 6965041..1e68643 100644
--- a/cc/surfaces/surface_aggregator.h
+++ b/cc/surfaces/surface_aggregator.h
@@ -63,7 +63,8 @@
                      RenderPassList* render_pass_list);
   int ChildIdForSurface(Surface* surface);
   gfx::Rect DamageRectForSurface(const Surface* surface,
-                                 const RenderPass& source);
+                                 const RenderPass& source,
+                                 const gfx::Rect& full_rect);
 
   SurfaceManager* manager_;
   ResourceProvider* provider_;
diff --git a/cc/surfaces/surface_aggregator_unittest.cc b/cc/surfaces/surface_aggregator_unittest.cc
index 2e47708..1daff52 100644
--- a/cc/surfaces/surface_aggregator_unittest.cc
+++ b/cc/surfaces/surface_aggregator_unittest.cc
@@ -59,7 +59,7 @@
 
 TEST_F(SurfaceAggregatorTest, ValidSurfaceNoFrame) {
   SurfaceId one_id(7);
-  factory_.Create(one_id, SurfaceSize());
+  factory_.Create(one_id);
   scoped_ptr<CompositorFrame> frame = aggregator_.Aggregate(one_id);
   EXPECT_FALSE(frame);
   factory_.Destroy(one_id);
@@ -72,7 +72,7 @@
   virtual void SetUp() {
     SurfaceAggregatorTest::SetUp();
     root_surface_id_ = allocator_.GenerateId();
-    factory_.Create(root_surface_id_, SurfaceSize());
+    factory_.Create(root_surface_id_);
   }
 
   virtual void TearDown() {
@@ -157,7 +157,7 @@
 
 TEST_F(SurfaceAggregatorValidSurfaceTest, OpacityCopied) {
   SurfaceId embedded_surface_id = allocator_.GenerateId();
-  factory_.Create(embedded_surface_id, SurfaceSize());
+  factory_.Create(embedded_surface_id);
 
   test::Quad embedded_quads[] = {test::Quad::SolidColorQuad(SK_ColorGREEN)};
   test::Pass embedded_passes[] = {
@@ -190,9 +190,9 @@
 
 TEST_F(SurfaceAggregatorValidSurfaceTest, OpacityCombinedWithNesting) {
   SurfaceId surface_id1 = allocator_.GenerateId();
-  factory_.Create(surface_id1, SurfaceSize());
+  factory_.Create(surface_id1);
   SurfaceId surface_id2 = allocator_.GenerateId();
-  factory_.Create(surface_id2, SurfaceSize());
+  factory_.Create(surface_id2);
 
   // |surface_id1| is color quad.
   {
@@ -258,7 +258,7 @@
 // color quad should be aggregated into the final frame.
 TEST_F(SurfaceAggregatorValidSurfaceTest, SimpleSurfaceReference) {
   SurfaceId embedded_surface_id = allocator_.GenerateId();
-  factory_.Create(embedded_surface_id, SurfaceSize());
+  factory_.Create(embedded_surface_id);
 
   test::Quad embedded_quads[] = {test::Quad::SolidColorQuad(SK_ColorGREEN)};
   test::Pass embedded_passes[] = {
@@ -287,7 +287,7 @@
 
 TEST_F(SurfaceAggregatorValidSurfaceTest, CopyRequest) {
   SurfaceId embedded_surface_id = allocator_.GenerateId();
-  factory_.Create(embedded_surface_id, SurfaceSize());
+  factory_.Create(embedded_surface_id);
 
   test::Quad embedded_quads[] = {test::Quad::SolidColorQuad(SK_ColorGREEN)};
   test::Pass embedded_passes[] = {
@@ -344,7 +344,7 @@
 // Root surface may contain copy requests.
 TEST_F(SurfaceAggregatorValidSurfaceTest, RootCopyRequest) {
   SurfaceId embedded_surface_id = allocator_.GenerateId();
-  factory_.Create(embedded_surface_id, SurfaceSize());
+  factory_.Create(embedded_surface_id);
 
   test::Quad embedded_quads[] = {test::Quad::SolidColorQuad(SK_ColorGREEN)};
   test::Pass embedded_passes[] = {
@@ -432,7 +432,7 @@
 // This tests referencing a surface that has multiple render passes.
 TEST_F(SurfaceAggregatorValidSurfaceTest, MultiPassSurfaceReference) {
   SurfaceId embedded_surface_id = child_allocator_.GenerateId();
-  factory_.Create(embedded_surface_id, SurfaceSize());
+  factory_.Create(embedded_surface_id);
 
   RenderPassId pass_ids[] = {RenderPassId(1, 1), RenderPassId(1, 2),
                              RenderPassId(1, 3)};
@@ -590,7 +590,7 @@
 // should also just be dropped.
 TEST_F(SurfaceAggregatorValidSurfaceTest, ValidSurfaceReferenceWithNoFrame) {
   SurfaceId surface_with_no_frame_id = allocator_.GenerateId();
-  factory_.Create(surface_with_no_frame_id, gfx::Size(5, 5));
+  factory_.Create(surface_with_no_frame_id);
   test::Quad quads[] = {test::Quad::SolidColorQuad(SK_ColorGREEN),
                         test::Quad::SurfaceQuad(surface_with_no_frame_id, 1.f),
                         test::Quad::SolidColorQuad(SK_ColorBLUE)};
@@ -628,7 +628,7 @@
 // Tests a more complex cycle with one intermediate surface.
 TEST_F(SurfaceAggregatorValidSurfaceTest, TwoSurfaceCyclicalReference) {
   SurfaceId child_surface_id = allocator_.GenerateId();
-  factory_.Create(child_surface_id, SurfaceSize());
+  factory_.Create(child_surface_id);
 
   test::Quad parent_quads[] = {test::Quad::SolidColorQuad(SK_ColorBLUE),
                                test::Quad::SurfaceQuad(child_surface_id, 1.f),
@@ -667,7 +667,7 @@
 // namespace and update RenderPassDrawQuad's id references to match.
 TEST_F(SurfaceAggregatorValidSurfaceTest, RenderPassIdMapping) {
   SurfaceId child_surface_id = allocator_.GenerateId();
-  factory_.Create(child_surface_id, SurfaceSize());
+  factory_.Create(child_surface_id);
 
   RenderPassId child_pass_id[] = {RenderPassId(1, 1), RenderPassId(1, 2)};
   test::Quad child_quad[][1] = {{test::Quad::SolidColorQuad(SK_ColorGREEN)},
@@ -795,7 +795,7 @@
 
   RenderPassId pass_id(1, 1);
   SurfaceId grandchild_surface_id = allocator_.GenerateId();
-  factory_.Create(grandchild_surface_id, SurfaceSize());
+  factory_.Create(grandchild_surface_id);
   scoped_ptr<RenderPass> grandchild_pass = RenderPass::Create();
   gfx::Rect output_rect(SurfaceSize());
   gfx::Rect damage_rect(SurfaceSize());
@@ -807,7 +807,7 @@
   QueuePassAsFrame(grandchild_pass.Pass(), grandchild_surface_id);
 
   SurfaceId child_one_surface_id = allocator_.GenerateId();
-  factory_.Create(child_one_surface_id, SurfaceSize());
+  factory_.Create(child_one_surface_id);
 
   scoped_ptr<RenderPass> child_one_pass = RenderPass::Create();
   child_one_pass->SetNew(
@@ -825,7 +825,7 @@
   QueuePassAsFrame(child_one_pass.Pass(), child_one_surface_id);
 
   SurfaceId child_two_surface_id = allocator_.GenerateId();
-  factory_.Create(child_two_surface_id, SurfaceSize());
+  factory_.Create(child_two_surface_id);
 
   scoped_ptr<RenderPass> child_two_pass = RenderPass::Create();
   child_two_pass->SetNew(
@@ -903,7 +903,7 @@
 // affected.
 TEST_F(SurfaceAggregatorValidSurfaceTest, AggregateMultiplePassWithTransform) {
   SurfaceId child_surface_id = allocator_.GenerateId();
-  factory_.Create(child_surface_id, SurfaceSize());
+  factory_.Create(child_surface_id);
   RenderPassId child_pass_id[] = {RenderPassId(1, 1), RenderPassId(1, 2)};
   test::Quad child_quads[][1] = {
       {test::Quad::SolidColorQuad(SK_ColorGREEN)},
@@ -1038,7 +1038,7 @@
 // Tests that damage rects are aggregated correctly when surfaces change.
 TEST_F(SurfaceAggregatorValidSurfaceTest, AggregateDamageRect) {
   SurfaceId child_surface_id = allocator_.GenerateId();
-  factory_.Create(child_surface_id, SurfaceSize());
+  factory_.Create(child_surface_id);
   RenderPassId child_pass_id = RenderPassId(1, 1);
   test::Quad child_quads[] = {test::Quad::RenderPassQuad(child_pass_id)};
   test::Pass child_passes[] = {
@@ -1300,7 +1300,7 @@
   ResourceTrackingSurfaceFactoryClient client;
   SurfaceFactory factory(&manager_, &client);
   SurfaceId surface_id(7u);
-  factory.Create(surface_id, SurfaceSize());
+  factory.Create(surface_id);
 
   ResourceProvider::ResourceId ids[] = {11, 12, 13};
   SubmitFrameWithResources(ids, arraysize(ids), &factory, surface_id);
@@ -1328,9 +1328,9 @@
   ResourceTrackingSurfaceFactoryClient client;
   SurfaceFactory factory(&manager_, &client);
   SurfaceId surface_id(7u);
-  factory.Create(surface_id, SurfaceSize());
+  factory.Create(surface_id);
   SurfaceId surface_id2(8u);
-  factory.Create(surface_id2, SurfaceSize());
+  factory.Create(surface_id2);
 
   ResourceProvider::ResourceId ids[] = {11, 12, 13};
   SubmitFrameWithResources(ids, arraysize(ids), &factory, surface_id);
diff --git a/cc/surfaces/surface_factory.cc b/cc/surfaces/surface_factory.cc
index 574f5d1..fd5a6d4 100644
--- a/cc/surfaces/surface_factory.cc
+++ b/cc/surfaces/surface_factory.cc
@@ -30,8 +30,8 @@
   surface_map_.clear();
 }
 
-void SurfaceFactory::Create(SurfaceId surface_id, const gfx::Size& size) {
-  scoped_ptr<Surface> surface(new Surface(surface_id, size, this));
+void SurfaceFactory::Create(SurfaceId surface_id) {
+  scoped_ptr<Surface> surface(new Surface(surface_id, this));
   manager_->RegisterSurface(surface.get());
   DCHECK(!surface_map_.count(surface_id));
   surface_map_.add(surface_id, surface.Pass());
diff --git a/cc/surfaces/surface_factory.h b/cc/surfaces/surface_factory.h
index 8e9211c..eba32d2 100644
--- a/cc/surfaces/surface_factory.h
+++ b/cc/surfaces/surface_factory.h
@@ -38,7 +38,7 @@
   SurfaceFactory(SurfaceManager* manager, SurfaceFactoryClient* client);
   ~SurfaceFactory();
 
-  void Create(SurfaceId surface_id, const gfx::Size& size);
+  void Create(SurfaceId surface_id);
   void Destroy(SurfaceId surface_id);
   void DestroyAll();
   // A frame can only be submitted to a surface created by this factory,
diff --git a/cc/surfaces/surface_factory_unittest.cc b/cc/surfaces/surface_factory_unittest.cc
index 14a25fd..84dcc5e 100644
--- a/cc/surfaces/surface_factory_unittest.cc
+++ b/cc/surfaces/surface_factory_unittest.cc
@@ -39,7 +39,7 @@
 class SurfaceFactoryTest : public testing::Test {
  public:
   SurfaceFactoryTest() : factory_(&manager_, &client_), surface_id_(3) {
-    factory_.Create(surface_id_, gfx::Size(5, 5));
+    factory_.Create(surface_id_);
   }
 
   virtual ~SurfaceFactoryTest() {
@@ -361,7 +361,7 @@
 // Tests doing a DestroyAll before shutting down the factory;
 TEST_F(SurfaceFactoryTest, DestroyAll) {
   SurfaceId id(7);
-  factory_.Create(id, gfx::Size(1, 1));
+  factory_.Create(id);
 
   scoped_ptr<DelegatedFrameData> frame_data(new DelegatedFrameData);
   TransferableResource resource;
@@ -378,7 +378,7 @@
 
 TEST_F(SurfaceFactoryTest, DestroySequence) {
   SurfaceId id2(5);
-  factory_.Create(id2, gfx::Size(5, 5));
+  factory_.Create(id2);
 
   // Check that waiting before the sequence is satisfied works.
   manager_.GetSurfaceForId(id2)
@@ -395,7 +395,7 @@
   DCHECK(!manager_.GetSurfaceForId(id2));
 
   // Check that waiting after the sequence is satisfied works.
-  factory_.Create(id2, gfx::Size(5, 5));
+  factory_.Create(id2);
   DCHECK(manager_.GetSurfaceForId(id2));
   manager_.GetSurfaceForId(id2)
       ->AddDestructionDependency(SurfaceSequence(0, 6));
diff --git a/cc/surfaces/surface_unittest.cc b/cc/surfaces/surface_unittest.cc
index b8990c5..7f2de36 100644
--- a/cc/surfaces/surface_unittest.cc
+++ b/cc/surfaces/surface_unittest.cc
@@ -17,7 +17,7 @@
 
   SurfaceId surface_id(6);
   {
-    factory.Create(surface_id, gfx::Size(5, 5));
+    factory.Create(surface_id);
     EXPECT_TRUE(!!manager.GetSurfaceForId(surface_id));
     factory.Destroy(surface_id);
   }
diff --git a/cc/surfaces/surfaces_pixeltest.cc b/cc/surfaces/surfaces_pixeltest.cc
index c70028b..bf9d483 100644
--- a/cc/surfaces/surfaces_pixeltest.cc
+++ b/cc/surfaces/surfaces_pixeltest.cc
@@ -85,7 +85,7 @@
   root_frame->delegated_frame_data = delegated_frame_data.Pass();
 
   SurfaceId root_surface_id = allocator_.GenerateId();
-  factory_.Create(root_surface_id, device_viewport_size_);
+  factory_.Create(root_surface_id);
   factory_.SubmitFrame(root_surface_id, root_frame.Pass(), base::Closure());
 
   SurfaceAggregator aggregator(&manager_, resource_provider_.get());
@@ -107,8 +107,8 @@
   gfx::Size child_size(200, 100);
   SurfaceId child_surface_id = allocator_.GenerateId();
   SurfaceId root_surface_id = allocator_.GenerateId();
-  factory_.Create(child_surface_id, child_size);
-  factory_.Create(root_surface_id, device_viewport_size_);
+  factory_.Create(child_surface_id);
+  factory_.Create(root_surface_id);
   {
     gfx::Rect rect(device_viewport_size_);
     RenderPassId id(1, 1);
@@ -199,9 +199,9 @@
   SurfaceId left_child_id = allocator_.GenerateId();
   SurfaceId right_child_id = allocator_.GenerateId();
   SurfaceId root_surface_id = allocator_.GenerateId();
-  factory_.Create(left_child_id, child_size);
-  factory_.Create(right_child_id, child_size);
-  factory_.Create(root_surface_id, device_viewport_size_);
+  factory_.Create(left_child_id);
+  factory_.Create(right_child_id);
+  factory_.Create(root_surface_id);
 
   {
     gfx::Rect rect(device_viewport_size_);
diff --git a/cc/test/begin_frame_args_test.cc b/cc/test/begin_frame_args_test.cc
index f70d0c5..7b29748 100644
--- a/cc/test/begin_frame_args_test.cc
+++ b/cc/test/begin_frame_args_test.cc
@@ -10,57 +10,67 @@
 
 namespace cc {
 
-BeginFrameArgs CreateBeginFrameArgsForTesting() {
-  return CreateBeginFrameArgsForTesting(gfx::FrameTime::Now());
-}
-
-BeginFrameArgs CreateBeginFrameArgsForTesting(base::TimeTicks frame_time) {
-  return BeginFrameArgs::Create(
-      frame_time, frame_time + (BeginFrameArgs::DefaultInterval() / 2),
-      BeginFrameArgs::DefaultInterval(), BeginFrameArgs::NORMAL);
-}
-
-BeginFrameArgs CreateBeginFrameArgsForTesting(int64 frame_time,
-                                              int64 deadline,
-                                              int64 interval) {
-  return BeginFrameArgs::Create(base::TimeTicks::FromInternalValue(frame_time),
-                                base::TimeTicks::FromInternalValue(deadline),
-                                base::TimeDelta::FromInternalValue(interval),
-                                BeginFrameArgs::NORMAL);
+BeginFrameArgs CreateBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location) {
+  return CreateBeginFrameArgsForTesting(location, gfx::FrameTime::Now());
 }
 
 BeginFrameArgs CreateBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location,
+    base::TimeTicks frame_time) {
+  return BeginFrameArgs::Create(
+      location, frame_time,
+      frame_time + (BeginFrameArgs::DefaultInterval() / 2),
+      BeginFrameArgs::DefaultInterval(), BeginFrameArgs::NORMAL);
+}
+
+BeginFrameArgs CreateBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location,
+    int64 frame_time,
+    int64 deadline,
+    int64 interval) {
+  return BeginFrameArgs::Create(
+      location, base::TimeTicks::FromInternalValue(frame_time),
+      base::TimeTicks::FromInternalValue(deadline),
+      base::TimeDelta::FromInternalValue(interval), BeginFrameArgs::NORMAL);
+}
+
+BeginFrameArgs CreateBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location,
     int64 frame_time,
     int64 deadline,
     int64 interval,
     BeginFrameArgs::BeginFrameArgsType type) {
-  return BeginFrameArgs::Create(base::TimeTicks::FromInternalValue(frame_time),
-                                base::TimeTicks::FromInternalValue(deadline),
-                                base::TimeDelta::FromInternalValue(interval),
-                                type);
+  return BeginFrameArgs::Create(
+      location, base::TimeTicks::FromInternalValue(frame_time),
+      base::TimeTicks::FromInternalValue(deadline),
+      base::TimeDelta::FromInternalValue(interval), type);
 }
 
-BeginFrameArgs CreateExpiredBeginFrameArgsForTesting() {
+BeginFrameArgs CreateExpiredBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location) {
   base::TimeTicks now = gfx::FrameTime::Now();
-  return BeginFrameArgs::Create(now, now - BeginFrameArgs::DefaultInterval(),
-                                BeginFrameArgs::DefaultInterval(),
-                                BeginFrameArgs::NORMAL);
+  return BeginFrameArgs::Create(
+      location, now, now - BeginFrameArgs::DefaultInterval(),
+      BeginFrameArgs::DefaultInterval(), BeginFrameArgs::NORMAL);
 }
 
 BeginFrameArgs CreateBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location,
     scoped_refptr<TestNowSource> now_src) {
   base::TimeTicks now = now_src->Now();
   return BeginFrameArgs::Create(
-      now, now + (BeginFrameArgs::DefaultInterval() / 2),
+      location, now, now + (BeginFrameArgs::DefaultInterval() / 2),
       BeginFrameArgs::DefaultInterval(), BeginFrameArgs::NORMAL);
 }
 
 BeginFrameArgs CreateExpiredBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location,
     scoped_refptr<TestNowSource> now_src) {
   base::TimeTicks now = now_src->Now();
-  return BeginFrameArgs::Create(now, now - BeginFrameArgs::DefaultInterval(),
-                                BeginFrameArgs::DefaultInterval(),
-                                BeginFrameArgs::NORMAL);
+  return BeginFrameArgs::Create(
+      location, now, now - BeginFrameArgs::DefaultInterval(),
+      BeginFrameArgs::DefaultInterval(), BeginFrameArgs::NORMAL);
 }
 
 bool operator==(const BeginFrameArgs& lhs, const BeginFrameArgs& rhs) {
diff --git a/cc/test/begin_frame_args_test.h b/cc/test/begin_frame_args_test.h
index ca4aa45..73aaf02 100644
--- a/cc/test/begin_frame_args_test.h
+++ b/cc/test/begin_frame_args_test.h
@@ -15,23 +15,32 @@
 namespace cc {
 
 // Functions for quickly creating BeginFrameArgs
-BeginFrameArgs CreateBeginFrameArgsForTesting();
-BeginFrameArgs CreateBeginFrameArgsForTesting(base::TimeTicks frame_time);
-BeginFrameArgs CreateBeginFrameArgsForTesting(int64 frame_time,
-                                              int64 deadline,
-                                              int64 interval);
 BeginFrameArgs CreateBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location);
+BeginFrameArgs CreateBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location,
+    base::TimeTicks frame_time);
+BeginFrameArgs CreateBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location,
+    int64 frame_time,
+    int64 deadline,
+    int64 interval);
+BeginFrameArgs CreateBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location,
     int64 frame_time,
     int64 deadline,
     int64 interval,
     BeginFrameArgs::BeginFrameArgsType type);
-BeginFrameArgs CreateExpiredBeginFrameArgsForTesting();
+BeginFrameArgs CreateExpiredBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location);
 
 // Creates a BeginFrameArgs using the fake Now value stored on the
 // OrderSimpleTaskRunner.
 BeginFrameArgs CreateBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location,
     scoped_refptr<TestNowSource> now_src);
 BeginFrameArgs CreateExpiredBeginFrameArgsForTesting(
+    BeginFrameArgs::CreationLocation location,
     scoped_refptr<TestNowSource> now_src);
 
 // gtest helpers -- these *must* be in the same namespace as the types they
diff --git a/cc/test/fake_content_layer_client.cc b/cc/test/fake_content_layer_client.cc
index 5463aed..46d1baa 100644
--- a/cc/test/fake_content_layer_client.cc
+++ b/cc/test/fake_content_layer_client.cc
@@ -4,7 +4,10 @@
 
 #include "cc/test/fake_content_layer_client.h"
 
+#include "cc/resources/clip_display_item.h"
+#include "cc/resources/drawing_display_item.h"
 #include "third_party/skia/include/core/SkCanvas.h"
+#include "third_party/skia/include/core/SkPictureRecorder.h"
 #include "ui/gfx/skia_util.h"
 
 namespace cc {
@@ -52,6 +55,58 @@
   }
 }
 
+scoped_refptr<DisplayItemList>
+FakeContentLayerClient::PaintContentsToDisplayList(
+    const gfx::Rect& clip,
+    GraphicsContextStatus gc_status) {
+  SkPictureRecorder recorder;
+  skia::RefPtr<SkCanvas> canvas;
+  skia::RefPtr<SkPicture> picture;
+  scoped_refptr<DisplayItemList> list = DisplayItemList::Create();
+  list->AppendItem(ClipDisplayItem::Create(clip, std::vector<SkRRect>()));
+
+  for (RectPaintVector::const_iterator it = draw_rects_.begin();
+       it != draw_rects_.end(); ++it) {
+    const gfx::RectF& draw_rect = it->first;
+    const SkPaint& paint = it->second;
+    canvas = skia::SharePtr(
+        recorder.beginRecording(draw_rect.width(), draw_rect.height()));
+    canvas->drawRectCoords(0.f, 0.f, draw_rect.width(), draw_rect.height(),
+                           paint);
+    picture = skia::AdoptRef(recorder.endRecording());
+    list->AppendItem(DrawingDisplayItem::Create(
+        picture, gfx::PointF(draw_rect.x(), draw_rect.y())));
+  }
+
+  for (BitmapVector::const_iterator it = draw_bitmaps_.begin();
+       it != draw_bitmaps_.end(); ++it) {
+    canvas = skia::SharePtr(
+        recorder.beginRecording(it->bitmap.width(), it->bitmap.height()));
+    canvas->drawBitmap(it->bitmap, 0.f, 0.f, &it->paint);
+    picture = skia::AdoptRef(recorder.endRecording());
+    list->AppendItem(DrawingDisplayItem::Create(
+        picture, gfx::PointF(it->point.x(), it->point.y())));
+  }
+
+  if (fill_with_nonsolid_color_) {
+    gfx::RectF draw_rect = clip;
+    bool red = true;
+    while (!draw_rect.IsEmpty()) {
+      SkPaint paint;
+      paint.setColor(red ? SK_ColorRED : SK_ColorBLUE);
+      canvas =
+          skia::SharePtr(recorder.beginRecording(clip.width(), clip.height()));
+      canvas->drawRect(gfx::RectFToSkRect(draw_rect), paint);
+      picture = skia::AdoptRef(recorder.endRecording());
+      list->AppendItem(DrawingDisplayItem::Create(picture, gfx::PointF()));
+      draw_rect.Inset(1, 1);
+    }
+  }
+
+  list->AppendItem(EndClipDisplayItem::Create());
+  return list;
+}
+
 bool FakeContentLayerClient::FillsBoundsCompletely() const { return false; }
 
 }  // namespace cc
diff --git a/cc/test/fake_content_layer_client.h b/cc/test/fake_content_layer_client.h
index 141bc97..1060d08 100644
--- a/cc/test/fake_content_layer_client.h
+++ b/cc/test/fake_content_layer_client.h
@@ -31,6 +31,9 @@
       SkCanvas* canvas,
       const gfx::Rect& rect,
       ContentLayerClient::GraphicsContextStatus gc_status) override;
+  scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus gc_status) override;
   bool FillsBoundsCompletely() const override;
 
   void set_fill_with_nonsolid_color(bool nonsolid) {
diff --git a/cc/test/fake_layer_tree_host_impl.cc b/cc/test/fake_layer_tree_host_impl.cc
index ea19e14..305b856 100644
--- a/cc/test/fake_layer_tree_host_impl.cc
+++ b/cc/test/fake_layer_tree_host_impl.cc
@@ -24,7 +24,8 @@
 
   // Avoid using Now() as the frame time in unit tests.
   base::TimeTicks time_ticks = base::TimeTicks::FromInternalValue(1);
-  SetCurrentBeginFrameArgs(CreateBeginFrameArgsForTesting(time_ticks));
+  SetCurrentBeginFrameArgs(
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 }
 
 FakeLayerTreeHostImpl::FakeLayerTreeHostImpl(const LayerTreeSettings& settings,
@@ -42,7 +43,8 @@
 
   // Avoid using Now() as the frame time in unit tests.
   base::TimeTicks time_ticks = base::TimeTicks::FromInternalValue(1);
-  SetCurrentBeginFrameArgs(CreateBeginFrameArgsForTesting(time_ticks));
+  SetCurrentBeginFrameArgs(
+      CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
 }
 
 FakeLayerTreeHostImpl::~FakeLayerTreeHostImpl() {}
diff --git a/cc/test/layer_tree_pixel_resource_test.cc b/cc/test/layer_tree_pixel_resource_test.cc
index 9bd75ac..1839643 100644
--- a/cc/test/layer_tree_pixel_resource_test.cc
+++ b/cc/test/layer_tree_pixel_resource_test.cc
@@ -159,7 +159,7 @@
     case ZERO_COPY_RASTER_WORKER_POOL:
       EXPECT_TRUE(context_provider);
       EXPECT_EQ(PIXEL_TEST_GL, test_type_);
-      EXPECT_TRUE(host_impl->CanUseZeroCopyRasterizer());
+      EXPECT_TRUE(host_impl->GetRendererCapabilities().using_image);
       *resource_pool =
           ResourcePool::Create(resource_provider,
                                draw_texture_target_,
@@ -173,7 +173,7 @@
     case ONE_COPY_RASTER_WORKER_POOL:
       EXPECT_TRUE(context_provider);
       EXPECT_EQ(PIXEL_TEST_GL, test_type_);
-      EXPECT_TRUE(host_impl->CanUseOneCopyRasterizer());
+      EXPECT_TRUE(host_impl->GetRendererCapabilities().using_image);
       // We need to create a staging resource pool when using copy rasterizer.
       *staging_resource_pool =
           ResourcePool::Create(resource_provider,
diff --git a/cc/test/layer_tree_test.cc b/cc/test/layer_tree_test.cc
index 80e9f11..9f08677 100644
--- a/cc/test/layer_tree_test.cc
+++ b/cc/test/layer_tree_test.cc
@@ -91,7 +91,7 @@
 
   void TestOnBeginFrame() {
     DCHECK(CalledOnValidThread());
-    CallOnBeginFrame(CreateBeginFrameArgsForTesting());
+    CallOnBeginFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
   }
 
  private:
@@ -153,6 +153,11 @@
     test_hooks_->ScheduledActionBeginOutputSurfaceCreation();
   }
 
+  void ScheduledActionManageTiles() override {
+    ThreadProxy::ScheduledActionManageTiles();
+    test_hooks_->ScheduledActionManageTiles();
+  }
+
   ThreadProxyForTest(
       TestHooks* test_hooks,
       LayerTreeHost* host,
@@ -780,6 +785,11 @@
   RunTest(true, false, true);
 }
 
+void LayerTreeTest::RunTestWithMainThreadLowLatency() {
+  settings_.main_thread_should_always_be_low_latency = true;
+  RunTest(false, false, false);
+}
+
 void LayerTreeTest::RequestNewOutputSurface(bool fallback) {
   layer_tree_host_->SetOutputSurface(CreateOutputSurface(fallback));
 }
diff --git a/cc/test/layer_tree_test.h b/cc/test/layer_tree_test.h
index 2914cfc..ba2ef69 100644
--- a/cc/test/layer_tree_test.h
+++ b/cc/test/layer_tree_test.h
@@ -98,6 +98,7 @@
   virtual void ScheduledActionAnimate() {}
   virtual void ScheduledActionCommit() {}
   virtual void ScheduledActionBeginOutputSurfaceCreation() {}
+  virtual void ScheduledActionManageTiles() {}
 
   // Implementation of AnimationDelegate:
   void NotifyAnimationStarted(base::TimeTicks monotonic_time,
@@ -175,6 +176,7 @@
                        bool delegating_renderer,
                        bool impl_side_painting);
   virtual void RunTestWithImplSidePainting();
+  virtual void RunTestWithMainThreadLowLatency();
 
   bool HasImplThread() { return proxy() ? proxy()->HasImplThread() : false; }
   base::SingleThreadTaskRunner* ImplThreadTaskRunner() {
@@ -235,7 +237,18 @@
 
 }  // namespace cc
 
+#define SINGLE_THREAD_DIRECT_RENDERER_NOIMPL_MAIN_THREAD_LOW_LATENCY_TEST_F( \
+    TEST_FIXTURE_NAME)                                                       \
+  TEST_F(                                                                    \
+      TEST_FIXTURE_NAME,                                                     \
+      RunSingleThread_DirectRenderer_MainThreadPaint_MainThreadLowLatency) { \
+    RunTestWithMainThreadLowLatency();                                       \
+  }                                                                          \
+  class SingleThreadDirectNoImplLowLatencyNeedsSemicolon##TEST_FIXTURE_NAME {}
+
 #define SINGLE_THREAD_DIRECT_RENDERER_NOIMPL_TEST_F(TEST_FIXTURE_NAME)        \
+  SINGLE_THREAD_DIRECT_RENDERER_NOIMPL_MAIN_THREAD_LOW_LATENCY_TEST_F(        \
+      TEST_FIXTURE_NAME);                                                     \
   TEST_F(TEST_FIXTURE_NAME, RunSingleThread_DirectRenderer_MainThreadPaint) { \
     RunTest(false, false, false);                                             \
   }                                                                           \
diff --git a/cc/test/skia_common.cc b/cc/test/skia_common.cc
index 1ccb2d1..ef61e21 100644
--- a/cc/test/skia_common.cc
+++ b/cc/test/skia_common.cc
@@ -4,6 +4,7 @@
 
 #include "cc/test/skia_common.h"
 
+#include "cc/resources/display_item_list.h"
 #include "cc/resources/picture.h"
 #include "skia/ext/refptr.h"
 #include "third_party/skia/include/core/SkCanvas.h"
@@ -26,6 +27,18 @@
   picture->Raster(&canvas, NULL, negated_content_region, 1.0f);
 }
 
+void DrawDisplayList(unsigned char* buffer,
+                     const gfx::Rect& layer_rect,
+                     scoped_refptr<DisplayItemList> list) {
+  SkImageInfo info =
+      SkImageInfo::MakeN32Premul(layer_rect.width(), layer_rect.height());
+  SkBitmap bitmap;
+  bitmap.installPixels(info, buffer, info.minRowBytes());
+  SkCanvas canvas(bitmap);
+  canvas.clipRect(gfx::RectToSkRect(layer_rect));
+  list->Raster(&canvas, NULL, 1.0f);
+}
+
 void CreateBitmap(const gfx::Size& size, const char* uri, SkBitmap* bitmap) {
   SkImageInfo info = SkImageInfo::MakeN32Premul(size.width(), size.height());
 
diff --git a/cc/test/skia_common.h b/cc/test/skia_common.h
index 3bafa0b..51ebcc5 100644
--- a/cc/test/skia_common.h
+++ b/cc/test/skia_common.h
@@ -18,11 +18,16 @@
 
 namespace cc {
 class Picture;
+class DisplayItemList;
 
 void DrawPicture(unsigned char* buffer,
                  const gfx::Rect& layer_rect,
                  scoped_refptr<Picture> picture);
 
+void DrawDisplayList(unsigned char* buffer,
+                     const gfx::Rect& layer_rect,
+                     scoped_refptr<DisplayItemList> list);
+
 void CreateBitmap(const gfx::Size& size, const char* uri, SkBitmap* bitmap);
 
 }  // namespace cc
diff --git a/cc/test/solid_color_content_layer_client.cc b/cc/test/solid_color_content_layer_client.cc
index 237dbb6..701f004 100644
--- a/cc/test/solid_color_content_layer_client.cc
+++ b/cc/test/solid_color_content_layer_client.cc
@@ -25,6 +25,14 @@
       paint);
 }
 
+scoped_refptr<DisplayItemList>
+SolidColorContentLayerClient::PaintContentsToDisplayList(
+    const gfx::Rect& clip,
+    GraphicsContextStatus gc_status) {
+  NOTIMPLEMENTED();
+  return DisplayItemList::Create();
+}
+
 bool SolidColorContentLayerClient::FillsBoundsCompletely() const {
   return false;
 }
diff --git a/cc/test/solid_color_content_layer_client.h b/cc/test/solid_color_content_layer_client.h
index 7a962cf..93fca84 100644
--- a/cc/test/solid_color_content_layer_client.h
+++ b/cc/test/solid_color_content_layer_client.h
@@ -20,6 +20,9 @@
       SkCanvas* canvas,
       const gfx::Rect& rect,
       ContentLayerClient::GraphicsContextStatus gc_status) override;
+  scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus gc_status) override;
   bool FillsBoundsCompletely() const override;
 
  private:
diff --git a/cc/test/test_shared_bitmap_manager.cc b/cc/test/test_shared_bitmap_manager.cc
index d7716dd..933dcd2 100644
--- a/cc/test/test_shared_bitmap_manager.cc
+++ b/cc/test/test_shared_bitmap_manager.cc
@@ -4,15 +4,41 @@
 
 #include "cc/test/test_shared_bitmap_manager.h"
 
-#include "base/bind.h"
+#include "base/memory/shared_memory.h"
 
 namespace cc {
 
-void FreeSharedBitmap(SharedBitmap* shared_bitmap) {
-  delete shared_bitmap->memory();
-}
+namespace {
+class OwnedSharedBitmap : public SharedBitmap {
+ public:
+  OwnedSharedBitmap(scoped_ptr<base::SharedMemory> shared_memory,
+                    const SharedBitmapId& id)
+      : SharedBitmap(static_cast<uint8*>(shared_memory->memory()), id),
+        shared_memory_(shared_memory.Pass()) {}
 
-void IgnoreSharedBitmap(SharedBitmap* shared_bitmap) {}
+  ~OwnedSharedBitmap() override {}
+
+  base::SharedMemory* memory() override { return shared_memory_.get(); }
+
+ private:
+  scoped_ptr<base::SharedMemory> shared_memory_;
+};
+
+class UnownedSharedBitmap : public SharedBitmap {
+ public:
+  UnownedSharedBitmap(base::SharedMemory* shared_memory,
+                      const SharedBitmapId& id)
+      : SharedBitmap(static_cast<uint8*>(shared_memory->memory()), id),
+        shared_memory_(shared_memory) {}
+
+  ~UnownedSharedBitmap() override {}
+
+  base::SharedMemory* memory() override { return shared_memory_; }
+
+ private:
+  base::SharedMemory* shared_memory_;
+};
+}  // namespace
 
 TestSharedBitmapManager::TestSharedBitmapManager() {}
 
@@ -25,8 +51,7 @@
   memory->CreateAndMapAnonymous(size.GetArea() * 4);
   SharedBitmapId id = SharedBitmap::GenerateId();
   bitmap_map_[id] = memory.get();
-  return make_scoped_ptr(
-      new SharedBitmap(memory.release(), id, base::Bind(&FreeSharedBitmap)));
+  return make_scoped_ptr(new OwnedSharedBitmap(memory.Pass(), id));
 }
 
 scoped_ptr<SharedBitmap> TestSharedBitmapManager::GetSharedBitmapFromId(
@@ -35,8 +60,7 @@
   base::AutoLock lock(lock_);
   if (bitmap_map_.find(id) == bitmap_map_.end())
     return nullptr;
-  return make_scoped_ptr(
-      new SharedBitmap(bitmap_map_[id], id, base::Bind(&IgnoreSharedBitmap)));
+  return make_scoped_ptr(new UnownedSharedBitmap(bitmap_map_[id], id));
 }
 
 scoped_ptr<SharedBitmap> TestSharedBitmapManager::GetBitmapForSharedMemory(
@@ -44,8 +68,7 @@
   base::AutoLock lock(lock_);
   SharedBitmapId id = SharedBitmap::GenerateId();
   bitmap_map_[id] = memory;
-  return make_scoped_ptr(
-      new SharedBitmap(memory, id, base::Bind(&IgnoreSharedBitmap)));
+  return make_scoped_ptr(new UnownedSharedBitmap(memory, id));
 }
 
 }  // namespace cc
diff --git a/cc/test/test_web_graphics_context_3d.h b/cc/test/test_web_graphics_context_3d.h
index ff2c704..56c17c0 100644
--- a/cc/test/test_web_graphics_context_3d.h
+++ b/cc/test/test_web_graphics_context_3d.h
@@ -330,6 +330,9 @@
   void set_support_image(bool support) {
     test_capabilities_.gpu.image = support;
   }
+  void set_support_texture_rectangle(bool support) {
+    test_capabilities_.gpu.texture_rectangle = support;
+  }
 
   // When this context is lost, all contexts in its share group are also lost.
   void add_share_group_context(TestWebGraphicsContext3D* context3d) {
diff --git a/cc/trees/layer_tree_host_common.cc b/cc/trees/layer_tree_host_common.cc
index 6863850..6d75687 100644
--- a/cc/trees/layer_tree_host_common.cc
+++ b/cc/trees/layer_tree_host_common.cc
@@ -392,7 +392,7 @@
   gfx::Rect visible_rect_in_target_surface_space =
       layer->drawable_content_rect();
 
-  if (!layer->render_target()->render_surface()->clip_rect().IsEmpty()) {
+  if (layer->render_target()->render_surface()->is_clipped()) {
     // The |layer| L has a target T which owns a surface Ts. The surface Ts
     // has a target TsT.
     //
diff --git a/cc/trees/layer_tree_host_common_unittest.cc b/cc/trees/layer_tree_host_common_unittest.cc
index 7a282c1..8c02bd3 100644
--- a/cc/trees/layer_tree_host_common_unittest.cc
+++ b/cc/trees/layer_tree_host_common_unittest.cc
@@ -59,6 +59,12 @@
       SkCanvas* canvas,
       const gfx::Rect& clip,
       ContentLayerClient::GraphicsContextStatus gc_status) override {}
+  scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus gc_status) override {
+    NOTIMPLEMENTED();
+    return DisplayItemList::Create();
+  }
   bool FillsBoundsCompletely() const override { return false; }
 };
 
@@ -2820,6 +2826,56 @@
 }
 
 TEST_F(LayerTreeHostCommonTest,
+       VisibleContentRectsForClippedSurfaceWithEmptyClip) {
+  scoped_refptr<Layer> root = Layer::Create();
+  scoped_refptr<LayerWithForcedDrawsContent> child1 =
+      make_scoped_refptr(new LayerWithForcedDrawsContent());
+  scoped_refptr<LayerWithForcedDrawsContent> child2 =
+      make_scoped_refptr(new LayerWithForcedDrawsContent());
+  scoped_refptr<LayerWithForcedDrawsContent> child3 =
+      make_scoped_refptr(new LayerWithForcedDrawsContent());
+  root->AddChild(child1);
+  root->AddChild(child2);
+  root->AddChild(child3);
+
+  scoped_ptr<FakeLayerTreeHost> host(CreateFakeLayerTreeHost());
+  host->SetRootLayer(root);
+
+  gfx::Transform identity_matrix;
+  SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(),
+                               gfx::PointF(), gfx::Size(100, 100), true, false);
+  SetLayerPropertiesForTesting(child1.get(), identity_matrix, gfx::Point3F(),
+                               gfx::PointF(5.f, 5.f), gfx::Size(50, 50), true,
+                               false);
+  SetLayerPropertiesForTesting(child2.get(), identity_matrix, gfx::Point3F(),
+                               gfx::PointF(75.f, 75.f), gfx::Size(50, 50), true,
+                               false);
+  SetLayerPropertiesForTesting(child3.get(), identity_matrix, gfx::Point3F(),
+                               gfx::PointF(125.f, 125.f), gfx::Size(50, 50),
+                               true, false);
+
+  RenderSurfaceLayerList render_surface_layer_list;
+  // Now set the root render surface an empty clip.
+  LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs(
+      root.get(), gfx::Size(), &render_surface_layer_list);
+
+  LayerTreeHostCommon::CalculateDrawProperties(&inputs);
+  ASSERT_TRUE(root->render_surface());
+  EXPECT_FALSE(root->is_clipped());
+
+  gfx::Rect empty;
+  EXPECT_EQ(empty, root->render_surface()->clip_rect());
+  EXPECT_TRUE(root->render_surface()->is_clipped());
+
+  // Visible content rect calculation will check if the target surface is
+  // clipped or not. An empty clip rect does not indicate the render surface
+  // is unclipped.
+  EXPECT_EQ(empty, child1->visible_content_rect());
+  EXPECT_EQ(empty, child2->visible_content_rect());
+  EXPECT_EQ(empty, child3->visible_content_rect());
+}
+
+TEST_F(LayerTreeHostCommonTest,
        DrawableAndVisibleContentRectsForLayersWithUninvertibleTransform) {
   scoped_refptr<Layer> root = Layer::Create();
   scoped_refptr<LayerWithForcedDrawsContent> child =
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
index e49dcfe..10b0685 100644
--- a/cc/trees/layer_tree_host_impl.cc
+++ b/cc/trees/layer_tree_host_impl.cc
@@ -151,22 +151,6 @@
                   max_transfer_buffer_usage_bytes);
 }
 
-unsigned GetMapImageTextureTarget(
-    const ContextProvider::Capabilities& context_capabilities) {
-// TODO(reveman): This should be a setting passed to the compositor instead
-// of hard-coded here. The target that need to be used depends on our choice
-// of GpuMemoryBuffer type. Note: SURFACE_TEXTURE needs EXTERNAL_OES,
-// IO_SURFACE needs RECTANGLE_ARB. crbug.com/431059
-#if defined(OS_ANDROID)
-  if (context_capabilities.gpu.egl_image_external)
-    return GL_TEXTURE_EXTERNAL_OES;
-#endif
-  if (context_capabilities.gpu.texture_rectangle)
-    return GL_TEXTURE_RECTANGLE_ARB;
-
-  return GL_TEXTURE_2D;
-}
-
 size_t GetMaxStagingResourceCount() {
   // Upper bound for number of staging resource to allow.
   return 32;
@@ -2005,9 +1989,6 @@
   DCHECK(task_runner);
 
   ContextProvider* context_provider = output_surface_->context_provider();
-  bool should_use_zero_copy_rasterizer =
-      settings_.use_zero_copy || IsSynchronousSingleThreaded();
-
   if (!context_provider) {
     *resource_pool =
         ResourcePool::Create(resource_provider_.get(),
@@ -2018,7 +1999,10 @@
         BitmapRasterWorkerPool::Create(task_runner,
                                        RasterWorkerPool::GetTaskGraphRunner(),
                                        resource_provider_.get());
-  } else if (use_gpu_rasterization_) {
+    return;
+  }
+
+  if (use_gpu_rasterization_) {
     *resource_pool =
         ResourcePool::Create(resource_provider_.get(),
                              GL_TEXTURE_2D,
@@ -2029,53 +2013,65 @@
                                     context_provider,
                                     resource_provider_.get(),
                                     settings_.use_distance_field_text);
-  } else if (should_use_zero_copy_rasterizer && CanUseZeroCopyRasterizer()) {
-    *resource_pool = ResourcePool::Create(
-        resource_provider_.get(),
-        GetMapImageTextureTarget(context_provider->ContextCapabilities()),
-        resource_provider_->best_texture_format());
+    return;
+  }
 
-    TaskGraphRunner* task_graph_runner;
-    if (IsSynchronousSingleThreaded()) {
-      DCHECK(!single_thread_synchronous_task_graph_runner_);
-      single_thread_synchronous_task_graph_runner_.reset(new TaskGraphRunner);
-      task_graph_runner = single_thread_synchronous_task_graph_runner_.get();
-    } else {
-      task_graph_runner = RasterWorkerPool::GetTaskGraphRunner();
+  if (GetRendererCapabilities().using_image) {
+    unsigned image_target = GL_TEXTURE_2D;
+#if defined(OS_MACOSX)
+    // GL_TEXTURE_RECTANGLE_ARB target is required by IOSurface backed images.
+    DCHECK(context_provider->ContextCapabilities().gpu.texture_rectangle);
+    image_target = GL_TEXTURE_RECTANGLE_ARB;
+#endif
+    if (settings_.use_image_external) {
+      DCHECK(context_provider->ContextCapabilities().gpu.egl_image_external);
+      image_target = GL_TEXTURE_EXTERNAL_OES;
     }
 
-    *raster_worker_pool = ZeroCopyRasterWorkerPool::Create(
-        task_runner, task_graph_runner, resource_provider_.get());
-  } else if (settings_.use_one_copy && CanUseOneCopyRasterizer()) {
-    // We need to create a staging resource pool when using copy rasterizer.
-    *staging_resource_pool = ResourcePool::Create(
-        resource_provider_.get(),
-        GetMapImageTextureTarget(context_provider->ContextCapabilities()),
-        resource_provider_->best_texture_format());
-    *resource_pool =
-        ResourcePool::Create(resource_provider_.get(),
-                             GL_TEXTURE_2D,
-                             resource_provider_->best_texture_format());
+    if (settings_.use_zero_copy || IsSynchronousSingleThreaded()) {
+      *resource_pool =
+          ResourcePool::Create(resource_provider_.get(), image_target,
+                               resource_provider_->best_texture_format());
 
-    *raster_worker_pool =
-        OneCopyRasterWorkerPool::Create(task_runner,
-                                        RasterWorkerPool::GetTaskGraphRunner(),
-                                        context_provider,
-                                        resource_provider_.get(),
-                                        staging_resource_pool_.get());
-  } else {
-    *resource_pool = ResourcePool::Create(
-        resource_provider_.get(),
-        GL_TEXTURE_2D,
-        resource_provider_->memory_efficient_texture_format());
+      TaskGraphRunner* task_graph_runner;
+      if (IsSynchronousSingleThreaded()) {
+        DCHECK(!single_thread_synchronous_task_graph_runner_);
+        single_thread_synchronous_task_graph_runner_.reset(new TaskGraphRunner);
+        task_graph_runner = single_thread_synchronous_task_graph_runner_.get();
+      } else {
+        task_graph_runner = RasterWorkerPool::GetTaskGraphRunner();
+      }
 
-    *raster_worker_pool = PixelBufferRasterWorkerPool::Create(
-        task_runner, RasterWorkerPool::GetTaskGraphRunner(), context_provider,
-        resource_provider_.get(),
-        GetMaxTransferBufferUsageBytes(
-            context_provider->ContextCapabilities(),
-            settings_.renderer_settings.refresh_rate));
+      *raster_worker_pool = ZeroCopyRasterWorkerPool::Create(
+          task_runner, task_graph_runner, resource_provider_.get());
+      return;
+    }
+
+    if (settings_.use_one_copy) {
+      // We need to create a staging resource pool when using copy rasterizer.
+      *staging_resource_pool =
+          ResourcePool::Create(resource_provider_.get(), image_target,
+                               resource_provider_->best_texture_format());
+      *resource_pool =
+          ResourcePool::Create(resource_provider_.get(), GL_TEXTURE_2D,
+                               resource_provider_->best_texture_format());
+
+      *raster_worker_pool = OneCopyRasterWorkerPool::Create(
+          task_runner, RasterWorkerPool::GetTaskGraphRunner(), context_provider,
+          resource_provider_.get(), staging_resource_pool_.get());
+      return;
+    }
   }
+
+  *resource_pool = ResourcePool::Create(
+      resource_provider_.get(), GL_TEXTURE_2D,
+      resource_provider_->memory_efficient_texture_format());
+
+  *raster_worker_pool = PixelBufferRasterWorkerPool::Create(
+      task_runner, RasterWorkerPool::GetTaskGraphRunner(), context_provider,
+      resource_provider_.get(),
+      GetMaxTransferBufferUsageBytes(context_provider->ContextCapabilities(),
+                                     settings_.renderer_settings.refresh_rate));
 }
 
 void LayerTreeHostImpl::DestroyTileManager() {
@@ -2096,14 +2092,6 @@
   return !proxy_->HasImplThread() && !settings_.single_thread_proxy_scheduler;
 }
 
-bool LayerTreeHostImpl::CanUseZeroCopyRasterizer() const {
-  return GetRendererCapabilities().using_image;
-}
-
-bool LayerTreeHostImpl::CanUseOneCopyRasterizer() const {
-  return GetRendererCapabilities().using_image;
-}
-
 void LayerTreeHostImpl::EnforceZeroBudget(bool zero_budget) {
   SetManagedMemoryPolicy(cached_managed_memory_policy_, zero_budget);
 }
@@ -2563,10 +2551,14 @@
   return actual_viewport_end_point - viewport_point;
 }
 
-static gfx::Vector2dF ScrollLayerWithLocalDelta(LayerImpl* layer_impl,
-    const gfx::Vector2dF& local_delta) {
+static gfx::Vector2dF ScrollLayerWithLocalDelta(
+    LayerImpl* layer_impl,
+    const gfx::Vector2dF& local_delta,
+    float page_scale_factor) {
   gfx::Vector2dF previous_delta(layer_impl->ScrollDelta());
-  layer_impl->ScrollBy(local_delta);
+  gfx::Vector2dF delta = local_delta;
+  delta.Scale(1.f / page_scale_factor);
+  layer_impl->ScrollBy(delta);
   return layer_impl->ScrollDelta() - previous_delta;
 }
 
@@ -2644,7 +2636,8 @@
     // Gesture events need to be transformed from viewport coordinates to local
     // layer coordinates so that the scrolling contents exactly follow the
     // user's finger. In contrast, wheel events represent a fixed amount of
-    // scrolling so we can just apply them directly.
+    // scrolling so we can just apply them directly, but the page scale factor
+    // is applied to the scroll delta.
     if (!wheel_scrolling_) {
       float scale_from_viewport_to_screen_space = device_scale_factor_;
       applied_delta =
@@ -2652,7 +2645,8 @@
                                             scale_from_viewport_to_screen_space,
                                             viewport_point, pending_delta);
     } else {
-      applied_delta = ScrollLayerWithLocalDelta(layer_impl, pending_delta);
+      applied_delta = ScrollLayerWithLocalDelta(
+          layer_impl, pending_delta, active_tree_->total_page_scale_factor());
     }
 
     const float kEpsilon = 0.1f;
@@ -2774,7 +2768,8 @@
 
     gfx::Vector2dF delta = gfx::Vector2dF(0.f, page);
 
-    gfx::Vector2dF applied_delta = ScrollLayerWithLocalDelta(layer_impl, delta);
+    gfx::Vector2dF applied_delta =
+        ScrollLayerWithLocalDelta(layer_impl, delta, 1.f);
 
     if (!applied_delta.IsZero()) {
       client_->SetNeedsCommitOnImplThread();
@@ -3251,9 +3246,9 @@
   // task), fall back to physical time.  This should still be monotonic.
   if (current_begin_frame_args_.IsValid())
     return current_begin_frame_args_;
-  return BeginFrameArgs::Create(gfx::FrameTime::Now(), base::TimeTicks(),
-                                BeginFrameArgs::DefaultInterval(),
-                                BeginFrameArgs::NORMAL);
+  return BeginFrameArgs::Create(
+      BEGINFRAME_FROM_HERE, gfx::FrameTime::Now(), base::TimeTicks(),
+      BeginFrameArgs::DefaultInterval(), BeginFrameArgs::NORMAL);
 }
 
 scoped_refptr<base::debug::ConvertableToTraceFormat>
diff --git a/cc/trees/layer_tree_host_impl.h b/cc/trees/layer_tree_host_impl.h
index d1b29ca..900e658 100644
--- a/cc/trees/layer_tree_host_impl.h
+++ b/cc/trees/layer_tree_host_impl.h
@@ -481,8 +481,6 @@
   // Only valid for synchronous (non-scheduled) single-threaded case.
   void SynchronouslyInitializeAllTiles();
 
-  bool CanUseZeroCopyRasterizer() const;
-  bool CanUseOneCopyRasterizer() const;
   virtual void CreateResourceAndRasterWorkerPool(
       scoped_ptr<RasterWorkerPool>* raster_worker_pool,
       scoped_ptr<ResourcePool>* resource_pool,
diff --git a/cc/trees/layer_tree_host_impl_unittest.cc b/cc/trees/layer_tree_host_impl_unittest.cc
index 7151689..4e070e2 100644
--- a/cc/trees/layer_tree_host_impl_unittest.cc
+++ b/cc/trees/layer_tree_host_impl_unittest.cc
@@ -945,7 +945,7 @@
   }
 
   // Scrolling after a pinch gesture should always be in local space.  The
-  // scroll deltas do not have the page scale factor applied.
+  // scroll deltas have the page scale factor applied.
   {
     host_impl_->active_tree()->SetPageScaleFactorAndLimits(
         page_scale_factor, min_page_scale, max_page_scale);
@@ -968,9 +968,8 @@
 
     scoped_ptr<ScrollAndScaleSet> scroll_info =
         host_impl_->ProcessScrollDeltas();
-    ExpectContains(*scroll_info.get(),
-                   scroll_layer->id(),
-                   scroll_delta);
+    ExpectContains(*scroll_info.get(), scroll_layer->id(),
+                   gfx::Vector2d(0, scroll_delta.y() / page_scale_delta));
   }
 }
 
@@ -1395,7 +1394,8 @@
                           0) {}
 
   BeginFrameArgs CurrentBeginFrameArgs() const override {
-    return CreateBeginFrameArgsForTesting(fake_current_physical_time_);
+    return CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE,
+                                          fake_current_physical_time_);
   }
 
   void SetCurrentPhysicalTimeTicksForTest(base::TimeTicks fake_now) {
@@ -3596,7 +3596,7 @@
   host_impl_->ScrollBy(gfx::Point(), wheel_scroll_delta);
   host_impl_->ScrollEnd();
 
-  // The scale should not have been applied to the scroll delta.
+  // It should apply the scale factor to the scroll delta for the wheel event.
   scroll_info = host_impl_->ProcessScrollDeltas();
   ExpectContains(*scroll_info.get(),
                  scroll_layer->id(),
@@ -7800,6 +7800,41 @@
   EXPECT_EQ(1u, raw_replica_mask_layer->did_become_active_call_count());
 }
 
+TEST_F(LayerTreeHostImplTest, WheelScrollWithPageScaleFactorOnInnerLayer) {
+  LayerImpl* scroll_layer = SetupScrollAndContentsLayers(gfx::Size(100, 100));
+  host_impl_->SetViewportSize(gfx::Size(50, 50));
+  DrawFrame();
+
+  EXPECT_EQ(scroll_layer, host_impl_->InnerViewportScrollLayer());
+
+  float min_page_scale = 1.f, max_page_scale = 4.f;
+  float page_scale_factor = 1.f;
+
+  // The scroll deltas should have the page scale factor applied.
+  {
+    host_impl_->active_tree()->SetPageScaleFactorAndLimits(
+        page_scale_factor, min_page_scale, max_page_scale);
+    host_impl_->active_tree()->SetPageScaleDelta(1.f);
+    scroll_layer->SetScrollDelta(gfx::Vector2d());
+
+    float page_scale_delta = 2.f;
+    host_impl_->ScrollBegin(gfx::Point(), InputHandler::Gesture);
+    host_impl_->PinchGestureBegin();
+    host_impl_->PinchGestureUpdate(page_scale_delta, gfx::Point());
+    host_impl_->PinchGestureEnd();
+    host_impl_->ScrollEnd();
+
+    gfx::Vector2dF scroll_delta(0, 5);
+    EXPECT_EQ(InputHandler::ScrollStarted,
+              host_impl_->ScrollBegin(gfx::Point(), InputHandler::Wheel));
+    EXPECT_VECTOR_EQ(gfx::Vector2dF(), scroll_layer->TotalScrollOffset());
+
+    host_impl_->ScrollBy(gfx::Point(), scroll_delta);
+    host_impl_->ScrollEnd();
+    EXPECT_VECTOR_EQ(gfx::Vector2dF(0, 2.5), scroll_layer->TotalScrollOffset());
+  }
+}
+
 class LayerTreeHostImplCountingLostSurfaces : public LayerTreeHostImplTest {
  public:
   LayerTreeHostImplCountingLostSurfaces() : num_lost_surfaces_(0) {}
diff --git a/cc/trees/layer_tree_host_pixeltest_masks.cc b/cc/trees/layer_tree_host_pixeltest_masks.cc
index c494914..1235e15 100644
--- a/cc/trees/layer_tree_host_pixeltest_masks.cc
+++ b/cc/trees/layer_tree_host_pixeltest_masks.cc
@@ -47,6 +47,13 @@
     }
   }
 
+  scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus gc_status) override {
+    NOTIMPLEMENTED();
+    return DisplayItemList::Create();
+  }
+
  private:
   gfx::Size bounds_;
 };
diff --git a/cc/trees/layer_tree_host_pixeltest_on_demand_raster.cc b/cc/trees/layer_tree_host_pixeltest_on_demand_raster.cc
index e7dd149..a5ccb8b 100644
--- a/cc/trees/layer_tree_host_pixeltest_on_demand_raster.cc
+++ b/cc/trees/layer_tree_host_pixeltest_on_demand_raster.cc
@@ -80,6 +80,13 @@
         paint);
   }
 
+  scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus gc_status) override {
+    NOTIMPLEMENTED();
+    return DisplayItemList::Create();
+  }
+
  private:
   gfx::Rect layer_rect_;
 };
diff --git a/cc/trees/layer_tree_host_unittest.cc b/cc/trees/layer_tree_host_unittest.cc
index f589c84..51c5d7e 100644
--- a/cc/trees/layer_tree_host_unittest.cc
+++ b/cc/trees/layer_tree_host_unittest.cc
@@ -1112,6 +1112,12 @@
     if (test_layer_)
       test_layer_->SetOpacity(0.f);
   }
+  scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus gc_status) override {
+    NOTIMPLEMENTED();
+    return DisplayItemList::Create();
+  }
   bool FillsBoundsCompletely() const override { return false; }
 
  private:
@@ -2321,6 +2327,13 @@
       ++paint_count_;
     }
 
+    scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+        const gfx::Rect& clip,
+        GraphicsContextStatus gc_status) override {
+      NOTIMPLEMENTED();
+      return DisplayItemList::Create();
+    }
+
     bool FillsBoundsCompletely() const override { return false; }
 
    private:
@@ -2591,6 +2604,13 @@
       layer_->SetBounds(gfx::Size(2, 2));
     }
 
+    scoped_refptr<DisplayItemList> PaintContentsToDisplayList(
+        const gfx::Rect& clip,
+        GraphicsContextStatus gc_status) override {
+      NOTIMPLEMENTED();
+      return DisplayItemList::Create();
+    }
+
     bool FillsBoundsCompletely() const override { return false; }
 
    private:
@@ -5653,6 +5673,9 @@
         TestWebGraphicsContext3D::Create();
     context3d->set_support_image(true);
     context3d->set_support_sync_query(true);
+#if defined(OS_MACOSX)
+    context3d->set_support_texture_rectangle(true);
+#endif
 
     if (delegating_renderer())
       return FakeOutputSurface::CreateDelegating3d(context3d.Pass());
@@ -5840,4 +5863,59 @@
 
 MULTI_THREAD_TEST_F(LayerTreeHostTestContinuousDrawWhenCreatingVisibleTiles);
 
+class LayerTreeHostTestOneActivatePerManageTiles : public LayerTreeHostTest {
+ public:
+  LayerTreeHostTestOneActivatePerManageTiles()
+      : notify_ready_to_activate_count_(0u), scheduled_manage_tiles_count_(0) {}
+
+  void SetupTree() override {
+    client_.set_fill_with_nonsolid_color(true);
+    scoped_refptr<FakePictureLayer> root_layer =
+        FakePictureLayer::Create(&client_);
+    root_layer->SetBounds(gfx::Size(1500, 1500));
+    root_layer->SetIsDrawable(true);
+
+    layer_tree_host()->SetRootLayer(root_layer);
+    LayerTreeHostTest::SetupTree();
+  }
+
+  void BeginTest() override {
+    layer_tree_host()->SetViewportSize(gfx::Size(16, 16));
+    PostSetNeedsCommitToMainThread();
+  }
+
+  void InitializedRendererOnThread(LayerTreeHostImpl* host_impl,
+                                   bool success) override {
+    ASSERT_TRUE(success);
+    host_impl->tile_manager()->SetScheduledRasterTaskLimitForTesting(1);
+  }
+
+  void NotifyReadyToActivateOnThread(LayerTreeHostImpl* impl) override {
+    ++notify_ready_to_activate_count_;
+    EndTestAfterDelayMs(100);
+  }
+
+  void ScheduledActionManageTiles() override {
+    ++scheduled_manage_tiles_count_;
+  }
+
+  void AfterTest() override {
+    // Expect at most a notification for each scheduled manage tiles, plus one
+    // for the initial commit (which doesn't go through scheduled actions).
+    // The reason this is not an equality is because depending on timing, we
+    // might get a manage tiles but not yet get a notification that we're
+    // ready to activate. The intent of a test is to ensure that we don't
+    // get more than one notification per manage tiles, so this is OK.
+    EXPECT_LE(notify_ready_to_activate_count_,
+              1u + scheduled_manage_tiles_count_);
+  }
+
+ protected:
+  FakeContentLayerClient client_;
+  size_t notify_ready_to_activate_count_;
+  size_t scheduled_manage_tiles_count_;
+};
+
+MULTI_THREAD_IMPL_TEST_F(LayerTreeHostTestOneActivatePerManageTiles);
+
 }  // namespace cc
diff --git a/cc/trees/layer_tree_host_unittest_animation.cc b/cc/trees/layer_tree_host_unittest_animation.cc
index 8318192..f6bc4d9 100644
--- a/cc/trees/layer_tree_host_unittest_animation.cc
+++ b/cc/trees/layer_tree_host_unittest_animation.cc
@@ -106,13 +106,12 @@
     LayerTreeHostAnimationTestSetNeedsAnimateInsideAnimationCallback);
 
 // Add a layer animation and confirm that
-// LayerTreeHostImpl::updateAnimationState does get called and continues to
-// get called.
+// LayerTreeHostImpl::UpdateAnimationState does get called.
 class LayerTreeHostAnimationTestAddAnimation
     : public LayerTreeHostAnimationTest {
  public:
   LayerTreeHostAnimationTestAddAnimation()
-      : num_begin_frames_(0), received_animation_started_notification_(false) {}
+      : update_animation_state_was_called_(false) {}
 
   void BeginTest() override {
     PostAddInstantAnimationToMainThread(layer_tree_host()->root_layer());
@@ -120,53 +119,28 @@
 
   void UpdateAnimationState(LayerTreeHostImpl* host_impl,
                             bool has_unfinished_animation) override {
-    if (!num_begin_frames_) {
-      // The animation had zero duration so LayerTreeHostImpl should no
-      // longer need to animate its layers.
-      EXPECT_FALSE(has_unfinished_animation);
-      num_begin_frames_++;
-      return;
-    }
-
-    if (received_animation_started_notification_) {
-      EXPECT_LT(base::TimeTicks(), start_time_);
-
-      LayerAnimationController* controller_impl =
-          host_impl->active_tree()->root_layer()->layer_animation_controller();
-      Animation* animation_impl =
-          controller_impl->GetAnimation(Animation::Opacity);
-      if (animation_impl)
-        controller_impl->RemoveAnimation(animation_impl->id());
-
-      EndTest();
-    }
+    EXPECT_FALSE(has_unfinished_animation);
+    update_animation_state_was_called_ = true;
   }
 
   void NotifyAnimationStarted(base::TimeTicks monotonic_time,
                               Animation::TargetProperty target_property,
                               int group) override {
-    received_animation_started_notification_ = true;
-    start_time_ = monotonic_time;
-    if (num_begin_frames_) {
-      EXPECT_LT(base::TimeTicks(), start_time_);
+    EXPECT_LT(base::TimeTicks(), monotonic_time);
 
-      LayerAnimationController* controller =
-          layer_tree_host()->root_layer()->layer_animation_controller();
-      Animation* animation =
-          controller->GetAnimation(Animation::Opacity);
-      if (animation)
-        controller->RemoveAnimation(animation->id());
+    LayerAnimationController* controller =
+        layer_tree_host()->root_layer()->layer_animation_controller();
+    Animation* animation = controller->GetAnimation(Animation::Opacity);
+    if (animation)
+      controller->RemoveAnimation(animation->id());
 
-      EndTest();
-    }
+    EndTest();
   }
 
-  void AfterTest() override {}
+  void AfterTest() override { EXPECT_TRUE(update_animation_state_was_called_); }
 
  private:
-  int num_begin_frames_;
-  bool received_animation_started_notification_;
-  base::TimeTicks start_time_;
+  bool update_animation_state_was_called_;
 };
 
 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostAnimationTestAddAnimation);
@@ -531,9 +505,7 @@
 class LayerTreeHostAnimationTestSynchronizeAnimationStartTimes
     : public LayerTreeHostAnimationTest {
  public:
-  LayerTreeHostAnimationTestSynchronizeAnimationStartTimes()
-      : main_start_time_(-1.0),
-        impl_start_time_(-1.0) {}
+  LayerTreeHostAnimationTestSynchronizeAnimationStartTimes() {}
 
   void SetupTree() override {
     LayerTreeHostAnimationTest::SetupTree();
@@ -553,12 +525,9 @@
         layer_animation_controller();
     Animation* animation =
         controller->GetAnimation(Animation::Opacity);
-    main_start_time_ =
-        (animation->start_time() - base::TimeTicks()).InSecondsF();
+    main_start_time_ = animation->start_time();
     controller->RemoveAnimation(animation->id());
-
-    if (impl_start_time_ > 0.0)
-      EndTest();
+    EndTest();
   }
 
   void UpdateAnimationState(LayerTreeHostImpl* impl_host,
@@ -571,21 +540,17 @@
     if (!animation)
       return;
 
-    impl_start_time_ =
-        (animation->start_time() - base::TimeTicks()).InSecondsF();
-    controller->RemoveAnimation(animation->id());
-
-    if (main_start_time_ > 0.0)
-      EndTest();
+    impl_start_time_ = animation->start_time();
   }
 
   void AfterTest() override {
-    EXPECT_FLOAT_EQ(impl_start_time_, main_start_time_);
+    EXPECT_EQ(impl_start_time_, main_start_time_);
+    EXPECT_LT(base::TimeTicks(), impl_start_time_);
   }
 
  private:
-  double main_start_time_;
-  double impl_start_time_;
+  base::TimeTicks main_start_time_;
+  base::TimeTicks impl_start_time_;
   FakeContentLayerClient client_;
   scoped_refptr<FakeContentLayer> content_;
 };
diff --git a/cc/trees/layer_tree_settings.cc b/cc/trees/layer_tree_settings.cc
index e792427..0771eb8 100644
--- a/cc/trees/layer_tree_settings.cc
+++ b/cc/trees/layer_tree_settings.cc
@@ -61,10 +61,13 @@
       strict_layer_property_change_checking(false),
       use_one_copy(false),
       use_zero_copy(false),
+      use_image_external(false),
       ignore_root_layer_flings(false),
       scheduled_raster_task_limit(32),
       use_occlusion_for_tile_prioritization(false),
-      record_full_layer(false) {
+      record_full_layer(false),
+      use_display_lists(false),
+      main_thread_should_always_be_low_latency(false) {
 }
 
 LayerTreeSettings::~LayerTreeSettings() {}
diff --git a/cc/trees/layer_tree_settings.h b/cc/trees/layer_tree_settings.h
index ebbe7f7..438344b 100644
--- a/cc/trees/layer_tree_settings.h
+++ b/cc/trees/layer_tree_settings.h
@@ -73,10 +73,13 @@
   bool strict_layer_property_change_checking;
   bool use_one_copy;
   bool use_zero_copy;
+  bool use_image_external;
   bool ignore_root_layer_flings;
   size_t scheduled_raster_task_limit;
   bool use_occlusion_for_tile_prioritization;
   bool record_full_layer;
+  bool use_display_lists;
+  bool main_thread_should_always_be_low_latency;
 
   LayerTreeDebugState initial_debug_state;
 };
diff --git a/cc/trees/single_thread_proxy.cc b/cc/trees/single_thread_proxy.cc
index 5a40d7e..9a13457 100644
--- a/cc/trees/single_thread_proxy.cc
+++ b/cc/trees/single_thread_proxy.cc
@@ -430,9 +430,8 @@
     // equivalent of blocking commit until activation and also running
     // all tasks posted during commit/activation before CommitComplete.
     MainThreadTaskRunner()->PostTask(
-        FROM_HERE,
-        base::Bind(&SingleThreadProxy::CommitComplete,
-                   weak_factory_.GetWeakPtr()));
+        FROM_HERE, base::Bind(&SingleThreadProxy::CommitComplete,
+                              weak_factory_.GetWeakPtr()));
   }
 
   timing_history_.DidActivateSyncTree();
@@ -493,8 +492,8 @@
 
   {
     BeginFrameArgs begin_frame_args(BeginFrameArgs::Create(
-        frame_begin_time, base::TimeTicks(), BeginFrameArgs::DefaultInterval(),
-        BeginFrameArgs::SYNCHRONOUS));
+        BEGINFRAME_FROM_HERE, frame_begin_time, base::TimeTicks(),
+        BeginFrameArgs::DefaultInterval(), BeginFrameArgs::SYNCHRONOUS));
     DoBeginMainFrame(begin_frame_args);
     DoCommit();
 
diff --git a/crypto/rsa_private_key_nss.cc b/crypto/rsa_private_key_nss.cc
index 0065875..c51e308 100644
--- a/crypto/rsa_private_key_nss.cc
+++ b/crypto/rsa_private_key_nss.cc
@@ -278,29 +278,37 @@
 
   scoped_ptr<RSAPrivateKey> result(new RSAPrivateKey);
 
-  SECItem der_private_key_info;
-  der_private_key_info.data = const_cast<unsigned char*>(&input.front());
-  der_private_key_info.len = input.size();
-  // Allow the private key to be used for key unwrapping, data decryption,
-  // and signature generation.
-  const unsigned int key_usage = KU_KEY_ENCIPHERMENT | KU_DATA_ENCIPHERMENT |
-                                 KU_DIGITAL_SIGNATURE;
-  // TODO(davidben): PK11_ImportDERPrivateKeyInfoAndReturnKey calls NSS's
-  // SEC_ASN1DecodeItem which does not enforce that there is no trailing
-  // data.
-  SECStatus rv =  PK11_ImportDERPrivateKeyInfoAndReturnKey(
-      slot, &der_private_key_info, NULL, NULL, permanent, sensitive,
-      key_usage, &result->key_, NULL);
-  if (rv != SECSuccess) {
+  ScopedPLArenaPool arena(PORT_NewArena(DER_DEFAULT_CHUNKSIZE));
+  if (!arena) {
     NOTREACHED();
     return NULL;
   }
 
-  result->public_key_ = SECKEY_ConvertToPublicKey(result->key_);
-  if (!result->public_key_) {
-    NOTREACHED();
+  // Excess data is illegal, but NSS silently accepts it, so first ensure that
+  // |input| consists of a single ASN.1 element.
+  SECItem input_item;
+  input_item.data = const_cast<unsigned char*>(&input.front());
+  input_item.len = input.size();
+  SECItem der_private_key_info;
+  SECStatus rv = SEC_QuickDERDecodeItem(arena.get(), &der_private_key_info,
+                                        SEC_ASN1_GET(SEC_AnyTemplate),
+                                        &input_item);
+  if (rv != SECSuccess)
     return NULL;
-  }
+
+  // Allow the private key to be used for key unwrapping, data decryption,
+  // and signature generation.
+  const unsigned int key_usage = KU_KEY_ENCIPHERMENT | KU_DATA_ENCIPHERMENT |
+                                 KU_DIGITAL_SIGNATURE;
+  rv = PK11_ImportDERPrivateKeyInfoAndReturnKey(
+      slot, &der_private_key_info, NULL, NULL, permanent, sensitive,
+      key_usage, &result->key_, NULL);
+  if (rv != SECSuccess)
+    return NULL;
+
+  result->public_key_ = SECKEY_ConvertToPublicKey(result->key_);
+  if (!result->public_key_)
+    return NULL;
 
   return result.release();
 }
diff --git a/crypto/rsa_private_key_openssl.cc b/crypto/rsa_private_key_openssl.cc
index 0df1730..3dcce67 100644
--- a/crypto/rsa_private_key_openssl.cc
+++ b/crypto/rsa_private_key_openssl.cc
@@ -83,13 +83,10 @@
   // Importing is a little more involved than exporting, as we must first
   // PKCS#8 decode the input, and then import the EVP_PKEY from Private Key
   // Info structure returned.
-  //
-  // TODO(davidben): This should check that |ptr| advanced to the end of |input|
-  // to ensure there is no trailing data.
   const uint8_t* ptr = &input[0];
   ScopedPKCS8_PRIV_KEY_INFO p8inf(
       d2i_PKCS8_PRIV_KEY_INFO(nullptr, &ptr, input.size()));
-  if (!p8inf.get())
+  if (!p8inf.get() || ptr != &input[0] + input.size())
     return NULL;
 
   scoped_ptr<RSAPrivateKey> result(new RSAPrivateKey);
diff --git a/crypto/rsa_private_key_unittest.cc b/crypto/rsa_private_key_unittest.cc
index d53d502..a7253e2 100644
--- a/crypto/rsa_private_key_unittest.cc
+++ b/crypto/rsa_private_key_unittest.cc
@@ -150,6 +150,20 @@
   ASSERT_EQ(input, privkey_copy);
 }
 
+// Test that CreateFromPrivateKeyInfo fails if there is extra data after the RSA
+// key.
+TEST(RSAPrivateKeyUnitTest, ExtraData) {
+  std::vector<uint8> input(
+      kTestPrivateKeyInfo, kTestPrivateKeyInfo + sizeof(kTestPrivateKeyInfo));
+  input.push_back(0);
+
+  scoped_ptr<crypto::RSAPrivateKey> key(
+      crypto::RSAPrivateKey::CreateFromPrivateKeyInfo(input));
+
+  // Import should fail.
+  EXPECT_FALSE(key);
+}
+
 
 // Verify that generated public keys look good. This test data was generated
 // with the openssl command line tool.
diff --git a/gin/isolate_holder.cc b/gin/isolate_holder.cc
index 2cdacc0..2b6d64b 100644
--- a/gin/isolate_holder.cc
+++ b/gin/isolate_holder.cc
@@ -20,6 +20,9 @@
 #include "gin/run_microtasks_observer.h"
 
 #ifdef V8_USE_EXTERNAL_STARTUP_DATA
+#ifdef OS_MACOSX
+#include "base/mac/foundation_util.h"
+#endif  // OS_MACOSX
 #include "base/path_service.h"
 #endif  // V8_USE_EXTERNAL_STARTUP_DATA
 
@@ -68,6 +71,16 @@
 
   return true;
 }
+
+#if !defined(OS_MACOSX)
+const int v8_snapshot_dir =
+#if defined(OS_ANDROID)
+    base::DIR_ANDROID_APP_DATA;
+#elif defined(OS_POSIX)
+    base::DIR_EXE;
+#endif  // defined(OS_ANDROID)
+#endif  // !defined(OS_MACOSX)
+
 #endif  // V8_USE_EXTERNAL_STARTUP_DATA
 
 }  // namespace
@@ -79,18 +92,21 @@
   if (g_mapped_natives && g_mapped_snapshot)
     return true;
 
+#if !defined(OS_MACOSX)
   base::FilePath data_path;
-  PathService::Get(
-#if defined(OS_ANDROID)
-    base::DIR_ANDROID_APP_DATA,
-#elif defined(OS_POSIX)
-    base::DIR_EXE,
-#endif
-    &data_path);
+  PathService::Get(v8_snapshot_dir, &data_path);
   DCHECK(!data_path.empty());
 
   base::FilePath natives_path = data_path.AppendASCII("natives_blob.bin");
   base::FilePath snapshot_path = data_path.AppendASCII("snapshot_blob.bin");
+#else  // !defined(OS_MACOSX)
+  base::FilePath natives_path = base::mac::PathForFrameworkBundleResource(
+      CFSTR("natives_blob.bin"));
+  base::FilePath snapshot_path = base::mac::PathForFrameworkBundleResource(
+      CFSTR("snapshot_blob.bin"));
+  DCHECK(!natives_path.empty());
+  DCHECK(!snapshot_path.empty());
+#endif  // !defined(OS_MACOSX)
 
   return MapV8Files(&natives_path, &snapshot_path);
 }
@@ -181,13 +197,11 @@
   v8::StartupData natives;
   natives.data = reinterpret_cast<const char*>(g_mapped_natives->data());
   natives.raw_size = static_cast<int>(g_mapped_natives->length());
-  natives.compressed_size = static_cast<int>(g_mapped_natives->length());
   v8::V8::SetNativesDataBlob(&natives);
 
   v8::StartupData snapshot;
   snapshot.data = reinterpret_cast<const char*>(g_mapped_snapshot->data());
   snapshot.raw_size = static_cast<int>(g_mapped_snapshot->length());
-  snapshot.compressed_size = static_cast<int>(g_mapped_snapshot->length());
   v8::V8::SetSnapshotDataBlob(&snapshot);
 #endif  // V8_USE_EXTERNAL_STARTUP_DATA
   v8::V8::Initialize();
diff --git a/gin/modules/module_registry_unittest.cc b/gin/modules/module_registry_unittest.cc
index 3d784dc..ed725fc 100644
--- a/gin/modules/module_registry_unittest.cc
+++ b/gin/modules/module_registry_unittest.cc
@@ -70,6 +70,10 @@
       ->LoadModule(isolate, "two", base::Bind(NestedCallback));
 }
 
+void OnModuleLoadedNoOp(v8::Handle<v8::Value> value) {
+  ASSERT_TRUE(value->IsNumber());
+}
+
 }  // namespace
 
 typedef V8Test ModuleRegistryTest;
@@ -133,4 +137,28 @@
   EXPECT_EQ(3, counter);
 }
 
+// Verifies that explicitly loading a module that's already pending does
+// not cause the ModuleRegistry's unsatisfied_dependency set to grow.
+TEST_F(ModuleRegistryTest, UnsatisfiedDependenciesTest) {
+  TestHelper helper(instance_->isolate());
+  std::string source =
+      "define('one', ['no_such_module'], function(nsm) {"
+      "  return 1;"
+      "});";
+  ModuleRegistry* registry =
+    ModuleRegistry::From(helper.runner->GetContextHolder()->context());
+
+  std::set<std::string> no_such_module_set;
+  no_such_module_set.insert("no_such_module");
+
+  // Adds one unsatisfied dependency on "no-such-module".
+  helper.runner->Run(source, "script");
+  EXPECT_EQ(no_such_module_set, registry->unsatisfied_dependencies());
+
+  // Should have no effect on the unsatisfied_dependencies set.
+  ModuleRegistry::LoadModuleCallback callback = base::Bind(OnModuleLoadedNoOp);
+  registry->LoadModule(instance_->isolate(), "one", callback);
+  EXPECT_EQ(no_such_module_set, registry->unsatisfied_dependencies());
+}
+
 }  // namespace gin
diff --git a/gin/shell/gin_main.cc b/gin/shell/gin_main.cc
index 2f7998e..d0fe119 100644
--- a/gin/shell/gin_main.cc
+++ b/gin/shell/gin_main.cc
@@ -12,7 +12,6 @@
 #include "gin/modules/console.h"
 #include "gin/modules/module_runner_delegate.h"
 #include "gin/public/isolate_holder.h"
-#include "gin/test/file_runner.h"
 #include "gin/try_catch.h"
 
 namespace gin {
diff --git a/gpu/BUILD.gn b/gpu/BUILD.gn
index 4fc8145..25a80b3 100644
--- a/gpu/BUILD.gn
+++ b/gpu/BUILD.gn
@@ -100,6 +100,7 @@
     ":gpu",
     ":test_support",
     "//base",
+    "//base/test:test_support",
     "//base/third_party/dynamic_annotations",
     "//testing/gmock",
     "//testing/gtest",
@@ -251,6 +252,7 @@
 
   deps = [
     "//base",
+    "//base/test:test_support",
     "//base/third_party/dynamic_annotations",
     "//testing/gmock",
     "//testing/gtest",
diff --git a/gpu/GLES2/gl2chromium_autogen.h b/gpu/GLES2/gl2chromium_autogen.h
index 5489d06..f7b0c5d 100644
--- a/gpu/GLES2/gl2chromium_autogen.h
+++ b/gpu/GLES2/gl2chromium_autogen.h
@@ -36,6 +36,7 @@
 #define glCompileShader GLES2_GET_FUN(CompileShader)
 #define glCompressedTexImage2D GLES2_GET_FUN(CompressedTexImage2D)
 #define glCompressedTexSubImage2D GLES2_GET_FUN(CompressedTexSubImage2D)
+#define glCopyBufferSubData GLES2_GET_FUN(CopyBufferSubData)
 #define glCopyTexImage2D GLES2_GET_FUN(CopyTexImage2D)
 #define glCopyTexSubImage2D GLES2_GET_FUN(CopyTexSubImage2D)
 #define glCreateProgram GLES2_GET_FUN(CreateProgram)
@@ -61,6 +62,7 @@
 #define glFlush GLES2_GET_FUN(Flush)
 #define glFramebufferRenderbuffer GLES2_GET_FUN(FramebufferRenderbuffer)
 #define glFramebufferTexture2D GLES2_GET_FUN(FramebufferTexture2D)
+#define glFramebufferTextureLayer GLES2_GET_FUN(FramebufferTextureLayer)
 #define glFrontFace GLES2_GET_FUN(FrontFace)
 #define glGenBuffers GLES2_GET_FUN(GenBuffers)
 #define glGenerateMipmap GLES2_GET_FUN(GenerateMipmap)
@@ -78,6 +80,7 @@
 #define glGetFramebufferAttachmentParameteriv \
   GLES2_GET_FUN(GetFramebufferAttachmentParameteriv)
 #define glGetIntegerv GLES2_GET_FUN(GetIntegerv)
+#define glGetInternalformativ GLES2_GET_FUN(GetInternalformativ)
 #define glGetProgramiv GLES2_GET_FUN(GetProgramiv)
 #define glGetProgramInfoLog GLES2_GET_FUN(GetProgramInfoLog)
 #define glGetRenderbufferParameteriv GLES2_GET_FUN(GetRenderbufferParameteriv)
@@ -126,26 +129,41 @@
 #define glTexParameterfv GLES2_GET_FUN(TexParameterfv)
 #define glTexParameteri GLES2_GET_FUN(TexParameteri)
 #define glTexParameteriv GLES2_GET_FUN(TexParameteriv)
+#define glTexStorage3D GLES2_GET_FUN(TexStorage3D)
 #define glTexSubImage2D GLES2_GET_FUN(TexSubImage2D)
 #define glUniform1f GLES2_GET_FUN(Uniform1f)
 #define glUniform1fv GLES2_GET_FUN(Uniform1fv)
 #define glUniform1i GLES2_GET_FUN(Uniform1i)
 #define glUniform1iv GLES2_GET_FUN(Uniform1iv)
+#define glUniform1ui GLES2_GET_FUN(Uniform1ui)
+#define glUniform1uiv GLES2_GET_FUN(Uniform1uiv)
 #define glUniform2f GLES2_GET_FUN(Uniform2f)
 #define glUniform2fv GLES2_GET_FUN(Uniform2fv)
 #define glUniform2i GLES2_GET_FUN(Uniform2i)
 #define glUniform2iv GLES2_GET_FUN(Uniform2iv)
+#define glUniform2ui GLES2_GET_FUN(Uniform2ui)
+#define glUniform2uiv GLES2_GET_FUN(Uniform2uiv)
 #define glUniform3f GLES2_GET_FUN(Uniform3f)
 #define glUniform3fv GLES2_GET_FUN(Uniform3fv)
 #define glUniform3i GLES2_GET_FUN(Uniform3i)
 #define glUniform3iv GLES2_GET_FUN(Uniform3iv)
+#define glUniform3ui GLES2_GET_FUN(Uniform3ui)
+#define glUniform3uiv GLES2_GET_FUN(Uniform3uiv)
 #define glUniform4f GLES2_GET_FUN(Uniform4f)
 #define glUniform4fv GLES2_GET_FUN(Uniform4fv)
 #define glUniform4i GLES2_GET_FUN(Uniform4i)
 #define glUniform4iv GLES2_GET_FUN(Uniform4iv)
+#define glUniform4ui GLES2_GET_FUN(Uniform4ui)
+#define glUniform4uiv GLES2_GET_FUN(Uniform4uiv)
 #define glUniformMatrix2fv GLES2_GET_FUN(UniformMatrix2fv)
+#define glUniformMatrix2x3fv GLES2_GET_FUN(UniformMatrix2x3fv)
+#define glUniformMatrix2x4fv GLES2_GET_FUN(UniformMatrix2x4fv)
 #define glUniformMatrix3fv GLES2_GET_FUN(UniformMatrix3fv)
+#define glUniformMatrix3x2fv GLES2_GET_FUN(UniformMatrix3x2fv)
+#define glUniformMatrix3x4fv GLES2_GET_FUN(UniformMatrix3x4fv)
 #define glUniformMatrix4fv GLES2_GET_FUN(UniformMatrix4fv)
+#define glUniformMatrix4x2fv GLES2_GET_FUN(UniformMatrix4x2fv)
+#define glUniformMatrix4x3fv GLES2_GET_FUN(UniformMatrix4x3fv)
 #define glUseProgram GLES2_GET_FUN(UseProgram)
 #define glValidateProgram GLES2_GET_FUN(ValidateProgram)
 #define glVertexAttrib1f GLES2_GET_FUN(VertexAttrib1f)
@@ -156,6 +174,11 @@
 #define glVertexAttrib3fv GLES2_GET_FUN(VertexAttrib3fv)
 #define glVertexAttrib4f GLES2_GET_FUN(VertexAttrib4f)
 #define glVertexAttrib4fv GLES2_GET_FUN(VertexAttrib4fv)
+#define glVertexAttribI4i GLES2_GET_FUN(VertexAttribI4i)
+#define glVertexAttribI4iv GLES2_GET_FUN(VertexAttribI4iv)
+#define glVertexAttribI4ui GLES2_GET_FUN(VertexAttribI4ui)
+#define glVertexAttribI4uiv GLES2_GET_FUN(VertexAttribI4uiv)
+#define glVertexAttribIPointer GLES2_GET_FUN(VertexAttribIPointer)
 #define glVertexAttribPointer GLES2_GET_FUN(VertexAttribPointer)
 #define glViewport GLES2_GET_FUN(Viewport)
 #define glBlitFramebufferCHROMIUM GLES2_GET_FUN(BlitFramebufferCHROMIUM)
diff --git a/gpu/angle_unittest_main.cc b/gpu/angle_unittest_main.cc
index 67e91ed..e7667f6 100644
--- a/gpu/angle_unittest_main.cc
+++ b/gpu/angle_unittest_main.cc
@@ -3,22 +3,33 @@
 // found in the LICENSE file.
 
 #include "base/at_exit.h"
+#include "base/bind.h"
 #include "base/command_line.h"
+#include "base/message_loop/message_loop.h"
+#include "base/test/launcher/unit_test_launcher.h"
+#include "base/test/test_suite.h"
 #include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 #include "third_party/angle/include/GLSLANG/ShaderLang.h"
 
+namespace {
+
+int RunHelper(base::TestSuite* test_suite) {
+  base::MessageLoopForIO message_loop;
+  return test_suite->Run();
+}
+
+}  // namespace
+
 int main(int argc, char** argv) {
-  // On Android, AtExitManager is created in
-  // testing/android/native_test_wrapper.cc before main() is called.
-  // The same thing is also done in base/test/test_suite.cc
-#if !defined(OS_ANDROID)
-  base::AtExitManager exit_manager;
-#endif
   CommandLine::Init(argc, argv);
   testing::InitGoogleMock(&argc, argv);
   ShInitialize();
-  int rt = RUN_ALL_TESTS();
+  base::TestSuite test_suite(argc, argv);
+  int rt = base::LaunchUnitTestsSerially(
+      argc,
+      argv,
+      base::Bind(&RunHelper, base::Unretained(&test_suite)));
   ShFinalize();
   return rt;
 }
diff --git a/gpu/command_buffer/build_gles2_cmd_buffer.py b/gpu/command_buffer/build_gles2_cmd_buffer.py
index 7cccd43..7a3db58 100755
--- a/gpu/command_buffer/build_gles2_cmd_buffer.py
+++ b/gpu/command_buffer/build_gles2_cmd_buffer.py
@@ -688,6 +688,16 @@
       'GL_PROXY_TEXTURE_CUBE_MAP',
     ]
   },
+  'Texture3DTarget': {
+    'type': 'GLenum',
+    'valid': [
+      'GL_TEXTURE_3D',
+      'GL_TEXTURE_2D_ARRAY',
+    ],
+    'invalid': [
+      'GL_TEXTURE_2D',
+    ]
+  },
   'TextureBindTarget': {
     'type': 'GLenum',
     'valid': [
@@ -1347,6 +1357,8 @@
 #               the corresponding feature info flag is enabled. Implies
 #               'extension': True.
 # not_shared:   For GENn types, True if objects can't be shared between contexts
+# unsafe:       True = no validation is implemented on the service side and the
+#               command is only available with --enable-unsafe-es3-apis.
 
 _FUNCTION_INFO = {
   'ActiveTexture': {
@@ -1450,6 +1462,9 @@
     'chromium': True,
     'trace_level': 1,
   },
+  'CopyBufferSubData': {
+    'unsafe': True,
+  },
   'CreateAndConsumeTextureCHROMIUM': {
     'decoder_func': 'DoCreateAndConsumeTextureCHROMIUM',
     'impl_func': False,
@@ -1751,6 +1766,10 @@
     'extension_flag': 'multisampled_render_to_texture',
     'trace_level': 1,
   },
+  'FramebufferTextureLayer': {
+    'decoder_func': 'DoFramebufferTextureLayer',
+    'unsafe': True,
+  },
   'GenerateMipmap': {
     'decoder_func': 'DoGenerateMipmap',
     'gl_test_func': 'glGenerateMipmapEXT',
@@ -1860,6 +1879,11 @@
     'decoder_func': 'DoGetIntegerv',
     'client_test': False,
   },
+  'GetInternalformativ': {
+    'type': 'GETn',
+    'result': ['SizedResult<GLint>'],
+    'unsafe': True,
+  },
   'GetMaxValueInBufferCHROMIUM': {
     'type': 'Is',
     'decoder_func': 'DoGetMaxValueInBufferCHROMIUM',
@@ -2198,6 +2222,9 @@
     'gl_test_func': 'glTexParameteri',
     'first_element_only': True,
   },
+  'TexStorage3D': {
+    'unsafe': True,
+  },
   'TexSubImage2D': {
     'type': 'Manual',
     'data_transfer_methods': ['shm'],
@@ -2221,6 +2248,16 @@
     'decoder_func': 'DoUniform1iv',
     'unit_test': False,
   },
+  'Uniform1ui': {
+    'type': 'PUTXn',
+    'count': 1,
+    'unsafe': True,
+  },
+  'Uniform1uiv': {
+    'type': 'PUTn',
+    'count': 1,
+    'unsafe': True,
+  },
   'Uniform2i': {'type': 'PUTXn', 'count': 2},
   'Uniform2f': {'type': 'PUTXn', 'count': 2},
   'Uniform2fv': {
@@ -2233,6 +2270,16 @@
     'count': 2,
     'decoder_func': 'DoUniform2iv',
   },
+  'Uniform2ui': {
+    'type': 'PUTXn',
+    'count': 2,
+    'unsafe': True,
+  },
+  'Uniform2uiv': {
+    'type': 'PUTn',
+    'count': 2,
+    'unsafe': True,
+  },
   'Uniform3i': {'type': 'PUTXn', 'count': 3},
   'Uniform3f': {'type': 'PUTXn', 'count': 3},
   'Uniform3fv': {
@@ -2245,6 +2292,16 @@
     'count': 3,
     'decoder_func': 'DoUniform3iv',
   },
+  'Uniform3ui': {
+    'type': 'PUTXn',
+    'count': 3,
+    'unsafe': True,
+  },
+  'Uniform3uiv': {
+    'type': 'PUTn',
+    'count': 3,
+    'unsafe': True,
+  },
   'Uniform4i': {'type': 'PUTXn', 'count': 4},
   'Uniform4f': {'type': 'PUTXn', 'count': 4},
   'Uniform4fv': {
@@ -2257,21 +2314,61 @@
     'count': 4,
     'decoder_func': 'DoUniform4iv',
   },
+  'Uniform4ui': {
+    'type': 'PUTXn',
+    'count': 4,
+    'unsafe': True,
+  },
+  'Uniform4uiv': {
+    'type': 'PUTn',
+    'count': 4,
+    'unsafe': True,
+  },
   'UniformMatrix2fv': {
     'type': 'PUTn',
     'count': 4,
     'decoder_func': 'DoUniformMatrix2fv',
   },
+  'UniformMatrix2x3fv': {
+    'type': 'PUTn',
+    'count': 6,
+    'unsafe': True,
+  },
+  'UniformMatrix2x4fv': {
+    'type': 'PUTn',
+    'count': 8,
+    'unsafe': True,
+  },
   'UniformMatrix3fv': {
     'type': 'PUTn',
     'count': 9,
     'decoder_func': 'DoUniformMatrix3fv',
   },
+  'UniformMatrix3x2fv': {
+    'type': 'PUTn',
+    'count': 6,
+    'unsafe': True,
+  },
+  'UniformMatrix3x4fv': {
+    'type': 'PUTn',
+    'count': 12,
+    'unsafe': True,
+  },
   'UniformMatrix4fv': {
     'type': 'PUTn',
     'count': 16,
     'decoder_func': 'DoUniformMatrix4fv',
   },
+  'UniformMatrix4x2fv': {
+    'type': 'PUTn',
+    'count': 8,
+    'unsafe': True,
+  },
+  'UniformMatrix4x3fv': {
+    'type': 'PUTn',
+    'count': 12,
+    'unsafe': True,
+  },
   'UnmapBufferCHROMIUM': {
     'gen_cmd': False,
     'extension': True,
@@ -2321,12 +2418,36 @@
     'count': 4,
     'decoder_func': 'DoVertexAttrib4fv',
   },
+  'VertexAttribI4i': {
+    'unsafe': True,
+  },
+  'VertexAttribI4iv': {
+    'type': 'PUT',
+    'count': 4,
+    'unsafe': True,
+  },
+  'VertexAttribI4ui': {
+    'unsafe': True,
+  },
+  'VertexAttribI4uiv': {
+    'type': 'PUT',
+    'count': 4,
+    'unsafe': True,
+  },
+  'VertexAttribIPointer': {
+    'type': 'Manual',
+    'cmd_args': 'GLuint indx, GLintVertexAttribSize size, '
+                'GLenumVertexAttribType type, GLsizei stride, '
+                'GLuint offset',
+    'client_test': False,
+    'unsafe': True,
+  },
   'VertexAttribPointer': {
-      'type': 'Manual',
-      'cmd_args': 'GLuint indx, GLintVertexAttribSize size, '
-                  'GLenumVertexAttribType type, GLboolean normalized, '
-                  'GLsizei stride, GLuint offset',
-      'client_test': False,
+    'type': 'Manual',
+    'cmd_args': 'GLuint indx, GLintVertexAttribSize size, '
+                'GLenumVertexAttribType type, GLboolean normalized, '
+                'GLsizei stride, GLuint offset',
+    'client_test': False,
   },
   'Scissor': {
     'type': 'StateSet',
@@ -2336,11 +2457,11 @@
     'decoder_func': 'DoViewport',
   },
   'ResizeCHROMIUM': {
-      'type': 'Custom',
-      'impl_func': False,
-      'unit_test': False,
-      'extension': True,
-      'chromium': True,
+    'type': 'Custom',
+    'impl_func': False,
+    'unit_test': False,
+    'extension': True,
+    'chromium': True,
   },
   'GetRequestableExtensionsCHROMIUM': {
     'type': 'Custom',
@@ -2978,7 +3099,12 @@
     """Writes function header for service implementation handlers."""
     file.Write("""error::Error GLES2DecoderImpl::Handle%(name)s(
         uint32_t immediate_data_size, const void* cmd_data) {
-      const gles2::cmds::%(name)s& c =
+      """ % {'name': func.name})
+    if func.IsUnsafe():
+      file.Write("""if (!unsafe_es3_apis_enabled())
+          return error::kUnknownCommand;
+        """)
+    file.Write("""const gles2::cmds::%(name)s& c =
           *static_cast<const gles2::cmds::%(name)s*>(cmd_data);
       (void)c;
       """ % {'name': func.name})
@@ -3140,36 +3266,40 @@
   SetupExpectationsForEnableDisable(%(gl_args)s, true);
   SpecializedSetup<cmds::%(name)s, 0>(true);
   cmds::%(name)s cmd;
-  cmd.Init(%(args)s);
-  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
-  EXPECT_EQ(GL_NO_ERROR, GetGLError());
-}
-"""
+  cmd.Init(%(args)s);"""
     elif func.name == 'Disable':
       valid_test = """
 TEST_P(%(test_name)s, %(name)sValidArgs) {
   SetupExpectationsForEnableDisable(%(gl_args)s, false);
   SpecializedSetup<cmds::%(name)s, 0>(true);
   cmds::%(name)s cmd;
-  cmd.Init(%(args)s);
-  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
-  EXPECT_EQ(GL_NO_ERROR, GetGLError());
-}
-"""
+  cmd.Init(%(args)s);"""
     else:
       valid_test = """
 TEST_P(%(test_name)s, %(name)sValidArgs) {
   EXPECT_CALL(*gl_, %(gl_func_name)s(%(gl_args)s));
   SpecializedSetup<cmds::%(name)s, 0>(true);
   cmds::%(name)s cmd;
-  cmd.Init(%(args)s);
+  cmd.Init(%(args)s);"""
+    if func.IsUnsafe():
+      valid_test += """
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
+"""
+    else:
+      valid_test += """
   EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
   EXPECT_EQ(GL_NO_ERROR, GetGLError());
 }
 """
     self.WriteValidUnitTest(func, file, valid_test, *extras)
 
-    invalid_test = """
+    if not func.IsUnsafe():
+      invalid_test = """
 TEST_P(%(test_name)s, %(name)sInvalidArgs%(arg_index)d_%(value_index)d) {
   EXPECT_CALL(*gl_, %(gl_func_name)s(%(gl_args)s)).Times(0);
   SpecializedSetup<cmds::%(name)s, 0>(false);
@@ -3178,7 +3308,7 @@
   EXPECT_EQ(error::%(parse_result)s, ExecuteCmd(cmd));%(gl_error_test)s
 }
 """
-    self.WriteInvalidUnitTest(func, file, invalid_test, *extras)
+      self.WriteInvalidUnitTest(func, file, invalid_test, *extras)
 
   def WriteImmediateServiceUnitTest(self, func, file, *extras):
     """Writes the service unit test for an immediate command."""
@@ -4919,12 +5049,21 @@
   EXPECT_CALL(*gl_, %(gl_func_name)s(%(local_gl_args)s));
   result->size = 0;
   cmds::%(name)s cmd;
-  cmd.Init(%(args)s);
+  cmd.Init(%(args)s);"""
+    if func.IsUnsafe():
+      valid_test += """
+  decoder_->set_unsafe_es3_apis_enabled(true);"""
+    valid_test += """
   EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
   EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(
                 %(valid_pname)s),
             result->GetNumResults());
-  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());"""
+    if func.IsUnsafe():
+      valid_test += """
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));"""
+    valid_test += """
 }
 """
     gl_arg_strings = []
@@ -4944,7 +5083,8 @@
         'valid_pname': valid_pname,
       }, *extras)
 
-    invalid_test = """
+    if not func.IsUnsafe():
+      invalid_test = """
 TEST_P(%(test_name)s, %(name)sInvalidArgs%(arg_index)d_%(value_index)d) {
   EXPECT_CALL(*gl_, %(gl_func_name)s(%(gl_args)s)).Times(0);
   SpecializedSetup<cmds::%(name)s, 0>(false);
@@ -4957,7 +5097,7 @@
   EXPECT_EQ(0u, result->size);%(gl_error_test)s
 }
 """
-    self.WriteInvalidUnitTest(func, file, invalid_test, *extras)
+      self.WriteInvalidUnitTest(func, file, invalid_test, *extras)
 
 class ArrayArgTypeHandler(TypeHandler):
   """Base class for type handlers that handle args that are arrays"""
@@ -5040,10 +5180,20 @@
   EXPECT_CALL(
       *gl_,
       %(gl_func_name)s(%(gl_args)s, %(data_ref)sreinterpret_cast<
-          %(data_type)s*>(ImmediateDataAddress(&cmd))));
+          %(data_type)s*>(ImmediateDataAddress(&cmd))));"""
+    if func.IsUnsafe():
+      valid_test += """
+  decoder_->set_unsafe_es3_apis_enabled(true);"""
+    valid_test += """
   EXPECT_EQ(error::kNoError,
             ExecuteImmediateCmd(cmd, sizeof(temp)));
-  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());"""
+    if func.IsUnsafe():
+      valid_test += """
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand,
+            ExecuteImmediateCmd(cmd, sizeof(temp)));"""
+    valid_test += """
 }
 """
     gl_arg_strings = [
@@ -5309,10 +5459,20 @@
           reinterpret_cast<%(data_type)s*>(ImmediateDataAddress(&cmd))));
   SpecializedSetup<cmds::%(name)s, 0>(true);
   %(data_type)s temp[%(data_count)s * 2] = { 0, };
-  cmd.Init(%(args)s, &temp[0]);
+  cmd.Init(%(args)s, &temp[0]);"""
+    if func.IsUnsafe():
+      valid_test += """
+  decoder_->set_unsafe_es3_apis_enabled(true);"""
+    valid_test += """
   EXPECT_EQ(error::kNoError,
             ExecuteImmediateCmd(cmd, sizeof(temp)));
-  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());"""
+    if func.IsUnsafe():
+      valid_test += """
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand,
+            ExecuteImmediateCmd(cmd, sizeof(temp)));"""
+    valid_test += """
 }
 """
     gl_arg_strings = []
@@ -5586,7 +5746,13 @@
 
   def WriteHandlerImplementation(self, func, file):
     """Overrriden from TypeHandler."""
-    code = """  %(type)s temp[%(count)s] = { %(values)s};
+    code = """  %(type)s temp[%(count)s] = { %(values)s};"""
+    if func.IsUnsafe():
+      code += """
+  gl%(name)sv(%(location)s, 1, &temp[0]);
+"""
+    else:
+      code += """
   Do%(name)sv(%(location)s, 1, &temp[0]);
 """
     values = ""
@@ -5612,9 +5778,18 @@
   EXPECT_CALL(*gl_, %(name)sv(%(local_args)s));
   SpecializedSetup<cmds::%(name)s, 0>(true);
   cmds::%(name)s cmd;
-  cmd.Init(%(args)s);
+  cmd.Init(%(args)s);"""
+    if func.IsUnsafe():
+      valid_test += """
+  decoder_->set_unsafe_es3_apis_enabled(true);"""
+    valid_test += """
   EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
-  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());"""
+    if func.IsUnsafe():
+      valid_test += """
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));"""
+    valid_test += """
 }
 """
     args = func.GetOriginalArgs()
@@ -6368,6 +6543,8 @@
     return self.named_type.GetConstantValue()
 
   def WriteValidationCode(self, file, func):
+    if func.IsUnsafe():
+      return
     if self.named_type.IsConstant():
       return
     file.Write("  if (!validators_->%s.IsValid(%s)) {\n" %
@@ -6846,6 +7023,10 @@
     """Returns whether the function is immediate data function or not."""
     return False
 
+  def IsUnsafe(self):
+    """Returns whether the function has service side validation or not."""
+    return self.GetInfo('unsafe', False)
+
   def GetInfo(self, name, default = None):
     """Returns a value from the function info for this function."""
     if name in self.info:
@@ -6874,7 +7055,8 @@
 
   def IsCoreGLFunction(self):
     return (not self.IsExtension() and
-            not self.GetInfo('pepper_interface'))
+            not self.GetInfo('pepper_interface') and
+            not self.IsUnsafe())
 
   def InPepperInterface(self, interface):
     ext = self.GetInfo('pepper_interface')
@@ -8301,6 +8483,7 @@
     dict = {}
     for fname in ['third_party/khronos/GLES2/gl2.h',
                   'third_party/khronos/GLES2/gl2ext.h',
+                  'third_party/khronos/GLES3/gl3.h',
                   'gpu/GLES2/gl2chromium.h',
                   'gpu/GLES2/gl2extchromium.h']:
       lines = open(fname).readlines()
diff --git a/gpu/command_buffer/client/cmd_buffer_helper.h b/gpu/command_buffer/client/cmd_buffer_helper.h
index 954107f..d10a554 100644
--- a/gpu/command_buffer/client/cmd_buffer_helper.h
+++ b/gpu/command_buffer/client/cmd_buffer_helper.h
@@ -137,11 +137,12 @@
 
   template <typename T>
   void ForceNullCheck(T* data) {
-#if defined(OS_WIN) && defined(ARCH_CPU_64_BITS)
+#if defined(COMPILER_MSVC) && defined(ARCH_CPU_64_BITS) && !defined(__clang__)
     // 64-bit MSVC's alias analysis was determining that the command buffer
     // entry couldn't be NULL, so it optimized out the NULL check.
     // Dereferencing the same datatype through a volatile pointer seems to
     // prevent that from happening. http://crbug.com/361936
+    // TODO(jbauman): Remove once we're on VC2015, http://crbug.com/412902
     if (data)
       static_cast<volatile T*>(data)->header;
 #endif
diff --git a/gpu/command_buffer/client/gles2_c_lib_autogen.h b/gpu/command_buffer/client/gles2_c_lib_autogen.h
index b1181ae..727d39a 100644
--- a/gpu/command_buffer/client/gles2_c_lib_autogen.h
+++ b/gpu/command_buffer/client/gles2_c_lib_autogen.h
@@ -116,6 +116,14 @@
   gles2::GetGLContext()->CompressedTexSubImage2D(
       target, level, xoffset, yoffset, width, height, format, imageSize, data);
 }
+void GLES2CopyBufferSubData(GLenum readtarget,
+                            GLenum writetarget,
+                            GLintptr readoffset,
+                            GLintptr writeoffset,
+                            GLsizeiptr size) {
+  gles2::GetGLContext()->CopyBufferSubData(readtarget, writetarget, readoffset,
+                                           writeoffset, size);
+}
 void GLES2CopyTexImage2D(GLenum target,
                          GLint level,
                          GLenum internalformat,
@@ -219,6 +227,14 @@
   gles2::GetGLContext()->FramebufferTexture2D(target, attachment, textarget,
                                               texture, level);
 }
+void GLES2FramebufferTextureLayer(GLenum target,
+                                  GLenum attachment,
+                                  GLuint texture,
+                                  GLint level,
+                                  GLint layer) {
+  gles2::GetGLContext()->FramebufferTextureLayer(target, attachment, texture,
+                                                 level, layer);
+}
 void GLES2FrontFace(GLenum mode) {
   gles2::GetGLContext()->FrontFace(mode);
 }
@@ -288,6 +304,14 @@
 void GLES2GetIntegerv(GLenum pname, GLint* params) {
   gles2::GetGLContext()->GetIntegerv(pname, params);
 }
+void GLES2GetInternalformativ(GLenum target,
+                              GLenum format,
+                              GLenum pname,
+                              GLsizei bufSize,
+                              GLint* params) {
+  gles2::GetGLContext()->GetInternalformativ(target, format, pname, bufSize,
+                                             params);
+}
 void GLES2GetProgramiv(GLuint program, GLenum pname, GLint* params) {
   gles2::GetGLContext()->GetProgramiv(program, pname, params);
 }
@@ -479,6 +503,15 @@
 void GLES2TexParameteriv(GLenum target, GLenum pname, const GLint* params) {
   gles2::GetGLContext()->TexParameteriv(target, pname, params);
 }
+void GLES2TexStorage3D(GLenum target,
+                       GLsizei levels,
+                       GLenum internalFormat,
+                       GLsizei width,
+                       GLsizei height,
+                       GLsizei depth) {
+  gles2::GetGLContext()->TexStorage3D(target, levels, internalFormat, width,
+                                      height, depth);
+}
 void GLES2TexSubImage2D(GLenum target,
                         GLint level,
                         GLint xoffset,
@@ -503,6 +536,12 @@
 void GLES2Uniform1iv(GLint location, GLsizei count, const GLint* v) {
   gles2::GetGLContext()->Uniform1iv(location, count, v);
 }
+void GLES2Uniform1ui(GLint location, GLuint x) {
+  gles2::GetGLContext()->Uniform1ui(location, x);
+}
+void GLES2Uniform1uiv(GLint location, GLsizei count, const GLuint* v) {
+  gles2::GetGLContext()->Uniform1uiv(location, count, v);
+}
 void GLES2Uniform2f(GLint location, GLfloat x, GLfloat y) {
   gles2::GetGLContext()->Uniform2f(location, x, y);
 }
@@ -515,6 +554,12 @@
 void GLES2Uniform2iv(GLint location, GLsizei count, const GLint* v) {
   gles2::GetGLContext()->Uniform2iv(location, count, v);
 }
+void GLES2Uniform2ui(GLint location, GLuint x, GLuint y) {
+  gles2::GetGLContext()->Uniform2ui(location, x, y);
+}
+void GLES2Uniform2uiv(GLint location, GLsizei count, const GLuint* v) {
+  gles2::GetGLContext()->Uniform2uiv(location, count, v);
+}
 void GLES2Uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) {
   gles2::GetGLContext()->Uniform3f(location, x, y, z);
 }
@@ -527,6 +572,12 @@
 void GLES2Uniform3iv(GLint location, GLsizei count, const GLint* v) {
   gles2::GetGLContext()->Uniform3iv(location, count, v);
 }
+void GLES2Uniform3ui(GLint location, GLuint x, GLuint y, GLuint z) {
+  gles2::GetGLContext()->Uniform3ui(location, x, y, z);
+}
+void GLES2Uniform3uiv(GLint location, GLsizei count, const GLuint* v) {
+  gles2::GetGLContext()->Uniform3uiv(location, count, v);
+}
 void GLES2Uniform4f(GLint location,
                     GLfloat x,
                     GLfloat y,
@@ -543,24 +594,66 @@
 void GLES2Uniform4iv(GLint location, GLsizei count, const GLint* v) {
   gles2::GetGLContext()->Uniform4iv(location, count, v);
 }
+void GLES2Uniform4ui(GLint location, GLuint x, GLuint y, GLuint z, GLuint w) {
+  gles2::GetGLContext()->Uniform4ui(location, x, y, z, w);
+}
+void GLES2Uniform4uiv(GLint location, GLsizei count, const GLuint* v) {
+  gles2::GetGLContext()->Uniform4uiv(location, count, v);
+}
 void GLES2UniformMatrix2fv(GLint location,
                            GLsizei count,
                            GLboolean transpose,
                            const GLfloat* value) {
   gles2::GetGLContext()->UniformMatrix2fv(location, count, transpose, value);
 }
+void GLES2UniformMatrix2x3fv(GLint location,
+                             GLsizei count,
+                             GLboolean transpose,
+                             const GLfloat* value) {
+  gles2::GetGLContext()->UniformMatrix2x3fv(location, count, transpose, value);
+}
+void GLES2UniformMatrix2x4fv(GLint location,
+                             GLsizei count,
+                             GLboolean transpose,
+                             const GLfloat* value) {
+  gles2::GetGLContext()->UniformMatrix2x4fv(location, count, transpose, value);
+}
 void GLES2UniformMatrix3fv(GLint location,
                            GLsizei count,
                            GLboolean transpose,
                            const GLfloat* value) {
   gles2::GetGLContext()->UniformMatrix3fv(location, count, transpose, value);
 }
+void GLES2UniformMatrix3x2fv(GLint location,
+                             GLsizei count,
+                             GLboolean transpose,
+                             const GLfloat* value) {
+  gles2::GetGLContext()->UniformMatrix3x2fv(location, count, transpose, value);
+}
+void GLES2UniformMatrix3x4fv(GLint location,
+                             GLsizei count,
+                             GLboolean transpose,
+                             const GLfloat* value) {
+  gles2::GetGLContext()->UniformMatrix3x4fv(location, count, transpose, value);
+}
 void GLES2UniformMatrix4fv(GLint location,
                            GLsizei count,
                            GLboolean transpose,
                            const GLfloat* value) {
   gles2::GetGLContext()->UniformMatrix4fv(location, count, transpose, value);
 }
+void GLES2UniformMatrix4x2fv(GLint location,
+                             GLsizei count,
+                             GLboolean transpose,
+                             const GLfloat* value) {
+  gles2::GetGLContext()->UniformMatrix4x2fv(location, count, transpose, value);
+}
+void GLES2UniformMatrix4x3fv(GLint location,
+                             GLsizei count,
+                             GLboolean transpose,
+                             const GLfloat* value) {
+  gles2::GetGLContext()->UniformMatrix4x3fv(location, count, transpose, value);
+}
 void GLES2UseProgram(GLuint program) {
   gles2::GetGLContext()->UseProgram(program);
 }
@@ -595,6 +688,29 @@
 void GLES2VertexAttrib4fv(GLuint indx, const GLfloat* values) {
   gles2::GetGLContext()->VertexAttrib4fv(indx, values);
 }
+void GLES2VertexAttribI4i(GLuint indx, GLint x, GLint y, GLint z, GLint w) {
+  gles2::GetGLContext()->VertexAttribI4i(indx, x, y, z, w);
+}
+void GLES2VertexAttribI4iv(GLuint indx, const GLint* values) {
+  gles2::GetGLContext()->VertexAttribI4iv(indx, values);
+}
+void GLES2VertexAttribI4ui(GLuint indx,
+                           GLuint x,
+                           GLuint y,
+                           GLuint z,
+                           GLuint w) {
+  gles2::GetGLContext()->VertexAttribI4ui(indx, x, y, z, w);
+}
+void GLES2VertexAttribI4uiv(GLuint indx, const GLuint* values) {
+  gles2::GetGLContext()->VertexAttribI4uiv(indx, values);
+}
+void GLES2VertexAttribIPointer(GLuint indx,
+                               GLint size,
+                               GLenum type,
+                               GLsizei stride,
+                               const void* ptr) {
+  gles2::GetGLContext()->VertexAttribIPointer(indx, size, type, stride, ptr);
+}
 void GLES2VertexAttribPointer(GLuint indx,
                               GLint size,
                               GLenum type,
@@ -1054,6 +1170,10 @@
      reinterpret_cast<GLES2FunctionPointer>(glCompressedTexSubImage2D),
     },
     {
+     "glCopyBufferSubData",
+     reinterpret_cast<GLES2FunctionPointer>(glCopyBufferSubData),
+    },
+    {
      "glCopyTexImage2D",
      reinterpret_cast<GLES2FunctionPointer>(glCopyTexImage2D),
     },
@@ -1154,6 +1274,10 @@
      reinterpret_cast<GLES2FunctionPointer>(glFramebufferTexture2D),
     },
     {
+     "glFramebufferTextureLayer",
+     reinterpret_cast<GLES2FunctionPointer>(glFramebufferTextureLayer),
+    },
+    {
      "glFrontFace",
      reinterpret_cast<GLES2FunctionPointer>(glFrontFace),
     },
@@ -1219,6 +1343,10 @@
      reinterpret_cast<GLES2FunctionPointer>(glGetIntegerv),
     },
     {
+     "glGetInternalformativ",
+     reinterpret_cast<GLES2FunctionPointer>(glGetInternalformativ),
+    },
+    {
      "glGetProgramiv",
      reinterpret_cast<GLES2FunctionPointer>(glGetProgramiv),
     },
@@ -1411,6 +1539,10 @@
      reinterpret_cast<GLES2FunctionPointer>(glTexParameteriv),
     },
     {
+     "glTexStorage3D",
+     reinterpret_cast<GLES2FunctionPointer>(glTexStorage3D),
+    },
+    {
      "glTexSubImage2D",
      reinterpret_cast<GLES2FunctionPointer>(glTexSubImage2D),
     },
@@ -1431,6 +1563,14 @@
      reinterpret_cast<GLES2FunctionPointer>(glUniform1iv),
     },
     {
+     "glUniform1ui",
+     reinterpret_cast<GLES2FunctionPointer>(glUniform1ui),
+    },
+    {
+     "glUniform1uiv",
+     reinterpret_cast<GLES2FunctionPointer>(glUniform1uiv),
+    },
+    {
      "glUniform2f",
      reinterpret_cast<GLES2FunctionPointer>(glUniform2f),
     },
@@ -1447,6 +1587,14 @@
      reinterpret_cast<GLES2FunctionPointer>(glUniform2iv),
     },
     {
+     "glUniform2ui",
+     reinterpret_cast<GLES2FunctionPointer>(glUniform2ui),
+    },
+    {
+     "glUniform2uiv",
+     reinterpret_cast<GLES2FunctionPointer>(glUniform2uiv),
+    },
+    {
      "glUniform3f",
      reinterpret_cast<GLES2FunctionPointer>(glUniform3f),
     },
@@ -1463,6 +1611,14 @@
      reinterpret_cast<GLES2FunctionPointer>(glUniform3iv),
     },
     {
+     "glUniform3ui",
+     reinterpret_cast<GLES2FunctionPointer>(glUniform3ui),
+    },
+    {
+     "glUniform3uiv",
+     reinterpret_cast<GLES2FunctionPointer>(glUniform3uiv),
+    },
+    {
      "glUniform4f",
      reinterpret_cast<GLES2FunctionPointer>(glUniform4f),
     },
@@ -1479,18 +1635,50 @@
      reinterpret_cast<GLES2FunctionPointer>(glUniform4iv),
     },
     {
+     "glUniform4ui",
+     reinterpret_cast<GLES2FunctionPointer>(glUniform4ui),
+    },
+    {
+     "glUniform4uiv",
+     reinterpret_cast<GLES2FunctionPointer>(glUniform4uiv),
+    },
+    {
      "glUniformMatrix2fv",
      reinterpret_cast<GLES2FunctionPointer>(glUniformMatrix2fv),
     },
     {
+     "glUniformMatrix2x3fv",
+     reinterpret_cast<GLES2FunctionPointer>(glUniformMatrix2x3fv),
+    },
+    {
+     "glUniformMatrix2x4fv",
+     reinterpret_cast<GLES2FunctionPointer>(glUniformMatrix2x4fv),
+    },
+    {
      "glUniformMatrix3fv",
      reinterpret_cast<GLES2FunctionPointer>(glUniformMatrix3fv),
     },
     {
+     "glUniformMatrix3x2fv",
+     reinterpret_cast<GLES2FunctionPointer>(glUniformMatrix3x2fv),
+    },
+    {
+     "glUniformMatrix3x4fv",
+     reinterpret_cast<GLES2FunctionPointer>(glUniformMatrix3x4fv),
+    },
+    {
      "glUniformMatrix4fv",
      reinterpret_cast<GLES2FunctionPointer>(glUniformMatrix4fv),
     },
     {
+     "glUniformMatrix4x2fv",
+     reinterpret_cast<GLES2FunctionPointer>(glUniformMatrix4x2fv),
+    },
+    {
+     "glUniformMatrix4x3fv",
+     reinterpret_cast<GLES2FunctionPointer>(glUniformMatrix4x3fv),
+    },
+    {
      "glUseProgram",
      reinterpret_cast<GLES2FunctionPointer>(glUseProgram),
     },
@@ -1531,6 +1719,26 @@
      reinterpret_cast<GLES2FunctionPointer>(glVertexAttrib4fv),
     },
     {
+     "glVertexAttribI4i",
+     reinterpret_cast<GLES2FunctionPointer>(glVertexAttribI4i),
+    },
+    {
+     "glVertexAttribI4iv",
+     reinterpret_cast<GLES2FunctionPointer>(glVertexAttribI4iv),
+    },
+    {
+     "glVertexAttribI4ui",
+     reinterpret_cast<GLES2FunctionPointer>(glVertexAttribI4ui),
+    },
+    {
+     "glVertexAttribI4uiv",
+     reinterpret_cast<GLES2FunctionPointer>(glVertexAttribI4uiv),
+    },
+    {
+     "glVertexAttribIPointer",
+     reinterpret_cast<GLES2FunctionPointer>(glVertexAttribIPointer),
+    },
+    {
      "glVertexAttribPointer",
      reinterpret_cast<GLES2FunctionPointer>(glVertexAttribPointer),
     },
diff --git a/gpu/command_buffer/client/gles2_cmd_helper_autogen.h b/gpu/command_buffer/client/gles2_cmd_helper_autogen.h
index 75796a2..b8e3b66 100644
--- a/gpu/command_buffer/client/gles2_cmd_helper_autogen.h
+++ b/gpu/command_buffer/client/gles2_cmd_helper_autogen.h
@@ -243,6 +243,18 @@
   }
 }
 
+void CopyBufferSubData(GLenum readtarget,
+                       GLenum writetarget,
+                       GLintptr readoffset,
+                       GLintptr writeoffset,
+                       GLsizeiptr size) {
+  gles2::cmds::CopyBufferSubData* c =
+      GetCmdSpace<gles2::cmds::CopyBufferSubData>();
+  if (c) {
+    c->Init(readtarget, writetarget, readoffset, writeoffset, size);
+  }
+}
+
 void CopyTexImage2D(GLenum target,
                     GLint level,
                     GLenum internalformat,
@@ -457,6 +469,18 @@
   }
 }
 
+void FramebufferTextureLayer(GLenum target,
+                             GLenum attachment,
+                             GLuint texture,
+                             GLint level,
+                             GLint layer) {
+  gles2::cmds::FramebufferTextureLayer* c =
+      GetCmdSpace<gles2::cmds::FramebufferTextureLayer>();
+  if (c) {
+    c->Init(target, attachment, texture, level, layer);
+  }
+}
+
 void FrontFace(GLenum mode) {
   gles2::cmds::FrontFace* c = GetCmdSpace<gles2::cmds::FrontFace>();
   if (c) {
@@ -611,6 +635,19 @@
   }
 }
 
+void GetInternalformativ(GLenum target,
+                         GLenum format,
+                         GLenum pname,
+                         GLsizei bufSize,
+                         uint32_t params_shm_id,
+                         uint32_t params_shm_offset) {
+  gles2::cmds::GetInternalformativ* c =
+      GetCmdSpace<gles2::cmds::GetInternalformativ>();
+  if (c) {
+    c->Init(target, format, pname, bufSize, params_shm_id, params_shm_offset);
+  }
+}
+
 void GetProgramiv(GLuint program,
                   GLenum pname,
                   uint32_t params_shm_id,
@@ -1033,6 +1070,18 @@
   }
 }
 
+void TexStorage3D(GLenum target,
+                  GLsizei levels,
+                  GLenum internalFormat,
+                  GLsizei width,
+                  GLsizei height,
+                  GLsizei depth) {
+  gles2::cmds::TexStorage3D* c = GetCmdSpace<gles2::cmds::TexStorage3D>();
+  if (c) {
+    c->Init(target, levels, internalFormat, width, height, depth);
+  }
+}
+
 void TexSubImage2D(GLenum target,
                    GLint level,
                    GLint xoffset,
@@ -1083,6 +1132,22 @@
   }
 }
 
+void Uniform1ui(GLint location, GLuint x) {
+  gles2::cmds::Uniform1ui* c = GetCmdSpace<gles2::cmds::Uniform1ui>();
+  if (c) {
+    c->Init(location, x);
+  }
+}
+
+void Uniform1uivImmediate(GLint location, GLsizei count, const GLuint* v) {
+  const uint32_t size = gles2::cmds::Uniform1uivImmediate::ComputeSize(count);
+  gles2::cmds::Uniform1uivImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::Uniform1uivImmediate>(size);
+  if (c) {
+    c->Init(location, count, v);
+  }
+}
+
 void Uniform2f(GLint location, GLfloat x, GLfloat y) {
   gles2::cmds::Uniform2f* c = GetCmdSpace<gles2::cmds::Uniform2f>();
   if (c) {
@@ -1115,6 +1180,22 @@
   }
 }
 
+void Uniform2ui(GLint location, GLuint x, GLuint y) {
+  gles2::cmds::Uniform2ui* c = GetCmdSpace<gles2::cmds::Uniform2ui>();
+  if (c) {
+    c->Init(location, x, y);
+  }
+}
+
+void Uniform2uivImmediate(GLint location, GLsizei count, const GLuint* v) {
+  const uint32_t size = gles2::cmds::Uniform2uivImmediate::ComputeSize(count);
+  gles2::cmds::Uniform2uivImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::Uniform2uivImmediate>(size);
+  if (c) {
+    c->Init(location, count, v);
+  }
+}
+
 void Uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) {
   gles2::cmds::Uniform3f* c = GetCmdSpace<gles2::cmds::Uniform3f>();
   if (c) {
@@ -1147,6 +1228,22 @@
   }
 }
 
+void Uniform3ui(GLint location, GLuint x, GLuint y, GLuint z) {
+  gles2::cmds::Uniform3ui* c = GetCmdSpace<gles2::cmds::Uniform3ui>();
+  if (c) {
+    c->Init(location, x, y, z);
+  }
+}
+
+void Uniform3uivImmediate(GLint location, GLsizei count, const GLuint* v) {
+  const uint32_t size = gles2::cmds::Uniform3uivImmediate::ComputeSize(count);
+  gles2::cmds::Uniform3uivImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::Uniform3uivImmediate>(size);
+  if (c) {
+    c->Init(location, count, v);
+  }
+}
+
 void Uniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) {
   gles2::cmds::Uniform4f* c = GetCmdSpace<gles2::cmds::Uniform4f>();
   if (c) {
@@ -1179,6 +1276,22 @@
   }
 }
 
+void Uniform4ui(GLint location, GLuint x, GLuint y, GLuint z, GLuint w) {
+  gles2::cmds::Uniform4ui* c = GetCmdSpace<gles2::cmds::Uniform4ui>();
+  if (c) {
+    c->Init(location, x, y, z, w);
+  }
+}
+
+void Uniform4uivImmediate(GLint location, GLsizei count, const GLuint* v) {
+  const uint32_t size = gles2::cmds::Uniform4uivImmediate::ComputeSize(count);
+  gles2::cmds::Uniform4uivImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::Uniform4uivImmediate>(size);
+  if (c) {
+    c->Init(location, count, v);
+  }
+}
+
 void UniformMatrix2fvImmediate(GLint location,
                                GLsizei count,
                                const GLfloat* value) {
@@ -1192,6 +1305,32 @@
   }
 }
 
+void UniformMatrix2x3fvImmediate(GLint location,
+                                 GLsizei count,
+                                 const GLfloat* value) {
+  const uint32_t size =
+      gles2::cmds::UniformMatrix2x3fvImmediate::ComputeSize(count);
+  gles2::cmds::UniformMatrix2x3fvImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::UniformMatrix2x3fvImmediate>(
+          size);
+  if (c) {
+    c->Init(location, count, value);
+  }
+}
+
+void UniformMatrix2x4fvImmediate(GLint location,
+                                 GLsizei count,
+                                 const GLfloat* value) {
+  const uint32_t size =
+      gles2::cmds::UniformMatrix2x4fvImmediate::ComputeSize(count);
+  gles2::cmds::UniformMatrix2x4fvImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::UniformMatrix2x4fvImmediate>(
+          size);
+  if (c) {
+    c->Init(location, count, value);
+  }
+}
+
 void UniformMatrix3fvImmediate(GLint location,
                                GLsizei count,
                                const GLfloat* value) {
@@ -1205,6 +1344,32 @@
   }
 }
 
+void UniformMatrix3x2fvImmediate(GLint location,
+                                 GLsizei count,
+                                 const GLfloat* value) {
+  const uint32_t size =
+      gles2::cmds::UniformMatrix3x2fvImmediate::ComputeSize(count);
+  gles2::cmds::UniformMatrix3x2fvImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::UniformMatrix3x2fvImmediate>(
+          size);
+  if (c) {
+    c->Init(location, count, value);
+  }
+}
+
+void UniformMatrix3x4fvImmediate(GLint location,
+                                 GLsizei count,
+                                 const GLfloat* value) {
+  const uint32_t size =
+      gles2::cmds::UniformMatrix3x4fvImmediate::ComputeSize(count);
+  gles2::cmds::UniformMatrix3x4fvImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::UniformMatrix3x4fvImmediate>(
+          size);
+  if (c) {
+    c->Init(location, count, value);
+  }
+}
+
 void UniformMatrix4fvImmediate(GLint location,
                                GLsizei count,
                                const GLfloat* value) {
@@ -1218,6 +1383,32 @@
   }
 }
 
+void UniformMatrix4x2fvImmediate(GLint location,
+                                 GLsizei count,
+                                 const GLfloat* value) {
+  const uint32_t size =
+      gles2::cmds::UniformMatrix4x2fvImmediate::ComputeSize(count);
+  gles2::cmds::UniformMatrix4x2fvImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::UniformMatrix4x2fvImmediate>(
+          size);
+  if (c) {
+    c->Init(location, count, value);
+  }
+}
+
+void UniformMatrix4x3fvImmediate(GLint location,
+                                 GLsizei count,
+                                 const GLfloat* value) {
+  const uint32_t size =
+      gles2::cmds::UniformMatrix4x3fvImmediate::ComputeSize(count);
+  gles2::cmds::UniformMatrix4x3fvImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::UniformMatrix4x3fvImmediate>(
+          size);
+  if (c) {
+    c->Init(location, count, value);
+  }
+}
+
 void UseProgram(GLuint program) {
   gles2::cmds::UseProgram* c = GetCmdSpace<gles2::cmds::UseProgram>();
   if (c) {
@@ -1300,6 +1491,53 @@
   }
 }
 
+void VertexAttribI4i(GLuint indx, GLint x, GLint y, GLint z, GLint w) {
+  gles2::cmds::VertexAttribI4i* c = GetCmdSpace<gles2::cmds::VertexAttribI4i>();
+  if (c) {
+    c->Init(indx, x, y, z, w);
+  }
+}
+
+void VertexAttribI4ivImmediate(GLuint indx, const GLint* values) {
+  const uint32_t size = gles2::cmds::VertexAttribI4ivImmediate::ComputeSize();
+  gles2::cmds::VertexAttribI4ivImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::VertexAttribI4ivImmediate>(
+          size);
+  if (c) {
+    c->Init(indx, values);
+  }
+}
+
+void VertexAttribI4ui(GLuint indx, GLuint x, GLuint y, GLuint z, GLuint w) {
+  gles2::cmds::VertexAttribI4ui* c =
+      GetCmdSpace<gles2::cmds::VertexAttribI4ui>();
+  if (c) {
+    c->Init(indx, x, y, z, w);
+  }
+}
+
+void VertexAttribI4uivImmediate(GLuint indx, const GLuint* values) {
+  const uint32_t size = gles2::cmds::VertexAttribI4uivImmediate::ComputeSize();
+  gles2::cmds::VertexAttribI4uivImmediate* c =
+      GetImmediateCmdSpaceTotalSize<gles2::cmds::VertexAttribI4uivImmediate>(
+          size);
+  if (c) {
+    c->Init(indx, values);
+  }
+}
+
+void VertexAttribIPointer(GLuint indx,
+                          GLint size,
+                          GLenum type,
+                          GLsizei stride,
+                          GLuint offset) {
+  gles2::cmds::VertexAttribIPointer* c =
+      GetCmdSpace<gles2::cmds::VertexAttribIPointer>();
+  if (c) {
+    c->Init(indx, size, type, stride, offset);
+  }
+}
+
 void VertexAttribPointer(GLuint indx,
                          GLint size,
                          GLenum type,
diff --git a/gpu/command_buffer/client/gles2_implementation.cc b/gpu/command_buffer/client/gles2_implementation.cc
index 51c6370..1916e7d 100644
--- a/gpu/command_buffer/client/gles2_implementation.cc
+++ b/gpu/command_buffer/client/gles2_implementation.cc
@@ -725,6 +725,13 @@
   return GetHelper(pname, params);
 }
 
+bool GLES2Implementation::GetInternalformativHelper(
+    GLenum target, GLenum format, GLenum pname, GLsizei bufSize,
+    GLint* params) {
+  // TODO(zmo): Implement the client side caching.
+  return false;
+}
+
 GLuint GLES2Implementation::GetMaxValueInBufferCHROMIUMHelper(
     GLuint buffer_id, GLsizei count, GLenum type, GLuint offset) {
   typedef cmds::GetMaxValueInBufferCHROMIUM::Result Result;
@@ -1111,6 +1118,19 @@
   CheckGLError();
 }
 
+void GLES2Implementation::VertexAttribIPointer(
+    GLuint index, GLint size, GLenum type, GLsizei stride, const void* ptr) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttribPointer("
+      << index << ", "
+      << size << ", "
+      << GLES2Util::GetStringVertexAttribType(type) << ", "
+      << stride << ", "
+      << ptr << ")");
+  helper_->VertexAttribIPointer(index, size, type, stride, ToGLuint(ptr));
+  CheckGLError();
+}
+
 void GLES2Implementation::VertexAttribPointer(
     GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride,
     const void* ptr) {
@@ -1121,7 +1141,7 @@
       << GLES2Util::GetStringVertexAttribType(type) << ", "
       << GLES2Util::GetStringBool(normalized) << ", "
       << stride << ", "
-      << static_cast<const void*>(ptr) << ")");
+      << ptr << ")");
   // Record the info on the client side.
   if (!vertex_array_object_manager_->SetAttribPointer(
       bound_array_buffer_id_, index, size, type, normalized, stride, ptr)) {
diff --git a/gpu/command_buffer/client/gles2_implementation.h b/gpu/command_buffer/client/gles2_implementation.h
index 4fcfea8..77b8a87 100644
--- a/gpu/command_buffer/client/gles2_implementation.h
+++ b/gpu/command_buffer/client/gles2_implementation.h
@@ -510,6 +510,9 @@
   bool GetFramebufferAttachmentParameterivHelper(
       GLenum target, GLenum attachment, GLenum pname, GLint* params);
   bool GetIntegervHelper(GLenum pname, GLint* params);
+  bool GetInternalformativHelper(
+      GLenum target, GLenum format, GLenum pname, GLsizei bufSize,
+      GLint* params);
   bool GetProgramivHelper(GLuint program, GLenum pname, GLint* params);
   bool GetRenderbufferParameterivHelper(
       GLenum target, GLenum pname, GLint* params);
diff --git a/gpu/command_buffer/client/gles2_implementation_autogen.h b/gpu/command_buffer/client/gles2_implementation_autogen.h
index f58c0a8..66cfcef 100644
--- a/gpu/command_buffer/client/gles2_implementation_autogen.h
+++ b/gpu/command_buffer/client/gles2_implementation_autogen.h
@@ -94,6 +94,12 @@
                              GLsizei imageSize,
                              const void* data) override;
 
+void CopyBufferSubData(GLenum readtarget,
+                       GLenum writetarget,
+                       GLintptr readoffset,
+                       GLintptr writeoffset,
+                       GLsizeiptr size) override;
+
 void CopyTexImage2D(GLenum target,
                     GLint level,
                     GLenum internalformat,
@@ -164,6 +170,12 @@
                           GLuint texture,
                           GLint level) override;
 
+void FramebufferTextureLayer(GLenum target,
+                             GLenum attachment,
+                             GLuint texture,
+                             GLint level,
+                             GLint layer) override;
+
 void FrontFace(GLenum mode) override;
 
 void GenBuffers(GLsizei n, GLuint* buffers) override;
@@ -214,6 +226,12 @@
 
 void GetIntegerv(GLenum pname, GLint* params) override;
 
+void GetInternalformativ(GLenum target,
+                         GLenum format,
+                         GLenum pname,
+                         GLsizei bufSize,
+                         GLint* params) override;
+
 void GetProgramiv(GLuint program, GLenum pname, GLint* params) override;
 
 void GetProgramInfoLog(GLuint program,
@@ -354,6 +372,13 @@
 
 void TexParameteriv(GLenum target, GLenum pname, const GLint* params) override;
 
+void TexStorage3D(GLenum target,
+                  GLsizei levels,
+                  GLenum internalFormat,
+                  GLsizei width,
+                  GLsizei height,
+                  GLsizei depth) override;
+
 void TexSubImage2D(GLenum target,
                    GLint level,
                    GLint xoffset,
@@ -372,6 +397,10 @@
 
 void Uniform1iv(GLint location, GLsizei count, const GLint* v) override;
 
+void Uniform1ui(GLint location, GLuint x) override;
+
+void Uniform1uiv(GLint location, GLsizei count, const GLuint* v) override;
+
 void Uniform2f(GLint location, GLfloat x, GLfloat y) override;
 
 void Uniform2fv(GLint location, GLsizei count, const GLfloat* v) override;
@@ -380,6 +409,10 @@
 
 void Uniform2iv(GLint location, GLsizei count, const GLint* v) override;
 
+void Uniform2ui(GLint location, GLuint x, GLuint y) override;
+
+void Uniform2uiv(GLint location, GLsizei count, const GLuint* v) override;
+
 void Uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) override;
 
 void Uniform3fv(GLint location, GLsizei count, const GLfloat* v) override;
@@ -388,6 +421,10 @@
 
 void Uniform3iv(GLint location, GLsizei count, const GLint* v) override;
 
+void Uniform3ui(GLint location, GLuint x, GLuint y, GLuint z) override;
+
+void Uniform3uiv(GLint location, GLsizei count, const GLuint* v) override;
+
 void Uniform4f(GLint location,
                GLfloat x,
                GLfloat y,
@@ -400,21 +437,59 @@
 
 void Uniform4iv(GLint location, GLsizei count, const GLint* v) override;
 
+void Uniform4ui(GLint location,
+                GLuint x,
+                GLuint y,
+                GLuint z,
+                GLuint w) override;
+
+void Uniform4uiv(GLint location, GLsizei count, const GLuint* v) override;
+
 void UniformMatrix2fv(GLint location,
                       GLsizei count,
                       GLboolean transpose,
                       const GLfloat* value) override;
 
+void UniformMatrix2x3fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+
+void UniformMatrix2x4fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+
 void UniformMatrix3fv(GLint location,
                       GLsizei count,
                       GLboolean transpose,
                       const GLfloat* value) override;
 
+void UniformMatrix3x2fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+
+void UniformMatrix3x4fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+
 void UniformMatrix4fv(GLint location,
                       GLsizei count,
                       GLboolean transpose,
                       const GLfloat* value) override;
 
+void UniformMatrix4x2fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+
+void UniformMatrix4x3fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+
 void UseProgram(GLuint program) override;
 
 void ValidateProgram(GLuint program) override;
@@ -439,6 +514,24 @@
 
 void VertexAttrib4fv(GLuint indx, const GLfloat* values) override;
 
+void VertexAttribI4i(GLuint indx, GLint x, GLint y, GLint z, GLint w) override;
+
+void VertexAttribI4iv(GLuint indx, const GLint* values) override;
+
+void VertexAttribI4ui(GLuint indx,
+                      GLuint x,
+                      GLuint y,
+                      GLuint z,
+                      GLuint w) override;
+
+void VertexAttribI4uiv(GLuint indx, const GLuint* values) override;
+
+void VertexAttribIPointer(GLuint indx,
+                          GLint size,
+                          GLenum type,
+                          GLsizei stride,
+                          const void* ptr) override;
+
 void VertexAttribPointer(GLuint indx,
                          GLint size,
                          GLenum type,
diff --git a/gpu/command_buffer/client/gles2_implementation_impl_autogen.h b/gpu/command_buffer/client/gles2_implementation_impl_autogen.h
index 8541e77..d67e7ed 100644
--- a/gpu/command_buffer/client/gles2_implementation_impl_autogen.h
+++ b/gpu/command_buffer/client/gles2_implementation_impl_autogen.h
@@ -209,6 +209,34 @@
   CheckGLError();
 }
 
+void GLES2Implementation::CopyBufferSubData(GLenum readtarget,
+                                            GLenum writetarget,
+                                            GLintptr readoffset,
+                                            GLintptr writeoffset,
+                                            GLsizeiptr size) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glCopyBufferSubData("
+                     << GLES2Util::GetStringBufferTarget(readtarget) << ", "
+                     << GLES2Util::GetStringBufferTarget(writetarget) << ", "
+                     << readoffset << ", " << writeoffset << ", " << size
+                     << ")");
+  if (readoffset < 0) {
+    SetGLError(GL_INVALID_VALUE, "glCopyBufferSubData", "readoffset < 0");
+    return;
+  }
+  if (writeoffset < 0) {
+    SetGLError(GL_INVALID_VALUE, "glCopyBufferSubData", "writeoffset < 0");
+    return;
+  }
+  if (size < 0) {
+    SetGLError(GL_INVALID_VALUE, "glCopyBufferSubData", "size < 0");
+    return;
+  }
+  helper_->CopyBufferSubData(readtarget, writetarget, readoffset, writeoffset,
+                             size);
+  CheckGLError();
+}
+
 void GLES2Implementation::CopyTexImage2D(GLenum target,
                                          GLint level,
                                          GLenum internalformat,
@@ -474,6 +502,20 @@
   CheckGLError();
 }
 
+void GLES2Implementation::FramebufferTextureLayer(GLenum target,
+                                                  GLenum attachment,
+                                                  GLuint texture,
+                                                  GLint level,
+                                                  GLint layer) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glFramebufferTextureLayer("
+                     << GLES2Util::GetStringFrameBufferTarget(target) << ", "
+                     << GLES2Util::GetStringAttachment(attachment) << ", "
+                     << texture << ", " << level << ", " << layer << ")");
+  helper_->FramebufferTextureLayer(target, attachment, texture, level, layer);
+  CheckGLError();
+}
+
 void GLES2Implementation::FrontFace(GLenum mode) {
   GPU_CLIENT_SINGLE_THREAD_CHECK();
   GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glFrontFace("
@@ -717,6 +759,44 @@
   });
   CheckGLError();
 }
+void GLES2Implementation::GetInternalformativ(GLenum target,
+                                              GLenum format,
+                                              GLenum pname,
+                                              GLsizei bufSize,
+                                              GLint* params) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_VALIDATE_DESTINATION_INITALIZATION(GLint, params);
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGetInternalformativ("
+                     << GLES2Util::GetStringRenderBufferTarget(target) << ", "
+                     << GLES2Util::GetStringRenderBufferFormat(format) << ", "
+                     << GLES2Util::GetStringRenderBufferParameter(pname) << ", "
+                     << bufSize << ", " << static_cast<const void*>(params)
+                     << ")");
+  if (bufSize < 0) {
+    SetGLError(GL_INVALID_VALUE, "glGetInternalformativ", "bufSize < 0");
+    return;
+  }
+  TRACE_EVENT0("gpu", "GLES2Implementation::GetInternalformativ");
+  if (GetInternalformativHelper(target, format, pname, bufSize, params)) {
+    return;
+  }
+  typedef cmds::GetInternalformativ::Result Result;
+  Result* result = GetResultAs<Result*>();
+  if (!result) {
+    return;
+  }
+  result->SetNumResults(0);
+  helper_->GetInternalformativ(target, format, pname, bufSize, GetResultShmId(),
+                               GetResultShmOffset());
+  WaitForCmd();
+  result->CopyResult(params);
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (int32_t i = 0; i < result->GetNumResults(); ++i) {
+      GPU_CLIENT_LOG("  " << i << ": " << result->GetData()[i]);
+    }
+  });
+  CheckGLError();
+}
 void GLES2Implementation::GetProgramiv(GLuint program,
                                        GLenum pname,
                                        GLint* params) {
@@ -1245,6 +1325,39 @@
   CheckGLError();
 }
 
+void GLES2Implementation::TexStorage3D(GLenum target,
+                                       GLsizei levels,
+                                       GLenum internalFormat,
+                                       GLsizei width,
+                                       GLsizei height,
+                                       GLsizei depth) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG(
+      "[" << GetLogPrefix() << "] glTexStorage3D("
+          << GLES2Util::GetStringTexture3DTarget(target) << ", " << levels
+          << ", "
+          << GLES2Util::GetStringTextureInternalFormatStorage(internalFormat)
+          << ", " << width << ", " << height << ", " << depth << ")");
+  if (levels < 0) {
+    SetGLError(GL_INVALID_VALUE, "glTexStorage3D", "levels < 0");
+    return;
+  }
+  if (width < 0) {
+    SetGLError(GL_INVALID_VALUE, "glTexStorage3D", "width < 0");
+    return;
+  }
+  if (height < 0) {
+    SetGLError(GL_INVALID_VALUE, "glTexStorage3D", "height < 0");
+    return;
+  }
+  if (depth < 0) {
+    SetGLError(GL_INVALID_VALUE, "glTexStorage3D", "depth < 0");
+    return;
+  }
+  helper_->TexStorage3D(target, levels, internalFormat, width, height, depth);
+  CheckGLError();
+}
+
 void GLES2Implementation::Uniform1f(GLint location, GLfloat x) {
   GPU_CLIENT_SINGLE_THREAD_CHECK();
   GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform1f(" << location << ", "
@@ -1299,6 +1412,33 @@
   CheckGLError();
 }
 
+void GLES2Implementation::Uniform1ui(GLint location, GLuint x) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform1ui(" << location << ", "
+                     << x << ")");
+  helper_->Uniform1ui(location, x);
+  CheckGLError();
+}
+
+void GLES2Implementation::Uniform1uiv(GLint location,
+                                      GLsizei count,
+                                      const GLuint* v) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform1uiv(" << location << ", "
+                     << count << ", " << static_cast<const void*>(v) << ")");
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (GLsizei i = 0; i < count; ++i) {
+      GPU_CLIENT_LOG("  " << i << ": " << v[0 + i * 1]);
+    }
+  });
+  if (count < 0) {
+    SetGLError(GL_INVALID_VALUE, "glUniform1uiv", "count < 0");
+    return;
+  }
+  helper_->Uniform1uivImmediate(location, count, v);
+  CheckGLError();
+}
+
 void GLES2Implementation::Uniform2f(GLint location, GLfloat x, GLfloat y) {
   GPU_CLIENT_SINGLE_THREAD_CHECK();
   GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform2f(" << location << ", "
@@ -1353,6 +1493,33 @@
   CheckGLError();
 }
 
+void GLES2Implementation::Uniform2ui(GLint location, GLuint x, GLuint y) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform2ui(" << location << ", "
+                     << x << ", " << y << ")");
+  helper_->Uniform2ui(location, x, y);
+  CheckGLError();
+}
+
+void GLES2Implementation::Uniform2uiv(GLint location,
+                                      GLsizei count,
+                                      const GLuint* v) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform2uiv(" << location << ", "
+                     << count << ", " << static_cast<const void*>(v) << ")");
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (GLsizei i = 0; i < count; ++i) {
+      GPU_CLIENT_LOG("  " << i << ": " << v[0 + i * 2] << ", " << v[1 + i * 2]);
+    }
+  });
+  if (count < 0) {
+    SetGLError(GL_INVALID_VALUE, "glUniform2uiv", "count < 0");
+    return;
+  }
+  helper_->Uniform2uivImmediate(location, count, v);
+  CheckGLError();
+}
+
 void GLES2Implementation::Uniform3f(GLint location,
                                     GLfloat x,
                                     GLfloat y,
@@ -1412,6 +1579,37 @@
   CheckGLError();
 }
 
+void GLES2Implementation::Uniform3ui(GLint location,
+                                     GLuint x,
+                                     GLuint y,
+                                     GLuint z) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform3ui(" << location << ", "
+                     << x << ", " << y << ", " << z << ")");
+  helper_->Uniform3ui(location, x, y, z);
+  CheckGLError();
+}
+
+void GLES2Implementation::Uniform3uiv(GLint location,
+                                      GLsizei count,
+                                      const GLuint* v) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform3uiv(" << location << ", "
+                     << count << ", " << static_cast<const void*>(v) << ")");
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (GLsizei i = 0; i < count; ++i) {
+      GPU_CLIENT_LOG("  " << i << ": " << v[0 + i * 3] << ", " << v[1 + i * 3]
+                          << ", " << v[2 + i * 3]);
+    }
+  });
+  if (count < 0) {
+    SetGLError(GL_INVALID_VALUE, "glUniform3uiv", "count < 0");
+    return;
+  }
+  helper_->Uniform3uivImmediate(location, count, v);
+  CheckGLError();
+}
+
 void GLES2Implementation::Uniform4f(GLint location,
                                     GLfloat x,
                                     GLfloat y,
@@ -1476,6 +1674,38 @@
   CheckGLError();
 }
 
+void GLES2Implementation::Uniform4ui(GLint location,
+                                     GLuint x,
+                                     GLuint y,
+                                     GLuint z,
+                                     GLuint w) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform4ui(" << location << ", "
+                     << x << ", " << y << ", " << z << ", " << w << ")");
+  helper_->Uniform4ui(location, x, y, z, w);
+  CheckGLError();
+}
+
+void GLES2Implementation::Uniform4uiv(GLint location,
+                                      GLsizei count,
+                                      const GLuint* v) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniform4uiv(" << location << ", "
+                     << count << ", " << static_cast<const void*>(v) << ")");
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (GLsizei i = 0; i < count; ++i) {
+      GPU_CLIENT_LOG("  " << i << ": " << v[0 + i * 4] << ", " << v[1 + i * 4]
+                          << ", " << v[2 + i * 4] << ", " << v[3 + i * 4]);
+    }
+  });
+  if (count < 0) {
+    SetGLError(GL_INVALID_VALUE, "glUniform4uiv", "count < 0");
+    return;
+  }
+  helper_->Uniform4uivImmediate(location, count, v);
+  CheckGLError();
+}
+
 void GLES2Implementation::UniformMatrix2fv(GLint location,
                                            GLsizei count,
                                            GLboolean transpose,
@@ -1505,6 +1735,67 @@
   CheckGLError();
 }
 
+void GLES2Implementation::UniformMatrix2x3fv(GLint location,
+                                             GLsizei count,
+                                             GLboolean transpose,
+                                             const GLfloat* value) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniformMatrix2x3fv(" << location
+                     << ", " << count << ", "
+                     << GLES2Util::GetStringBool(transpose) << ", "
+                     << static_cast<const void*>(value) << ")");
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (GLsizei i = 0; i < count; ++i) {
+      GPU_CLIENT_LOG("  " << i << ": " << value[0 + i * 6] << ", "
+                          << value[1 + i * 6] << ", " << value[2 + i * 6]
+                          << ", " << value[3 + i * 6] << ", "
+                          << value[4 + i * 6] << ", " << value[5 + i * 6]);
+    }
+  });
+  if (count < 0) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix2x3fv", "count < 0");
+    return;
+  }
+  if (transpose != false) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix2x3fv",
+               "transpose GL_INVALID_VALUE");
+    return;
+  }
+  helper_->UniformMatrix2x3fvImmediate(location, count, value);
+  CheckGLError();
+}
+
+void GLES2Implementation::UniformMatrix2x4fv(GLint location,
+                                             GLsizei count,
+                                             GLboolean transpose,
+                                             const GLfloat* value) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniformMatrix2x4fv(" << location
+                     << ", " << count << ", "
+                     << GLES2Util::GetStringBool(transpose) << ", "
+                     << static_cast<const void*>(value) << ")");
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (GLsizei i = 0; i < count; ++i) {
+      GPU_CLIENT_LOG(
+          "  " << i << ": " << value[0 + i * 8] << ", " << value[1 + i * 8]
+               << ", " << value[2 + i * 8] << ", " << value[3 + i * 8] << ", "
+               << value[4 + i * 8] << ", " << value[5 + i * 8] << ", "
+               << value[6 + i * 8] << ", " << value[7 + i * 8]);
+    }
+  });
+  if (count < 0) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix2x4fv", "count < 0");
+    return;
+  }
+  if (transpose != false) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix2x4fv",
+               "transpose GL_INVALID_VALUE");
+    return;
+  }
+  helper_->UniformMatrix2x4fvImmediate(location, count, value);
+  CheckGLError();
+}
+
 void GLES2Implementation::UniformMatrix3fv(GLint location,
                                            GLsizei count,
                                            GLboolean transpose,
@@ -1537,6 +1828,69 @@
   CheckGLError();
 }
 
+void GLES2Implementation::UniformMatrix3x2fv(GLint location,
+                                             GLsizei count,
+                                             GLboolean transpose,
+                                             const GLfloat* value) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniformMatrix3x2fv(" << location
+                     << ", " << count << ", "
+                     << GLES2Util::GetStringBool(transpose) << ", "
+                     << static_cast<const void*>(value) << ")");
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (GLsizei i = 0; i < count; ++i) {
+      GPU_CLIENT_LOG("  " << i << ": " << value[0 + i * 6] << ", "
+                          << value[1 + i * 6] << ", " << value[2 + i * 6]
+                          << ", " << value[3 + i * 6] << ", "
+                          << value[4 + i * 6] << ", " << value[5 + i * 6]);
+    }
+  });
+  if (count < 0) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix3x2fv", "count < 0");
+    return;
+  }
+  if (transpose != false) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix3x2fv",
+               "transpose GL_INVALID_VALUE");
+    return;
+  }
+  helper_->UniformMatrix3x2fvImmediate(location, count, value);
+  CheckGLError();
+}
+
+void GLES2Implementation::UniformMatrix3x4fv(GLint location,
+                                             GLsizei count,
+                                             GLboolean transpose,
+                                             const GLfloat* value) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniformMatrix3x4fv(" << location
+                     << ", " << count << ", "
+                     << GLES2Util::GetStringBool(transpose) << ", "
+                     << static_cast<const void*>(value) << ")");
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (GLsizei i = 0; i < count; ++i) {
+      GPU_CLIENT_LOG(
+          "  " << i << ": " << value[0 + i * 12] << ", " << value[1 + i * 12]
+               << ", " << value[2 + i * 12] << ", " << value[3 + i * 12] << ", "
+               << value[4 + i * 12] << ", " << value[5 + i * 12] << ", "
+               << value[6 + i * 12] << ", " << value[7 + i * 12] << ", "
+               << value[8 + i * 12] << ", " << value[9 + i * 12] << ", "
+               << value[10 + i * 12] << ", " << value[11 + i * 12]);
+    }
+  });
+  if (count < 0) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix3x4fv", "count < 0");
+    return;
+  }
+  if (transpose != false) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix3x4fv",
+               "transpose GL_INVALID_VALUE");
+    return;
+  }
+  helper_->UniformMatrix3x4fvImmediate(location, count, value);
+  CheckGLError();
+}
+
 void GLES2Implementation::UniformMatrix4fv(GLint location,
                                            GLsizei count,
                                            GLboolean transpose,
@@ -1572,6 +1926,70 @@
   CheckGLError();
 }
 
+void GLES2Implementation::UniformMatrix4x2fv(GLint location,
+                                             GLsizei count,
+                                             GLboolean transpose,
+                                             const GLfloat* value) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniformMatrix4x2fv(" << location
+                     << ", " << count << ", "
+                     << GLES2Util::GetStringBool(transpose) << ", "
+                     << static_cast<const void*>(value) << ")");
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (GLsizei i = 0; i < count; ++i) {
+      GPU_CLIENT_LOG(
+          "  " << i << ": " << value[0 + i * 8] << ", " << value[1 + i * 8]
+               << ", " << value[2 + i * 8] << ", " << value[3 + i * 8] << ", "
+               << value[4 + i * 8] << ", " << value[5 + i * 8] << ", "
+               << value[6 + i * 8] << ", " << value[7 + i * 8]);
+    }
+  });
+  if (count < 0) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix4x2fv", "count < 0");
+    return;
+  }
+  if (transpose != false) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix4x2fv",
+               "transpose GL_INVALID_VALUE");
+    return;
+  }
+  helper_->UniformMatrix4x2fvImmediate(location, count, value);
+  CheckGLError();
+}
+
+void GLES2Implementation::UniformMatrix4x3fv(GLint location,
+                                             GLsizei count,
+                                             GLboolean transpose,
+                                             const GLfloat* value) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUniformMatrix4x3fv(" << location
+                     << ", " << count << ", "
+                     << GLES2Util::GetStringBool(transpose) << ", "
+                     << static_cast<const void*>(value) << ")");
+  GPU_CLIENT_LOG_CODE_BLOCK({
+    for (GLsizei i = 0; i < count; ++i) {
+      GPU_CLIENT_LOG(
+          "  " << i << ": " << value[0 + i * 12] << ", " << value[1 + i * 12]
+               << ", " << value[2 + i * 12] << ", " << value[3 + i * 12] << ", "
+               << value[4 + i * 12] << ", " << value[5 + i * 12] << ", "
+               << value[6 + i * 12] << ", " << value[7 + i * 12] << ", "
+               << value[8 + i * 12] << ", " << value[9 + i * 12] << ", "
+               << value[10 + i * 12] << ", " << value[11 + i * 12]);
+    }
+  });
+  if (count < 0) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix4x3fv", "count < 0");
+    return;
+  }
+  if (transpose != false) {
+    SetGLError(GL_INVALID_VALUE, "glUniformMatrix4x3fv",
+               "transpose GL_INVALID_VALUE");
+    return;
+  }
+  helper_->UniformMatrix4x3fvImmediate(location, count, value);
+  CheckGLError();
+}
+
 void GLES2Implementation::UseProgram(GLuint program) {
   GPU_CLIENT_SINGLE_THREAD_CHECK();
   GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glUseProgram(" << program << ")");
@@ -1670,6 +2088,51 @@
   CheckGLError();
 }
 
+void GLES2Implementation::VertexAttribI4i(GLuint indx,
+                                          GLint x,
+                                          GLint y,
+                                          GLint z,
+                                          GLint w) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttribI4i(" << indx << ", "
+                     << x << ", " << y << ", " << z << ", " << w << ")");
+  helper_->VertexAttribI4i(indx, x, y, z, w);
+  CheckGLError();
+}
+
+void GLES2Implementation::VertexAttribI4iv(GLuint indx, const GLint* values) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttribI4iv(" << indx
+                     << ", " << static_cast<const void*>(values) << ")");
+  GPU_CLIENT_LOG("values: " << values[0] << ", " << values[1] << ", "
+                            << values[2] << ", " << values[3]);
+  helper_->VertexAttribI4ivImmediate(indx, values);
+  CheckGLError();
+}
+
+void GLES2Implementation::VertexAttribI4ui(GLuint indx,
+                                           GLuint x,
+                                           GLuint y,
+                                           GLuint z,
+                                           GLuint w) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttribI4ui(" << indx
+                     << ", " << x << ", " << y << ", " << z << ", " << w
+                     << ")");
+  helper_->VertexAttribI4ui(indx, x, y, z, w);
+  CheckGLError();
+}
+
+void GLES2Implementation::VertexAttribI4uiv(GLuint indx, const GLuint* values) {
+  GPU_CLIENT_SINGLE_THREAD_CHECK();
+  GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glVertexAttribI4uiv(" << indx
+                     << ", " << static_cast<const void*>(values) << ")");
+  GPU_CLIENT_LOG("values: " << values[0] << ", " << values[1] << ", "
+                            << values[2] << ", " << values[3]);
+  helper_->VertexAttribI4uivImmediate(indx, values);
+  CheckGLError();
+}
+
 void GLES2Implementation::Viewport(GLint x,
                                    GLint y,
                                    GLsizei width,
diff --git a/gpu/command_buffer/client/gles2_implementation_unittest.cc b/gpu/command_buffer/client/gles2_implementation_unittest.cc
index 87aaeb1..d772b8e 100644
--- a/gpu/command_buffer/client/gles2_implementation_unittest.cc
+++ b/gpu/command_buffer/client/gles2_implementation_unittest.cc
@@ -10,6 +10,7 @@
 
 #include <GLES2/gl2ext.h>
 #include <GLES2/gl2extchromium.h>
+#include <GLES3/gl3.h>
 #include "base/compiler_specific.h"
 #include "gpu/command_buffer/client/client_test_helper.h"
 #include "gpu/command_buffer/client/program_info_manager.h"
diff --git a/gpu/command_buffer/client/gles2_implementation_unittest_autogen.h b/gpu/command_buffer/client/gles2_implementation_unittest_autogen.h
index 74a438c..f48e9ab 100644
--- a/gpu/command_buffer/client/gles2_implementation_unittest_autogen.h
+++ b/gpu/command_buffer/client/gles2_implementation_unittest_autogen.h
@@ -209,6 +209,17 @@
 // TODO: Implement unit test for CompressedTexImage2D
 // TODO: Implement unit test for CompressedTexSubImage2D
 
+TEST_F(GLES2ImplementationTest, CopyBufferSubData) {
+  struct Cmds {
+    cmds::CopyBufferSubData cmd;
+  };
+  Cmds expected;
+  expected.cmd.Init(GL_ARRAY_BUFFER, GL_ARRAY_BUFFER, 3, 4, 5);
+
+  gl_->CopyBufferSubData(GL_ARRAY_BUFFER, GL_ARRAY_BUFFER, 3, 4, 5);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
 TEST_F(GLES2ImplementationTest, CopyTexImage2D) {
   struct Cmds {
     cmds::CopyTexImage2D cmd;
@@ -445,6 +456,17 @@
   EXPECT_EQ(GL_INVALID_VALUE, CheckError());
 }
 
+TEST_F(GLES2ImplementationTest, FramebufferTextureLayer) {
+  struct Cmds {
+    cmds::FramebufferTextureLayer cmd;
+  };
+  Cmds expected;
+  expected.cmd.Init(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, 3, 4, 5);
+
+  gl_->FramebufferTextureLayer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, 3, 4, 5);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
 TEST_F(GLES2ImplementationTest, FrontFace) {
   struct Cmds {
     cmds::FrontFace cmd;
@@ -632,6 +654,24 @@
   EXPECT_EQ(static_cast<Result::Type>(1), result);
 }
 
+TEST_F(GLES2ImplementationTest, GetInternalformativ) {
+  struct Cmds {
+    cmds::GetInternalformativ cmd;
+  };
+  typedef cmds::GetInternalformativ::Result Result;
+  Result::Type result = 0;
+  Cmds expected;
+  ExpectedMemoryInfo result1 = GetExpectedResultMemory(4);
+  expected.cmd.Init(123, GL_RGBA4, GL_RENDERBUFFER_RED_SIZE, 4, result1.id,
+                    result1.offset);
+  EXPECT_CALL(*command_buffer(), OnFlush())
+      .WillOnce(SetMemory(result1.ptr, SizedResultHelper<Result::Type>(1)))
+      .RetiresOnSaturation();
+  gl_->GetInternalformativ(123, GL_RGBA4, GL_RENDERBUFFER_RED_SIZE, 4, &result);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+  EXPECT_EQ(static_cast<Result::Type>(1), result);
+}
+
 TEST_F(GLES2ImplementationTest, GetProgramiv) {
   struct Cmds {
     cmds::GetProgramiv cmd;
@@ -1111,6 +1151,17 @@
   EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
 }
 
+TEST_F(GLES2ImplementationTest, TexStorage3D) {
+  struct Cmds {
+    cmds::TexStorage3D cmd;
+  };
+  Cmds expected;
+  expected.cmd.Init(GL_TEXTURE_3D, 2, GL_RGB565, 4, 5, 6);
+
+  gl_->TexStorage3D(GL_TEXTURE_3D, 2, GL_RGB565, 4, 5, 6);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
 TEST_F(GLES2ImplementationTest, Uniform1f) {
   struct Cmds {
     cmds::Uniform1f cmd;
@@ -1169,6 +1220,35 @@
   EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
 }
 
+TEST_F(GLES2ImplementationTest, Uniform1ui) {
+  struct Cmds {
+    cmds::Uniform1ui cmd;
+  };
+  Cmds expected;
+  expected.cmd.Init(1, 2);
+
+  gl_->Uniform1ui(1, 2);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, Uniform1uiv) {
+  GLuint data[2][1] = {{0}};
+  struct Cmds {
+    cmds::Uniform1uivImmediate cmd;
+    GLuint data[2][1];
+  };
+
+  Cmds expected;
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 1; ++jj) {
+      data[ii][jj] = static_cast<GLuint>(ii * 1 + jj);
+    }
+  }
+  expected.cmd.Init(1, 2, &data[0][0]);
+  gl_->Uniform1uiv(1, 2, &data[0][0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
 TEST_F(GLES2ImplementationTest, Uniform2f) {
   struct Cmds {
     cmds::Uniform2f cmd;
@@ -1227,6 +1307,35 @@
   EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
 }
 
+TEST_F(GLES2ImplementationTest, Uniform2ui) {
+  struct Cmds {
+    cmds::Uniform2ui cmd;
+  };
+  Cmds expected;
+  expected.cmd.Init(1, 2, 3);
+
+  gl_->Uniform2ui(1, 2, 3);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, Uniform2uiv) {
+  GLuint data[2][2] = {{0}};
+  struct Cmds {
+    cmds::Uniform2uivImmediate cmd;
+    GLuint data[2][2];
+  };
+
+  Cmds expected;
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 2; ++jj) {
+      data[ii][jj] = static_cast<GLuint>(ii * 2 + jj);
+    }
+  }
+  expected.cmd.Init(1, 2, &data[0][0]);
+  gl_->Uniform2uiv(1, 2, &data[0][0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
 TEST_F(GLES2ImplementationTest, Uniform3f) {
   struct Cmds {
     cmds::Uniform3f cmd;
@@ -1285,6 +1394,35 @@
   EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
 }
 
+TEST_F(GLES2ImplementationTest, Uniform3ui) {
+  struct Cmds {
+    cmds::Uniform3ui cmd;
+  };
+  Cmds expected;
+  expected.cmd.Init(1, 2, 3, 4);
+
+  gl_->Uniform3ui(1, 2, 3, 4);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, Uniform3uiv) {
+  GLuint data[2][3] = {{0}};
+  struct Cmds {
+    cmds::Uniform3uivImmediate cmd;
+    GLuint data[2][3];
+  };
+
+  Cmds expected;
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 3; ++jj) {
+      data[ii][jj] = static_cast<GLuint>(ii * 3 + jj);
+    }
+  }
+  expected.cmd.Init(1, 2, &data[0][0]);
+  gl_->Uniform3uiv(1, 2, &data[0][0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
 TEST_F(GLES2ImplementationTest, Uniform4f) {
   struct Cmds {
     cmds::Uniform4f cmd;
@@ -1343,6 +1481,35 @@
   EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
 }
 
+TEST_F(GLES2ImplementationTest, Uniform4ui) {
+  struct Cmds {
+    cmds::Uniform4ui cmd;
+  };
+  Cmds expected;
+  expected.cmd.Init(1, 2, 3, 4, 5);
+
+  gl_->Uniform4ui(1, 2, 3, 4, 5);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, Uniform4uiv) {
+  GLuint data[2][4] = {{0}};
+  struct Cmds {
+    cmds::Uniform4uivImmediate cmd;
+    GLuint data[2][4];
+  };
+
+  Cmds expected;
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 4; ++jj) {
+      data[ii][jj] = static_cast<GLuint>(ii * 4 + jj);
+    }
+  }
+  expected.cmd.Init(1, 2, &data[0][0]);
+  gl_->Uniform4uiv(1, 2, &data[0][0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
 TEST_F(GLES2ImplementationTest, UniformMatrix2fv) {
   GLfloat data[2][4] = {{0}};
   struct Cmds {
@@ -1373,6 +1540,66 @@
   EXPECT_EQ(GL_INVALID_VALUE, CheckError());
 }
 
+TEST_F(GLES2ImplementationTest, UniformMatrix2x3fv) {
+  GLfloat data[2][6] = {{0}};
+  struct Cmds {
+    cmds::UniformMatrix2x3fvImmediate cmd;
+    GLfloat data[2][6];
+  };
+
+  Cmds expected;
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 6; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 6 + jj);
+    }
+  }
+  expected.cmd.Init(1, 2, &data[0][0]);
+  gl_->UniformMatrix2x3fv(1, 2, false, &data[0][0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, UniformMatrix2x3fvInvalidConstantArg2) {
+  GLfloat data[2][6] = {{0}};
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 6; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 6 + jj);
+    }
+  }
+  gl_->UniformMatrix2x3fv(1, 2, true, &data[0][0]);
+  EXPECT_TRUE(NoCommandsWritten());
+  EXPECT_EQ(GL_INVALID_VALUE, CheckError());
+}
+
+TEST_F(GLES2ImplementationTest, UniformMatrix2x4fv) {
+  GLfloat data[2][8] = {{0}};
+  struct Cmds {
+    cmds::UniformMatrix2x4fvImmediate cmd;
+    GLfloat data[2][8];
+  };
+
+  Cmds expected;
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 8; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 8 + jj);
+    }
+  }
+  expected.cmd.Init(1, 2, &data[0][0]);
+  gl_->UniformMatrix2x4fv(1, 2, false, &data[0][0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, UniformMatrix2x4fvInvalidConstantArg2) {
+  GLfloat data[2][8] = {{0}};
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 8; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 8 + jj);
+    }
+  }
+  gl_->UniformMatrix2x4fv(1, 2, true, &data[0][0]);
+  EXPECT_TRUE(NoCommandsWritten());
+  EXPECT_EQ(GL_INVALID_VALUE, CheckError());
+}
+
 TEST_F(GLES2ImplementationTest, UniformMatrix3fv) {
   GLfloat data[2][9] = {{0}};
   struct Cmds {
@@ -1403,6 +1630,66 @@
   EXPECT_EQ(GL_INVALID_VALUE, CheckError());
 }
 
+TEST_F(GLES2ImplementationTest, UniformMatrix3x2fv) {
+  GLfloat data[2][6] = {{0}};
+  struct Cmds {
+    cmds::UniformMatrix3x2fvImmediate cmd;
+    GLfloat data[2][6];
+  };
+
+  Cmds expected;
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 6; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 6 + jj);
+    }
+  }
+  expected.cmd.Init(1, 2, &data[0][0]);
+  gl_->UniformMatrix3x2fv(1, 2, false, &data[0][0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, UniformMatrix3x2fvInvalidConstantArg2) {
+  GLfloat data[2][6] = {{0}};
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 6; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 6 + jj);
+    }
+  }
+  gl_->UniformMatrix3x2fv(1, 2, true, &data[0][0]);
+  EXPECT_TRUE(NoCommandsWritten());
+  EXPECT_EQ(GL_INVALID_VALUE, CheckError());
+}
+
+TEST_F(GLES2ImplementationTest, UniformMatrix3x4fv) {
+  GLfloat data[2][12] = {{0}};
+  struct Cmds {
+    cmds::UniformMatrix3x4fvImmediate cmd;
+    GLfloat data[2][12];
+  };
+
+  Cmds expected;
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 12; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 12 + jj);
+    }
+  }
+  expected.cmd.Init(1, 2, &data[0][0]);
+  gl_->UniformMatrix3x4fv(1, 2, false, &data[0][0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, UniformMatrix3x4fvInvalidConstantArg2) {
+  GLfloat data[2][12] = {{0}};
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 12; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 12 + jj);
+    }
+  }
+  gl_->UniformMatrix3x4fv(1, 2, true, &data[0][0]);
+  EXPECT_TRUE(NoCommandsWritten());
+  EXPECT_EQ(GL_INVALID_VALUE, CheckError());
+}
+
 TEST_F(GLES2ImplementationTest, UniformMatrix4fv) {
   GLfloat data[2][16] = {{0}};
   struct Cmds {
@@ -1433,6 +1720,66 @@
   EXPECT_EQ(GL_INVALID_VALUE, CheckError());
 }
 
+TEST_F(GLES2ImplementationTest, UniformMatrix4x2fv) {
+  GLfloat data[2][8] = {{0}};
+  struct Cmds {
+    cmds::UniformMatrix4x2fvImmediate cmd;
+    GLfloat data[2][8];
+  };
+
+  Cmds expected;
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 8; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 8 + jj);
+    }
+  }
+  expected.cmd.Init(1, 2, &data[0][0]);
+  gl_->UniformMatrix4x2fv(1, 2, false, &data[0][0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, UniformMatrix4x2fvInvalidConstantArg2) {
+  GLfloat data[2][8] = {{0}};
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 8; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 8 + jj);
+    }
+  }
+  gl_->UniformMatrix4x2fv(1, 2, true, &data[0][0]);
+  EXPECT_TRUE(NoCommandsWritten());
+  EXPECT_EQ(GL_INVALID_VALUE, CheckError());
+}
+
+TEST_F(GLES2ImplementationTest, UniformMatrix4x3fv) {
+  GLfloat data[2][12] = {{0}};
+  struct Cmds {
+    cmds::UniformMatrix4x3fvImmediate cmd;
+    GLfloat data[2][12];
+  };
+
+  Cmds expected;
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 12; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 12 + jj);
+    }
+  }
+  expected.cmd.Init(1, 2, &data[0][0]);
+  gl_->UniformMatrix4x3fv(1, 2, false, &data[0][0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, UniformMatrix4x3fvInvalidConstantArg2) {
+  GLfloat data[2][12] = {{0}};
+  for (int ii = 0; ii < 2; ++ii) {
+    for (int jj = 0; jj < 12; ++jj) {
+      data[ii][jj] = static_cast<GLfloat>(ii * 12 + jj);
+    }
+  }
+  gl_->UniformMatrix4x3fv(1, 2, true, &data[0][0]);
+  EXPECT_TRUE(NoCommandsWritten());
+  EXPECT_EQ(GL_INVALID_VALUE, CheckError());
+}
+
 TEST_F(GLES2ImplementationTest, UseProgram) {
   struct Cmds {
     cmds::UseProgram cmd;
@@ -1566,6 +1913,60 @@
   EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
 }
 
+TEST_F(GLES2ImplementationTest, VertexAttribI4i) {
+  struct Cmds {
+    cmds::VertexAttribI4i cmd;
+  };
+  Cmds expected;
+  expected.cmd.Init(1, 2, 3, 4, 5);
+
+  gl_->VertexAttribI4i(1, 2, 3, 4, 5);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, VertexAttribI4iv) {
+  GLint data[4] = {0};
+  struct Cmds {
+    cmds::VertexAttribI4ivImmediate cmd;
+    GLint data[4];
+  };
+
+  for (int jj = 0; jj < 4; ++jj) {
+    data[jj] = static_cast<GLint>(jj);
+  }
+  Cmds expected;
+  expected.cmd.Init(1, &data[0]);
+  gl_->VertexAttribI4iv(1, &data[0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, VertexAttribI4ui) {
+  struct Cmds {
+    cmds::VertexAttribI4ui cmd;
+  };
+  Cmds expected;
+  expected.cmd.Init(1, 2, 3, 4, 5);
+
+  gl_->VertexAttribI4ui(1, 2, 3, 4, 5);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
+TEST_F(GLES2ImplementationTest, VertexAttribI4uiv) {
+  GLuint data[4] = {0};
+  struct Cmds {
+    cmds::VertexAttribI4uivImmediate cmd;
+    GLuint data[4];
+  };
+
+  for (int jj = 0; jj < 4; ++jj) {
+    data[jj] = static_cast<GLuint>(jj);
+  }
+  Cmds expected;
+  expected.cmd.Init(1, &data[0]);
+  gl_->VertexAttribI4uiv(1, &data[0]);
+  EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
+}
+
 TEST_F(GLES2ImplementationTest, Viewport) {
   struct Cmds {
     cmds::Viewport cmd;
diff --git a/gpu/command_buffer/client/gles2_interface_autogen.h b/gpu/command_buffer/client/gles2_interface_autogen.h
index ee4591c..f8c2707 100644
--- a/gpu/command_buffer/client/gles2_interface_autogen.h
+++ b/gpu/command_buffer/client/gles2_interface_autogen.h
@@ -71,6 +71,11 @@
                                      GLenum format,
                                      GLsizei imageSize,
                                      const void* data) = 0;
+virtual void CopyBufferSubData(GLenum readtarget,
+                               GLenum writetarget,
+                               GLintptr readoffset,
+                               GLintptr writeoffset,
+                               GLsizeiptr size) = 0;
 virtual void CopyTexImage2D(GLenum target,
                             GLint level,
                             GLenum internalformat,
@@ -120,6 +125,11 @@
                                   GLenum textarget,
                                   GLuint texture,
                                   GLint level) = 0;
+virtual void FramebufferTextureLayer(GLenum target,
+                                     GLenum attachment,
+                                     GLuint texture,
+                                     GLint level,
+                                     GLint layer) = 0;
 virtual void FrontFace(GLenum mode) = 0;
 virtual void GenBuffers(GLsizei n, GLuint* buffers) = 0;
 virtual void GenerateMipmap(GLenum target) = 0;
@@ -156,6 +166,11 @@
                                                  GLenum pname,
                                                  GLint* params) = 0;
 virtual void GetIntegerv(GLenum pname, GLint* params) = 0;
+virtual void GetInternalformativ(GLenum target,
+                                 GLenum format,
+                                 GLenum pname,
+                                 GLsizei bufSize,
+                                 GLint* params) = 0;
 virtual void GetProgramiv(GLuint program, GLenum pname, GLint* params) = 0;
 virtual void GetProgramInfoLog(GLuint program,
                                GLsizei bufsize,
@@ -256,6 +271,12 @@
 virtual void TexParameteriv(GLenum target,
                             GLenum pname,
                             const GLint* params) = 0;
+virtual void TexStorage3D(GLenum target,
+                          GLsizei levels,
+                          GLenum internalFormat,
+                          GLsizei width,
+                          GLsizei height,
+                          GLsizei depth) = 0;
 virtual void TexSubImage2D(GLenum target,
                            GLint level,
                            GLint xoffset,
@@ -269,14 +290,20 @@
 virtual void Uniform1fv(GLint location, GLsizei count, const GLfloat* v) = 0;
 virtual void Uniform1i(GLint location, GLint x) = 0;
 virtual void Uniform1iv(GLint location, GLsizei count, const GLint* v) = 0;
+virtual void Uniform1ui(GLint location, GLuint x) = 0;
+virtual void Uniform1uiv(GLint location, GLsizei count, const GLuint* v) = 0;
 virtual void Uniform2f(GLint location, GLfloat x, GLfloat y) = 0;
 virtual void Uniform2fv(GLint location, GLsizei count, const GLfloat* v) = 0;
 virtual void Uniform2i(GLint location, GLint x, GLint y) = 0;
 virtual void Uniform2iv(GLint location, GLsizei count, const GLint* v) = 0;
+virtual void Uniform2ui(GLint location, GLuint x, GLuint y) = 0;
+virtual void Uniform2uiv(GLint location, GLsizei count, const GLuint* v) = 0;
 virtual void Uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) = 0;
 virtual void Uniform3fv(GLint location, GLsizei count, const GLfloat* v) = 0;
 virtual void Uniform3i(GLint location, GLint x, GLint y, GLint z) = 0;
 virtual void Uniform3iv(GLint location, GLsizei count, const GLint* v) = 0;
+virtual void Uniform3ui(GLint location, GLuint x, GLuint y, GLuint z) = 0;
+virtual void Uniform3uiv(GLint location, GLsizei count, const GLuint* v) = 0;
 virtual void Uniform4f(GLint location,
                        GLfloat x,
                        GLfloat y,
@@ -285,18 +312,48 @@
 virtual void Uniform4fv(GLint location, GLsizei count, const GLfloat* v) = 0;
 virtual void Uniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) = 0;
 virtual void Uniform4iv(GLint location, GLsizei count, const GLint* v) = 0;
+virtual void Uniform4ui(GLint location,
+                        GLuint x,
+                        GLuint y,
+                        GLuint z,
+                        GLuint w) = 0;
+virtual void Uniform4uiv(GLint location, GLsizei count, const GLuint* v) = 0;
 virtual void UniformMatrix2fv(GLint location,
                               GLsizei count,
                               GLboolean transpose,
                               const GLfloat* value) = 0;
+virtual void UniformMatrix2x3fv(GLint location,
+                                GLsizei count,
+                                GLboolean transpose,
+                                const GLfloat* value) = 0;
+virtual void UniformMatrix2x4fv(GLint location,
+                                GLsizei count,
+                                GLboolean transpose,
+                                const GLfloat* value) = 0;
 virtual void UniformMatrix3fv(GLint location,
                               GLsizei count,
                               GLboolean transpose,
                               const GLfloat* value) = 0;
+virtual void UniformMatrix3x2fv(GLint location,
+                                GLsizei count,
+                                GLboolean transpose,
+                                const GLfloat* value) = 0;
+virtual void UniformMatrix3x4fv(GLint location,
+                                GLsizei count,
+                                GLboolean transpose,
+                                const GLfloat* value) = 0;
 virtual void UniformMatrix4fv(GLint location,
                               GLsizei count,
                               GLboolean transpose,
                               const GLfloat* value) = 0;
+virtual void UniformMatrix4x2fv(GLint location,
+                                GLsizei count,
+                                GLboolean transpose,
+                                const GLfloat* value) = 0;
+virtual void UniformMatrix4x3fv(GLint location,
+                                GLsizei count,
+                                GLboolean transpose,
+                                const GLfloat* value) = 0;
 virtual void UseProgram(GLuint program) = 0;
 virtual void ValidateProgram(GLuint program) = 0;
 virtual void VertexAttrib1f(GLuint indx, GLfloat x) = 0;
@@ -311,6 +368,23 @@
                             GLfloat z,
                             GLfloat w) = 0;
 virtual void VertexAttrib4fv(GLuint indx, const GLfloat* values) = 0;
+virtual void VertexAttribI4i(GLuint indx,
+                             GLint x,
+                             GLint y,
+                             GLint z,
+                             GLint w) = 0;
+virtual void VertexAttribI4iv(GLuint indx, const GLint* values) = 0;
+virtual void VertexAttribI4ui(GLuint indx,
+                              GLuint x,
+                              GLuint y,
+                              GLuint z,
+                              GLuint w) = 0;
+virtual void VertexAttribI4uiv(GLuint indx, const GLuint* values) = 0;
+virtual void VertexAttribIPointer(GLuint indx,
+                                  GLint size,
+                                  GLenum type,
+                                  GLsizei stride,
+                                  const void* ptr) = 0;
 virtual void VertexAttribPointer(GLuint indx,
                                  GLint size,
                                  GLenum type,
diff --git a/gpu/command_buffer/client/gles2_interface_stub_autogen.h b/gpu/command_buffer/client/gles2_interface_stub_autogen.h
index 637c000..5d8a40a 100644
--- a/gpu/command_buffer/client/gles2_interface_stub_autogen.h
+++ b/gpu/command_buffer/client/gles2_interface_stub_autogen.h
@@ -70,6 +70,11 @@
                              GLenum format,
                              GLsizei imageSize,
                              const void* data) override;
+void CopyBufferSubData(GLenum readtarget,
+                       GLenum writetarget,
+                       GLintptr readoffset,
+                       GLintptr writeoffset,
+                       GLsizeiptr size) override;
 void CopyTexImage2D(GLenum target,
                     GLint level,
                     GLenum internalformat,
@@ -119,6 +124,11 @@
                           GLenum textarget,
                           GLuint texture,
                           GLint level) override;
+void FramebufferTextureLayer(GLenum target,
+                             GLenum attachment,
+                             GLuint texture,
+                             GLint level,
+                             GLint layer) override;
 void FrontFace(GLenum mode) override;
 void GenBuffers(GLsizei n, GLuint* buffers) override;
 void GenerateMipmap(GLenum target) override;
@@ -153,6 +163,11 @@
                                          GLenum pname,
                                          GLint* params) override;
 void GetIntegerv(GLenum pname, GLint* params) override;
+void GetInternalformativ(GLenum target,
+                         GLenum format,
+                         GLenum pname,
+                         GLsizei bufSize,
+                         GLint* params) override;
 void GetProgramiv(GLuint program, GLenum pname, GLint* params) override;
 void GetProgramInfoLog(GLuint program,
                        GLsizei bufsize,
@@ -249,6 +264,12 @@
                     const GLfloat* params) override;
 void TexParameteri(GLenum target, GLenum pname, GLint param) override;
 void TexParameteriv(GLenum target, GLenum pname, const GLint* params) override;
+void TexStorage3D(GLenum target,
+                  GLsizei levels,
+                  GLenum internalFormat,
+                  GLsizei width,
+                  GLsizei height,
+                  GLsizei depth) override;
 void TexSubImage2D(GLenum target,
                    GLint level,
                    GLint xoffset,
@@ -262,14 +283,20 @@
 void Uniform1fv(GLint location, GLsizei count, const GLfloat* v) override;
 void Uniform1i(GLint location, GLint x) override;
 void Uniform1iv(GLint location, GLsizei count, const GLint* v) override;
+void Uniform1ui(GLint location, GLuint x) override;
+void Uniform1uiv(GLint location, GLsizei count, const GLuint* v) override;
 void Uniform2f(GLint location, GLfloat x, GLfloat y) override;
 void Uniform2fv(GLint location, GLsizei count, const GLfloat* v) override;
 void Uniform2i(GLint location, GLint x, GLint y) override;
 void Uniform2iv(GLint location, GLsizei count, const GLint* v) override;
+void Uniform2ui(GLint location, GLuint x, GLuint y) override;
+void Uniform2uiv(GLint location, GLsizei count, const GLuint* v) override;
 void Uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) override;
 void Uniform3fv(GLint location, GLsizei count, const GLfloat* v) override;
 void Uniform3i(GLint location, GLint x, GLint y, GLint z) override;
 void Uniform3iv(GLint location, GLsizei count, const GLint* v) override;
+void Uniform3ui(GLint location, GLuint x, GLuint y, GLuint z) override;
+void Uniform3uiv(GLint location, GLsizei count, const GLuint* v) override;
 void Uniform4f(GLint location,
                GLfloat x,
                GLfloat y,
@@ -278,18 +305,48 @@
 void Uniform4fv(GLint location, GLsizei count, const GLfloat* v) override;
 void Uniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) override;
 void Uniform4iv(GLint location, GLsizei count, const GLint* v) override;
+void Uniform4ui(GLint location,
+                GLuint x,
+                GLuint y,
+                GLuint z,
+                GLuint w) override;
+void Uniform4uiv(GLint location, GLsizei count, const GLuint* v) override;
 void UniformMatrix2fv(GLint location,
                       GLsizei count,
                       GLboolean transpose,
                       const GLfloat* value) override;
+void UniformMatrix2x3fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+void UniformMatrix2x4fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
 void UniformMatrix3fv(GLint location,
                       GLsizei count,
                       GLboolean transpose,
                       const GLfloat* value) override;
+void UniformMatrix3x2fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+void UniformMatrix3x4fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
 void UniformMatrix4fv(GLint location,
                       GLsizei count,
                       GLboolean transpose,
                       const GLfloat* value) override;
+void UniformMatrix4x2fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+void UniformMatrix4x3fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
 void UseProgram(GLuint program) override;
 void ValidateProgram(GLuint program) override;
 void VertexAttrib1f(GLuint indx, GLfloat x) override;
@@ -304,6 +361,19 @@
                     GLfloat z,
                     GLfloat w) override;
 void VertexAttrib4fv(GLuint indx, const GLfloat* values) override;
+void VertexAttribI4i(GLuint indx, GLint x, GLint y, GLint z, GLint w) override;
+void VertexAttribI4iv(GLuint indx, const GLint* values) override;
+void VertexAttribI4ui(GLuint indx,
+                      GLuint x,
+                      GLuint y,
+                      GLuint z,
+                      GLuint w) override;
+void VertexAttribI4uiv(GLuint indx, const GLuint* values) override;
+void VertexAttribIPointer(GLuint indx,
+                          GLint size,
+                          GLenum type,
+                          GLsizei stride,
+                          const void* ptr) override;
 void VertexAttribPointer(GLuint indx,
                          GLint size,
                          GLenum type,
diff --git a/gpu/command_buffer/client/gles2_interface_stub_impl_autogen.h b/gpu/command_buffer/client/gles2_interface_stub_impl_autogen.h
index 5a986e9..b4792ca 100644
--- a/gpu/command_buffer/client/gles2_interface_stub_impl_autogen.h
+++ b/gpu/command_buffer/client/gles2_interface_stub_impl_autogen.h
@@ -99,6 +99,12 @@
                                                  GLsizei /* imageSize */,
                                                  const void* /* data */) {
 }
+void GLES2InterfaceStub::CopyBufferSubData(GLenum /* readtarget */,
+                                           GLenum /* writetarget */,
+                                           GLintptr /* readoffset */,
+                                           GLintptr /* writeoffset */,
+                                           GLsizeiptr /* size */) {
+}
 void GLES2InterfaceStub::CopyTexImage2D(GLenum /* target */,
                                         GLint /* level */,
                                         GLenum /* internalformat */,
@@ -185,6 +191,12 @@
                                               GLuint /* texture */,
                                               GLint /* level */) {
 }
+void GLES2InterfaceStub::FramebufferTextureLayer(GLenum /* target */,
+                                                 GLenum /* attachment */,
+                                                 GLuint /* texture */,
+                                                 GLint /* level */,
+                                                 GLint /* layer */) {
+}
 void GLES2InterfaceStub::FrontFace(GLenum /* mode */) {
 }
 void GLES2InterfaceStub::GenBuffers(GLsizei /* n */, GLuint* /* buffers */) {
@@ -244,6 +256,12 @@
 }
 void GLES2InterfaceStub::GetIntegerv(GLenum /* pname */, GLint* /* params */) {
 }
+void GLES2InterfaceStub::GetInternalformativ(GLenum /* target */,
+                                             GLenum /* format */,
+                                             GLenum /* pname */,
+                                             GLsizei /* bufSize */,
+                                             GLint* /* params */) {
+}
 void GLES2InterfaceStub::GetProgramiv(GLuint /* program */,
                                       GLenum /* pname */,
                                       GLint* /* params */) {
@@ -430,6 +448,13 @@
                                         GLenum /* pname */,
                                         const GLint* /* params */) {
 }
+void GLES2InterfaceStub::TexStorage3D(GLenum /* target */,
+                                      GLsizei /* levels */,
+                                      GLenum /* internalFormat */,
+                                      GLsizei /* width */,
+                                      GLsizei /* height */,
+                                      GLsizei /* depth */) {
+}
 void GLES2InterfaceStub::TexSubImage2D(GLenum /* target */,
                                        GLint /* level */,
                                        GLint /* xoffset */,
@@ -452,6 +477,12 @@
                                     GLsizei /* count */,
                                     const GLint* /* v */) {
 }
+void GLES2InterfaceStub::Uniform1ui(GLint /* location */, GLuint /* x */) {
+}
+void GLES2InterfaceStub::Uniform1uiv(GLint /* location */,
+                                     GLsizei /* count */,
+                                     const GLuint* /* v */) {
+}
 void GLES2InterfaceStub::Uniform2f(GLint /* location */,
                                    GLfloat /* x */,
                                    GLfloat /* y */) {
@@ -468,6 +499,14 @@
                                     GLsizei /* count */,
                                     const GLint* /* v */) {
 }
+void GLES2InterfaceStub::Uniform2ui(GLint /* location */,
+                                    GLuint /* x */,
+                                    GLuint /* y */) {
+}
+void GLES2InterfaceStub::Uniform2uiv(GLint /* location */,
+                                     GLsizei /* count */,
+                                     const GLuint* /* v */) {
+}
 void GLES2InterfaceStub::Uniform3f(GLint /* location */,
                                    GLfloat /* x */,
                                    GLfloat /* y */,
@@ -486,6 +525,15 @@
                                     GLsizei /* count */,
                                     const GLint* /* v */) {
 }
+void GLES2InterfaceStub::Uniform3ui(GLint /* location */,
+                                    GLuint /* x */,
+                                    GLuint /* y */,
+                                    GLuint /* z */) {
+}
+void GLES2InterfaceStub::Uniform3uiv(GLint /* location */,
+                                     GLsizei /* count */,
+                                     const GLuint* /* v */) {
+}
 void GLES2InterfaceStub::Uniform4f(GLint /* location */,
                                    GLfloat /* x */,
                                    GLfloat /* y */,
@@ -506,21 +554,61 @@
                                     GLsizei /* count */,
                                     const GLint* /* v */) {
 }
+void GLES2InterfaceStub::Uniform4ui(GLint /* location */,
+                                    GLuint /* x */,
+                                    GLuint /* y */,
+                                    GLuint /* z */,
+                                    GLuint /* w */) {
+}
+void GLES2InterfaceStub::Uniform4uiv(GLint /* location */,
+                                     GLsizei /* count */,
+                                     const GLuint* /* v */) {
+}
 void GLES2InterfaceStub::UniformMatrix2fv(GLint /* location */,
                                           GLsizei /* count */,
                                           GLboolean /* transpose */,
                                           const GLfloat* /* value */) {
 }
+void GLES2InterfaceStub::UniformMatrix2x3fv(GLint /* location */,
+                                            GLsizei /* count */,
+                                            GLboolean /* transpose */,
+                                            const GLfloat* /* value */) {
+}
+void GLES2InterfaceStub::UniformMatrix2x4fv(GLint /* location */,
+                                            GLsizei /* count */,
+                                            GLboolean /* transpose */,
+                                            const GLfloat* /* value */) {
+}
 void GLES2InterfaceStub::UniformMatrix3fv(GLint /* location */,
                                           GLsizei /* count */,
                                           GLboolean /* transpose */,
                                           const GLfloat* /* value */) {
 }
+void GLES2InterfaceStub::UniformMatrix3x2fv(GLint /* location */,
+                                            GLsizei /* count */,
+                                            GLboolean /* transpose */,
+                                            const GLfloat* /* value */) {
+}
+void GLES2InterfaceStub::UniformMatrix3x4fv(GLint /* location */,
+                                            GLsizei /* count */,
+                                            GLboolean /* transpose */,
+                                            const GLfloat* /* value */) {
+}
 void GLES2InterfaceStub::UniformMatrix4fv(GLint /* location */,
                                           GLsizei /* count */,
                                           GLboolean /* transpose */,
                                           const GLfloat* /* value */) {
 }
+void GLES2InterfaceStub::UniformMatrix4x2fv(GLint /* location */,
+                                            GLsizei /* count */,
+                                            GLboolean /* transpose */,
+                                            const GLfloat* /* value */) {
+}
+void GLES2InterfaceStub::UniformMatrix4x3fv(GLint /* location */,
+                                            GLsizei /* count */,
+                                            GLboolean /* transpose */,
+                                            const GLfloat* /* value */) {
+}
 void GLES2InterfaceStub::UseProgram(GLuint /* program */) {
 }
 void GLES2InterfaceStub::ValidateProgram(GLuint /* program */) {
@@ -554,6 +642,30 @@
 void GLES2InterfaceStub::VertexAttrib4fv(GLuint /* indx */,
                                          const GLfloat* /* values */) {
 }
+void GLES2InterfaceStub::VertexAttribI4i(GLuint /* indx */,
+                                         GLint /* x */,
+                                         GLint /* y */,
+                                         GLint /* z */,
+                                         GLint /* w */) {
+}
+void GLES2InterfaceStub::VertexAttribI4iv(GLuint /* indx */,
+                                          const GLint* /* values */) {
+}
+void GLES2InterfaceStub::VertexAttribI4ui(GLuint /* indx */,
+                                          GLuint /* x */,
+                                          GLuint /* y */,
+                                          GLuint /* z */,
+                                          GLuint /* w */) {
+}
+void GLES2InterfaceStub::VertexAttribI4uiv(GLuint /* indx */,
+                                           const GLuint* /* values */) {
+}
+void GLES2InterfaceStub::VertexAttribIPointer(GLuint /* indx */,
+                                              GLint /* size */,
+                                              GLenum /* type */,
+                                              GLsizei /* stride */,
+                                              const void* /* ptr */) {
+}
 void GLES2InterfaceStub::VertexAttribPointer(GLuint /* indx */,
                                              GLint /* size */,
                                              GLenum /* type */,
diff --git a/gpu/command_buffer/client/gles2_trace_implementation_autogen.h b/gpu/command_buffer/client/gles2_trace_implementation_autogen.h
index b4349ae..72860f1 100644
--- a/gpu/command_buffer/client/gles2_trace_implementation_autogen.h
+++ b/gpu/command_buffer/client/gles2_trace_implementation_autogen.h
@@ -70,6 +70,11 @@
                              GLenum format,
                              GLsizei imageSize,
                              const void* data) override;
+void CopyBufferSubData(GLenum readtarget,
+                       GLenum writetarget,
+                       GLintptr readoffset,
+                       GLintptr writeoffset,
+                       GLsizeiptr size) override;
 void CopyTexImage2D(GLenum target,
                     GLint level,
                     GLenum internalformat,
@@ -119,6 +124,11 @@
                           GLenum textarget,
                           GLuint texture,
                           GLint level) override;
+void FramebufferTextureLayer(GLenum target,
+                             GLenum attachment,
+                             GLuint texture,
+                             GLint level,
+                             GLint layer) override;
 void FrontFace(GLenum mode) override;
 void GenBuffers(GLsizei n, GLuint* buffers) override;
 void GenerateMipmap(GLenum target) override;
@@ -153,6 +163,11 @@
                                          GLenum pname,
                                          GLint* params) override;
 void GetIntegerv(GLenum pname, GLint* params) override;
+void GetInternalformativ(GLenum target,
+                         GLenum format,
+                         GLenum pname,
+                         GLsizei bufSize,
+                         GLint* params) override;
 void GetProgramiv(GLuint program, GLenum pname, GLint* params) override;
 void GetProgramInfoLog(GLuint program,
                        GLsizei bufsize,
@@ -249,6 +264,12 @@
                     const GLfloat* params) override;
 void TexParameteri(GLenum target, GLenum pname, GLint param) override;
 void TexParameteriv(GLenum target, GLenum pname, const GLint* params) override;
+void TexStorage3D(GLenum target,
+                  GLsizei levels,
+                  GLenum internalFormat,
+                  GLsizei width,
+                  GLsizei height,
+                  GLsizei depth) override;
 void TexSubImage2D(GLenum target,
                    GLint level,
                    GLint xoffset,
@@ -262,14 +283,20 @@
 void Uniform1fv(GLint location, GLsizei count, const GLfloat* v) override;
 void Uniform1i(GLint location, GLint x) override;
 void Uniform1iv(GLint location, GLsizei count, const GLint* v) override;
+void Uniform1ui(GLint location, GLuint x) override;
+void Uniform1uiv(GLint location, GLsizei count, const GLuint* v) override;
 void Uniform2f(GLint location, GLfloat x, GLfloat y) override;
 void Uniform2fv(GLint location, GLsizei count, const GLfloat* v) override;
 void Uniform2i(GLint location, GLint x, GLint y) override;
 void Uniform2iv(GLint location, GLsizei count, const GLint* v) override;
+void Uniform2ui(GLint location, GLuint x, GLuint y) override;
+void Uniform2uiv(GLint location, GLsizei count, const GLuint* v) override;
 void Uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) override;
 void Uniform3fv(GLint location, GLsizei count, const GLfloat* v) override;
 void Uniform3i(GLint location, GLint x, GLint y, GLint z) override;
 void Uniform3iv(GLint location, GLsizei count, const GLint* v) override;
+void Uniform3ui(GLint location, GLuint x, GLuint y, GLuint z) override;
+void Uniform3uiv(GLint location, GLsizei count, const GLuint* v) override;
 void Uniform4f(GLint location,
                GLfloat x,
                GLfloat y,
@@ -278,18 +305,48 @@
 void Uniform4fv(GLint location, GLsizei count, const GLfloat* v) override;
 void Uniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) override;
 void Uniform4iv(GLint location, GLsizei count, const GLint* v) override;
+void Uniform4ui(GLint location,
+                GLuint x,
+                GLuint y,
+                GLuint z,
+                GLuint w) override;
+void Uniform4uiv(GLint location, GLsizei count, const GLuint* v) override;
 void UniformMatrix2fv(GLint location,
                       GLsizei count,
                       GLboolean transpose,
                       const GLfloat* value) override;
+void UniformMatrix2x3fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+void UniformMatrix2x4fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
 void UniformMatrix3fv(GLint location,
                       GLsizei count,
                       GLboolean transpose,
                       const GLfloat* value) override;
+void UniformMatrix3x2fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+void UniformMatrix3x4fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
 void UniformMatrix4fv(GLint location,
                       GLsizei count,
                       GLboolean transpose,
                       const GLfloat* value) override;
+void UniformMatrix4x2fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
+void UniformMatrix4x3fv(GLint location,
+                        GLsizei count,
+                        GLboolean transpose,
+                        const GLfloat* value) override;
 void UseProgram(GLuint program) override;
 void ValidateProgram(GLuint program) override;
 void VertexAttrib1f(GLuint indx, GLfloat x) override;
@@ -304,6 +361,19 @@
                     GLfloat z,
                     GLfloat w) override;
 void VertexAttrib4fv(GLuint indx, const GLfloat* values) override;
+void VertexAttribI4i(GLuint indx, GLint x, GLint y, GLint z, GLint w) override;
+void VertexAttribI4iv(GLuint indx, const GLint* values) override;
+void VertexAttribI4ui(GLuint indx,
+                      GLuint x,
+                      GLuint y,
+                      GLuint z,
+                      GLuint w) override;
+void VertexAttribI4uiv(GLuint indx, const GLuint* values) override;
+void VertexAttribIPointer(GLuint indx,
+                          GLint size,
+                          GLenum type,
+                          GLsizei stride,
+                          const void* ptr) override;
 void VertexAttribPointer(GLuint indx,
                          GLint size,
                          GLenum type,
diff --git a/gpu/command_buffer/client/gles2_trace_implementation_impl_autogen.h b/gpu/command_buffer/client/gles2_trace_implementation_impl_autogen.h
index d7b53b4..28e6f43 100644
--- a/gpu/command_buffer/client/gles2_trace_implementation_impl_autogen.h
+++ b/gpu/command_buffer/client/gles2_trace_implementation_impl_autogen.h
@@ -167,6 +167,16 @@
                                format, imageSize, data);
 }
 
+void GLES2TraceImplementation::CopyBufferSubData(GLenum readtarget,
+                                                 GLenum writetarget,
+                                                 GLintptr readoffset,
+                                                 GLintptr writeoffset,
+                                                 GLsizeiptr size) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::CopyBufferSubData");
+  gl_->CopyBufferSubData(readtarget, writetarget, readoffset, writeoffset,
+                         size);
+}
+
 void GLES2TraceImplementation::CopyTexImage2D(GLenum target,
                                               GLint level,
                                               GLenum internalformat,
@@ -325,6 +335,15 @@
   gl_->FramebufferTexture2D(target, attachment, textarget, texture, level);
 }
 
+void GLES2TraceImplementation::FramebufferTextureLayer(GLenum target,
+                                                       GLenum attachment,
+                                                       GLuint texture,
+                                                       GLint level,
+                                                       GLint layer) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::FramebufferTextureLayer");
+  gl_->FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
 void GLES2TraceImplementation::FrontFace(GLenum mode) {
   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::FrontFace");
   gl_->FrontFace(mode);
@@ -430,6 +449,15 @@
   gl_->GetIntegerv(pname, params);
 }
 
+void GLES2TraceImplementation::GetInternalformativ(GLenum target,
+                                                   GLenum format,
+                                                   GLenum pname,
+                                                   GLsizei bufSize,
+                                                   GLint* params) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::GetInternalformativ");
+  gl_->GetInternalformativ(target, format, pname, bufSize, params);
+}
+
 void GLES2TraceImplementation::GetProgramiv(GLuint program,
                                             GLenum pname,
                                             GLint* params) {
@@ -751,6 +779,16 @@
   gl_->TexParameteriv(target, pname, params);
 }
 
+void GLES2TraceImplementation::TexStorage3D(GLenum target,
+                                            GLsizei levels,
+                                            GLenum internalFormat,
+                                            GLsizei width,
+                                            GLsizei height,
+                                            GLsizei depth) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::TexStorage3D");
+  gl_->TexStorage3D(target, levels, internalFormat, width, height, depth);
+}
+
 void GLES2TraceImplementation::TexSubImage2D(GLenum target,
                                              GLint level,
                                              GLint xoffset,
@@ -789,6 +827,18 @@
   gl_->Uniform1iv(location, count, v);
 }
 
+void GLES2TraceImplementation::Uniform1ui(GLint location, GLuint x) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform1ui");
+  gl_->Uniform1ui(location, x);
+}
+
+void GLES2TraceImplementation::Uniform1uiv(GLint location,
+                                           GLsizei count,
+                                           const GLuint* v) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform1uiv");
+  gl_->Uniform1uiv(location, count, v);
+}
+
 void GLES2TraceImplementation::Uniform2f(GLint location, GLfloat x, GLfloat y) {
   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform2f");
   gl_->Uniform2f(location, x, y);
@@ -813,6 +863,18 @@
   gl_->Uniform2iv(location, count, v);
 }
 
+void GLES2TraceImplementation::Uniform2ui(GLint location, GLuint x, GLuint y) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform2ui");
+  gl_->Uniform2ui(location, x, y);
+}
+
+void GLES2TraceImplementation::Uniform2uiv(GLint location,
+                                           GLsizei count,
+                                           const GLuint* v) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform2uiv");
+  gl_->Uniform2uiv(location, count, v);
+}
+
 void GLES2TraceImplementation::Uniform3f(GLint location,
                                          GLfloat x,
                                          GLfloat y,
@@ -843,6 +905,21 @@
   gl_->Uniform3iv(location, count, v);
 }
 
+void GLES2TraceImplementation::Uniform3ui(GLint location,
+                                          GLuint x,
+                                          GLuint y,
+                                          GLuint z) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform3ui");
+  gl_->Uniform3ui(location, x, y, z);
+}
+
+void GLES2TraceImplementation::Uniform3uiv(GLint location,
+                                           GLsizei count,
+                                           const GLuint* v) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform3uiv");
+  gl_->Uniform3uiv(location, count, v);
+}
+
 void GLES2TraceImplementation::Uniform4f(GLint location,
                                          GLfloat x,
                                          GLfloat y,
@@ -875,6 +952,22 @@
   gl_->Uniform4iv(location, count, v);
 }
 
+void GLES2TraceImplementation::Uniform4ui(GLint location,
+                                          GLuint x,
+                                          GLuint y,
+                                          GLuint z,
+                                          GLuint w) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform4ui");
+  gl_->Uniform4ui(location, x, y, z, w);
+}
+
+void GLES2TraceImplementation::Uniform4uiv(GLint location,
+                                           GLsizei count,
+                                           const GLuint* v) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::Uniform4uiv");
+  gl_->Uniform4uiv(location, count, v);
+}
+
 void GLES2TraceImplementation::UniformMatrix2fv(GLint location,
                                                 GLsizei count,
                                                 GLboolean transpose,
@@ -883,6 +976,22 @@
   gl_->UniformMatrix2fv(location, count, transpose, value);
 }
 
+void GLES2TraceImplementation::UniformMatrix2x3fv(GLint location,
+                                                  GLsizei count,
+                                                  GLboolean transpose,
+                                                  const GLfloat* value) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix2x3fv");
+  gl_->UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+void GLES2TraceImplementation::UniformMatrix2x4fv(GLint location,
+                                                  GLsizei count,
+                                                  GLboolean transpose,
+                                                  const GLfloat* value) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix2x4fv");
+  gl_->UniformMatrix2x4fv(location, count, transpose, value);
+}
+
 void GLES2TraceImplementation::UniformMatrix3fv(GLint location,
                                                 GLsizei count,
                                                 GLboolean transpose,
@@ -891,6 +1000,22 @@
   gl_->UniformMatrix3fv(location, count, transpose, value);
 }
 
+void GLES2TraceImplementation::UniformMatrix3x2fv(GLint location,
+                                                  GLsizei count,
+                                                  GLboolean transpose,
+                                                  const GLfloat* value) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix3x2fv");
+  gl_->UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+void GLES2TraceImplementation::UniformMatrix3x4fv(GLint location,
+                                                  GLsizei count,
+                                                  GLboolean transpose,
+                                                  const GLfloat* value) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix3x4fv");
+  gl_->UniformMatrix3x4fv(location, count, transpose, value);
+}
+
 void GLES2TraceImplementation::UniformMatrix4fv(GLint location,
                                                 GLsizei count,
                                                 GLboolean transpose,
@@ -899,6 +1024,22 @@
   gl_->UniformMatrix4fv(location, count, transpose, value);
 }
 
+void GLES2TraceImplementation::UniformMatrix4x2fv(GLint location,
+                                                  GLsizei count,
+                                                  GLboolean transpose,
+                                                  const GLfloat* value) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix4x2fv");
+  gl_->UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+void GLES2TraceImplementation::UniformMatrix4x3fv(GLint location,
+                                                  GLsizei count,
+                                                  GLboolean transpose,
+                                                  const GLfloat* value) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UniformMatrix4x3fv");
+  gl_->UniformMatrix4x3fv(location, count, transpose, value);
+}
+
 void GLES2TraceImplementation::UseProgram(GLuint program) {
   TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::UseProgram");
   gl_->UseProgram(program);
@@ -962,6 +1103,45 @@
   gl_->VertexAttrib4fv(indx, values);
 }
 
+void GLES2TraceImplementation::VertexAttribI4i(GLuint indx,
+                                               GLint x,
+                                               GLint y,
+                                               GLint z,
+                                               GLint w) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribI4i");
+  gl_->VertexAttribI4i(indx, x, y, z, w);
+}
+
+void GLES2TraceImplementation::VertexAttribI4iv(GLuint indx,
+                                                const GLint* values) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribI4iv");
+  gl_->VertexAttribI4iv(indx, values);
+}
+
+void GLES2TraceImplementation::VertexAttribI4ui(GLuint indx,
+                                                GLuint x,
+                                                GLuint y,
+                                                GLuint z,
+                                                GLuint w) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribI4ui");
+  gl_->VertexAttribI4ui(indx, x, y, z, w);
+}
+
+void GLES2TraceImplementation::VertexAttribI4uiv(GLuint indx,
+                                                 const GLuint* values) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribI4uiv");
+  gl_->VertexAttribI4uiv(indx, values);
+}
+
+void GLES2TraceImplementation::VertexAttribIPointer(GLuint indx,
+                                                    GLint size,
+                                                    GLenum type,
+                                                    GLsizei stride,
+                                                    const void* ptr) {
+  TRACE_EVENT_BINARY_EFFICIENT0("gpu", "GLES2Trace::VertexAttribIPointer");
+  gl_->VertexAttribIPointer(indx, size, type, stride, ptr);
+}
+
 void GLES2TraceImplementation::VertexAttribPointer(GLuint indx,
                                                    GLint size,
                                                    GLenum type,
diff --git a/gpu/command_buffer/cmd_buffer_functions.txt b/gpu/command_buffer/cmd_buffer_functions.txt
index 0f17198..dc613b9 100644
--- a/gpu/command_buffer/cmd_buffer_functions.txt
+++ b/gpu/command_buffer/cmd_buffer_functions.txt
@@ -27,6 +27,7 @@
 GL_APICALL void         GL_APIENTRY glCompileShader (GLidShader shader);
 GL_APICALL void         GL_APIENTRY glCompressedTexImage2D (GLenumTextureTarget target, GLint level, GLenumCompressedTextureFormat internalformat, GLsizei width, GLsizei height, GLintTextureBorder border, GLsizei imageSize, const void* data);
 GL_APICALL void         GL_APIENTRY glCompressedTexSubImage2D (GLenumTextureTarget target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenumCompressedTextureFormat format, GLsizei imageSize, const void* data);
+GL_APICALL void         GL_APIENTRY glCopyBufferSubData (GLenumBufferTarget readtarget, GLenumBufferTarget writetarget, GLintptrNotNegative readoffset, GLintptrNotNegative writeoffset, GLsizeiptr size);
 GL_APICALL void         GL_APIENTRY glCopyTexImage2D (GLenumTextureTarget target, GLint level, GLenumTextureInternalFormat internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLintTextureBorder border);
 GL_APICALL void         GL_APIENTRY glCopyTexSubImage2D (GLenumTextureTarget target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 GL_APICALL GLuint       GL_APIENTRY glCreateProgram (void);
@@ -52,6 +53,7 @@
 GL_APICALL void         GL_APIENTRY glFlush (void);
 GL_APICALL void         GL_APIENTRY glFramebufferRenderbuffer (GLenumFrameBufferTarget target, GLenumAttachment attachment, GLenumRenderBufferTarget renderbuffertarget, GLidRenderbuffer renderbuffer);
 GL_APICALL void         GL_APIENTRY glFramebufferTexture2D (GLenumFrameBufferTarget target, GLenumAttachment attachment, GLenumTextureTarget textarget, GLidTexture texture, GLintZeroOnly level);
+GL_APICALL void         GL_APIENTRY glFramebufferTextureLayer (GLenumFrameBufferTarget target, GLenumAttachment attachment, GLidTexture texture, GLint level, GLint layer);
 GL_APICALL void         GL_APIENTRY glFrontFace (GLenumFaceMode mode);
 GL_APICALL void         GL_APIENTRY glGenBuffers (GLsizeiNotNegative n, GLuint* buffers);
 GL_APICALL void         GL_APIENTRY glGenerateMipmap (GLenumTextureBindTarget target);
@@ -68,6 +70,7 @@
 GL_APICALL void         GL_APIENTRY glGetFloatv (GLenumGLState pname, GLfloat* params);
 GL_APICALL void         GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenumFrameBufferTarget target, GLenumAttachment attachment, GLenumFrameBufferParameter pname, GLint* params);
 GL_APICALL void         GL_APIENTRY glGetIntegerv (GLenumGLState pname, GLint* params);
+GL_APICALL void         GL_APIENTRY glGetInternalformativ (GLenumRenderBufferTarget target, GLenumRenderBufferFormat format, GLenumRenderBufferParameter pname, GLsizei bufSize, GLint* params);
 GL_APICALL void         GL_APIENTRY glGetProgramiv (GLidProgram program, GLenumProgramParameter pname, GLint* params);
 GL_APICALL void         GL_APIENTRY glGetProgramInfoLog (GLidProgram program, GLsizeiNotNegative bufsize, GLsizeiOptional* length, char* infolog);
 GL_APICALL void         GL_APIENTRY glGetRenderbufferParameteriv (GLenumRenderBufferTarget target, GLenumRenderBufferParameter pname, GLint* params);
@@ -116,26 +119,41 @@
 GL_APICALL void         GL_APIENTRY glTexParameterfv (GLenumTextureBindTarget target, GLenumTextureParameter pname, const GLfloat* params);
 GL_APICALL void         GL_APIENTRY glTexParameteri (GLenumTextureBindTarget target, GLenumTextureParameter pname, GLint param);
 GL_APICALL void         GL_APIENTRY glTexParameteriv (GLenumTextureBindTarget target, GLenumTextureParameter pname, const GLint* params);
+GL_APICALL void         GL_APIENTRY glTexStorage3D (GLenumTexture3DTarget target, GLsizei levels, GLenumTextureInternalFormatStorage internalFormat, GLsizei width, GLsizei height, GLsizei depth);
 GL_APICALL void         GL_APIENTRY glTexSubImage2D (GLenumTextureTarget target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenumTextureFormat format, GLenumPixelType type, const void* pixels);
 GL_APICALL void         GL_APIENTRY glUniform1f (GLintUniformLocation location, GLfloat x);
 GL_APICALL void         GL_APIENTRY glUniform1fv (GLintUniformLocation location, GLsizeiNotNegative count, const GLfloat* v);
 GL_APICALL void         GL_APIENTRY glUniform1i (GLintUniformLocation location, GLint x);
 GL_APICALL void         GL_APIENTRY glUniform1iv (GLintUniformLocation location, GLsizeiNotNegative count, const GLint* v);
+GL_APICALL void         GL_APIENTRY glUniform1ui (GLintUniformLocation location, GLuint x);
+GL_APICALL void         GL_APIENTRY glUniform1uiv (GLintUniformLocation location, GLsizeiNotNegative count, const GLuint* v);
 GL_APICALL void         GL_APIENTRY glUniform2f (GLintUniformLocation location, GLfloat x, GLfloat y);
 GL_APICALL void         GL_APIENTRY glUniform2fv (GLintUniformLocation location, GLsizeiNotNegative count, const GLfloat* v);
 GL_APICALL void         GL_APIENTRY glUniform2i (GLintUniformLocation location, GLint x, GLint y);
 GL_APICALL void         GL_APIENTRY glUniform2iv (GLintUniformLocation location, GLsizeiNotNegative count, const GLint* v);
+GL_APICALL void         GL_APIENTRY glUniform2ui (GLintUniformLocation location, GLuint x, GLuint y);
+GL_APICALL void         GL_APIENTRY glUniform2uiv (GLintUniformLocation location, GLsizeiNotNegative count, const GLuint* v);
 GL_APICALL void         GL_APIENTRY glUniform3f (GLintUniformLocation location, GLfloat x, GLfloat y, GLfloat z);
 GL_APICALL void         GL_APIENTRY glUniform3fv (GLintUniformLocation location, GLsizeiNotNegative count, const GLfloat* v);
 GL_APICALL void         GL_APIENTRY glUniform3i (GLintUniformLocation location, GLint x, GLint y, GLint z);
 GL_APICALL void         GL_APIENTRY glUniform3iv (GLintUniformLocation location, GLsizeiNotNegative count, const GLint* v);
+GL_APICALL void         GL_APIENTRY glUniform3ui (GLintUniformLocation location, GLuint x, GLuint y, GLuint z);
+GL_APICALL void         GL_APIENTRY glUniform3uiv (GLintUniformLocation location, GLsizeiNotNegative count, const GLuint* v);
 GL_APICALL void         GL_APIENTRY glUniform4f (GLintUniformLocation location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 GL_APICALL void         GL_APIENTRY glUniform4fv (GLintUniformLocation location, GLsizeiNotNegative count, const GLfloat* v);
 GL_APICALL void         GL_APIENTRY glUniform4i (GLintUniformLocation location, GLint x, GLint y, GLint z, GLint w);
 GL_APICALL void         GL_APIENTRY glUniform4iv (GLintUniformLocation location, GLsizeiNotNegative count, const GLint* v);
+GL_APICALL void         GL_APIENTRY glUniform4ui (GLintUniformLocation location, GLuint x, GLuint y, GLuint z, GLuint w);
+GL_APICALL void         GL_APIENTRY glUniform4uiv (GLintUniformLocation location, GLsizeiNotNegative count, const GLuint* v);
 GL_APICALL void         GL_APIENTRY glUniformMatrix2fv (GLintUniformLocation location, GLsizeiNotNegative count, GLbooleanFalseOnly transpose, const GLfloat* value);
+GL_APICALL void         GL_APIENTRY glUniformMatrix2x3fv (GLintUniformLocation location, GLsizeiNotNegative count, GLbooleanFalseOnly transpose, const GLfloat* value);
+GL_APICALL void         GL_APIENTRY glUniformMatrix2x4fv (GLintUniformLocation location, GLsizeiNotNegative count, GLbooleanFalseOnly transpose, const GLfloat* value);
 GL_APICALL void         GL_APIENTRY glUniformMatrix3fv (GLintUniformLocation location, GLsizeiNotNegative count, GLbooleanFalseOnly transpose, const GLfloat* value);
+GL_APICALL void         GL_APIENTRY glUniformMatrix3x2fv (GLintUniformLocation location, GLsizeiNotNegative count, GLbooleanFalseOnly transpose, const GLfloat* value);
+GL_APICALL void         GL_APIENTRY glUniformMatrix3x4fv (GLintUniformLocation location, GLsizeiNotNegative count, GLbooleanFalseOnly transpose, const GLfloat* value);
 GL_APICALL void         GL_APIENTRY glUniformMatrix4fv (GLintUniformLocation location, GLsizeiNotNegative count, GLbooleanFalseOnly transpose, const GLfloat* value);
+GL_APICALL void         GL_APIENTRY glUniformMatrix4x2fv (GLintUniformLocation location, GLsizeiNotNegative count, GLbooleanFalseOnly transpose, const GLfloat* value);
+GL_APICALL void         GL_APIENTRY glUniformMatrix4x3fv (GLintUniformLocation location, GLsizeiNotNegative count, GLbooleanFalseOnly transpose, const GLfloat* value);
 GL_APICALL void         GL_APIENTRY glUseProgram (GLidZeroProgram program);
 GL_APICALL void         GL_APIENTRY glValidateProgram (GLidProgram program);
 GL_APICALL void         GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x);
@@ -146,6 +164,11 @@
 GL_APICALL void         GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values);
 GL_APICALL void         GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
 GL_APICALL void         GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values);
+GL_APICALL void         GL_APIENTRY glVertexAttribI4i (GLuint indx, GLint x, GLint y, GLint z, GLint w);
+GL_APICALL void         GL_APIENTRY glVertexAttribI4iv (GLuint indx, const GLint* values);
+GL_APICALL void         GL_APIENTRY glVertexAttribI4ui (GLuint indx, GLuint x, GLuint y, GLuint z, GLuint w);
+GL_APICALL void         GL_APIENTRY glVertexAttribI4uiv (GLuint indx, const GLuint* values);
+GL_APICALL void         GL_APIENTRY glVertexAttribIPointer (GLuint indx, GLintVertexAttribSize size, GLenumVertexAttribType type, GLsizei stride, const void* ptr);
 GL_APICALL void         GL_APIENTRY glVertexAttribPointer (GLuint indx, GLintVertexAttribSize size, GLenumVertexAttribType type, GLboolean normalized, GLsizei stride, const void* ptr);
 GL_APICALL void         GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
 GL_APICALL void         GL_APIENTRY glBlitFramebufferCHROMIUM (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenumBlitFilter filter);
diff --git a/gpu/command_buffer/common/BUILD.gn b/gpu/command_buffer/common/BUILD.gn
index ad6d320..68c3c84 100644
--- a/gpu/command_buffer/common/BUILD.gn
+++ b/gpu/command_buffer/common/BUILD.gn
@@ -28,6 +28,8 @@
     "mailbox_holder.h",
     "thread_local.h",
     "time.h",
+    "value_state.cc",
+    "value_state.h",
   ]
 
   defines = [ "GPU_IMPLEMENTATION" ]
diff --git a/gpu/command_buffer/common/capabilities.cc b/gpu/command_buffer/common/capabilities.cc
index 9d9e90d..ab33aeb 100644
--- a/gpu/command_buffer/common/capabilities.cc
+++ b/gpu/command_buffer/common/capabilities.cc
@@ -37,7 +37,8 @@
       image(false),
       future_sync_points(false),
       blend_equation_advanced(false),
-      blend_equation_advanced_coherent(false) {
+      blend_equation_advanced_coherent(false),
+      texture_rg(false) {
 }
 
 }  // namespace gpu
diff --git a/gpu/command_buffer/common/capabilities.h b/gpu/command_buffer/common/capabilities.h
index 224829c..a465ca2 100644
--- a/gpu/command_buffer/common/capabilities.h
+++ b/gpu/command_buffer/common/capabilities.h
@@ -91,6 +91,7 @@
   bool future_sync_points;
   bool blend_equation_advanced;
   bool blend_equation_advanced_coherent;
+  bool texture_rg;
 };
 
 }  // namespace gpu
diff --git a/gpu/command_buffer/common/gles2_cmd_format_autogen.h b/gpu/command_buffer/common/gles2_cmd_format_autogen.h
index 14f0728..c451b98 100644
--- a/gpu/command_buffer/common/gles2_cmd_format_autogen.h
+++ b/gpu/command_buffer/common/gles2_cmd_format_autogen.h
@@ -1168,6 +1168,65 @@
 COMPILE_ASSERT(offsetof(CompressedTexSubImage2D, data_shm_offset) == 40,
                OffsetOf_CompressedTexSubImage2D_data_shm_offset_not_40);
 
+struct CopyBufferSubData {
+  typedef CopyBufferSubData ValueType;
+  static const CommandId kCmdId = kCopyBufferSubData;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLenum _readtarget,
+            GLenum _writetarget,
+            GLintptr _readoffset,
+            GLintptr _writeoffset,
+            GLsizeiptr _size) {
+    SetHeader();
+    readtarget = _readtarget;
+    writetarget = _writetarget;
+    readoffset = _readoffset;
+    writeoffset = _writeoffset;
+    size = _size;
+  }
+
+  void* Set(void* cmd,
+            GLenum _readtarget,
+            GLenum _writetarget,
+            GLintptr _readoffset,
+            GLintptr _writeoffset,
+            GLsizeiptr _size) {
+    static_cast<ValueType*>(cmd)
+        ->Init(_readtarget, _writetarget, _readoffset, _writeoffset, _size);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  uint32_t readtarget;
+  uint32_t writetarget;
+  int32_t readoffset;
+  int32_t writeoffset;
+  int32_t size;
+};
+
+COMPILE_ASSERT(sizeof(CopyBufferSubData) == 24,
+               Sizeof_CopyBufferSubData_is_not_24);
+COMPILE_ASSERT(offsetof(CopyBufferSubData, header) == 0,
+               OffsetOf_CopyBufferSubData_header_not_0);
+COMPILE_ASSERT(offsetof(CopyBufferSubData, readtarget) == 4,
+               OffsetOf_CopyBufferSubData_readtarget_not_4);
+COMPILE_ASSERT(offsetof(CopyBufferSubData, writetarget) == 8,
+               OffsetOf_CopyBufferSubData_writetarget_not_8);
+COMPILE_ASSERT(offsetof(CopyBufferSubData, readoffset) == 12,
+               OffsetOf_CopyBufferSubData_readoffset_not_12);
+COMPILE_ASSERT(offsetof(CopyBufferSubData, writeoffset) == 16,
+               OffsetOf_CopyBufferSubData_writeoffset_not_16);
+COMPILE_ASSERT(offsetof(CopyBufferSubData, size) == 20,
+               OffsetOf_CopyBufferSubData_size_not_20);
+
 struct CopyTexImage2D {
   typedef CopyTexImage2D ValueType;
   static const CommandId kCmdId = kCopyTexImage2D;
@@ -2150,6 +2209,65 @@
 COMPILE_ASSERT(offsetof(FramebufferTexture2D, texture) == 16,
                OffsetOf_FramebufferTexture2D_texture_not_16);
 
+struct FramebufferTextureLayer {
+  typedef FramebufferTextureLayer ValueType;
+  static const CommandId kCmdId = kFramebufferTextureLayer;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLenum _target,
+            GLenum _attachment,
+            GLuint _texture,
+            GLint _level,
+            GLint _layer) {
+    SetHeader();
+    target = _target;
+    attachment = _attachment;
+    texture = _texture;
+    level = _level;
+    layer = _layer;
+  }
+
+  void* Set(void* cmd,
+            GLenum _target,
+            GLenum _attachment,
+            GLuint _texture,
+            GLint _level,
+            GLint _layer) {
+    static_cast<ValueType*>(cmd)
+        ->Init(_target, _attachment, _texture, _level, _layer);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  uint32_t target;
+  uint32_t attachment;
+  uint32_t texture;
+  int32_t level;
+  int32_t layer;
+};
+
+COMPILE_ASSERT(sizeof(FramebufferTextureLayer) == 24,
+               Sizeof_FramebufferTextureLayer_is_not_24);
+COMPILE_ASSERT(offsetof(FramebufferTextureLayer, header) == 0,
+               OffsetOf_FramebufferTextureLayer_header_not_0);
+COMPILE_ASSERT(offsetof(FramebufferTextureLayer, target) == 4,
+               OffsetOf_FramebufferTextureLayer_target_not_4);
+COMPILE_ASSERT(offsetof(FramebufferTextureLayer, attachment) == 8,
+               OffsetOf_FramebufferTextureLayer_attachment_not_8);
+COMPILE_ASSERT(offsetof(FramebufferTextureLayer, texture) == 12,
+               OffsetOf_FramebufferTextureLayer_texture_not_12);
+COMPILE_ASSERT(offsetof(FramebufferTextureLayer, level) == 16,
+               OffsetOf_FramebufferTextureLayer_level_not_16);
+COMPILE_ASSERT(offsetof(FramebufferTextureLayer, layer) == 20,
+               OffsetOf_FramebufferTextureLayer_layer_not_20);
+
 struct FrontFace {
   typedef FrontFace ValueType;
   static const CommandId kCmdId = kFrontFace;
@@ -2930,6 +3048,73 @@
 COMPILE_ASSERT(offsetof(GetIntegerv, params_shm_offset) == 12,
                OffsetOf_GetIntegerv_params_shm_offset_not_12);
 
+struct GetInternalformativ {
+  typedef GetInternalformativ ValueType;
+  static const CommandId kCmdId = kGetInternalformativ;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  typedef SizedResult<GLint> Result;
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLenum _target,
+            GLenum _format,
+            GLenum _pname,
+            GLsizei _bufSize,
+            uint32_t _params_shm_id,
+            uint32_t _params_shm_offset) {
+    SetHeader();
+    target = _target;
+    format = _format;
+    pname = _pname;
+    bufSize = _bufSize;
+    params_shm_id = _params_shm_id;
+    params_shm_offset = _params_shm_offset;
+  }
+
+  void* Set(void* cmd,
+            GLenum _target,
+            GLenum _format,
+            GLenum _pname,
+            GLsizei _bufSize,
+            uint32_t _params_shm_id,
+            uint32_t _params_shm_offset) {
+    static_cast<ValueType*>(cmd)->Init(_target, _format, _pname, _bufSize,
+                                       _params_shm_id, _params_shm_offset);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  uint32_t target;
+  uint32_t format;
+  uint32_t pname;
+  int32_t bufSize;
+  uint32_t params_shm_id;
+  uint32_t params_shm_offset;
+};
+
+COMPILE_ASSERT(sizeof(GetInternalformativ) == 28,
+               Sizeof_GetInternalformativ_is_not_28);
+COMPILE_ASSERT(offsetof(GetInternalformativ, header) == 0,
+               OffsetOf_GetInternalformativ_header_not_0);
+COMPILE_ASSERT(offsetof(GetInternalformativ, target) == 4,
+               OffsetOf_GetInternalformativ_target_not_4);
+COMPILE_ASSERT(offsetof(GetInternalformativ, format) == 8,
+               OffsetOf_GetInternalformativ_format_not_8);
+COMPILE_ASSERT(offsetof(GetInternalformativ, pname) == 12,
+               OffsetOf_GetInternalformativ_pname_not_12);
+COMPILE_ASSERT(offsetof(GetInternalformativ, bufSize) == 16,
+               OffsetOf_GetInternalformativ_bufSize_not_16);
+COMPILE_ASSERT(offsetof(GetInternalformativ, params_shm_id) == 20,
+               OffsetOf_GetInternalformativ_params_shm_id_not_20);
+COMPILE_ASSERT(offsetof(GetInternalformativ, params_shm_offset) == 24,
+               OffsetOf_GetInternalformativ_params_shm_offset_not_24);
+
 struct GetProgramiv {
   typedef GetProgramiv ValueType;
   static const CommandId kCmdId = kGetProgramiv;
@@ -5093,6 +5278,70 @@
 COMPILE_ASSERT(offsetof(TexParameterivImmediate, pname) == 8,
                OffsetOf_TexParameterivImmediate_pname_not_8);
 
+struct TexStorage3D {
+  typedef TexStorage3D ValueType;
+  static const CommandId kCmdId = kTexStorage3D;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLenum _target,
+            GLsizei _levels,
+            GLenum _internalFormat,
+            GLsizei _width,
+            GLsizei _height,
+            GLsizei _depth) {
+    SetHeader();
+    target = _target;
+    levels = _levels;
+    internalFormat = _internalFormat;
+    width = _width;
+    height = _height;
+    depth = _depth;
+  }
+
+  void* Set(void* cmd,
+            GLenum _target,
+            GLsizei _levels,
+            GLenum _internalFormat,
+            GLsizei _width,
+            GLsizei _height,
+            GLsizei _depth) {
+    static_cast<ValueType*>(cmd)
+        ->Init(_target, _levels, _internalFormat, _width, _height, _depth);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  uint32_t target;
+  int32_t levels;
+  uint32_t internalFormat;
+  int32_t width;
+  int32_t height;
+  int32_t depth;
+};
+
+COMPILE_ASSERT(sizeof(TexStorage3D) == 28, Sizeof_TexStorage3D_is_not_28);
+COMPILE_ASSERT(offsetof(TexStorage3D, header) == 0,
+               OffsetOf_TexStorage3D_header_not_0);
+COMPILE_ASSERT(offsetof(TexStorage3D, target) == 4,
+               OffsetOf_TexStorage3D_target_not_4);
+COMPILE_ASSERT(offsetof(TexStorage3D, levels) == 8,
+               OffsetOf_TexStorage3D_levels_not_8);
+COMPILE_ASSERT(offsetof(TexStorage3D, internalFormat) == 12,
+               OffsetOf_TexStorage3D_internalFormat_not_12);
+COMPILE_ASSERT(offsetof(TexStorage3D, width) == 16,
+               OffsetOf_TexStorage3D_width_not_16);
+COMPILE_ASSERT(offsetof(TexStorage3D, height) == 20,
+               OffsetOf_TexStorage3D_height_not_20);
+COMPILE_ASSERT(offsetof(TexStorage3D, depth) == 24,
+               OffsetOf_TexStorage3D_depth_not_24);
+
 struct TexSubImage2D {
   typedef TexSubImage2D ValueType;
   static const CommandId kCmdId = kTexSubImage2D;
@@ -5350,6 +5599,87 @@
 COMPILE_ASSERT(offsetof(Uniform1ivImmediate, count) == 8,
                OffsetOf_Uniform1ivImmediate_count_not_8);
 
+struct Uniform1ui {
+  typedef Uniform1ui ValueType;
+  static const CommandId kCmdId = kUniform1ui;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLint _location, GLuint _x) {
+    SetHeader();
+    location = _location;
+    x = _x;
+  }
+
+  void* Set(void* cmd, GLint _location, GLuint _x) {
+    static_cast<ValueType*>(cmd)->Init(_location, _x);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  uint32_t x;
+};
+
+COMPILE_ASSERT(sizeof(Uniform1ui) == 12, Sizeof_Uniform1ui_is_not_12);
+COMPILE_ASSERT(offsetof(Uniform1ui, header) == 0,
+               OffsetOf_Uniform1ui_header_not_0);
+COMPILE_ASSERT(offsetof(Uniform1ui, location) == 4,
+               OffsetOf_Uniform1ui_location_not_4);
+COMPILE_ASSERT(offsetof(Uniform1ui, x) == 8, OffsetOf_Uniform1ui_x_not_8);
+
+struct Uniform1uivImmediate {
+  typedef Uniform1uivImmediate ValueType;
+  static const CommandId kCmdId = kUniform1uivImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(GLuint) * 1 * count);  // NOLINT
+  }
+
+  static uint32_t ComputeSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize(count));  // NOLINT
+  }
+
+  void SetHeader(GLsizei count) {
+    header.SetCmdByTotalSize<ValueType>(ComputeSize(count));
+  }
+
+  void Init(GLint _location, GLsizei _count, const GLuint* _v) {
+    SetHeader(_count);
+    location = _location;
+    count = _count;
+    memcpy(ImmediateDataAddress(this), _v, ComputeDataSize(_count));
+  }
+
+  void* Set(void* cmd, GLint _location, GLsizei _count, const GLuint* _v) {
+    static_cast<ValueType*>(cmd)->Init(_location, _count, _v);
+    const uint32_t size = ComputeSize(_count);
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  int32_t count;
+};
+
+COMPILE_ASSERT(sizeof(Uniform1uivImmediate) == 12,
+               Sizeof_Uniform1uivImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(Uniform1uivImmediate, header) == 0,
+               OffsetOf_Uniform1uivImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(Uniform1uivImmediate, location) == 4,
+               OffsetOf_Uniform1uivImmediate_location_not_4);
+COMPILE_ASSERT(offsetof(Uniform1uivImmediate, count) == 8,
+               OffsetOf_Uniform1uivImmediate_count_not_8);
+
 struct Uniform2f {
   typedef Uniform2f ValueType;
   static const CommandId kCmdId = kUniform2f;
@@ -5518,6 +5848,90 @@
 COMPILE_ASSERT(offsetof(Uniform2ivImmediate, count) == 8,
                OffsetOf_Uniform2ivImmediate_count_not_8);
 
+struct Uniform2ui {
+  typedef Uniform2ui ValueType;
+  static const CommandId kCmdId = kUniform2ui;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLint _location, GLuint _x, GLuint _y) {
+    SetHeader();
+    location = _location;
+    x = _x;
+    y = _y;
+  }
+
+  void* Set(void* cmd, GLint _location, GLuint _x, GLuint _y) {
+    static_cast<ValueType*>(cmd)->Init(_location, _x, _y);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  uint32_t x;
+  uint32_t y;
+};
+
+COMPILE_ASSERT(sizeof(Uniform2ui) == 16, Sizeof_Uniform2ui_is_not_16);
+COMPILE_ASSERT(offsetof(Uniform2ui, header) == 0,
+               OffsetOf_Uniform2ui_header_not_0);
+COMPILE_ASSERT(offsetof(Uniform2ui, location) == 4,
+               OffsetOf_Uniform2ui_location_not_4);
+COMPILE_ASSERT(offsetof(Uniform2ui, x) == 8, OffsetOf_Uniform2ui_x_not_8);
+COMPILE_ASSERT(offsetof(Uniform2ui, y) == 12, OffsetOf_Uniform2ui_y_not_12);
+
+struct Uniform2uivImmediate {
+  typedef Uniform2uivImmediate ValueType;
+  static const CommandId kCmdId = kUniform2uivImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(GLuint) * 2 * count);  // NOLINT
+  }
+
+  static uint32_t ComputeSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize(count));  // NOLINT
+  }
+
+  void SetHeader(GLsizei count) {
+    header.SetCmdByTotalSize<ValueType>(ComputeSize(count));
+  }
+
+  void Init(GLint _location, GLsizei _count, const GLuint* _v) {
+    SetHeader(_count);
+    location = _location;
+    count = _count;
+    memcpy(ImmediateDataAddress(this), _v, ComputeDataSize(_count));
+  }
+
+  void* Set(void* cmd, GLint _location, GLsizei _count, const GLuint* _v) {
+    static_cast<ValueType*>(cmd)->Init(_location, _count, _v);
+    const uint32_t size = ComputeSize(_count);
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  int32_t count;
+};
+
+COMPILE_ASSERT(sizeof(Uniform2uivImmediate) == 12,
+               Sizeof_Uniform2uivImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(Uniform2uivImmediate, header) == 0,
+               OffsetOf_Uniform2uivImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(Uniform2uivImmediate, location) == 4,
+               OffsetOf_Uniform2uivImmediate_location_not_4);
+COMPILE_ASSERT(offsetof(Uniform2uivImmediate, count) == 8,
+               OffsetOf_Uniform2uivImmediate_count_not_8);
+
 struct Uniform3f {
   typedef Uniform3f ValueType;
   static const CommandId kCmdId = kUniform3f;
@@ -5692,6 +6106,93 @@
 COMPILE_ASSERT(offsetof(Uniform3ivImmediate, count) == 8,
                OffsetOf_Uniform3ivImmediate_count_not_8);
 
+struct Uniform3ui {
+  typedef Uniform3ui ValueType;
+  static const CommandId kCmdId = kUniform3ui;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLint _location, GLuint _x, GLuint _y, GLuint _z) {
+    SetHeader();
+    location = _location;
+    x = _x;
+    y = _y;
+    z = _z;
+  }
+
+  void* Set(void* cmd, GLint _location, GLuint _x, GLuint _y, GLuint _z) {
+    static_cast<ValueType*>(cmd)->Init(_location, _x, _y, _z);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  uint32_t x;
+  uint32_t y;
+  uint32_t z;
+};
+
+COMPILE_ASSERT(sizeof(Uniform3ui) == 20, Sizeof_Uniform3ui_is_not_20);
+COMPILE_ASSERT(offsetof(Uniform3ui, header) == 0,
+               OffsetOf_Uniform3ui_header_not_0);
+COMPILE_ASSERT(offsetof(Uniform3ui, location) == 4,
+               OffsetOf_Uniform3ui_location_not_4);
+COMPILE_ASSERT(offsetof(Uniform3ui, x) == 8, OffsetOf_Uniform3ui_x_not_8);
+COMPILE_ASSERT(offsetof(Uniform3ui, y) == 12, OffsetOf_Uniform3ui_y_not_12);
+COMPILE_ASSERT(offsetof(Uniform3ui, z) == 16, OffsetOf_Uniform3ui_z_not_16);
+
+struct Uniform3uivImmediate {
+  typedef Uniform3uivImmediate ValueType;
+  static const CommandId kCmdId = kUniform3uivImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(GLuint) * 3 * count);  // NOLINT
+  }
+
+  static uint32_t ComputeSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize(count));  // NOLINT
+  }
+
+  void SetHeader(GLsizei count) {
+    header.SetCmdByTotalSize<ValueType>(ComputeSize(count));
+  }
+
+  void Init(GLint _location, GLsizei _count, const GLuint* _v) {
+    SetHeader(_count);
+    location = _location;
+    count = _count;
+    memcpy(ImmediateDataAddress(this), _v, ComputeDataSize(_count));
+  }
+
+  void* Set(void* cmd, GLint _location, GLsizei _count, const GLuint* _v) {
+    static_cast<ValueType*>(cmd)->Init(_location, _count, _v);
+    const uint32_t size = ComputeSize(_count);
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  int32_t count;
+};
+
+COMPILE_ASSERT(sizeof(Uniform3uivImmediate) == 12,
+               Sizeof_Uniform3uivImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(Uniform3uivImmediate, header) == 0,
+               OffsetOf_Uniform3uivImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(Uniform3uivImmediate, location) == 4,
+               OffsetOf_Uniform3uivImmediate_location_not_4);
+COMPILE_ASSERT(offsetof(Uniform3uivImmediate, count) == 8,
+               OffsetOf_Uniform3uivImmediate_count_not_8);
+
 struct Uniform4f {
   typedef Uniform4f ValueType;
   static const CommandId kCmdId = kUniform4f;
@@ -5882,6 +6383,101 @@
 COMPILE_ASSERT(offsetof(Uniform4ivImmediate, count) == 8,
                OffsetOf_Uniform4ivImmediate_count_not_8);
 
+struct Uniform4ui {
+  typedef Uniform4ui ValueType;
+  static const CommandId kCmdId = kUniform4ui;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLint _location, GLuint _x, GLuint _y, GLuint _z, GLuint _w) {
+    SetHeader();
+    location = _location;
+    x = _x;
+    y = _y;
+    z = _z;
+    w = _w;
+  }
+
+  void* Set(void* cmd,
+            GLint _location,
+            GLuint _x,
+            GLuint _y,
+            GLuint _z,
+            GLuint _w) {
+    static_cast<ValueType*>(cmd)->Init(_location, _x, _y, _z, _w);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  uint32_t x;
+  uint32_t y;
+  uint32_t z;
+  uint32_t w;
+};
+
+COMPILE_ASSERT(sizeof(Uniform4ui) == 24, Sizeof_Uniform4ui_is_not_24);
+COMPILE_ASSERT(offsetof(Uniform4ui, header) == 0,
+               OffsetOf_Uniform4ui_header_not_0);
+COMPILE_ASSERT(offsetof(Uniform4ui, location) == 4,
+               OffsetOf_Uniform4ui_location_not_4);
+COMPILE_ASSERT(offsetof(Uniform4ui, x) == 8, OffsetOf_Uniform4ui_x_not_8);
+COMPILE_ASSERT(offsetof(Uniform4ui, y) == 12, OffsetOf_Uniform4ui_y_not_12);
+COMPILE_ASSERT(offsetof(Uniform4ui, z) == 16, OffsetOf_Uniform4ui_z_not_16);
+COMPILE_ASSERT(offsetof(Uniform4ui, w) == 20, OffsetOf_Uniform4ui_w_not_20);
+
+struct Uniform4uivImmediate {
+  typedef Uniform4uivImmediate ValueType;
+  static const CommandId kCmdId = kUniform4uivImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(GLuint) * 4 * count);  // NOLINT
+  }
+
+  static uint32_t ComputeSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize(count));  // NOLINT
+  }
+
+  void SetHeader(GLsizei count) {
+    header.SetCmdByTotalSize<ValueType>(ComputeSize(count));
+  }
+
+  void Init(GLint _location, GLsizei _count, const GLuint* _v) {
+    SetHeader(_count);
+    location = _location;
+    count = _count;
+    memcpy(ImmediateDataAddress(this), _v, ComputeDataSize(_count));
+  }
+
+  void* Set(void* cmd, GLint _location, GLsizei _count, const GLuint* _v) {
+    static_cast<ValueType*>(cmd)->Init(_location, _count, _v);
+    const uint32_t size = ComputeSize(_count);
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  int32_t count;
+};
+
+COMPILE_ASSERT(sizeof(Uniform4uivImmediate) == 12,
+               Sizeof_Uniform4uivImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(Uniform4uivImmediate, header) == 0,
+               OffsetOf_Uniform4uivImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(Uniform4uivImmediate, location) == 4,
+               OffsetOf_Uniform4uivImmediate_location_not_4);
+COMPILE_ASSERT(offsetof(Uniform4uivImmediate, count) == 8,
+               OffsetOf_Uniform4uivImmediate_count_not_8);
+
 struct UniformMatrix2fvImmediate {
   typedef UniformMatrix2fvImmediate ValueType;
   static const CommandId kCmdId = kUniformMatrix2fvImmediate;
@@ -5929,6 +6525,100 @@
 COMPILE_ASSERT(offsetof(UniformMatrix2fvImmediate, count) == 8,
                OffsetOf_UniformMatrix2fvImmediate_count_not_8);
 
+struct UniformMatrix2x3fvImmediate {
+  typedef UniformMatrix2x3fvImmediate ValueType;
+  static const CommandId kCmdId = kUniformMatrix2x3fvImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(GLfloat) * 6 * count);  // NOLINT
+  }
+
+  static uint32_t ComputeSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize(count));  // NOLINT
+  }
+
+  void SetHeader(GLsizei count) {
+    header.SetCmdByTotalSize<ValueType>(ComputeSize(count));
+  }
+
+  void Init(GLint _location, GLsizei _count, const GLfloat* _value) {
+    SetHeader(_count);
+    location = _location;
+    count = _count;
+    memcpy(ImmediateDataAddress(this), _value, ComputeDataSize(_count));
+  }
+
+  void* Set(void* cmd, GLint _location, GLsizei _count, const GLfloat* _value) {
+    static_cast<ValueType*>(cmd)->Init(_location, _count, _value);
+    const uint32_t size = ComputeSize(_count);
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  int32_t count;
+  static const uint32_t transpose = false;
+};
+
+COMPILE_ASSERT(sizeof(UniformMatrix2x3fvImmediate) == 12,
+               Sizeof_UniformMatrix2x3fvImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(UniformMatrix2x3fvImmediate, header) == 0,
+               OffsetOf_UniformMatrix2x3fvImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(UniformMatrix2x3fvImmediate, location) == 4,
+               OffsetOf_UniformMatrix2x3fvImmediate_location_not_4);
+COMPILE_ASSERT(offsetof(UniformMatrix2x3fvImmediate, count) == 8,
+               OffsetOf_UniformMatrix2x3fvImmediate_count_not_8);
+
+struct UniformMatrix2x4fvImmediate {
+  typedef UniformMatrix2x4fvImmediate ValueType;
+  static const CommandId kCmdId = kUniformMatrix2x4fvImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(GLfloat) * 8 * count);  // NOLINT
+  }
+
+  static uint32_t ComputeSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize(count));  // NOLINT
+  }
+
+  void SetHeader(GLsizei count) {
+    header.SetCmdByTotalSize<ValueType>(ComputeSize(count));
+  }
+
+  void Init(GLint _location, GLsizei _count, const GLfloat* _value) {
+    SetHeader(_count);
+    location = _location;
+    count = _count;
+    memcpy(ImmediateDataAddress(this), _value, ComputeDataSize(_count));
+  }
+
+  void* Set(void* cmd, GLint _location, GLsizei _count, const GLfloat* _value) {
+    static_cast<ValueType*>(cmd)->Init(_location, _count, _value);
+    const uint32_t size = ComputeSize(_count);
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  int32_t count;
+  static const uint32_t transpose = false;
+};
+
+COMPILE_ASSERT(sizeof(UniformMatrix2x4fvImmediate) == 12,
+               Sizeof_UniformMatrix2x4fvImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(UniformMatrix2x4fvImmediate, header) == 0,
+               OffsetOf_UniformMatrix2x4fvImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(UniformMatrix2x4fvImmediate, location) == 4,
+               OffsetOf_UniformMatrix2x4fvImmediate_location_not_4);
+COMPILE_ASSERT(offsetof(UniformMatrix2x4fvImmediate, count) == 8,
+               OffsetOf_UniformMatrix2x4fvImmediate_count_not_8);
+
 struct UniformMatrix3fvImmediate {
   typedef UniformMatrix3fvImmediate ValueType;
   static const CommandId kCmdId = kUniformMatrix3fvImmediate;
@@ -5976,6 +6666,100 @@
 COMPILE_ASSERT(offsetof(UniformMatrix3fvImmediate, count) == 8,
                OffsetOf_UniformMatrix3fvImmediate_count_not_8);
 
+struct UniformMatrix3x2fvImmediate {
+  typedef UniformMatrix3x2fvImmediate ValueType;
+  static const CommandId kCmdId = kUniformMatrix3x2fvImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(GLfloat) * 6 * count);  // NOLINT
+  }
+
+  static uint32_t ComputeSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize(count));  // NOLINT
+  }
+
+  void SetHeader(GLsizei count) {
+    header.SetCmdByTotalSize<ValueType>(ComputeSize(count));
+  }
+
+  void Init(GLint _location, GLsizei _count, const GLfloat* _value) {
+    SetHeader(_count);
+    location = _location;
+    count = _count;
+    memcpy(ImmediateDataAddress(this), _value, ComputeDataSize(_count));
+  }
+
+  void* Set(void* cmd, GLint _location, GLsizei _count, const GLfloat* _value) {
+    static_cast<ValueType*>(cmd)->Init(_location, _count, _value);
+    const uint32_t size = ComputeSize(_count);
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  int32_t count;
+  static const uint32_t transpose = false;
+};
+
+COMPILE_ASSERT(sizeof(UniformMatrix3x2fvImmediate) == 12,
+               Sizeof_UniformMatrix3x2fvImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(UniformMatrix3x2fvImmediate, header) == 0,
+               OffsetOf_UniformMatrix3x2fvImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(UniformMatrix3x2fvImmediate, location) == 4,
+               OffsetOf_UniformMatrix3x2fvImmediate_location_not_4);
+COMPILE_ASSERT(offsetof(UniformMatrix3x2fvImmediate, count) == 8,
+               OffsetOf_UniformMatrix3x2fvImmediate_count_not_8);
+
+struct UniformMatrix3x4fvImmediate {
+  typedef UniformMatrix3x4fvImmediate ValueType;
+  static const CommandId kCmdId = kUniformMatrix3x4fvImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(GLfloat) * 12 * count);  // NOLINT
+  }
+
+  static uint32_t ComputeSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize(count));  // NOLINT
+  }
+
+  void SetHeader(GLsizei count) {
+    header.SetCmdByTotalSize<ValueType>(ComputeSize(count));
+  }
+
+  void Init(GLint _location, GLsizei _count, const GLfloat* _value) {
+    SetHeader(_count);
+    location = _location;
+    count = _count;
+    memcpy(ImmediateDataAddress(this), _value, ComputeDataSize(_count));
+  }
+
+  void* Set(void* cmd, GLint _location, GLsizei _count, const GLfloat* _value) {
+    static_cast<ValueType*>(cmd)->Init(_location, _count, _value);
+    const uint32_t size = ComputeSize(_count);
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  int32_t count;
+  static const uint32_t transpose = false;
+};
+
+COMPILE_ASSERT(sizeof(UniformMatrix3x4fvImmediate) == 12,
+               Sizeof_UniformMatrix3x4fvImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(UniformMatrix3x4fvImmediate, header) == 0,
+               OffsetOf_UniformMatrix3x4fvImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(UniformMatrix3x4fvImmediate, location) == 4,
+               OffsetOf_UniformMatrix3x4fvImmediate_location_not_4);
+COMPILE_ASSERT(offsetof(UniformMatrix3x4fvImmediate, count) == 8,
+               OffsetOf_UniformMatrix3x4fvImmediate_count_not_8);
+
 struct UniformMatrix4fvImmediate {
   typedef UniformMatrix4fvImmediate ValueType;
   static const CommandId kCmdId = kUniformMatrix4fvImmediate;
@@ -6023,6 +6807,100 @@
 COMPILE_ASSERT(offsetof(UniformMatrix4fvImmediate, count) == 8,
                OffsetOf_UniformMatrix4fvImmediate_count_not_8);
 
+struct UniformMatrix4x2fvImmediate {
+  typedef UniformMatrix4x2fvImmediate ValueType;
+  static const CommandId kCmdId = kUniformMatrix4x2fvImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(GLfloat) * 8 * count);  // NOLINT
+  }
+
+  static uint32_t ComputeSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize(count));  // NOLINT
+  }
+
+  void SetHeader(GLsizei count) {
+    header.SetCmdByTotalSize<ValueType>(ComputeSize(count));
+  }
+
+  void Init(GLint _location, GLsizei _count, const GLfloat* _value) {
+    SetHeader(_count);
+    location = _location;
+    count = _count;
+    memcpy(ImmediateDataAddress(this), _value, ComputeDataSize(_count));
+  }
+
+  void* Set(void* cmd, GLint _location, GLsizei _count, const GLfloat* _value) {
+    static_cast<ValueType*>(cmd)->Init(_location, _count, _value);
+    const uint32_t size = ComputeSize(_count);
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  int32_t count;
+  static const uint32_t transpose = false;
+};
+
+COMPILE_ASSERT(sizeof(UniformMatrix4x2fvImmediate) == 12,
+               Sizeof_UniformMatrix4x2fvImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(UniformMatrix4x2fvImmediate, header) == 0,
+               OffsetOf_UniformMatrix4x2fvImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(UniformMatrix4x2fvImmediate, location) == 4,
+               OffsetOf_UniformMatrix4x2fvImmediate_location_not_4);
+COMPILE_ASSERT(offsetof(UniformMatrix4x2fvImmediate, count) == 8,
+               OffsetOf_UniformMatrix4x2fvImmediate_count_not_8);
+
+struct UniformMatrix4x3fvImmediate {
+  typedef UniformMatrix4x3fvImmediate ValueType;
+  static const CommandId kCmdId = kUniformMatrix4x3fvImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(GLfloat) * 12 * count);  // NOLINT
+  }
+
+  static uint32_t ComputeSize(GLsizei count) {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize(count));  // NOLINT
+  }
+
+  void SetHeader(GLsizei count) {
+    header.SetCmdByTotalSize<ValueType>(ComputeSize(count));
+  }
+
+  void Init(GLint _location, GLsizei _count, const GLfloat* _value) {
+    SetHeader(_count);
+    location = _location;
+    count = _count;
+    memcpy(ImmediateDataAddress(this), _value, ComputeDataSize(_count));
+  }
+
+  void* Set(void* cmd, GLint _location, GLsizei _count, const GLfloat* _value) {
+    static_cast<ValueType*>(cmd)->Init(_location, _count, _value);
+    const uint32_t size = ComputeSize(_count);
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  int32_t location;
+  int32_t count;
+  static const uint32_t transpose = false;
+};
+
+COMPILE_ASSERT(sizeof(UniformMatrix4x3fvImmediate) == 12,
+               Sizeof_UniformMatrix4x3fvImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(UniformMatrix4x3fvImmediate, header) == 0,
+               OffsetOf_UniformMatrix4x3fvImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(UniformMatrix4x3fvImmediate, location) == 4,
+               OffsetOf_UniformMatrix4x3fvImmediate_location_not_4);
+COMPILE_ASSERT(offsetof(UniformMatrix4x3fvImmediate, count) == 8,
+               OffsetOf_UniformMatrix4x3fvImmediate_count_not_8);
+
 struct UseProgram {
   typedef UseProgram ValueType;
   static const CommandId kCmdId = kUseProgram;
@@ -6420,6 +7298,246 @@
 COMPILE_ASSERT(offsetof(VertexAttrib4fvImmediate, indx) == 4,
                OffsetOf_VertexAttrib4fvImmediate_indx_not_4);
 
+struct VertexAttribI4i {
+  typedef VertexAttribI4i ValueType;
+  static const CommandId kCmdId = kVertexAttribI4i;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLuint _indx, GLint _x, GLint _y, GLint _z, GLint _w) {
+    SetHeader();
+    indx = _indx;
+    x = _x;
+    y = _y;
+    z = _z;
+    w = _w;
+  }
+
+  void* Set(void* cmd, GLuint _indx, GLint _x, GLint _y, GLint _z, GLint _w) {
+    static_cast<ValueType*>(cmd)->Init(_indx, _x, _y, _z, _w);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  uint32_t indx;
+  int32_t x;
+  int32_t y;
+  int32_t z;
+  int32_t w;
+};
+
+COMPILE_ASSERT(sizeof(VertexAttribI4i) == 24, Sizeof_VertexAttribI4i_is_not_24);
+COMPILE_ASSERT(offsetof(VertexAttribI4i, header) == 0,
+               OffsetOf_VertexAttribI4i_header_not_0);
+COMPILE_ASSERT(offsetof(VertexAttribI4i, indx) == 4,
+               OffsetOf_VertexAttribI4i_indx_not_4);
+COMPILE_ASSERT(offsetof(VertexAttribI4i, x) == 8,
+               OffsetOf_VertexAttribI4i_x_not_8);
+COMPILE_ASSERT(offsetof(VertexAttribI4i, y) == 12,
+               OffsetOf_VertexAttribI4i_y_not_12);
+COMPILE_ASSERT(offsetof(VertexAttribI4i, z) == 16,
+               OffsetOf_VertexAttribI4i_z_not_16);
+COMPILE_ASSERT(offsetof(VertexAttribI4i, w) == 20,
+               OffsetOf_VertexAttribI4i_w_not_20);
+
+struct VertexAttribI4ivImmediate {
+  typedef VertexAttribI4ivImmediate ValueType;
+  static const CommandId kCmdId = kVertexAttribI4ivImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize() {
+    return static_cast<uint32_t>(sizeof(GLint) * 4);  // NOLINT
+  }
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize());  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmdByTotalSize<ValueType>(ComputeSize()); }
+
+  void Init(GLuint _indx, const GLint* _values) {
+    SetHeader();
+    indx = _indx;
+    memcpy(ImmediateDataAddress(this), _values, ComputeDataSize());
+  }
+
+  void* Set(void* cmd, GLuint _indx, const GLint* _values) {
+    static_cast<ValueType*>(cmd)->Init(_indx, _values);
+    const uint32_t size = ComputeSize();
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  uint32_t indx;
+};
+
+COMPILE_ASSERT(sizeof(VertexAttribI4ivImmediate) == 8,
+               Sizeof_VertexAttribI4ivImmediate_is_not_8);
+COMPILE_ASSERT(offsetof(VertexAttribI4ivImmediate, header) == 0,
+               OffsetOf_VertexAttribI4ivImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(VertexAttribI4ivImmediate, indx) == 4,
+               OffsetOf_VertexAttribI4ivImmediate_indx_not_4);
+
+struct VertexAttribI4ui {
+  typedef VertexAttribI4ui ValueType;
+  static const CommandId kCmdId = kVertexAttribI4ui;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLuint _indx, GLuint _x, GLuint _y, GLuint _z, GLuint _w) {
+    SetHeader();
+    indx = _indx;
+    x = _x;
+    y = _y;
+    z = _z;
+    w = _w;
+  }
+
+  void* Set(void* cmd,
+            GLuint _indx,
+            GLuint _x,
+            GLuint _y,
+            GLuint _z,
+            GLuint _w) {
+    static_cast<ValueType*>(cmd)->Init(_indx, _x, _y, _z, _w);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  uint32_t indx;
+  uint32_t x;
+  uint32_t y;
+  uint32_t z;
+  uint32_t w;
+};
+
+COMPILE_ASSERT(sizeof(VertexAttribI4ui) == 24,
+               Sizeof_VertexAttribI4ui_is_not_24);
+COMPILE_ASSERT(offsetof(VertexAttribI4ui, header) == 0,
+               OffsetOf_VertexAttribI4ui_header_not_0);
+COMPILE_ASSERT(offsetof(VertexAttribI4ui, indx) == 4,
+               OffsetOf_VertexAttribI4ui_indx_not_4);
+COMPILE_ASSERT(offsetof(VertexAttribI4ui, x) == 8,
+               OffsetOf_VertexAttribI4ui_x_not_8);
+COMPILE_ASSERT(offsetof(VertexAttribI4ui, y) == 12,
+               OffsetOf_VertexAttribI4ui_y_not_12);
+COMPILE_ASSERT(offsetof(VertexAttribI4ui, z) == 16,
+               OffsetOf_VertexAttribI4ui_z_not_16);
+COMPILE_ASSERT(offsetof(VertexAttribI4ui, w) == 20,
+               OffsetOf_VertexAttribI4ui_w_not_20);
+
+struct VertexAttribI4uivImmediate {
+  typedef VertexAttribI4uivImmediate ValueType;
+  static const CommandId kCmdId = kVertexAttribI4uivImmediate;
+  static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeDataSize() {
+    return static_cast<uint32_t>(sizeof(GLuint) * 4);  // NOLINT
+  }
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType) +
+                                 ComputeDataSize());  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmdByTotalSize<ValueType>(ComputeSize()); }
+
+  void Init(GLuint _indx, const GLuint* _values) {
+    SetHeader();
+    indx = _indx;
+    memcpy(ImmediateDataAddress(this), _values, ComputeDataSize());
+  }
+
+  void* Set(void* cmd, GLuint _indx, const GLuint* _values) {
+    static_cast<ValueType*>(cmd)->Init(_indx, _values);
+    const uint32_t size = ComputeSize();
+    return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+  }
+
+  gpu::CommandHeader header;
+  uint32_t indx;
+};
+
+COMPILE_ASSERT(sizeof(VertexAttribI4uivImmediate) == 8,
+               Sizeof_VertexAttribI4uivImmediate_is_not_8);
+COMPILE_ASSERT(offsetof(VertexAttribI4uivImmediate, header) == 0,
+               OffsetOf_VertexAttribI4uivImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(VertexAttribI4uivImmediate, indx) == 4,
+               OffsetOf_VertexAttribI4uivImmediate_indx_not_4);
+
+struct VertexAttribIPointer {
+  typedef VertexAttribIPointer ValueType;
+  static const CommandId kCmdId = kVertexAttribIPointer;
+  static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+  static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(3);
+
+  static uint32_t ComputeSize() {
+    return static_cast<uint32_t>(sizeof(ValueType));  // NOLINT
+  }
+
+  void SetHeader() { header.SetCmd<ValueType>(); }
+
+  void Init(GLuint _indx,
+            GLint _size,
+            GLenum _type,
+            GLsizei _stride,
+            GLuint _offset) {
+    SetHeader();
+    indx = _indx;
+    size = _size;
+    type = _type;
+    stride = _stride;
+    offset = _offset;
+  }
+
+  void* Set(void* cmd,
+            GLuint _indx,
+            GLint _size,
+            GLenum _type,
+            GLsizei _stride,
+            GLuint _offset) {
+    static_cast<ValueType*>(cmd)->Init(_indx, _size, _type, _stride, _offset);
+    return NextCmdAddress<ValueType>(cmd);
+  }
+
+  gpu::CommandHeader header;
+  uint32_t indx;
+  int32_t size;
+  uint32_t type;
+  int32_t stride;
+  uint32_t offset;
+};
+
+COMPILE_ASSERT(sizeof(VertexAttribIPointer) == 24,
+               Sizeof_VertexAttribIPointer_is_not_24);
+COMPILE_ASSERT(offsetof(VertexAttribIPointer, header) == 0,
+               OffsetOf_VertexAttribIPointer_header_not_0);
+COMPILE_ASSERT(offsetof(VertexAttribIPointer, indx) == 4,
+               OffsetOf_VertexAttribIPointer_indx_not_4);
+COMPILE_ASSERT(offsetof(VertexAttribIPointer, size) == 8,
+               OffsetOf_VertexAttribIPointer_size_not_8);
+COMPILE_ASSERT(offsetof(VertexAttribIPointer, type) == 12,
+               OffsetOf_VertexAttribIPointer_type_not_12);
+COMPILE_ASSERT(offsetof(VertexAttribIPointer, stride) == 16,
+               OffsetOf_VertexAttribIPointer_stride_not_16);
+COMPILE_ASSERT(offsetof(VertexAttribIPointer, offset) == 20,
+               OffsetOf_VertexAttribIPointer_offset_not_20);
+
 struct VertexAttribPointer {
   typedef VertexAttribPointer ValueType;
   static const CommandId kCmdId = kVertexAttribPointer;
diff --git a/gpu/command_buffer/common/gles2_cmd_format_test_autogen.h b/gpu/command_buffer/common/gles2_cmd_format_test_autogen.h
index d1470d4..acc5e77 100644
--- a/gpu/command_buffer/common/gles2_cmd_format_test_autogen.h
+++ b/gpu/command_buffer/common/gles2_cmd_format_test_autogen.h
@@ -366,6 +366,23 @@
   CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
 }
 
+TEST_F(GLES2FormatTest, CopyBufferSubData) {
+  cmds::CopyBufferSubData& cmd = *GetBufferAs<cmds::CopyBufferSubData>();
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLenum>(11), static_cast<GLenum>(12),
+              static_cast<GLintptr>(13), static_cast<GLintptr>(14),
+              static_cast<GLsizeiptr>(15));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::CopyBufferSubData::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLenum>(11), cmd.readtarget);
+  EXPECT_EQ(static_cast<GLenum>(12), cmd.writetarget);
+  EXPECT_EQ(static_cast<GLintptr>(13), cmd.readoffset);
+  EXPECT_EQ(static_cast<GLintptr>(14), cmd.writeoffset);
+  EXPECT_EQ(static_cast<GLsizeiptr>(15), cmd.size);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
 TEST_F(GLES2FormatTest, CopyTexImage2D) {
   cmds::CopyTexImage2D& cmd = *GetBufferAs<cmds::CopyTexImage2D>();
   void* next_cmd = cmd.Set(&cmd, static_cast<GLenum>(11),
@@ -686,6 +703,23 @@
   CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
 }
 
+TEST_F(GLES2FormatTest, FramebufferTextureLayer) {
+  cmds::FramebufferTextureLayer& cmd =
+      *GetBufferAs<cmds::FramebufferTextureLayer>();
+  void* next_cmd = cmd.Set(&cmd, static_cast<GLenum>(11),
+                           static_cast<GLenum>(12), static_cast<GLuint>(13),
+                           static_cast<GLint>(14), static_cast<GLint>(15));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::FramebufferTextureLayer::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLenum>(11), cmd.target);
+  EXPECT_EQ(static_cast<GLenum>(12), cmd.attachment);
+  EXPECT_EQ(static_cast<GLuint>(13), cmd.texture);
+  EXPECT_EQ(static_cast<GLint>(14), cmd.level);
+  EXPECT_EQ(static_cast<GLint>(15), cmd.layer);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
 TEST_F(GLES2FormatTest, FrontFace) {
   cmds::FrontFace& cmd = *GetBufferAs<cmds::FrontFace>();
   void* next_cmd = cmd.Set(&cmd, static_cast<GLenum>(11));
@@ -925,6 +959,24 @@
   CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
 }
 
+TEST_F(GLES2FormatTest, GetInternalformativ) {
+  cmds::GetInternalformativ& cmd = *GetBufferAs<cmds::GetInternalformativ>();
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLenum>(11), static_cast<GLenum>(12),
+              static_cast<GLenum>(13), static_cast<GLsizei>(14),
+              static_cast<uint32_t>(15), static_cast<uint32_t>(16));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::GetInternalformativ::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLenum>(11), cmd.target);
+  EXPECT_EQ(static_cast<GLenum>(12), cmd.format);
+  EXPECT_EQ(static_cast<GLenum>(13), cmd.pname);
+  EXPECT_EQ(static_cast<GLsizei>(14), cmd.bufSize);
+  EXPECT_EQ(static_cast<uint32_t>(15), cmd.params_shm_id);
+  EXPECT_EQ(static_cast<uint32_t>(16), cmd.params_shm_offset);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
 TEST_F(GLES2FormatTest, GetProgramiv) {
   cmds::GetProgramiv& cmd = *GetBufferAs<cmds::GetProgramiv>();
   void* next_cmd =
@@ -1574,6 +1626,24 @@
   // TODO(gman): Check that data was inserted;
 }
 
+TEST_F(GLES2FormatTest, TexStorage3D) {
+  cmds::TexStorage3D& cmd = *GetBufferAs<cmds::TexStorage3D>();
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLenum>(11), static_cast<GLsizei>(12),
+              static_cast<GLenum>(13), static_cast<GLsizei>(14),
+              static_cast<GLsizei>(15), static_cast<GLsizei>(16));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::TexStorage3D::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLenum>(11), cmd.target);
+  EXPECT_EQ(static_cast<GLsizei>(12), cmd.levels);
+  EXPECT_EQ(static_cast<GLenum>(13), cmd.internalFormat);
+  EXPECT_EQ(static_cast<GLsizei>(14), cmd.width);
+  EXPECT_EQ(static_cast<GLsizei>(15), cmd.height);
+  EXPECT_EQ(static_cast<GLsizei>(16), cmd.depth);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
 TEST_F(GLES2FormatTest, TexSubImage2D) {
   cmds::TexSubImage2D& cmd = *GetBufferAs<cmds::TexSubImage2D>();
   void* next_cmd = cmd.Set(
@@ -1665,6 +1735,40 @@
   // TODO(gman): Check that data was inserted;
 }
 
+TEST_F(GLES2FormatTest, Uniform1ui) {
+  cmds::Uniform1ui& cmd = *GetBufferAs<cmds::Uniform1ui>();
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(11), static_cast<GLuint>(12));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::Uniform1ui::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(11), cmd.location);
+  EXPECT_EQ(static_cast<GLuint>(12), cmd.x);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
+TEST_F(GLES2FormatTest, Uniform1uivImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLuint data[] = {
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 1),
+  };
+  cmds::Uniform1uivImmediate& cmd = *GetBufferAs<cmds::Uniform1uivImmediate>();
+  const GLsizei kNumElements = 2;
+  const size_t kExpectedCmdSize =
+      sizeof(cmd) + kNumElements * sizeof(GLuint) * 1;
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(1), static_cast<GLsizei>(2), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::Uniform1uivImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(kExpectedCmdSize, cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(1), cmd.location);
+  EXPECT_EQ(static_cast<GLsizei>(2), cmd.count);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
 TEST_F(GLES2FormatTest, Uniform2f) {
   cmds::Uniform2f& cmd = *GetBufferAs<cmds::Uniform2f>();
   void* next_cmd = cmd.Set(&cmd, static_cast<GLint>(11),
@@ -1737,6 +1841,43 @@
   // TODO(gman): Check that data was inserted;
 }
 
+TEST_F(GLES2FormatTest, Uniform2ui) {
+  cmds::Uniform2ui& cmd = *GetBufferAs<cmds::Uniform2ui>();
+  void* next_cmd = cmd.Set(&cmd, static_cast<GLint>(11),
+                           static_cast<GLuint>(12), static_cast<GLuint>(13));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::Uniform2ui::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(11), cmd.location);
+  EXPECT_EQ(static_cast<GLuint>(12), cmd.x);
+  EXPECT_EQ(static_cast<GLuint>(13), cmd.y);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
+TEST_F(GLES2FormatTest, Uniform2uivImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLuint data[] = {
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 3),
+  };
+  cmds::Uniform2uivImmediate& cmd = *GetBufferAs<cmds::Uniform2uivImmediate>();
+  const GLsizei kNumElements = 2;
+  const size_t kExpectedCmdSize =
+      sizeof(cmd) + kNumElements * sizeof(GLuint) * 2;
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(1), static_cast<GLsizei>(2), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::Uniform2uivImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(kExpectedCmdSize, cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(1), cmd.location);
+  EXPECT_EQ(static_cast<GLsizei>(2), cmd.count);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
 TEST_F(GLES2FormatTest, Uniform3f) {
   cmds::Uniform3f& cmd = *GetBufferAs<cmds::Uniform3f>();
   void* next_cmd =
@@ -1816,6 +1957,47 @@
   // TODO(gman): Check that data was inserted;
 }
 
+TEST_F(GLES2FormatTest, Uniform3ui) {
+  cmds::Uniform3ui& cmd = *GetBufferAs<cmds::Uniform3ui>();
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(11), static_cast<GLuint>(12),
+              static_cast<GLuint>(13), static_cast<GLuint>(14));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::Uniform3ui::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(11), cmd.location);
+  EXPECT_EQ(static_cast<GLuint>(12), cmd.x);
+  EXPECT_EQ(static_cast<GLuint>(13), cmd.y);
+  EXPECT_EQ(static_cast<GLuint>(14), cmd.z);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
+TEST_F(GLES2FormatTest, Uniform3uivImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLuint data[] = {
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 3),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 4),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 5),
+  };
+  cmds::Uniform3uivImmediate& cmd = *GetBufferAs<cmds::Uniform3uivImmediate>();
+  const GLsizei kNumElements = 2;
+  const size_t kExpectedCmdSize =
+      sizeof(cmd) + kNumElements * sizeof(GLuint) * 3;
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(1), static_cast<GLsizei>(2), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::Uniform3uivImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(kExpectedCmdSize, cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(1), cmd.location);
+  EXPECT_EQ(static_cast<GLsizei>(2), cmd.count);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
 TEST_F(GLES2FormatTest, Uniform4f) {
   cmds::Uniform4f& cmd = *GetBufferAs<cmds::Uniform4f>();
   void* next_cmd = cmd.Set(&cmd, static_cast<GLint>(11),
@@ -1902,6 +2084,50 @@
   // TODO(gman): Check that data was inserted;
 }
 
+TEST_F(GLES2FormatTest, Uniform4ui) {
+  cmds::Uniform4ui& cmd = *GetBufferAs<cmds::Uniform4ui>();
+  void* next_cmd = cmd.Set(&cmd, static_cast<GLint>(11),
+                           static_cast<GLuint>(12), static_cast<GLuint>(13),
+                           static_cast<GLuint>(14), static_cast<GLuint>(15));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::Uniform4ui::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(11), cmd.location);
+  EXPECT_EQ(static_cast<GLuint>(12), cmd.x);
+  EXPECT_EQ(static_cast<GLuint>(13), cmd.y);
+  EXPECT_EQ(static_cast<GLuint>(14), cmd.z);
+  EXPECT_EQ(static_cast<GLuint>(15), cmd.w);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
+TEST_F(GLES2FormatTest, Uniform4uivImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLuint data[] = {
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 3),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 4),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 5),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 6),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 7),
+  };
+  cmds::Uniform4uivImmediate& cmd = *GetBufferAs<cmds::Uniform4uivImmediate>();
+  const GLsizei kNumElements = 2;
+  const size_t kExpectedCmdSize =
+      sizeof(cmd) + kNumElements * sizeof(GLuint) * 4;
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(1), static_cast<GLsizei>(2), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::Uniform4uivImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(kExpectedCmdSize, cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(1), cmd.location);
+  EXPECT_EQ(static_cast<GLsizei>(2), cmd.count);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
 TEST_F(GLES2FormatTest, UniformMatrix2fvImmediate) {
   const int kSomeBaseValueToTestWith = 51;
   static GLfloat data[] = {
@@ -1931,6 +2157,76 @@
   // TODO(gman): Check that data was inserted;
 }
 
+TEST_F(GLES2FormatTest, UniformMatrix2x3fvImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLfloat data[] = {
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 3),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 4),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 5),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 6),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 7),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 8),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 9),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 10),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 11),
+  };
+  cmds::UniformMatrix2x3fvImmediate& cmd =
+      *GetBufferAs<cmds::UniformMatrix2x3fvImmediate>();
+  const GLsizei kNumElements = 2;
+  const size_t kExpectedCmdSize =
+      sizeof(cmd) + kNumElements * sizeof(GLfloat) * 6;
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(1), static_cast<GLsizei>(2), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::UniformMatrix2x3fvImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(kExpectedCmdSize, cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(1), cmd.location);
+  EXPECT_EQ(static_cast<GLsizei>(2), cmd.count);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
+TEST_F(GLES2FormatTest, UniformMatrix2x4fvImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLfloat data[] = {
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 3),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 4),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 5),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 6),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 7),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 8),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 9),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 10),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 11),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 12),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 13),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 14),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 15),
+  };
+  cmds::UniformMatrix2x4fvImmediate& cmd =
+      *GetBufferAs<cmds::UniformMatrix2x4fvImmediate>();
+  const GLsizei kNumElements = 2;
+  const size_t kExpectedCmdSize =
+      sizeof(cmd) + kNumElements * sizeof(GLfloat) * 8;
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(1), static_cast<GLsizei>(2), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::UniformMatrix2x4fvImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(kExpectedCmdSize, cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(1), cmd.location);
+  EXPECT_EQ(static_cast<GLsizei>(2), cmd.count);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
 TEST_F(GLES2FormatTest, UniformMatrix3fvImmediate) {
   const int kSomeBaseValueToTestWith = 51;
   static GLfloat data[] = {
@@ -1970,6 +2266,84 @@
   // TODO(gman): Check that data was inserted;
 }
 
+TEST_F(GLES2FormatTest, UniformMatrix3x2fvImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLfloat data[] = {
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 3),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 4),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 5),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 6),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 7),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 8),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 9),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 10),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 11),
+  };
+  cmds::UniformMatrix3x2fvImmediate& cmd =
+      *GetBufferAs<cmds::UniformMatrix3x2fvImmediate>();
+  const GLsizei kNumElements = 2;
+  const size_t kExpectedCmdSize =
+      sizeof(cmd) + kNumElements * sizeof(GLfloat) * 6;
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(1), static_cast<GLsizei>(2), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::UniformMatrix3x2fvImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(kExpectedCmdSize, cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(1), cmd.location);
+  EXPECT_EQ(static_cast<GLsizei>(2), cmd.count);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
+TEST_F(GLES2FormatTest, UniformMatrix3x4fvImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLfloat data[] = {
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 3),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 4),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 5),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 6),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 7),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 8),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 9),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 10),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 11),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 12),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 13),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 14),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 15),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 16),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 17),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 18),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 19),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 20),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 21),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 22),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 23),
+  };
+  cmds::UniformMatrix3x4fvImmediate& cmd =
+      *GetBufferAs<cmds::UniformMatrix3x4fvImmediate>();
+  const GLsizei kNumElements = 2;
+  const size_t kExpectedCmdSize =
+      sizeof(cmd) + kNumElements * sizeof(GLfloat) * 12;
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(1), static_cast<GLsizei>(2), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::UniformMatrix3x4fvImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(kExpectedCmdSize, cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(1), cmd.location);
+  EXPECT_EQ(static_cast<GLsizei>(2), cmd.count);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
 TEST_F(GLES2FormatTest, UniformMatrix4fvImmediate) {
   const int kSomeBaseValueToTestWith = 51;
   static GLfloat data[] = {
@@ -2023,6 +2397,88 @@
   // TODO(gman): Check that data was inserted;
 }
 
+TEST_F(GLES2FormatTest, UniformMatrix4x2fvImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLfloat data[] = {
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 3),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 4),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 5),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 6),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 7),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 8),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 9),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 10),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 11),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 12),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 13),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 14),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 15),
+  };
+  cmds::UniformMatrix4x2fvImmediate& cmd =
+      *GetBufferAs<cmds::UniformMatrix4x2fvImmediate>();
+  const GLsizei kNumElements = 2;
+  const size_t kExpectedCmdSize =
+      sizeof(cmd) + kNumElements * sizeof(GLfloat) * 8;
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(1), static_cast<GLsizei>(2), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::UniformMatrix4x2fvImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(kExpectedCmdSize, cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(1), cmd.location);
+  EXPECT_EQ(static_cast<GLsizei>(2), cmd.count);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
+TEST_F(GLES2FormatTest, UniformMatrix4x3fvImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLfloat data[] = {
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 3),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 4),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 5),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 6),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 7),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 8),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 9),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 10),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 11),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 12),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 13),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 14),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 15),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 16),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 17),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 18),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 19),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 20),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 21),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 22),
+      static_cast<GLfloat>(kSomeBaseValueToTestWith + 23),
+  };
+  cmds::UniformMatrix4x3fvImmediate& cmd =
+      *GetBufferAs<cmds::UniformMatrix4x3fvImmediate>();
+  const GLsizei kNumElements = 2;
+  const size_t kExpectedCmdSize =
+      sizeof(cmd) + kNumElements * sizeof(GLfloat) * 12;
+  void* next_cmd =
+      cmd.Set(&cmd, static_cast<GLint>(1), static_cast<GLsizei>(2), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::UniformMatrix4x3fvImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(kExpectedCmdSize, cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLint>(1), cmd.location);
+  EXPECT_EQ(static_cast<GLsizei>(2), cmd.count);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
 TEST_F(GLES2FormatTest, UseProgram) {
   cmds::UseProgram& cmd = *GetBufferAs<cmds::UseProgram>();
   void* next_cmd = cmd.Set(&cmd, static_cast<GLuint>(11));
@@ -2177,6 +2633,96 @@
   // TODO(gman): Check that data was inserted;
 }
 
+TEST_F(GLES2FormatTest, VertexAttribI4i) {
+  cmds::VertexAttribI4i& cmd = *GetBufferAs<cmds::VertexAttribI4i>();
+  void* next_cmd = cmd.Set(&cmd, static_cast<GLuint>(11),
+                           static_cast<GLint>(12), static_cast<GLint>(13),
+                           static_cast<GLint>(14), static_cast<GLint>(15));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::VertexAttribI4i::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLuint>(11), cmd.indx);
+  EXPECT_EQ(static_cast<GLint>(12), cmd.x);
+  EXPECT_EQ(static_cast<GLint>(13), cmd.y);
+  EXPECT_EQ(static_cast<GLint>(14), cmd.z);
+  EXPECT_EQ(static_cast<GLint>(15), cmd.w);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
+TEST_F(GLES2FormatTest, VertexAttribI4ivImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLint data[] = {
+      static_cast<GLint>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLint>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLint>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLint>(kSomeBaseValueToTestWith + 3),
+  };
+  cmds::VertexAttribI4ivImmediate& cmd =
+      *GetBufferAs<cmds::VertexAttribI4ivImmediate>();
+  void* next_cmd = cmd.Set(&cmd, static_cast<GLuint>(11), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::VertexAttribI4ivImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)),
+            cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLuint>(11), cmd.indx);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
+TEST_F(GLES2FormatTest, VertexAttribI4ui) {
+  cmds::VertexAttribI4ui& cmd = *GetBufferAs<cmds::VertexAttribI4ui>();
+  void* next_cmd = cmd.Set(&cmd, static_cast<GLuint>(11),
+                           static_cast<GLuint>(12), static_cast<GLuint>(13),
+                           static_cast<GLuint>(14), static_cast<GLuint>(15));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::VertexAttribI4ui::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLuint>(11), cmd.indx);
+  EXPECT_EQ(static_cast<GLuint>(12), cmd.x);
+  EXPECT_EQ(static_cast<GLuint>(13), cmd.y);
+  EXPECT_EQ(static_cast<GLuint>(14), cmd.z);
+  EXPECT_EQ(static_cast<GLuint>(15), cmd.w);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
+TEST_F(GLES2FormatTest, VertexAttribI4uivImmediate) {
+  const int kSomeBaseValueToTestWith = 51;
+  static GLuint data[] = {
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 0),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 1),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 2),
+      static_cast<GLuint>(kSomeBaseValueToTestWith + 3),
+  };
+  cmds::VertexAttribI4uivImmediate& cmd =
+      *GetBufferAs<cmds::VertexAttribI4uivImmediate>();
+  void* next_cmd = cmd.Set(&cmd, static_cast<GLuint>(11), data);
+  EXPECT_EQ(static_cast<uint32_t>(cmds::VertexAttribI4uivImmediate::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)),
+            cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLuint>(11), cmd.indx);
+  CheckBytesWrittenMatchesExpectedSize(
+      next_cmd, sizeof(cmd) + RoundSizeToMultipleOfEntries(sizeof(data)));
+  // TODO(gman): Check that data was inserted;
+}
+
+TEST_F(GLES2FormatTest, VertexAttribIPointer) {
+  cmds::VertexAttribIPointer& cmd = *GetBufferAs<cmds::VertexAttribIPointer>();
+  void* next_cmd = cmd.Set(&cmd, static_cast<GLuint>(11),
+                           static_cast<GLint>(12), static_cast<GLenum>(13),
+                           static_cast<GLsizei>(14), static_cast<GLuint>(15));
+  EXPECT_EQ(static_cast<uint32_t>(cmds::VertexAttribIPointer::kCmdId),
+            cmd.header.command);
+  EXPECT_EQ(sizeof(cmd), cmd.header.size * 4u);
+  EXPECT_EQ(static_cast<GLuint>(11), cmd.indx);
+  EXPECT_EQ(static_cast<GLint>(12), cmd.size);
+  EXPECT_EQ(static_cast<GLenum>(13), cmd.type);
+  EXPECT_EQ(static_cast<GLsizei>(14), cmd.stride);
+  EXPECT_EQ(static_cast<GLuint>(15), cmd.offset);
+  CheckBytesWrittenMatchesExpectedSize(next_cmd, sizeof(cmd));
+}
+
 TEST_F(GLES2FormatTest, VertexAttribPointer) {
   cmds::VertexAttribPointer& cmd = *GetBufferAs<cmds::VertexAttribPointer>();
   void* next_cmd =
diff --git a/gpu/command_buffer/common/gles2_cmd_ids_autogen.h b/gpu/command_buffer/common/gles2_cmd_ids_autogen.h
index 9c98f51..f1bb286 100644
--- a/gpu/command_buffer/common/gles2_cmd_ids_autogen.h
+++ b/gpu/command_buffer/common/gles2_cmd_ids_autogen.h
@@ -37,186 +37,209 @@
   OP(CompressedTexImage2D)                     /* 278 */ \
   OP(CompressedTexSubImage2DBucket)            /* 279 */ \
   OP(CompressedTexSubImage2D)                  /* 280 */ \
-  OP(CopyTexImage2D)                           /* 281 */ \
-  OP(CopyTexSubImage2D)                        /* 282 */ \
-  OP(CreateProgram)                            /* 283 */ \
-  OP(CreateShader)                             /* 284 */ \
-  OP(CullFace)                                 /* 285 */ \
-  OP(DeleteBuffersImmediate)                   /* 286 */ \
-  OP(DeleteFramebuffersImmediate)              /* 287 */ \
-  OP(DeleteProgram)                            /* 288 */ \
-  OP(DeleteRenderbuffersImmediate)             /* 289 */ \
-  OP(DeleteShader)                             /* 290 */ \
-  OP(DeleteTexturesImmediate)                  /* 291 */ \
-  OP(DepthFunc)                                /* 292 */ \
-  OP(DepthMask)                                /* 293 */ \
-  OP(DepthRangef)                              /* 294 */ \
-  OP(DetachShader)                             /* 295 */ \
-  OP(Disable)                                  /* 296 */ \
-  OP(DisableVertexAttribArray)                 /* 297 */ \
-  OP(DrawArrays)                               /* 298 */ \
-  OP(DrawElements)                             /* 299 */ \
-  OP(Enable)                                   /* 300 */ \
-  OP(EnableVertexAttribArray)                  /* 301 */ \
-  OP(Finish)                                   /* 302 */ \
-  OP(Flush)                                    /* 303 */ \
-  OP(FramebufferRenderbuffer)                  /* 304 */ \
-  OP(FramebufferTexture2D)                     /* 305 */ \
-  OP(FrontFace)                                /* 306 */ \
-  OP(GenBuffersImmediate)                      /* 307 */ \
-  OP(GenerateMipmap)                           /* 308 */ \
-  OP(GenFramebuffersImmediate)                 /* 309 */ \
-  OP(GenRenderbuffersImmediate)                /* 310 */ \
-  OP(GenTexturesImmediate)                     /* 311 */ \
-  OP(GetActiveAttrib)                          /* 312 */ \
-  OP(GetActiveUniform)                         /* 313 */ \
-  OP(GetAttachedShaders)                       /* 314 */ \
-  OP(GetAttribLocation)                        /* 315 */ \
-  OP(GetBooleanv)                              /* 316 */ \
-  OP(GetBufferParameteriv)                     /* 317 */ \
-  OP(GetError)                                 /* 318 */ \
-  OP(GetFloatv)                                /* 319 */ \
-  OP(GetFramebufferAttachmentParameteriv)      /* 320 */ \
-  OP(GetIntegerv)                              /* 321 */ \
-  OP(GetProgramiv)                             /* 322 */ \
-  OP(GetProgramInfoLog)                        /* 323 */ \
-  OP(GetRenderbufferParameteriv)               /* 324 */ \
-  OP(GetShaderiv)                              /* 325 */ \
-  OP(GetShaderInfoLog)                         /* 326 */ \
-  OP(GetShaderPrecisionFormat)                 /* 327 */ \
-  OP(GetShaderSource)                          /* 328 */ \
-  OP(GetString)                                /* 329 */ \
-  OP(GetTexParameterfv)                        /* 330 */ \
-  OP(GetTexParameteriv)                        /* 331 */ \
-  OP(GetUniformfv)                             /* 332 */ \
-  OP(GetUniformiv)                             /* 333 */ \
-  OP(GetUniformLocation)                       /* 334 */ \
-  OP(GetVertexAttribfv)                        /* 335 */ \
-  OP(GetVertexAttribiv)                        /* 336 */ \
-  OP(GetVertexAttribPointerv)                  /* 337 */ \
-  OP(Hint)                                     /* 338 */ \
-  OP(IsBuffer)                                 /* 339 */ \
-  OP(IsEnabled)                                /* 340 */ \
-  OP(IsFramebuffer)                            /* 341 */ \
-  OP(IsProgram)                                /* 342 */ \
-  OP(IsRenderbuffer)                           /* 343 */ \
-  OP(IsShader)                                 /* 344 */ \
-  OP(IsTexture)                                /* 345 */ \
-  OP(LineWidth)                                /* 346 */ \
-  OP(LinkProgram)                              /* 347 */ \
-  OP(PixelStorei)                              /* 348 */ \
-  OP(PolygonOffset)                            /* 349 */ \
-  OP(ReadPixels)                               /* 350 */ \
-  OP(ReleaseShaderCompiler)                    /* 351 */ \
-  OP(RenderbufferStorage)                      /* 352 */ \
-  OP(SampleCoverage)                           /* 353 */ \
-  OP(Scissor)                                  /* 354 */ \
-  OP(ShaderBinary)                             /* 355 */ \
-  OP(ShaderSourceBucket)                       /* 356 */ \
-  OP(StencilFunc)                              /* 357 */ \
-  OP(StencilFuncSeparate)                      /* 358 */ \
-  OP(StencilMask)                              /* 359 */ \
-  OP(StencilMaskSeparate)                      /* 360 */ \
-  OP(StencilOp)                                /* 361 */ \
-  OP(StencilOpSeparate)                        /* 362 */ \
-  OP(TexImage2D)                               /* 363 */ \
-  OP(TexParameterf)                            /* 364 */ \
-  OP(TexParameterfvImmediate)                  /* 365 */ \
-  OP(TexParameteri)                            /* 366 */ \
-  OP(TexParameterivImmediate)                  /* 367 */ \
-  OP(TexSubImage2D)                            /* 368 */ \
-  OP(Uniform1f)                                /* 369 */ \
-  OP(Uniform1fvImmediate)                      /* 370 */ \
-  OP(Uniform1i)                                /* 371 */ \
-  OP(Uniform1ivImmediate)                      /* 372 */ \
-  OP(Uniform2f)                                /* 373 */ \
-  OP(Uniform2fvImmediate)                      /* 374 */ \
-  OP(Uniform2i)                                /* 375 */ \
-  OP(Uniform2ivImmediate)                      /* 376 */ \
-  OP(Uniform3f)                                /* 377 */ \
-  OP(Uniform3fvImmediate)                      /* 378 */ \
-  OP(Uniform3i)                                /* 379 */ \
-  OP(Uniform3ivImmediate)                      /* 380 */ \
-  OP(Uniform4f)                                /* 381 */ \
-  OP(Uniform4fvImmediate)                      /* 382 */ \
-  OP(Uniform4i)                                /* 383 */ \
-  OP(Uniform4ivImmediate)                      /* 384 */ \
-  OP(UniformMatrix2fvImmediate)                /* 385 */ \
-  OP(UniformMatrix3fvImmediate)                /* 386 */ \
-  OP(UniformMatrix4fvImmediate)                /* 387 */ \
-  OP(UseProgram)                               /* 388 */ \
-  OP(ValidateProgram)                          /* 389 */ \
-  OP(VertexAttrib1f)                           /* 390 */ \
-  OP(VertexAttrib1fvImmediate)                 /* 391 */ \
-  OP(VertexAttrib2f)                           /* 392 */ \
-  OP(VertexAttrib2fvImmediate)                 /* 393 */ \
-  OP(VertexAttrib3f)                           /* 394 */ \
-  OP(VertexAttrib3fvImmediate)                 /* 395 */ \
-  OP(VertexAttrib4f)                           /* 396 */ \
-  OP(VertexAttrib4fvImmediate)                 /* 397 */ \
-  OP(VertexAttribPointer)                      /* 398 */ \
-  OP(Viewport)                                 /* 399 */ \
-  OP(BlitFramebufferCHROMIUM)                  /* 400 */ \
-  OP(RenderbufferStorageMultisampleCHROMIUM)   /* 401 */ \
-  OP(RenderbufferStorageMultisampleEXT)        /* 402 */ \
-  OP(FramebufferTexture2DMultisampleEXT)       /* 403 */ \
-  OP(TexStorage2DEXT)                          /* 404 */ \
-  OP(GenQueriesEXTImmediate)                   /* 405 */ \
-  OP(DeleteQueriesEXTImmediate)                /* 406 */ \
-  OP(BeginQueryEXT)                            /* 407 */ \
-  OP(EndQueryEXT)                              /* 408 */ \
-  OP(InsertEventMarkerEXT)                     /* 409 */ \
-  OP(PushGroupMarkerEXT)                       /* 410 */ \
-  OP(PopGroupMarkerEXT)                        /* 411 */ \
-  OP(GenVertexArraysOESImmediate)              /* 412 */ \
-  OP(DeleteVertexArraysOESImmediate)           /* 413 */ \
-  OP(IsVertexArrayOES)                         /* 414 */ \
-  OP(BindVertexArrayOES)                       /* 415 */ \
-  OP(SwapBuffers)                              /* 416 */ \
-  OP(GetMaxValueInBufferCHROMIUM)              /* 417 */ \
-  OP(EnableFeatureCHROMIUM)                    /* 418 */ \
-  OP(ResizeCHROMIUM)                           /* 419 */ \
-  OP(GetRequestableExtensionsCHROMIUM)         /* 420 */ \
-  OP(RequestExtensionCHROMIUM)                 /* 421 */ \
-  OP(GetProgramInfoCHROMIUM)                   /* 422 */ \
-  OP(GetTranslatedShaderSourceANGLE)           /* 423 */ \
-  OP(PostSubBufferCHROMIUM)                    /* 424 */ \
-  OP(TexImageIOSurface2DCHROMIUM)              /* 425 */ \
-  OP(CopyTextureCHROMIUM)                      /* 426 */ \
-  OP(DrawArraysInstancedANGLE)                 /* 427 */ \
-  OP(DrawElementsInstancedANGLE)               /* 428 */ \
-  OP(VertexAttribDivisorANGLE)                 /* 429 */ \
-  OP(GenMailboxCHROMIUM)                       /* 430 */ \
-  OP(ProduceTextureCHROMIUMImmediate)          /* 431 */ \
-  OP(ProduceTextureDirectCHROMIUMImmediate)    /* 432 */ \
-  OP(ConsumeTextureCHROMIUMImmediate)          /* 433 */ \
-  OP(CreateAndConsumeTextureCHROMIUMImmediate) /* 434 */ \
-  OP(BindUniformLocationCHROMIUMBucket)        /* 435 */ \
-  OP(GenValuebuffersCHROMIUMImmediate)         /* 436 */ \
-  OP(DeleteValuebuffersCHROMIUMImmediate)      /* 437 */ \
-  OP(IsValuebufferCHROMIUM)                    /* 438 */ \
-  OP(BindValuebufferCHROMIUM)                  /* 439 */ \
-  OP(SubscribeValueCHROMIUM)                   /* 440 */ \
-  OP(PopulateSubscribedValuesCHROMIUM)         /* 441 */ \
-  OP(UniformValuebufferCHROMIUM)               /* 442 */ \
-  OP(BindTexImage2DCHROMIUM)                   /* 443 */ \
-  OP(ReleaseTexImage2DCHROMIUM)                /* 444 */ \
-  OP(TraceBeginCHROMIUM)                       /* 445 */ \
-  OP(TraceEndCHROMIUM)                         /* 446 */ \
-  OP(AsyncTexSubImage2DCHROMIUM)               /* 447 */ \
-  OP(AsyncTexImage2DCHROMIUM)                  /* 448 */ \
-  OP(WaitAsyncTexImage2DCHROMIUM)              /* 449 */ \
-  OP(WaitAllAsyncTexImage2DCHROMIUM)           /* 450 */ \
-  OP(DiscardFramebufferEXTImmediate)           /* 451 */ \
-  OP(LoseContextCHROMIUM)                      /* 452 */ \
-  OP(InsertSyncPointCHROMIUM)                  /* 453 */ \
-  OP(WaitSyncPointCHROMIUM)                    /* 454 */ \
-  OP(DrawBuffersEXTImmediate)                  /* 455 */ \
-  OP(DiscardBackbufferCHROMIUM)                /* 456 */ \
-  OP(ScheduleOverlayPlaneCHROMIUM)             /* 457 */ \
-  OP(MatrixLoadfCHROMIUMImmediate)             /* 458 */ \
-  OP(MatrixLoadIdentityCHROMIUM)               /* 459 */ \
-  OP(BlendBarrierKHR)                          /* 460 */
+  OP(CopyBufferSubData)                        /* 281 */ \
+  OP(CopyTexImage2D)                           /* 282 */ \
+  OP(CopyTexSubImage2D)                        /* 283 */ \
+  OP(CreateProgram)                            /* 284 */ \
+  OP(CreateShader)                             /* 285 */ \
+  OP(CullFace)                                 /* 286 */ \
+  OP(DeleteBuffersImmediate)                   /* 287 */ \
+  OP(DeleteFramebuffersImmediate)              /* 288 */ \
+  OP(DeleteProgram)                            /* 289 */ \
+  OP(DeleteRenderbuffersImmediate)             /* 290 */ \
+  OP(DeleteShader)                             /* 291 */ \
+  OP(DeleteTexturesImmediate)                  /* 292 */ \
+  OP(DepthFunc)                                /* 293 */ \
+  OP(DepthMask)                                /* 294 */ \
+  OP(DepthRangef)                              /* 295 */ \
+  OP(DetachShader)                             /* 296 */ \
+  OP(Disable)                                  /* 297 */ \
+  OP(DisableVertexAttribArray)                 /* 298 */ \
+  OP(DrawArrays)                               /* 299 */ \
+  OP(DrawElements)                             /* 300 */ \
+  OP(Enable)                                   /* 301 */ \
+  OP(EnableVertexAttribArray)                  /* 302 */ \
+  OP(Finish)                                   /* 303 */ \
+  OP(Flush)                                    /* 304 */ \
+  OP(FramebufferRenderbuffer)                  /* 305 */ \
+  OP(FramebufferTexture2D)                     /* 306 */ \
+  OP(FramebufferTextureLayer)                  /* 307 */ \
+  OP(FrontFace)                                /* 308 */ \
+  OP(GenBuffersImmediate)                      /* 309 */ \
+  OP(GenerateMipmap)                           /* 310 */ \
+  OP(GenFramebuffersImmediate)                 /* 311 */ \
+  OP(GenRenderbuffersImmediate)                /* 312 */ \
+  OP(GenTexturesImmediate)                     /* 313 */ \
+  OP(GetActiveAttrib)                          /* 314 */ \
+  OP(GetActiveUniform)                         /* 315 */ \
+  OP(GetAttachedShaders)                       /* 316 */ \
+  OP(GetAttribLocation)                        /* 317 */ \
+  OP(GetBooleanv)                              /* 318 */ \
+  OP(GetBufferParameteriv)                     /* 319 */ \
+  OP(GetError)                                 /* 320 */ \
+  OP(GetFloatv)                                /* 321 */ \
+  OP(GetFramebufferAttachmentParameteriv)      /* 322 */ \
+  OP(GetIntegerv)                              /* 323 */ \
+  OP(GetInternalformativ)                      /* 324 */ \
+  OP(GetProgramiv)                             /* 325 */ \
+  OP(GetProgramInfoLog)                        /* 326 */ \
+  OP(GetRenderbufferParameteriv)               /* 327 */ \
+  OP(GetShaderiv)                              /* 328 */ \
+  OP(GetShaderInfoLog)                         /* 329 */ \
+  OP(GetShaderPrecisionFormat)                 /* 330 */ \
+  OP(GetShaderSource)                          /* 331 */ \
+  OP(GetString)                                /* 332 */ \
+  OP(GetTexParameterfv)                        /* 333 */ \
+  OP(GetTexParameteriv)                        /* 334 */ \
+  OP(GetUniformfv)                             /* 335 */ \
+  OP(GetUniformiv)                             /* 336 */ \
+  OP(GetUniformLocation)                       /* 337 */ \
+  OP(GetVertexAttribfv)                        /* 338 */ \
+  OP(GetVertexAttribiv)                        /* 339 */ \
+  OP(GetVertexAttribPointerv)                  /* 340 */ \
+  OP(Hint)                                     /* 341 */ \
+  OP(IsBuffer)                                 /* 342 */ \
+  OP(IsEnabled)                                /* 343 */ \
+  OP(IsFramebuffer)                            /* 344 */ \
+  OP(IsProgram)                                /* 345 */ \
+  OP(IsRenderbuffer)                           /* 346 */ \
+  OP(IsShader)                                 /* 347 */ \
+  OP(IsTexture)                                /* 348 */ \
+  OP(LineWidth)                                /* 349 */ \
+  OP(LinkProgram)                              /* 350 */ \
+  OP(PixelStorei)                              /* 351 */ \
+  OP(PolygonOffset)                            /* 352 */ \
+  OP(ReadPixels)                               /* 353 */ \
+  OP(ReleaseShaderCompiler)                    /* 354 */ \
+  OP(RenderbufferStorage)                      /* 355 */ \
+  OP(SampleCoverage)                           /* 356 */ \
+  OP(Scissor)                                  /* 357 */ \
+  OP(ShaderBinary)                             /* 358 */ \
+  OP(ShaderSourceBucket)                       /* 359 */ \
+  OP(StencilFunc)                              /* 360 */ \
+  OP(StencilFuncSeparate)                      /* 361 */ \
+  OP(StencilMask)                              /* 362 */ \
+  OP(StencilMaskSeparate)                      /* 363 */ \
+  OP(StencilOp)                                /* 364 */ \
+  OP(StencilOpSeparate)                        /* 365 */ \
+  OP(TexImage2D)                               /* 366 */ \
+  OP(TexParameterf)                            /* 367 */ \
+  OP(TexParameterfvImmediate)                  /* 368 */ \
+  OP(TexParameteri)                            /* 369 */ \
+  OP(TexParameterivImmediate)                  /* 370 */ \
+  OP(TexStorage3D)                             /* 371 */ \
+  OP(TexSubImage2D)                            /* 372 */ \
+  OP(Uniform1f)                                /* 373 */ \
+  OP(Uniform1fvImmediate)                      /* 374 */ \
+  OP(Uniform1i)                                /* 375 */ \
+  OP(Uniform1ivImmediate)                      /* 376 */ \
+  OP(Uniform1ui)                               /* 377 */ \
+  OP(Uniform1uivImmediate)                     /* 378 */ \
+  OP(Uniform2f)                                /* 379 */ \
+  OP(Uniform2fvImmediate)                      /* 380 */ \
+  OP(Uniform2i)                                /* 381 */ \
+  OP(Uniform2ivImmediate)                      /* 382 */ \
+  OP(Uniform2ui)                               /* 383 */ \
+  OP(Uniform2uivImmediate)                     /* 384 */ \
+  OP(Uniform3f)                                /* 385 */ \
+  OP(Uniform3fvImmediate)                      /* 386 */ \
+  OP(Uniform3i)                                /* 387 */ \
+  OP(Uniform3ivImmediate)                      /* 388 */ \
+  OP(Uniform3ui)                               /* 389 */ \
+  OP(Uniform3uivImmediate)                     /* 390 */ \
+  OP(Uniform4f)                                /* 391 */ \
+  OP(Uniform4fvImmediate)                      /* 392 */ \
+  OP(Uniform4i)                                /* 393 */ \
+  OP(Uniform4ivImmediate)                      /* 394 */ \
+  OP(Uniform4ui)                               /* 395 */ \
+  OP(Uniform4uivImmediate)                     /* 396 */ \
+  OP(UniformMatrix2fvImmediate)                /* 397 */ \
+  OP(UniformMatrix2x3fvImmediate)              /* 398 */ \
+  OP(UniformMatrix2x4fvImmediate)              /* 399 */ \
+  OP(UniformMatrix3fvImmediate)                /* 400 */ \
+  OP(UniformMatrix3x2fvImmediate)              /* 401 */ \
+  OP(UniformMatrix3x4fvImmediate)              /* 402 */ \
+  OP(UniformMatrix4fvImmediate)                /* 403 */ \
+  OP(UniformMatrix4x2fvImmediate)              /* 404 */ \
+  OP(UniformMatrix4x3fvImmediate)              /* 405 */ \
+  OP(UseProgram)                               /* 406 */ \
+  OP(ValidateProgram)                          /* 407 */ \
+  OP(VertexAttrib1f)                           /* 408 */ \
+  OP(VertexAttrib1fvImmediate)                 /* 409 */ \
+  OP(VertexAttrib2f)                           /* 410 */ \
+  OP(VertexAttrib2fvImmediate)                 /* 411 */ \
+  OP(VertexAttrib3f)                           /* 412 */ \
+  OP(VertexAttrib3fvImmediate)                 /* 413 */ \
+  OP(VertexAttrib4f)                           /* 414 */ \
+  OP(VertexAttrib4fvImmediate)                 /* 415 */ \
+  OP(VertexAttribI4i)                          /* 416 */ \
+  OP(VertexAttribI4ivImmediate)                /* 417 */ \
+  OP(VertexAttribI4ui)                         /* 418 */ \
+  OP(VertexAttribI4uivImmediate)               /* 419 */ \
+  OP(VertexAttribIPointer)                     /* 420 */ \
+  OP(VertexAttribPointer)                      /* 421 */ \
+  OP(Viewport)                                 /* 422 */ \
+  OP(BlitFramebufferCHROMIUM)                  /* 423 */ \
+  OP(RenderbufferStorageMultisampleCHROMIUM)   /* 424 */ \
+  OP(RenderbufferStorageMultisampleEXT)        /* 425 */ \
+  OP(FramebufferTexture2DMultisampleEXT)       /* 426 */ \
+  OP(TexStorage2DEXT)                          /* 427 */ \
+  OP(GenQueriesEXTImmediate)                   /* 428 */ \
+  OP(DeleteQueriesEXTImmediate)                /* 429 */ \
+  OP(BeginQueryEXT)                            /* 430 */ \
+  OP(EndQueryEXT)                              /* 431 */ \
+  OP(InsertEventMarkerEXT)                     /* 432 */ \
+  OP(PushGroupMarkerEXT)                       /* 433 */ \
+  OP(PopGroupMarkerEXT)                        /* 434 */ \
+  OP(GenVertexArraysOESImmediate)              /* 435 */ \
+  OP(DeleteVertexArraysOESImmediate)           /* 436 */ \
+  OP(IsVertexArrayOES)                         /* 437 */ \
+  OP(BindVertexArrayOES)                       /* 438 */ \
+  OP(SwapBuffers)                              /* 439 */ \
+  OP(GetMaxValueInBufferCHROMIUM)              /* 440 */ \
+  OP(EnableFeatureCHROMIUM)                    /* 441 */ \
+  OP(ResizeCHROMIUM)                           /* 442 */ \
+  OP(GetRequestableExtensionsCHROMIUM)         /* 443 */ \
+  OP(RequestExtensionCHROMIUM)                 /* 444 */ \
+  OP(GetProgramInfoCHROMIUM)                   /* 445 */ \
+  OP(GetTranslatedShaderSourceANGLE)           /* 446 */ \
+  OP(PostSubBufferCHROMIUM)                    /* 447 */ \
+  OP(TexImageIOSurface2DCHROMIUM)              /* 448 */ \
+  OP(CopyTextureCHROMIUM)                      /* 449 */ \
+  OP(DrawArraysInstancedANGLE)                 /* 450 */ \
+  OP(DrawElementsInstancedANGLE)               /* 451 */ \
+  OP(VertexAttribDivisorANGLE)                 /* 452 */ \
+  OP(GenMailboxCHROMIUM)                       /* 453 */ \
+  OP(ProduceTextureCHROMIUMImmediate)          /* 454 */ \
+  OP(ProduceTextureDirectCHROMIUMImmediate)    /* 455 */ \
+  OP(ConsumeTextureCHROMIUMImmediate)          /* 456 */ \
+  OP(CreateAndConsumeTextureCHROMIUMImmediate) /* 457 */ \
+  OP(BindUniformLocationCHROMIUMBucket)        /* 458 */ \
+  OP(GenValuebuffersCHROMIUMImmediate)         /* 459 */ \
+  OP(DeleteValuebuffersCHROMIUMImmediate)      /* 460 */ \
+  OP(IsValuebufferCHROMIUM)                    /* 461 */ \
+  OP(BindValuebufferCHROMIUM)                  /* 462 */ \
+  OP(SubscribeValueCHROMIUM)                   /* 463 */ \
+  OP(PopulateSubscribedValuesCHROMIUM)         /* 464 */ \
+  OP(UniformValuebufferCHROMIUM)               /* 465 */ \
+  OP(BindTexImage2DCHROMIUM)                   /* 466 */ \
+  OP(ReleaseTexImage2DCHROMIUM)                /* 467 */ \
+  OP(TraceBeginCHROMIUM)                       /* 468 */ \
+  OP(TraceEndCHROMIUM)                         /* 469 */ \
+  OP(AsyncTexSubImage2DCHROMIUM)               /* 470 */ \
+  OP(AsyncTexImage2DCHROMIUM)                  /* 471 */ \
+  OP(WaitAsyncTexImage2DCHROMIUM)              /* 472 */ \
+  OP(WaitAllAsyncTexImage2DCHROMIUM)           /* 473 */ \
+  OP(DiscardFramebufferEXTImmediate)           /* 474 */ \
+  OP(LoseContextCHROMIUM)                      /* 475 */ \
+  OP(InsertSyncPointCHROMIUM)                  /* 476 */ \
+  OP(WaitSyncPointCHROMIUM)                    /* 477 */ \
+  OP(DrawBuffersEXTImmediate)                  /* 478 */ \
+  OP(DiscardBackbufferCHROMIUM)                /* 479 */ \
+  OP(ScheduleOverlayPlaneCHROMIUM)             /* 480 */ \
+  OP(MatrixLoadfCHROMIUMImmediate)             /* 481 */ \
+  OP(MatrixLoadIdentityCHROMIUM)               /* 482 */ \
+  OP(BlendBarrierKHR)                          /* 483 */
 
 enum CommandId {
   kStartPoint = cmd::kLastCommonId,  // All GLES2 commands start after this.
diff --git a/gpu/command_buffer/common/gles2_cmd_utils.cc b/gpu/command_buffer/common/gles2_cmd_utils.cc
index 6b34f39..0c2f493 100644
--- a/gpu/command_buffer/common/gles2_cmd_utils.cc
+++ b/gpu/command_buffer/common/gles2_cmd_utils.cc
@@ -9,7 +9,9 @@
 #include <GLES2/gl2.h>
 #include <GLES2/gl2ext.h>
 #include <GLES2/gl2extchromium.h>
+#include <GLES3/gl3.h>
 
+#include "base/numerics/safe_math.h"
 #include "gpu/command_buffer/common/gles2_cmd_format.h"
 #include "gpu/command_buffer/common/gles2_cmd_utils.h"
 
@@ -360,6 +362,7 @@
     case GL_SRGB_EXT:
        return 3;
     case GL_LUMINANCE_ALPHA:
+    case GL_RG_EXT:
        return 2;
     case GL_RGBA:
     case GL_BGRA_EXT:
@@ -373,6 +376,7 @@
     case GL_DEPTH_COMPONENT16:
     case GL_DEPTH24_STENCIL8_OES:
     case GL_DEPTH_STENCIL_OES:
+    case GL_RED_EXT:
        return 1;
     default:
        return 0;
@@ -704,6 +708,10 @@
     case GL_DEPTH_STENCIL_OES:
     case GL_DEPTH24_STENCIL8_OES:
       return kDepth | kStencil;
+    case GL_RED_EXT:
+      return kRed;
+    case GL_RG_EXT:
+      return kRed | kGreen;
     default:
       return 0x0000;
   }
@@ -770,7 +778,7 @@
     bool* getting_array) {
   bool getting_array_location = false;
   size_t open_pos = std::string::npos;
-  int index = 0;
+  base::CheckedNumeric<int> index = 0;
   if (name[name.size() - 1] == ']') {
     if (name.size() < 3) {
       return false;
@@ -788,10 +796,13 @@
       }
       index = index * 10 + digit;
     }
+    if (!index.IsValid()) {
+      return false;
+    }
     getting_array_location = true;
   }
   *getting_array = getting_array_location;
-  *element_index = index;
+  *element_index = index.ValueOrDie();
   *array_pos = open_pos;
   return true;
 }
diff --git a/gpu/command_buffer/common/gles2_cmd_utils_autogen.h b/gpu/command_buffer/common/gles2_cmd_utils_autogen.h
index e8631e6..bb809fc 100644
--- a/gpu/command_buffer/common/gles2_cmd_utils_autogen.h
+++ b/gpu/command_buffer/common/gles2_cmd_utils_autogen.h
@@ -56,6 +56,7 @@
 static std::string GetStringStencilOp(uint32_t value);
 static std::string GetStringStringType(uint32_t value);
 static std::string GetStringSubscriptionTarget(uint32_t value);
+static std::string GetStringTexture3DTarget(uint32_t value);
 static std::string GetStringTextureBindTarget(uint32_t value);
 static std::string GetStringTextureFormat(uint32_t value);
 static std::string GetStringTextureInternalFormat(uint32_t value);
diff --git a/gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h b/gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h
index 3176cc8..b205347 100644
--- a/gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h
+++ b/gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h
@@ -13,6 +13,14 @@
 
 static const GLES2Util::EnumToString enum_to_string_table[] = {
     {
+     0x8D77,
+     "GL_RGB16UI",
+    },
+    {
+     0x8D76,
+     "GL_RGBA16UI",
+    },
+    {
      0x9260,
      "GL_GCCSO_SHADER_BINARY_FJ",
     },
@@ -21,10 +29,26 @@
      "GL_TEXTURE_CUBE_MAP_ARRAY_EXT",
     },
     {
+     0x8D71,
+     "GL_RGB32UI",
+    },
+    {
+     0x8D70,
+     "GL_RGBA32UI",
+    },
+    {
+     0x8C76,
+     "GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH",
+    },
+    {
      0x8825,
      "GL_DRAW_BUFFER0_EXT",
     },
     {
+     0x8D94,
+     "GL_RED_INTEGER",
+    },
+    {
      0x0BC1,
      "GL_ALPHA_TEST_FUNC_QCOM",
     },
@@ -85,6 +109,10 @@
      "GL_BGRA8_EXT",
     },
     {
+     0x813C,
+     "GL_TEXTURE_BASE_LEVEL",
+    },
+    {
      0,
      "GL_FALSE",
     },
@@ -93,6 +121,10 @@
      "GL_STENCIL_BUFFER_BIT6_QCOM",
     },
     {
+     64,
+     "GL_MAILBOX_SIZE_CHROMIUM",
+    },
+    {
      0x9500,
      "GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL",
     },
@@ -137,6 +169,14 @@
      "GL_TEXTURE_SAMPLES_IMG",
     },
     {
+     0x8D88,
+     "GL_RGBA16I",
+    },
+    {
+     0x8D89,
+     "GL_RGB16I",
+    },
+    {
      0x00000020,
      "GL_COLOR_BUFFER_BIT5_QCOM",
     },
@@ -181,6 +221,10 @@
      "GL_LINES",
     },
     {
+     0x8D7D,
+     "GL_RGB8UI",
+    },
+    {
      0x93F0,
      "GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV2_IMG",
     },
@@ -189,6 +233,10 @@
      "GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV2_IMG",
     },
     {
+     0x0D04,
+     "GL_PACK_SKIP_PIXELS",
+    },
+    {
      0x900E,
      "GL_INT_SAMPLER_CUBE_MAP_ARRAY_EXT",
     },
@@ -197,6 +245,10 @@
      "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_EXT",
     },
     {
+     0x8C7F,
+     "GL_TRANSFORM_FEEDBACK_BUFFER_MODE",
+    },
+    {
      0x900F,
      "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_EXT",
     },
@@ -209,8 +261,8 @@
      "GL_SAMPLER_CUBE_MAP_ARRAY_EXT",
     },
     {
-     0x88B8,
-     "GL_READ_ONLY",
+     0x8213,
+     "GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE",
     },
     {
      0x88B9,
@@ -233,6 +285,10 @@
      "GL_Z400_BINARY_AMD",
     },
     {
+     0x8215,
+     "GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE",
+    },
+    {
      0x8C4D,
      "GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV",
     },
@@ -337,6 +393,14 @@
      "GL_FLOAT_VEC2",
     },
     {
+     0x806D,
+     "GL_UNPACK_SKIP_IMAGES",
+    },
+    {
+     0x806E,
+     "GL_UNPACK_IMAGE_HEIGHT",
+    },
+    {
      0x806F,
      "GL_TEXTURE_3D_OES",
     },
@@ -353,10 +417,18 @@
      "GL_TEXTURE_BINDING_3D_OES",
     },
     {
+     0x8D8E,
+     "GL_RGBA8I",
+    },
+    {
      0x8CE3,
      "GL_COLOR_ATTACHMENT3_EXT",
     },
     {
+     0x9274,
+     "GL_COMPRESSED_RGB8_ETC2",
+    },
+    {
      0x1904,
      "GL_GREEN_NV",
     },
@@ -369,6 +441,14 @@
      "GL_TEXTURE_BINDING_2D",
     },
     {
+     0x8A2E,
+     "GL_MAX_COMBINED_UNIFORM_BLOCKS",
+    },
+    {
+     0x8F96,
+     "GL_RGB8_SNORM",
+    },
+    {
      0x8260,
      "GL_UNDEFINED_VERTEX_EXT",
     },
@@ -377,6 +457,10 @@
      "GL_NO_RESET_NOTIFICATION_KHR",
     },
     {
+     0x0D02,
+     "GL_PACK_ROW_LENGTH",
+    },
+    {
      0x8DFA,
      "GL_SHADER_COMPILER",
     },
@@ -417,6 +501,10 @@
      "GL_NUM_PROGRAM_BINARY_FORMATS_OES",
     },
     {
+     0x8A41,
+     "GL_UNIFORM_BLOCK_NAME_LENGTH",
+    },
+    {
      0x2600,
      "GL_NEAREST",
     },
@@ -429,10 +517,26 @@
      "GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG",
     },
     {
+     0x821B,
+     "GL_MAJOR_VERSION",
+    },
+    {
+     0x821A,
+     "GL_DEPTH_STENCIL_ATTACHMENT",
+    },
+    {
+     0x8A40,
+     "GL_UNIFORM_BLOCK_DATA_SIZE",
+    },
+    {
      0x9242,
      "GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM",
     },
     {
+     0x821D,
+     "GL_NUM_EXTENSIONS",
+    },
+    {
      0x88BB,
      "GL_BUFFER_ACCESS_OES",
     },
@@ -449,10 +553,18 @@
      "GL_TIME_ELAPSED_EXT",
     },
     {
+     0x8A46,
+     "GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER",
+    },
+    {
      0x6003,
      "GL_GET_ERROR_QUERY_CHROMIUM",
     },
     {
+     0x8F94,
+     "GL_R8_SNORM",
+    },
+    {
      0x0C10,
      "GL_SCISSOR_BOX",
     },
@@ -525,6 +637,10 @@
      "GL_STENCIL_BUFFER_BIT5_QCOM",
     },
     {
+     0x8D9F,
+     "GL_INT_2_10_10_10_REV",
+    },
+    {
      0x8B8A,
      "GL_ACTIVE_ATTRIBUTE_MAX_LENGTH",
     },
@@ -597,6 +713,10 @@
      "GL_VALIDATE_STATUS",
     },
     {
+     0x9380,
+     "GL_NUM_SAMPLE_COUNTS",
+    },
+    {
      0x8D48,
      "GL_STENCIL_INDEX8",
     },
@@ -633,6 +753,14 @@
      "GL_RENDERBUFFER",
     },
     {
+     0x8A3A,
+     "GL_UNIFORM_BLOCK_INDEX",
+    },
+    {
+     0x88B8,
+     "GL_READ_ONLY",
+    },
+    {
      0x0BD0,
      "GL_DITHER",
     },
@@ -661,6 +789,10 @@
      "GL_SRC_OVER_NV",
     },
     {
+     0x9120,
+     "GL_BUFFER_MAP_LENGTH",
+    },
+    {
      0x0B21,
      "GL_LINE_WIDTH",
     },
@@ -681,10 +813,18 @@
      "GL_DEPTH_COMPONENT32_OES",
     },
     {
+     0x88FD,
+     "GL_VERTEX_ATTRIB_ARRAY_INTEGER",
+    },
+    {
      0x88FE,
      "GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE",
     },
     {
+     0x88FF,
+     "GL_MAX_ARRAY_TEXTURE_LAYERS",
+    },
+    {
      0x8B6A,
      "GL_FLOAT_MAT4x3_NV",
     },
@@ -829,6 +969,10 @@
      "GL_COMMANDS_COMPLETED_CHROMIUM",
     },
     {
+     0x8F9C,
+     "GL_SIGNED_NORMALIZED",
+    },
+    {
      0x92D5,
      "GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT",
     },
@@ -1041,6 +1185,10 @@
      "GL_SRC_ALPHA",
     },
     {
+     0x8212,
+     "GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE",
+    },
+    {
      0x0308,
      "GL_SRC_ALPHA_SATURATE",
     },
@@ -1089,10 +1237,22 @@
      "GL_RGB32F_EXT",
     },
     {
+     0x8A35,
+     "GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH",
+    },
+    {
      0x8814,
      "GL_RGBA32F_EXT",
     },
     {
+     0x6006,
+     "GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM",
+    },
+    {
+     0x9277,
+     "GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2",
+    },
+    {
      0x6004,
      "GL_COMMANDS_ISSUED_CHROMIUM",
     },
@@ -1105,6 +1265,10 @@
      "GL_ALPHA32F_EXT",
     },
     {
+     0x813B,
+     "GL_TEXTURE_MAX_LOD",
+    },
+    {
      0x8CDD,
      "GL_FRAMEBUFFER_UNSUPPORTED",
     },
@@ -1133,6 +1297,10 @@
      "GL_ALPHA8_OES",
     },
     {
+     0x8904,
+     "GL_MIN_PROGRAM_TEXEL_OFFSET",
+    },
+    {
      0x84F5,
      "GL_TEXTURE_RECTANGLE_ARB",
     },
@@ -1197,16 +1365,52 @@
      "GL_FRACTIONAL_EVEN_EXT",
     },
     {
+     0x8C8E,
+     "GL_TRANSFORM_FEEDBACK_BUFFER",
+    },
+    {
+     0x8C8D,
+     "GL_SEPARATE_ATTRIBS",
+    },
+    {
+     0x8C8F,
+     "GL_TRANSFORM_FEEDBACK_BUFFER_BINDING",
+    },
+    {
+     0x8C8A,
+     "GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS",
+    },
+    {
+     0x8C8C,
+     "GL_INTERLEAVED_ATTRIBS",
+    },
+    {
+     0x8C8B,
+     "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS",
+    },
+    {
      0x8C17,
      "GL_UNSIGNED_NORMALIZED_EXT",
     },
     {
+     0x8A3E,
+     "GL_UNIFORM_IS_ROW_MAJOR",
+    },
+    {
      0x8E7A,
      "GL_ISOLINES_EXT",
     },
     {
-     0x6006,
-     "GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM",
+     0x8F95,
+     "GL_RG8_SNORM",
+    },
+    {
+     0x8D99,
+     "GL_RGBA_INTEGER",
+    },
+    {
+     0x8D98,
+     "GL_RGB_INTEGER",
     },
     {
      0x8A4A,
@@ -1229,6 +1433,10 @@
      "GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT",
     },
     {
+     0x8919,
+     "GL_SAMPLER_BINDING",
+    },
+    {
      0x92CD,
      "GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT",
     },
@@ -1237,10 +1445,22 @@
      "GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT",
     },
     {
+     0x8C85,
+     "GL_TRANSFORM_FEEDBACK_BUFFER_SIZE",
+    },
+    {
+     0x8D7C,
+     "GL_RGBA8UI",
+    },
+    {
      0x6007,
      "GL_LATENCY_QUERY_CHROMIUM",
     },
     {
+     0x8D83,
+     "GL_RGB32I",
+    },
+    {
      0x8916,
      "GL_GEOMETRY_LINKED_VERTICES_OUT_EXT",
     },
@@ -1253,12 +1473,20 @@
      "GL_LUMINANCE_ALPHA16F_EXT",
     },
     {
+     0x84FD,
+     "GL_MAX_TEXTURE_LOD_BIAS",
+    },
+    {
      0x882D,
      "GL_DRAW_BUFFER8_EXT",
     },
     {
-     0x0BA6,
-     "GL_PATH_MODELVIEW_MATRIX_CHROMIUM",
+     0x8A43,
+     "GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES",
+    },
+    {
+     0x8A42,
+     "GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS",
     },
     {
      0x8F37,
@@ -1273,6 +1501,14 @@
      "GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT",
     },
     {
+     0x8A3C,
+     "GL_UNIFORM_ARRAY_STRIDE",
+    },
+    {
+     0x8A44,
+     "GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER",
+    },
+    {
      0x6000,
      "GL_TEXTURE_POOL_CHROMIUM",
     },
@@ -1317,6 +1553,18 @@
      "GL_PRIMITIVES_GENERATED_EXT",
     },
     {
+     0x8C80,
+     "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS",
+    },
+    {
+     0x8C83,
+     "GL_TRANSFORM_FEEDBACK_VARYINGS",
+    },
+    {
+     0x8D69,
+     "GL_PRIMITIVE_RESTART_FIXED_INDEX",
+    },
+    {
      0x882E,
      "GL_DRAW_BUFFER9_EXT",
     },
@@ -1325,6 +1573,22 @@
      "GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT",
     },
     {
+     0x8A31,
+     "GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS",
+    },
+    {
+     0x8C89,
+     "GL_RASTERIZER_DISCARD",
+    },
+    {
+     0x8C88,
+     "GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN",
+    },
+    {
+     0x8C1A,
+     "GL_TEXTURE_2D_ARRAY",
+    },
+    {
      0x910D,
      "GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES",
     },
@@ -1401,10 +1665,30 @@
      "GL_COVERAGE_COMPONENT_NV",
     },
     {
+     0x8217,
+     "GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE",
+    },
+    {
      0x8E89,
      "GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT",
     },
     {
+     0x8216,
+     "GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE",
+    },
+    {
+     0x8A36,
+     "GL_ACTIVE_UNIFORM_BLOCKS",
+    },
+    {
+     0x8A37,
+     "GL_UNIFORM_TYPE",
+    },
+    {
+     0x8A34,
+     "GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT",
+    },
+    {
      0x3006,
      "GL_CLIP_DISTANCE6_APPLE",
     },
@@ -1413,6 +1697,10 @@
      "GL_FUNC_REVERSE_SUBTRACT",
     },
     {
+     0x8A33,
+     "GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS",
+    },
+    {
      0x00000400,
      "GL_STENCIL_BUFFER_BIT",
     },
@@ -1421,6 +1709,18 @@
      "GL_FUNC_SUBTRACT",
     },
     {
+     0x8214,
+     "GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE",
+    },
+    {
+     0x8A38,
+     "GL_UNIFORM_SIZE",
+    },
+    {
+     0x8A39,
+     "GL_UNIFORM_NAME_LENGTH",
+    },
+    {
      0x8E2C,
      "GL_DEPTH_COMPONENT16_NONLINEAR_NV",
     },
@@ -1433,10 +1733,18 @@
      "GL_FRAMEBUFFER_UNDEFINED_OES",
     },
     {
+     0x8E23,
+     "GL_TRANSFORM_FEEDBACK_PAUSED",
+    },
+    {
      0x8E22,
      "GL_TRANSFORM_FEEDBACK",
     },
     {
+     0x8E25,
+     "GL_TRANSFORM_FEEDBACK_BINDING",
+    },
+    {
      0x9054,
      "GL_IMAGE_CUBE_MAP_ARRAY_EXT",
     },
@@ -1509,6 +1817,10 @@
      "GL_TEXTURE_FORMAT_QCOM",
     },
     {
+     0x8228,
+     "GL_RG_INTEGER",
+    },
+    {
      0x2901,
      "GL_REPEAT",
     },
@@ -1625,8 +1937,12 @@
      "GL_VIVIDLIGHT_NV",
     },
     {
-     0x78F1,
-     "GL_MAP_CHROMIUM",
+     0x8DCC,
+     "GL_INT_SAMPLER_CUBE",
+    },
+    {
+     0x8905,
+     "GL_MAX_PROGRAM_TEXEL_OFFSET",
     },
     {
      0x00080000,
@@ -1637,6 +1953,10 @@
      "GL_LINEARLIGHT_NV",
     },
     {
+     0x8DCF,
+     "GL_INT_SAMPLER_2D_ARRAY",
+    },
+    {
      0x886A,
      "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED",
     },
@@ -1657,6 +1977,10 @@
      "GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT",
     },
     {
+     0x8DCA,
+     "GL_INT_SAMPLER_2D",
+    },
+    {
      0x93C7,
      "GL_COMPRESSED_RGBA_ASTC_6x5x5_OES",
     },
@@ -1685,6 +2009,10 @@
      "GL_DMP_PROGRAM_BINARY_DMP",
     },
     {
+     0x8DC8,
+     "GL_UNSIGNED_INT_VEC4",
+    },
+    {
      0x3000,
      "GL_CLIP_DISTANCE0_APPLE",
     },
@@ -1693,6 +2021,10 @@
      "GL_ATC_RGB_AMD",
     },
     {
+     0x8DC1,
+     "GL_SAMPLER_2D_ARRAY",
+    },
+    {
      0x9154,
      "GL_VERTEX_ARRAY_OBJECT_EXT",
     },
@@ -1717,6 +2049,10 @@
      "GL_CONTEXT_FLAG_DEBUG_BIT_KHR",
     },
     {
+     0x8A3F,
+     "GL_UNIFORM_BLOCK_BINDING",
+    },
+    {
      0x00000000,
      "GL_PERFQUERY_SINGLE_CONTEXT_INTEL",
     },
@@ -1749,6 +2085,10 @@
      "GL_BOOL_VEC3",
     },
     {
+     0x8A3D,
+     "GL_UNIFORM_MATRIX_STRIDE",
+    },
+    {
      0x8828,
      "GL_DRAW_BUFFER3_EXT",
     },
@@ -1849,6 +2189,14 @@
      "GL_FLOAT_VEC4",
     },
     {
+     0x8239,
+     "GL_RG16I",
+    },
+    {
+     0x8238,
+     "GL_RG8UI",
+    },
+    {
      0x9240,
      "GL_UNPACK_FLIP_Y_CHROMIUM",
     },
@@ -1857,16 +2205,44 @@
      "GL_UNSIGNED_INT_10_10_10_2_OES",
     },
     {
+     0x8A30,
+     "GL_MAX_UNIFORM_BLOCK_SIZE",
+    },
+    {
+     0x9273,
+     "GL_COMPRESSED_SIGNED_RG11_EAC",
+    },
+    {
+     0x8231,
+     "GL_R8I",
+    },
+    {
      0x8866,
      "GL_QUERY_RESULT_EXT",
     },
     {
+     0x8233,
+     "GL_R16I",
+    },
+    {
      0x8DF7,
      "GL_INT_10_10_10_2_OES",
     },
     {
-     0x9246,
-     "GL_OVERLAY_TRANSFORM_FLIP_HORIZONTAL_CHROMIUM",
+     0x8235,
+     "GL_R32I",
+    },
+    {
+     0x8234,
+     "GL_R16UI",
+    },
+    {
+     0x8237,
+     "GL_RG8I",
+    },
+    {
+     0x8236,
+     "GL_R32UI",
     },
     {
      0x8B69,
@@ -1897,10 +2273,22 @@
      "GL_COMPRESSED_TEXTURE_FORMATS",
     },
     {
+     0x8DD4,
+     "GL_UNSIGNED_INT_SAMPLER_CUBE",
+    },
+    {
      0x9244,
      "GL_BIND_GENERATES_RESOURCE_CHROMIUM",
     },
     {
+     0x8DD2,
+     "GL_UNSIGNED_INT_SAMPLER_2D",
+    },
+    {
+     0x8DD3,
+     "GL_UNSIGNED_INT_SAMPLER_3D",
+    },
+    {
      0x8DD0,
      "GL_INT_SAMPLER_BUFFER_EXT",
     },
@@ -1921,6 +2309,10 @@
      "GL_FIXED",
     },
     {
+     0x140B,
+     "GL_HALF_FLOAT",
+    },
+    {
      0x8008,
      "GL_MAX_EXT",
     },
@@ -1933,10 +2325,18 @@
      "GL_QUERY_RESULT_AVAILABLE_EXT",
     },
     {
+     0x8D82,
+     "GL_RGBA32I",
+    },
+    {
      0x8009,
      "GL_BLEND_EQUATION",
     },
     {
+     0x911F,
+     "GL_BUFFER_ACCESS_FLAGS",
+    },
+    {
      0x1401,
      "GL_UNSIGNED_BYTE",
     },
@@ -1965,6 +2365,10 @@
      "GL_FLOAT",
     },
     {
+     0x8C1D,
+     "GL_TEXTURE_BINDING_2D_ARRAY",
+    },
+    {
      0x8DDF,
      "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT",
     },
@@ -1993,10 +2397,18 @@
      "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",
     },
     {
+     0x823A,
+     "GL_RG16UI",
+    },
+    {
      0x8CE4,
      "GL_COLOR_ATTACHMENT4_EXT",
     },
     {
+     0x823B,
+     "GL_RG32I",
+    },
+    {
      0x8CD3,
      "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",
     },
@@ -2333,6 +2745,10 @@
      "GL_TEXTURE_CUBE_MAP_POSITIVE_Y",
     },
     {
+     0x8218,
+     "GL_FRAMEBUFFER_DEFAULT",
+    },
+    {
      0x8513,
      "GL_TEXTURE_CUBE_MAP",
     },
@@ -2445,6 +2861,10 @@
      "GL_DEBUG_TYPE_PORTABILITY_KHR",
     },
     {
+     0x8DD7,
+     "GL_UNSIGNED_INT_SAMPLER_2D_ARRAY",
+    },
+    {
      0x8B31,
      "GL_VERTEX_SHADER",
     },
@@ -2585,6 +3005,18 @@
      "GL_PERFQUERY_COUNTER_RAW_INTEL",
     },
     {
+     0x823C,
+     "GL_RG32UI",
+    },
+    {
+     0x8A29,
+     "GL_UNIFORM_BUFFER_START",
+    },
+    {
+     0x8A28,
+     "GL_UNIFORM_BUFFER_BINDING",
+    },
+    {
      0x92BE,
      "GL_PRIMITIVE_BOUNDING_BOX_EXT",
     },
@@ -2613,6 +3045,10 @@
      "GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT",
     },
     {
+     0x906F,
+     "GL_RGB10_A2UI",
+    },
+    {
      0x8E72,
      "GL_PATCH_VERTICES_EXT",
     },
@@ -2629,6 +3065,10 @@
      "GL_TEXTURE4",
     },
     {
+     0x821C,
+     "GL_MINOR_VERSION",
+    },
+    {
      0x8E8A,
      "GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT",
     },
@@ -2641,6 +3081,10 @@
      "GL_GUILTY_CONTEXT_RESET_KHR",
     },
     {
+     0x8D6B,
+     "GL_MAX_ELEMENT_INDEX",
+    },
+    {
      0x8D6C,
      "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT",
     },
@@ -2821,6 +3265,10 @@
      "GL_COLOR_ATTACHMENT14_EXT",
     },
     {
+     0x8DC7,
+     "GL_UNSIGNED_INT_VEC3",
+    },
+    {
      0x1701,
      "GL_PATH_PROJECTION_CHROMIUM",
     },
@@ -2841,6 +3289,10 @@
      "GL_TEXTURE_WRAP_T",
     },
     {
+     0x8DCB,
+     "GL_INT_SAMPLER_3D",
+    },
+    {
      0x3007,
      "GL_CLIP_DISTANCE7_APPLE",
     },
@@ -2913,6 +3365,14 @@
      "GL_STENCIL_FAIL",
     },
     {
+     0x8B4A,
+     "GL_MAX_VERTEX_UNIFORM_COMPONENTS",
+    },
+    {
+     0x8B4B,
+     "GL_MAX_VARYING_COMPONENTS",
+    },
+    {
      0x8B4C,
      "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS",
     },
@@ -2925,6 +3385,10 @@
      "GL_SHADER_TYPE",
     },
     {
+     0x9122,
+     "GL_MAX_VERTEX_OUTPUT_COMPONENTS",
+    },
+    {
      0x9123,
      "GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT",
     },
@@ -2933,10 +3397,18 @@
      "GL_PERFQUERY_WAIT_INTEL",
     },
     {
+     0x9121,
+     "GL_BUFFER_MAP_OFFSET",
+    },
+    {
      0x00004000,
      "GL_COLOR_BUFFER_BIT",
     },
     {
+     0x9125,
+     "GL_MAX_FRAGMENT_INPUT_COMPONENTS",
+    },
+    {
      0x00000010,
      "GL_TESS_EVALUATION_SHADER_BIT_EXT",
     },
@@ -3005,10 +3477,18 @@
      "GL_PERFQUERY_FLUSH_INTEL",
     },
     {
+     0x0D03,
+     "GL_PACK_SKIP_ROWS",
+    },
+    {
      0x84F3,
      "GL_FENCE_STATUS_NV",
     },
     {
+     0x88E6,
+     "GL_STATIC_COPY",
+    },
+    {
      0x0B93,
      "GL_STENCIL_VALUE_MASK",
     },
@@ -3073,10 +3553,22 @@
      "GL_TEXTURE_BORDER_COLOR_EXT",
     },
     {
+     0x8A2D,
+     "GL_MAX_FRAGMENT_UNIFORM_BLOCKS",
+    },
+    {
      0x8B48,
      "GL_SHADER_OBJECT_EXT",
     },
     {
+     0x8B49,
+     "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS",
+    },
+    {
+     0x813A,
+     "GL_TEXTURE_MIN_LOD",
+    },
+    {
      0x8DE1,
      "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT",
     },
@@ -3097,12 +3589,16 @@
      "GL_OVERLAY_TRANSFORM_ROTATE_270_CHROMIUM",
     },
     {
+     0x8A2F,
+     "GL_MAX_UNIFORM_BUFFER_BINDINGS",
+    },
+    {
      0x20000000,
      "GL_MULTISAMPLE_BUFFER_BIT5_QCOM",
     },
     {
-     64,
-     "GL_MAILBOX_SIZE_CHROMIUM",
+     0x8A2A,
+     "GL_UNIFORM_BUFFER_SIZE",
     },
     {
      0x0DE1,
@@ -3125,6 +3621,22 @@
      "GL_TEXTURE_IMMUTABLE_FORMAT_EXT",
     },
     {
+     0x8A2B,
+     "GL_MAX_VERTEX_UNIFORM_BLOCKS",
+    },
+    {
+     0x9246,
+     "GL_OVERLAY_TRANSFORM_FLIP_HORIZONTAL_CHROMIUM",
+    },
+    {
+     0x88EC,
+     "GL_PIXEL_UNPACK_BUFFER",
+    },
+    {
+     0x8D8F,
+     "GL_RGB8I",
+    },
+    {
      0x8059,
      "GL_RGB10_A2_EXT",
     },
@@ -3137,6 +3649,10 @@
      "GL_PALETTE4_RGBA4_OES",
     },
     {
+     0x88EB,
+     "GL_PIXEL_PACK_BUFFER",
+    },
+    {
      0x8E83,
      "GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT",
     },
@@ -3145,6 +3661,10 @@
      "GL_RGB8_OES",
     },
     {
+     0x8CAD,
+     "GL_DEPTH32F_STENCIL8",
+    },
+    {
      0x8052,
      "GL_RGB10_EXT",
     },
@@ -3153,6 +3673,10 @@
      "GL_RENDERBUFFER_SAMPLES_ANGLE",
     },
     {
+     0x8CAC,
+     "GL_DEPTH_COMPONENT32F",
+    },
+    {
      0x8057,
      "GL_RGB5_A1",
     },
@@ -3161,6 +3685,10 @@
      "GL_RGBA4",
     },
     {
+     0x8232,
+     "GL_R8UI",
+    },
+    {
      0x150A,
      "GL_INVERT",
     },
@@ -3201,6 +3729,26 @@
      "GL_FIRST_VERTEX_CONVENTION_EXT",
     },
     {
+     0x8E24,
+     "GL_TRANSFORM_FEEDBACK_ACTIVE",
+    },
+    {
+     0x8E45,
+     "GL_TEXTURE_SWIZZLE_A",
+    },
+    {
+     0x8E44,
+     "GL_TEXTURE_SWIZZLE_B",
+    },
+    {
+     0x8E43,
+     "GL_TEXTURE_SWIZZLE_G",
+    },
+    {
+     0x8E42,
+     "GL_TEXTURE_SWIZZLE_R",
+    },
+    {
      0x8D20,
      "GL_STENCIL_ATTACHMENT",
     },
@@ -3213,6 +3761,10 @@
      "GL_DEPTH_BUFFER_BIT1_QCOM",
     },
     {
+     0x78EC,
+     "GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM",
+    },
+    {
      0x00008000,
      "GL_COVERAGE_BUFFER_BIT_NV",
     },
@@ -3253,6 +3805,10 @@
      "GL_STENCIL_BACK_REF",
     },
     {
+     0x80E8,
+     "GL_MAX_ELEMENTS_VERTICES",
+    },
+    {
      0x80CB,
      "GL_BLEND_SRC_ALPHA",
     },
@@ -3305,10 +3861,22 @@
      "GL_COMPRESSED_RGBA_ASTC_10x6_KHR",
     },
     {
+     0x80E9,
+     "GL_MAX_ELEMENTS_INDICES",
+    },
+    {
      0x8CE5,
      "GL_COLOR_ATTACHMENT5_EXT",
     },
     {
+     0x8C84,
+     "GL_TRANSFORM_FEEDBACK_BUFFER_START",
+    },
+    {
+     0x0BA6,
+     "GL_PATH_MODELVIEW_MATRIX_CHROMIUM",
+    },
+    {
      0x8DC2,
      "GL_SAMPLER_BUFFER_EXT",
     },
@@ -3321,10 +3889,18 @@
      "GL_MIN_SAMPLE_SHADING_VALUE_OES",
     },
     {
+     0x8F97,
+     "GL_RGBA8_SNORM",
+    },
+    {
      0x8CE9,
      "GL_COLOR_ATTACHMENT9_EXT",
     },
     {
+     0x8DAD,
+     "GL_FLOAT_32_UNSIGNED_INT_24_8_REV",
+    },
+    {
      0x8B96,
      "GL_PALETTE8_RGBA8_OES",
     },
@@ -3333,6 +3909,10 @@
      "GL_MAX_TEXTURE_IMAGE_UNITS",
     },
     {
+     0x8DC6,
+     "GL_UNSIGNED_INT_VEC2",
+    },
+    {
      0x8508,
      "GL_DECR_WRAP",
     },
@@ -3429,18 +4009,50 @@
      "GL_TEXTURE_IMAGE_VALID_QCOM",
     },
     {
+     0x9278,
+     "GL_COMPRESSED_RGBA8_ETC2_EAC",
+    },
+    {
+     0x9279,
+     "GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC",
+    },
+    {
      0x8DA7,
      "GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT",
     },
     {
+     0x9272,
+     "GL_COMPRESSED_RG11_EAC",
+    },
+    {
      0x8DA8,
      "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT",
     },
     {
+     0x9270,
+     "GL_COMPRESSED_R11_EAC",
+    },
+    {
+     0x9271,
+     "GL_COMPRESSED_SIGNED_R11_EAC",
+    },
+    {
+     0x9276,
+     "GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2",
+    },
+    {
      0x887F,
      "GL_GEOMETRY_SHADER_INVOCATIONS_EXT",
     },
     {
+     0x8A3B,
+     "GL_UNIFORM_OFFSET",
+    },
+    {
+     0x9275,
+     "GL_COMPRESSED_SRGB8_ETC2",
+    },
+    {
      0x84D5,
      "GL_TEXTURE21",
     },
@@ -3553,6 +4165,10 @@
      "GL_PROGRAM_SEPARABLE_EXT",
     },
     {
+     0x8257,
+     "GL_PROGRAM_BINARY_RETRIEVABLE_HINT",
+    },
+    {
      0x8256,
      "GL_RESET_NOTIFICATION_STRATEGY_KHR",
     },
@@ -3625,6 +4241,14 @@
      "GL_STREAM_DRAW",
     },
     {
+     0x88E2,
+     "GL_STREAM_COPY",
+    },
+    {
+     0x88E5,
+     "GL_STATIC_READ",
+    },
+    {
      0x88E4,
      "GL_STATIC_DRAW",
     },
@@ -3633,6 +4257,10 @@
      "GL_COMPRESSED_RGBA_ASTC_5x5x5_OES",
     },
     {
+     0x88E9,
+     "GL_DYNAMIC_READ",
+    },
+    {
      0x88E8,
      "GL_DYNAMIC_DRAW",
     },
@@ -3653,6 +4281,10 @@
      "GL_MULTISAMPLE_BUFFER_BIT6_QCOM",
     },
     {
+     0x88EA,
+     "GL_DYNAMIC_COPY",
+    },
+    {
      0x9116,
      "GL_SYNC_FENCE_APPLE",
     },
@@ -3665,8 +4297,12 @@
      "GL_ETC1_SRGB8_NV",
     },
     {
-     0x78EC,
-     "GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM",
+     0x88ED,
+     "GL_PIXEL_PACK_BUFFER_BINDING",
+    },
+    {
+     0x88EF,
+     "GL_PIXEL_UNPACK_BUFFER_BINDING",
     },
     {
      0x93C3,
@@ -3737,10 +4373,18 @@
      "GL_COLOR_CLEAR_VALUE",
     },
     {
+     0x8A11,
+     "GL_UNIFORM_BUFFER",
+    },
+    {
      0x8823,
      "GL_WRITEONLY_RENDERING_QCOM",
     },
     {
+     0x78F1,
+     "GL_MAP_CHROMIUM",
+    },
+    {
      0x8824,
      "GL_MAX_DRAW_BUFFERS_EXT",
     },
@@ -4391,6 +5035,15 @@
                                            arraysize(string_table), value);
 }
 
+std::string GLES2Util::GetStringTexture3DTarget(uint32_t value) {
+  static const EnumToString string_table[] = {
+      {GL_TEXTURE_3D, "GL_TEXTURE_3D"},
+      {GL_TEXTURE_2D_ARRAY, "GL_TEXTURE_2D_ARRAY"},
+  };
+  return GLES2Util::GetQualifiedEnumString(string_table,
+                                           arraysize(string_table), value);
+}
+
 std::string GLES2Util::GetStringTextureBindTarget(uint32_t value) {
   static const EnumToString string_table[] = {
       {GL_TEXTURE_2D, "GL_TEXTURE_2D"},
diff --git a/gpu/command_buffer/common/value_state.cc b/gpu/command_buffer/common/value_state.cc
new file mode 100644
index 0000000..d4dcdc2
--- /dev/null
+++ b/gpu/command_buffer/common/value_state.cc
@@ -0,0 +1,24 @@
+// Copyright (c) 2014 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.
+
+#include "gpu/command_buffer/common/value_state.h"
+
+namespace gpu {
+
+ValueStateMap::ValueStateMap() {
+}
+
+ValueStateMap::~ValueStateMap() {
+}
+
+const ValueState* ValueStateMap::GetState(unsigned int target) const {
+  Map::const_iterator it = state_map_.find(target);
+  return it != state_map_.end() ? &it->second : NULL;
+}
+
+void ValueStateMap::UpdateState(unsigned int target, const ValueState& state) {
+  state_map_[target] = state;
+}
+
+}  // namespace gpu
diff --git a/gpu/command_buffer/common/value_state.h b/gpu/command_buffer/common/value_state.h
new file mode 100644
index 0000000..4789245
--- /dev/null
+++ b/gpu/command_buffer/common/value_state.h
@@ -0,0 +1,46 @@
+// Copyright (c) 2014 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.
+
+#ifndef GPU_COMMAND_BUFFER_COMMON_VALUE_STATE_H_
+#define GPU_COMMAND_BUFFER_COMMON_VALUE_STATE_H_
+
+#include "base/containers/hash_tables.h"
+#include "base/memory/ref_counted.h"
+#include "gpu/gpu_export.h"
+
+namespace gpu {
+
+// Used to maintain Valuebuffer state, exposed to browser to
+// support passing ValueStates via IPC.
+union GPU_EXPORT ValueState {
+  float float_value[4];
+  int int_value[4];
+};
+
+// Refcounted wrapper for a hash_map of subscription targets to ValueStates
+class GPU_EXPORT ValueStateMap : public base::RefCounted<ValueStateMap> {
+ public:
+  ValueStateMap();
+
+  // Returns NULL if there is not ValueState for the target
+  const ValueState* GetState(unsigned int target) const;
+
+  void UpdateState(unsigned int target, const ValueState& state);
+
+ protected:
+  virtual ~ValueStateMap();
+
+ private:
+  friend class base::RefCounted<ValueStateMap>;
+
+  typedef base::hash_map<unsigned int, ValueState> Map;
+
+  Map state_map_;
+
+  DISALLOW_COPY_AND_ASSIGN(ValueStateMap);
+};
+
+}  // namespace gpu
+
+#endif  // GPU_COMMAND_BUFFER_COMMON_VALUE_STATE_H_
diff --git a/gpu/command_buffer/service/context_group.cc b/gpu/command_buffer/service/context_group.cc
index 6ee57e4..0206d88 100644
--- a/gpu/command_buffer/service/context_group.cc
+++ b/gpu/command_buffer/service/context_group.cc
@@ -32,10 +32,12 @@
     const scoped_refptr<MemoryTracker>& memory_tracker,
     const scoped_refptr<ShaderTranslatorCache>& shader_translator_cache,
     const scoped_refptr<FeatureInfo>& feature_info,
+    const scoped_refptr<ValueStateMap>& pending_valuebuffer_state,
     bool bind_generates_resource)
     : mailbox_manager_(mailbox_manager),
       memory_tracker_(memory_tracker),
       shader_translator_cache_(shader_translator_cache),
+      pending_valuebuffer_state_(pending_valuebuffer_state),
       enforce_gl_minimums_(CommandLine::ForCurrentProcess()->HasSwitch(
           switches::kEnforceGLMinimums)),
       bind_generates_resource_(bind_generates_resource),
@@ -54,6 +56,8 @@
   {
     if (!mailbox_manager_.get())
       mailbox_manager_ = new MailboxManagerImpl;
+    if (!pending_valuebuffer_state_.get())
+      pending_valuebuffer_state_ = new ValueStateMap();
     if (!feature_info.get())
       feature_info_ = new FeatureInfo;
     TransferBufferManager* manager = new TransferBufferManager();
@@ -122,8 +126,9 @@
   renderbuffer_manager_.reset(new RenderbufferManager(
       memory_tracker_.get(), max_renderbuffer_size, max_samples,
       depth24_supported));
-  valuebuffer_manager_.reset(new ValuebufferManager());
   shader_manager_.reset(new ShaderManager());
+  valuebuffer_manager_.reset(
+      new ValuebufferManager(pending_valuebuffer_state_.get()));
 
   // Lookup GL things we need to know.
   const GLint kGLES2RequiredMinimumVertexAttribs = 8u;
@@ -302,11 +307,6 @@
     renderbuffer_manager_.reset();
   }
 
-  if (valuebuffer_manager_ != NULL) {
-    valuebuffer_manager_->Destroy();
-    valuebuffer_manager_.reset();
-  }
-
   if (texture_manager_ != NULL) {
     texture_manager_->Destroy(have_context);
     texture_manager_.reset();
@@ -322,6 +322,11 @@
     shader_manager_.reset();
   }
 
+  if (valuebuffer_manager_ != NULL) {
+    valuebuffer_manager_->Destroy();
+    valuebuffer_manager_.reset();
+  }
+
   memory_tracker_ = NULL;
 }
 
diff --git a/gpu/command_buffer/service/context_group.h b/gpu/command_buffer/service/context_group.h
index eb53252..b6b6483 100644
--- a/gpu/command_buffer/service/context_group.h
+++ b/gpu/command_buffer/service/context_group.h
@@ -22,6 +22,7 @@
 namespace gpu {
 
 class TransferBufferManagerInterface;
+class ValueStateMap;
 
 namespace gles2 {
 
@@ -47,6 +48,7 @@
       const scoped_refptr<MemoryTracker>& memory_tracker,
       const scoped_refptr<ShaderTranslatorCache>& shader_translator_cache,
       const scoped_refptr<FeatureInfo>& feature_info,
+      const scoped_refptr<ValueStateMap>& pending_valuebuffer_state,
       bool bind_generates_resource);
 
   // This should only be called by GLES2Decoder. This must be paired with a
@@ -131,6 +133,10 @@
     return valuebuffer_manager_.get();
   }
 
+  ValueStateMap* pending_valuebuffer_state() const {
+    return pending_valuebuffer_state_.get();
+  }
+
   TextureManager* texture_manager() const {
     return texture_manager_.get();
   }
@@ -182,6 +188,7 @@
   scoped_refptr<MemoryTracker> memory_tracker_;
   scoped_refptr<ShaderTranslatorCache> shader_translator_cache_;
   scoped_ptr<TransferBufferManagerInterface> transfer_buffer_manager_;
+  scoped_refptr<gpu::ValueStateMap> pending_valuebuffer_state_;
 
   bool enforce_gl_minimums_;
   bool bind_generates_resource_;
@@ -204,14 +211,14 @@
 
   scoped_ptr<RenderbufferManager> renderbuffer_manager_;
 
-  scoped_ptr<ValuebufferManager> valuebuffer_manager_;
-
   scoped_ptr<TextureManager> texture_manager_;
 
   scoped_ptr<ProgramManager> program_manager_;
 
   scoped_ptr<ShaderManager> shader_manager_;
 
+  scoped_ptr<ValuebufferManager> valuebuffer_manager_;
+
   scoped_refptr<FeatureInfo> feature_info_;
 
   std::vector<base::WeakPtr<gles2::GLES2Decoder> > decoders_;
diff --git a/gpu/command_buffer/service/context_group_unittest.cc b/gpu/command_buffer/service/context_group_unittest.cc
index 13e5dc8..98e8e3c 100644
--- a/gpu/command_buffer/service/context_group_unittest.cc
+++ b/gpu/command_buffer/service/context_group_unittest.cc
@@ -5,6 +5,7 @@
 #include "gpu/command_buffer/service/context_group.h"
 
 #include "base/memory/scoped_ptr.h"
+#include "gpu/command_buffer/common/value_state.h"
 #include "gpu/command_buffer/service/gles2_cmd_decoder_mock.h"
 #include "gpu/command_buffer/service/gpu_service_test.h"
 #include "gpu/command_buffer/service/mailbox_manager.h"
@@ -39,7 +40,7 @@
     GpuServiceTest::SetUp();
     decoder_.reset(new MockGLES2Decoder());
     group_ = scoped_refptr<ContextGroup>(
-        new ContextGroup(NULL, NULL, NULL, NULL, kBindGeneratesResource));
+        new ContextGroup(NULL, NULL, NULL, NULL, NULL, kBindGeneratesResource));
   }
 
   scoped_ptr<MockGLES2Decoder> decoder_;
diff --git a/gpu/command_buffer/service/feature_info.cc b/gpu/command_buffer/service/feature_info.cc
index 6dd1f34..9fec2e1 100644
--- a/gpu/command_buffer/service/feature_info.cc
+++ b/gpu/command_buffer/service/feature_info.cc
@@ -145,7 +145,9 @@
       ext_texture_storage(false),
       chromium_path_rendering(false),
       blend_equation_advanced(false),
-      blend_equation_advanced_coherent(false) {
+      blend_equation_advanced_coherent(false),
+      ext_texture_rg(false),
+      enable_subscribe_uniform(false) {
 }
 
 FeatureInfo::Workarounds::Workarounds() :
@@ -179,6 +181,9 @@
   feature_flags_.is_swiftshader =
       (command_line.GetSwitchValueASCII(switches::kUseGL) == "swiftshader");
 
+  feature_flags_.enable_subscribe_uniform =
+      command_line.HasSwitch(switches::kEnableSubscribeUniformExtension);
+
   static const GLenum kAlphaTypes[] = {
       GL_UNSIGNED_BYTE,
   };
@@ -226,6 +231,39 @@
   return true;
 }
 
+bool IsGL_REDSupportedOnFBOs() {
+  // Skia uses GL_RED with frame buffers, unfortunately, Mesa claims to support
+  // GL_EXT_texture_rg, but it doesn't support it on frame buffers.  To fix
+  // this, we try it, and if it fails, we don't expose GL_EXT_texture_rg.
+  GLint fb_binding = 0;
+  GLint tex_binding = 0;
+  glGetIntegerv(GL_FRAMEBUFFER_BINDING, &fb_binding);
+  glGetIntegerv(GL_TEXTURE_BINDING_2D, &tex_binding);
+
+  GLuint textureId = 0;
+  glGenTextures(1, &textureId);
+  glBindTexture(GL_TEXTURE_2D, textureId);
+  GLubyte data[1] = {0};
+  glTexImage2D(GL_TEXTURE_2D, 0, GL_RED_EXT, 1, 1, 0, GL_RED_EXT,
+               GL_UNSIGNED_BYTE, data);
+  GLuint textureFBOID = 0;
+  glGenFramebuffersEXT(1, &textureFBOID);
+  glBindFramebufferEXT(GL_FRAMEBUFFER, textureFBOID);
+  glFramebufferTexture2DEXT(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D,
+                            textureId, 0);
+  bool result =
+      glCheckFramebufferStatusEXT(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_UNSUPPORTED;
+  glDeleteFramebuffersEXT(1, &textureFBOID);
+  glDeleteTextures(1, &textureId);
+
+  glBindFramebufferEXT(GL_FRAMEBUFFER, static_cast<GLuint>(fb_binding));
+  glBindTexture(GL_TEXTURE_2D, static_cast<GLuint>(tex_binding));
+
+  DCHECK(glGetError() == GL_NO_ERROR);
+
+  return result;
+}
+
 void FeatureInfo::InitializeFeatures() {
   // Figure out what extensions to turn on.
   StringSet extensions(
@@ -261,6 +299,10 @@
   AddExtensionString("GL_CHROMIUM_texture_mailbox");
   AddExtensionString("GL_EXT_debug_marker");
 
+  if (feature_flags_.enable_subscribe_uniform) {
+    AddExtensionString("GL_CHROMIUM_subscribe_uniform");
+  }
+
   // OES_vertex_array_object is emulated if not present natively,
   // so the extension string is always exposed.
   AddExtensionString("GL_OES_vertex_array_object");
@@ -394,8 +436,14 @@
     validators_.index_type.AddValue(GL_UNSIGNED_INT);
   }
 
-  if (is_es3 || extensions.Contains("GL_EXT_sRGB") ||
-      gfx::HasDesktopGLFeatures()) {
+  // With EXT_sRGB, unsized SRGB_EXT and SRGB_ALPHA_EXT are accepted by the
+  // <format> and <internalformat> parameter of TexImage2D. GLES3 adds support
+  // for SRGB Textures but the accepted internal formats for TexImage2D are only
+  // sized formats GL_SRGB8 and GL_SRGB8_ALPHA8. Also, SRGB_EXT isn't a valid
+  // <format> in this case. So, even with GLES3 explicitly check for
+  // GL_EXT_sRGB.
+  if (((is_es3 || extensions.Contains("GL_OES_rgb8_rgba8")) &&
+      extensions.Contains("GL_EXT_sRGB")) || gfx::HasDesktopGLFeatures()) {
     AddExtensionString("GL_EXT_sRGB");
     texture_format_validators_[GL_SRGB_EXT].AddValue(GL_UNSIGNED_BYTE);
     texture_format_validators_[GL_SRGB_ALPHA_EXT].AddValue(GL_UNSIGNED_BYTE);
@@ -933,6 +981,34 @@
       validators_.g_l_state.AddValue(GL_PATH_PROJECTION_MATRIX_CHROMIUM);
     }
   }
+
+  if ((is_es3 || extensions.Contains("GL_EXT_texture_rg") ||
+       extensions.Contains("GL_ARB_texture_rg")) &&
+      IsGL_REDSupportedOnFBOs()) {
+    feature_flags_.ext_texture_rg = true;
+    AddExtensionString("GL_EXT_texture_rg");
+
+    validators_.texture_format.AddValue(GL_RED_EXT);
+    validators_.texture_format.AddValue(GL_RG_EXT);
+    validators_.texture_internal_format.AddValue(GL_RED_EXT);
+    validators_.texture_internal_format.AddValue(GL_RG_EXT);
+    validators_.read_pixel_format.AddValue(GL_RED_EXT);
+    validators_.read_pixel_format.AddValue(GL_RG_EXT);
+    validators_.render_buffer_format.AddValue(GL_R8_EXT);
+    validators_.render_buffer_format.AddValue(GL_RG8_EXT);
+
+    texture_format_validators_[GL_RED_EXT].AddValue(GL_UNSIGNED_BYTE);
+    texture_format_validators_[GL_RG_EXT].AddValue(GL_UNSIGNED_BYTE);
+
+    if (enable_texture_float) {
+      texture_format_validators_[GL_RED_EXT].AddValue(GL_FLOAT);
+      texture_format_validators_[GL_RG_EXT].AddValue(GL_FLOAT);
+    }
+    if (enable_texture_half_float) {
+      texture_format_validators_[GL_RED_EXT].AddValue(GL_HALF_FLOAT_OES);
+      texture_format_validators_[GL_RG_EXT].AddValue(GL_HALF_FLOAT_OES);
+    }
+  }
 }
 
 void FeatureInfo::AddExtensionString(const char* s) {
diff --git a/gpu/command_buffer/service/feature_info.h b/gpu/command_buffer/service/feature_info.h
index b69f2e4..816ab49 100644
--- a/gpu/command_buffer/service/feature_info.h
+++ b/gpu/command_buffer/service/feature_info.h
@@ -73,6 +73,8 @@
     bool chromium_path_rendering;
     bool blend_equation_advanced;
     bool blend_equation_advanced_coherent;
+    bool ext_texture_rg;
+    bool enable_subscribe_uniform;
   };
 
   struct Workarounds {
diff --git a/gpu/command_buffer/service/feature_info_unittest.cc b/gpu/command_buffer/service/feature_info_unittest.cc
index 53dbf6c..b314262 100644
--- a/gpu/command_buffer/service/feature_info_unittest.cc
+++ b/gpu/command_buffer/service/feature_info_unittest.cc
@@ -455,7 +455,7 @@
 }
 
 TEST_F(FeatureInfoTest, InitializeEXT_sRGB) {
-  SetupInitExpectations("GL_EXT_sRGB");
+  SetupInitExpectations("GL_EXT_sRGB GL_OES_rgb8_rgba8");
   EXPECT_THAT(info_->extensions(),
               HasSubstr("GL_EXT_sRGB"));
   EXPECT_TRUE(info_->GetTextureFormatValidator(GL_SRGB_EXT).IsValid(
@@ -690,6 +690,27 @@
       GL_FLOAT));
 }
 
+TEST_F(FeatureInfoTest, Initialize_sRGBGLES3) {
+  SetupInitExpectationsWithGLVersion("", "", "OpenGL ES 3.0");
+  EXPECT_THAT(info_->extensions(), Not(HasSubstr("GL_EXT_sRGB")));
+  EXPECT_FALSE(info_->GetTextureFormatValidator(GL_SRGB_EXT).IsValid(
+      GL_UNSIGNED_BYTE));
+  EXPECT_FALSE(info_->GetTextureFormatValidator(GL_SRGB_ALPHA_EXT).IsValid(
+      GL_UNSIGNED_BYTE));
+  EXPECT_FALSE(info_->validators()->texture_format.IsValid(
+      GL_SRGB_EXT));
+  EXPECT_FALSE(info_->validators()->texture_format.IsValid(
+      GL_SRGB_ALPHA_EXT));
+  EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid(
+      GL_SRGB_EXT));
+  EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid(
+      GL_SRGB_ALPHA_EXT));
+  EXPECT_FALSE(info_->validators()->render_buffer_format.IsValid(
+      GL_SRGB8_ALPHA8_EXT));
+  EXPECT_FALSE(info_->validators()->frame_buffer_parameter.IsValid(
+      GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT));
+}
+
 TEST_F(FeatureInfoTest, InitializeOES_texture_floatGLES2) {
   SetupInitExpectations("GL_OES_texture_float");
   EXPECT_FALSE(info_->feature_flags().enable_texture_float_linear);
@@ -1402,5 +1423,57 @@
   EXPECT_TRUE(info_->feature_flags().blend_equation_advanced_coherent);
 }
 
+TEST_F(FeatureInfoTest, InitializeEXT_texture_rgWithFloat) {
+  SetupInitExpectations(
+      "GL_EXT_texture_rg GL_OES_texture_float GL_OES_texture_half_float");
+  EXPECT_TRUE(info_->feature_flags().ext_texture_rg);
+
+  EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_RED_EXT));
+  EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_RG_EXT));
+  EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid(GL_RED_EXT));
+  EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid(GL_RG_EXT));
+  EXPECT_TRUE(info_->validators()->read_pixel_format.IsValid(GL_RED_EXT));
+  EXPECT_TRUE(info_->validators()->read_pixel_format.IsValid(GL_RG_EXT));
+  EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid(GL_R8_EXT));
+  EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid(GL_RG8_EXT));
+
+  EXPECT_TRUE(
+      info_->GetTextureFormatValidator(GL_RED_EXT).IsValid(GL_HALF_FLOAT_OES));
+  EXPECT_TRUE(
+      info_->GetTextureFormatValidator(GL_RG_EXT).IsValid(GL_HALF_FLOAT_OES));
+  EXPECT_TRUE(
+      info_->GetTextureFormatValidator(GL_RED_EXT).IsValid(GL_UNSIGNED_BYTE));
+  EXPECT_TRUE(
+      info_->GetTextureFormatValidator(GL_RG_EXT).IsValid(GL_UNSIGNED_BYTE));
+
+  EXPECT_FALSE(info_->GetTextureFormatValidator(GL_RED_EXT).IsValid(GL_BYTE));
+  EXPECT_FALSE(info_->GetTextureFormatValidator(GL_RG_EXT).IsValid(GL_BYTE));
+  EXPECT_FALSE(info_->GetTextureFormatValidator(GL_RED_EXT).IsValid(GL_SHORT));
+  EXPECT_FALSE(info_->GetTextureFormatValidator(GL_RG_EXT).IsValid(GL_SHORT));
+}
+
+TEST_F(FeatureInfoTest, InitializeARB_texture_rgNoFloat) {
+  SetupInitExpectations("GL_ARB_texture_rg");
+  EXPECT_TRUE(info_->feature_flags().ext_texture_rg);
+
+  EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_RED_EXT));
+  EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_RG_EXT));
+  EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid(GL_RED_EXT));
+  EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid(GL_RG_EXT));
+  EXPECT_TRUE(info_->validators()->read_pixel_format.IsValid(GL_RED_EXT));
+  EXPECT_TRUE(info_->validators()->read_pixel_format.IsValid(GL_RG_EXT));
+  EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid(GL_R8_EXT));
+  EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid(GL_RG8_EXT));
+
+  EXPECT_FALSE(
+      info_->GetTextureFormatValidator(GL_RED_EXT).IsValid(GL_HALF_FLOAT_OES));
+  EXPECT_FALSE(
+      info_->GetTextureFormatValidator(GL_RG_EXT).IsValid(GL_HALF_FLOAT_OES));
+  EXPECT_TRUE(
+      info_->GetTextureFormatValidator(GL_RED_EXT).IsValid(GL_UNSIGNED_BYTE));
+  EXPECT_TRUE(
+      info_->GetTextureFormatValidator(GL_RG_EXT).IsValid(GL_UNSIGNED_BYTE));
+}
+
 }  // namespace gles2
 }  // namespace gpu
diff --git a/gpu/command_buffer/service/gles2_cmd_copy_texture_chromium.cc b/gpu/command_buffer/service/gles2_cmd_copy_texture_chromium.cc
index 49bba9b..ffb9370 100644
--- a/gpu/command_buffer/service/gles2_cmd_copy_texture_chromium.cc
+++ b/gpu/command_buffer/service/gles2_cmd_copy_texture_chromium.cc
@@ -218,6 +218,7 @@
                       GLuint source_id,
                       GLuint dest_id,
                       GLint dest_level,
+                      GLenum dest_internal_format,
                       GLsizei width,
                       GLsizei height,
                       GLuint framebuffer) {
@@ -230,8 +231,14 @@
     glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
     glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
     glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
-    glCopyTexSubImage2D(GL_TEXTURE_2D, dest_level, 0 /* xoffset */,
-                        0 /* yoffset */, 0 /* x */, 0 /* y */, width, height);
+    glCopyTexImage2D(GL_TEXTURE_2D,
+                     dest_level,
+                     dest_internal_format,
+                     0 /* x */,
+                     0 /* y */,
+                     width,
+                     height,
+                     0 /* border */);
   }
 
   decoder->RestoreTextureState(source_id);
@@ -325,15 +332,16 @@
   bool source_format_contain_superset_of_dest_format =
       source_internal_format == dest_internal_format ||
       (source_internal_format == GL_RGBA && dest_internal_format == GL_RGB);
-  bool source_target_allowed = source_target == GL_TEXTURE_2D ||
-                               source_target == GL_TEXTURE_RECTANGLE_ARB;
-  if (source_target_allowed && !flip_y && !premultiply_alpha_change &&
+  // GL_TEXTURE_RECTANGLE_ARB on FBO is supported by OpenGL, not GLES2,
+  // so restrict this to GL_TEXTURE_2D.
+  if (source_target == GL_TEXTURE_2D && !flip_y && !premultiply_alpha_change &&
       source_format_contain_superset_of_dest_format) {
     DoCopyTexImage2D(decoder,
                      source_target,
                      source_id,
                      dest_id,
                      dest_level,
+                     dest_internal_format,
                      width,
                      height,
                      framebuffer_);
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc
index dec594b..422168c 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc
@@ -542,7 +542,8 @@
 GLES2Decoder::GLES2Decoder()
     : initialized_(false),
       debug_(false),
-      log_commands_(false) {
+      log_commands_(false),
+      unsafe_es3_apis_enabled_(false) {
 }
 
 GLES2Decoder::~GLES2Decoder() {
@@ -629,7 +630,13 @@
     return vertex_array_manager_.get();
   }
   ImageManager* GetImageManager() override { return image_manager_.get(); }
+
+  ValuebufferManager* GetValuebufferManager() override {
+    return valuebuffer_manager();
+  }
+
   bool ProcessPendingQueries(bool did_finish) override;
+
   bool HasMoreIdleWork() override;
   void PerformIdleWork() override;
 
@@ -1366,6 +1373,11 @@
       GLenum target, GLenum attachment, GLenum textarget,
       GLuint texture, GLint level, GLsizei samples);
 
+  // Wrapper for glFramebufferTextureLayer.
+  void DoFramebufferTextureLayer(
+      GLenum target, GLenum attachment, GLuint texture, GLint level,
+      GLint layer);
+
   // Wrapper for glGenerateMipmap
   void DoGenerateMipmap(GLenum target);
 
@@ -2427,10 +2439,14 @@
     set_log_commands(true);
   }
 
+  if (CommandLine::ForCurrentProcess()->HasSwitch(
+      switches::kEnableUnsafeES3APIs)) {
+    set_unsafe_es3_apis_enabled(true);
+  }
+
   compile_shader_always_succeeds_ = CommandLine::ForCurrentProcess()->HasSwitch(
       switches::kCompileShaderAlwaysSucceeds);
 
-
   // Take ownership of the context and surface. The surface can be replaced with
   // SetSurface.
   context_ = context;
@@ -2839,6 +2855,7 @@
       feature_info_->feature_flags().blend_equation_advanced;
   caps.blend_equation_advanced_coherent =
       feature_info_->feature_flags().blend_equation_advanced_coherent;
+  caps.texture_rg = feature_info_->feature_flags().ext_texture_rg;
   return caps;
 }
 
@@ -5364,6 +5381,25 @@
   OnFboChanged();
 }
 
+void GLES2DecoderImpl::DoFramebufferTextureLayer(
+    GLenum target, GLenum attachment, GLuint client_texture_id,
+    GLint level, GLint layer) {
+  // TODO(zmo): Unsafe ES3 API, missing states update.
+  GLuint service_id = 0;
+  TextureRef* texture_ref = NULL;
+  if (client_texture_id) {
+    texture_ref = GetTexture(client_texture_id);
+    if (!texture_ref) {
+      LOCAL_SET_GL_ERROR(
+          GL_INVALID_OPERATION,
+          "glFramebufferTextureLayer", "unknown texture_ref");
+      return;
+    }
+    service_id = texture_ref->service_id();
+  }
+  glFramebufferTextureLayer(target, attachment, service_id, level, layer);
+}
+
 void GLES2DecoderImpl::DoGetFramebufferAttachmentParameteriv(
     GLenum target, GLenum attachment, GLenum pname, GLint* params) {
   Framebuffer* framebuffer = GetFramebufferInfoForTarget(target);
@@ -7415,6 +7451,24 @@
   }
 }
 
+error::Error GLES2DecoderImpl::HandleVertexAttribIPointer(
+    uint32 immediate_data_size,
+    const void* cmd_data) {
+  // TODO(zmo): Unsafe ES3 API, missing states update.
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::VertexAttribIPointer& c =
+      *static_cast<const gles2::cmds::VertexAttribIPointer*>(cmd_data);
+  GLuint indx = c.indx;
+  GLint size = c.size;
+  GLenum type = c.type;
+  GLsizei stride = c.stride;
+  GLsizei offset = c.offset;
+  const void* ptr = reinterpret_cast<const void*>(offset);
+  glVertexAttribIPointer(indx, size, type, stride, ptr);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleVertexAttribPointer(
     uint32 immediate_data_size,
     const void* cmd_data) {
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.h b/gpu/command_buffer/service/gles2_cmd_decoder.h
index 63618c2..670ce75 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder.h
+++ b/gpu/command_buffer/service/gles2_cmd_decoder.h
@@ -39,6 +39,7 @@
 class Logger;
 class QueryManager;
 class VertexArrayManager;
+class ValuebufferManager;
 struct ContextState;
 
 struct DisallowedFeatures {
@@ -78,6 +79,14 @@
     initialized_ = true;
   }
 
+  bool unsafe_es3_apis_enabled() const {
+    return unsafe_es3_apis_enabled_;
+  }
+
+  void set_unsafe_es3_apis_enabled(bool enabled) {
+    unsafe_es3_apis_enabled_ = enabled;
+  }
+
   bool debug() const {
     return debug_;
   }
@@ -170,6 +179,9 @@
   // Gets the ImageManager for this context.
   virtual ImageManager* GetImageManager() = 0;
 
+  // Gets the ValuebufferManager for this context.
+  virtual ValuebufferManager* GetValuebufferManager() = 0;
+
   // Process any pending queries. Returns false if there are no pending queries.
   virtual bool ProcessPendingQueries(bool did_finish) = 0;
 
@@ -251,6 +263,7 @@
   bool initialized_;
   bool debug_;
   bool log_commands_;
+  bool unsafe_es3_apis_enabled_;
 
   DISALLOW_COPY_AND_ASSIGN(GLES2Decoder);
 };
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h b/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h
index ee3bba5..ebdb625 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h
@@ -416,6 +416,27 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleCopyBufferSubData(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::CopyBufferSubData& c =
+      *static_cast<const gles2::cmds::CopyBufferSubData*>(cmd_data);
+  (void)c;
+  GLenum readtarget = static_cast<GLenum>(c.readtarget);
+  GLenum writetarget = static_cast<GLenum>(c.writetarget);
+  GLintptr readoffset = static_cast<GLintptr>(c.readoffset);
+  GLintptr writeoffset = static_cast<GLintptr>(c.writeoffset);
+  GLsizeiptr size = static_cast<GLsizeiptr>(c.size);
+  if (size < 0) {
+    LOCAL_SET_GL_ERROR(GL_INVALID_VALUE, "glCopyBufferSubData", "size < 0");
+    return error::kNoError;
+  }
+  glCopyBufferSubData(readtarget, writetarget, readoffset, writeoffset, size);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleCopyTexImage2D(
     uint32_t immediate_data_size,
     const void* cmd_data) {
@@ -798,6 +819,23 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleFramebufferTextureLayer(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::FramebufferTextureLayer& c =
+      *static_cast<const gles2::cmds::FramebufferTextureLayer*>(cmd_data);
+  (void)c;
+  GLenum target = static_cast<GLenum>(c.target);
+  GLenum attachment = static_cast<GLenum>(c.attachment);
+  GLuint texture = c.texture;
+  GLint level = static_cast<GLint>(c.level);
+  GLint layer = static_cast<GLint>(c.layer);
+  DoFramebufferTextureLayer(target, attachment, texture, level, layer);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleFrontFace(uint32_t immediate_data_size,
                                                const void* cmd_data) {
   const gles2::cmds::FrontFace& c =
@@ -1117,6 +1155,47 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleGetInternalformativ(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::GetInternalformativ& c =
+      *static_cast<const gles2::cmds::GetInternalformativ*>(cmd_data);
+  (void)c;
+  GLenum target = static_cast<GLenum>(c.target);
+  GLenum format = static_cast<GLenum>(c.format);
+  GLenum pname = static_cast<GLenum>(c.pname);
+  GLsizei bufSize = static_cast<GLsizei>(c.bufSize);
+  typedef cmds::GetInternalformativ::Result Result;
+  GLsizei num_values = 0;
+  GetNumValuesReturnedForGLGet(pname, &num_values);
+  Result* result = GetSharedMemoryAs<Result*>(
+      c.params_shm_id, c.params_shm_offset, Result::ComputeSize(num_values));
+  GLint* params = result ? result->GetData() : NULL;
+  if (bufSize < 0) {
+    LOCAL_SET_GL_ERROR(GL_INVALID_VALUE, "glGetInternalformativ",
+                       "bufSize < 0");
+    return error::kNoError;
+  }
+  if (params == NULL) {
+    return error::kOutOfBounds;
+  }
+  LOCAL_COPY_REAL_GL_ERRORS_TO_WRAPPER("GetInternalformativ");
+  // Check that the client initialized the result.
+  if (result->size != 0) {
+    return error::kInvalidArguments;
+  }
+  glGetInternalformativ(target, format, pname, bufSize, params);
+  GLenum error = glGetError();
+  if (error == GL_NO_ERROR) {
+    result->SetNumResults(num_values);
+  } else {
+    LOCAL_SET_GL_ERROR(error, "GetInternalformativ", "");
+  }
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleGetProgramiv(uint32_t immediate_data_size,
                                                   const void* cmd_data) {
   const gles2::cmds::GetProgramiv& c =
@@ -1966,6 +2045,39 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleTexStorage3D(uint32_t immediate_data_size,
+                                                  const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::TexStorage3D& c =
+      *static_cast<const gles2::cmds::TexStorage3D*>(cmd_data);
+  (void)c;
+  GLenum target = static_cast<GLenum>(c.target);
+  GLsizei levels = static_cast<GLsizei>(c.levels);
+  GLenum internalFormat = static_cast<GLenum>(c.internalFormat);
+  GLsizei width = static_cast<GLsizei>(c.width);
+  GLsizei height = static_cast<GLsizei>(c.height);
+  GLsizei depth = static_cast<GLsizei>(c.depth);
+  if (levels < 0) {
+    LOCAL_SET_GL_ERROR(GL_INVALID_VALUE, "glTexStorage3D", "levels < 0");
+    return error::kNoError;
+  }
+  if (width < 0) {
+    LOCAL_SET_GL_ERROR(GL_INVALID_VALUE, "glTexStorage3D", "width < 0");
+    return error::kNoError;
+  }
+  if (height < 0) {
+    LOCAL_SET_GL_ERROR(GL_INVALID_VALUE, "glTexStorage3D", "height < 0");
+    return error::kNoError;
+  }
+  if (depth < 0) {
+    LOCAL_SET_GL_ERROR(GL_INVALID_VALUE, "glTexStorage3D", "depth < 0");
+    return error::kNoError;
+  }
+  glTexStorage3D(target, levels, internalFormat, width, height, depth);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleUniform1f(uint32_t immediate_data_size,
                                                const void* cmd_data) {
   const gles2::cmds::Uniform1f& c =
@@ -2039,6 +2151,48 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleUniform1ui(uint32_t immediate_data_size,
+                                                const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::Uniform1ui& c =
+      *static_cast<const gles2::cmds::Uniform1ui*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLuint x = static_cast<GLuint>(c.x);
+  GLuint temp[1] = {
+      x,
+  };
+  glUniform1uiv(location, 1, &temp[0]);
+  return error::kNoError;
+}
+
+error::Error GLES2DecoderImpl::HandleUniform1uivImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::Uniform1uivImmediate& c =
+      *static_cast<const gles2::cmds::Uniform1uivImmediate*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLsizei count = static_cast<GLsizei>(c.count);
+  uint32_t data_size;
+  if (!ComputeDataSize(count, sizeof(GLuint), 1, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLuint* v =
+      GetImmediateDataAs<const GLuint*>(c, data_size, immediate_data_size);
+  if (v == NULL) {
+    return error::kOutOfBounds;
+  }
+  glUniform1uiv(location, count, v);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleUniform2f(uint32_t immediate_data_size,
                                                const void* cmd_data) {
   const gles2::cmds::Uniform2f& c =
@@ -2117,6 +2271,49 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleUniform2ui(uint32_t immediate_data_size,
+                                                const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::Uniform2ui& c =
+      *static_cast<const gles2::cmds::Uniform2ui*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLuint x = static_cast<GLuint>(c.x);
+  GLuint y = static_cast<GLuint>(c.y);
+  GLuint temp[2] = {
+      x, y,
+  };
+  glUniform2uiv(location, 1, &temp[0]);
+  return error::kNoError;
+}
+
+error::Error GLES2DecoderImpl::HandleUniform2uivImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::Uniform2uivImmediate& c =
+      *static_cast<const gles2::cmds::Uniform2uivImmediate*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLsizei count = static_cast<GLsizei>(c.count);
+  uint32_t data_size;
+  if (!ComputeDataSize(count, sizeof(GLuint), 2, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLuint* v =
+      GetImmediateDataAs<const GLuint*>(c, data_size, immediate_data_size);
+  if (v == NULL) {
+    return error::kOutOfBounds;
+  }
+  glUniform2uiv(location, count, v);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleUniform3f(uint32_t immediate_data_size,
                                                const void* cmd_data) {
   const gles2::cmds::Uniform3f& c =
@@ -2197,6 +2394,50 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleUniform3ui(uint32_t immediate_data_size,
+                                                const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::Uniform3ui& c =
+      *static_cast<const gles2::cmds::Uniform3ui*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLuint x = static_cast<GLuint>(c.x);
+  GLuint y = static_cast<GLuint>(c.y);
+  GLuint z = static_cast<GLuint>(c.z);
+  GLuint temp[3] = {
+      x, y, z,
+  };
+  glUniform3uiv(location, 1, &temp[0]);
+  return error::kNoError;
+}
+
+error::Error GLES2DecoderImpl::HandleUniform3uivImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::Uniform3uivImmediate& c =
+      *static_cast<const gles2::cmds::Uniform3uivImmediate*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLsizei count = static_cast<GLsizei>(c.count);
+  uint32_t data_size;
+  if (!ComputeDataSize(count, sizeof(GLuint), 3, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLuint* v =
+      GetImmediateDataAs<const GLuint*>(c, data_size, immediate_data_size);
+  if (v == NULL) {
+    return error::kOutOfBounds;
+  }
+  glUniform3uiv(location, count, v);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleUniform4f(uint32_t immediate_data_size,
                                                const void* cmd_data) {
   const gles2::cmds::Uniform4f& c =
@@ -2279,6 +2520,51 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleUniform4ui(uint32_t immediate_data_size,
+                                                const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::Uniform4ui& c =
+      *static_cast<const gles2::cmds::Uniform4ui*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLuint x = static_cast<GLuint>(c.x);
+  GLuint y = static_cast<GLuint>(c.y);
+  GLuint z = static_cast<GLuint>(c.z);
+  GLuint w = static_cast<GLuint>(c.w);
+  GLuint temp[4] = {
+      x, y, z, w,
+  };
+  glUniform4uiv(location, 1, &temp[0]);
+  return error::kNoError;
+}
+
+error::Error GLES2DecoderImpl::HandleUniform4uivImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::Uniform4uivImmediate& c =
+      *static_cast<const gles2::cmds::Uniform4uivImmediate*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLsizei count = static_cast<GLsizei>(c.count);
+  uint32_t data_size;
+  if (!ComputeDataSize(count, sizeof(GLuint), 4, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLuint* v =
+      GetImmediateDataAs<const GLuint*>(c, data_size, immediate_data_size);
+  if (v == NULL) {
+    return error::kOutOfBounds;
+  }
+  glUniform4uiv(location, count, v);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleUniformMatrix2fvImmediate(
     uint32_t immediate_data_size,
     const void* cmd_data) {
@@ -2304,6 +2590,60 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleUniformMatrix2x3fvImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::UniformMatrix2x3fvImmediate& c =
+      *static_cast<const gles2::cmds::UniformMatrix2x3fvImmediate*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLsizei count = static_cast<GLsizei>(c.count);
+  GLboolean transpose = static_cast<GLboolean>(c.transpose);
+  uint32_t data_size;
+  if (!ComputeDataSize(count, sizeof(GLfloat), 6, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLfloat* value =
+      GetImmediateDataAs<const GLfloat*>(c, data_size, immediate_data_size);
+  if (value == NULL) {
+    return error::kOutOfBounds;
+  }
+  glUniformMatrix2x3fv(location, count, transpose, value);
+  return error::kNoError;
+}
+
+error::Error GLES2DecoderImpl::HandleUniformMatrix2x4fvImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::UniformMatrix2x4fvImmediate& c =
+      *static_cast<const gles2::cmds::UniformMatrix2x4fvImmediate*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLsizei count = static_cast<GLsizei>(c.count);
+  GLboolean transpose = static_cast<GLboolean>(c.transpose);
+  uint32_t data_size;
+  if (!ComputeDataSize(count, sizeof(GLfloat), 8, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLfloat* value =
+      GetImmediateDataAs<const GLfloat*>(c, data_size, immediate_data_size);
+  if (value == NULL) {
+    return error::kOutOfBounds;
+  }
+  glUniformMatrix2x4fv(location, count, transpose, value);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleUniformMatrix3fvImmediate(
     uint32_t immediate_data_size,
     const void* cmd_data) {
@@ -2329,6 +2669,60 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleUniformMatrix3x2fvImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::UniformMatrix3x2fvImmediate& c =
+      *static_cast<const gles2::cmds::UniformMatrix3x2fvImmediate*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLsizei count = static_cast<GLsizei>(c.count);
+  GLboolean transpose = static_cast<GLboolean>(c.transpose);
+  uint32_t data_size;
+  if (!ComputeDataSize(count, sizeof(GLfloat), 6, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLfloat* value =
+      GetImmediateDataAs<const GLfloat*>(c, data_size, immediate_data_size);
+  if (value == NULL) {
+    return error::kOutOfBounds;
+  }
+  glUniformMatrix3x2fv(location, count, transpose, value);
+  return error::kNoError;
+}
+
+error::Error GLES2DecoderImpl::HandleUniformMatrix3x4fvImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::UniformMatrix3x4fvImmediate& c =
+      *static_cast<const gles2::cmds::UniformMatrix3x4fvImmediate*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLsizei count = static_cast<GLsizei>(c.count);
+  GLboolean transpose = static_cast<GLboolean>(c.transpose);
+  uint32_t data_size;
+  if (!ComputeDataSize(count, sizeof(GLfloat), 12, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLfloat* value =
+      GetImmediateDataAs<const GLfloat*>(c, data_size, immediate_data_size);
+  if (value == NULL) {
+    return error::kOutOfBounds;
+  }
+  glUniformMatrix3x4fv(location, count, transpose, value);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleUniformMatrix4fvImmediate(
     uint32_t immediate_data_size,
     const void* cmd_data) {
@@ -2354,6 +2748,60 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleUniformMatrix4x2fvImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::UniformMatrix4x2fvImmediate& c =
+      *static_cast<const gles2::cmds::UniformMatrix4x2fvImmediate*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLsizei count = static_cast<GLsizei>(c.count);
+  GLboolean transpose = static_cast<GLboolean>(c.transpose);
+  uint32_t data_size;
+  if (!ComputeDataSize(count, sizeof(GLfloat), 8, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLfloat* value =
+      GetImmediateDataAs<const GLfloat*>(c, data_size, immediate_data_size);
+  if (value == NULL) {
+    return error::kOutOfBounds;
+  }
+  glUniformMatrix4x2fv(location, count, transpose, value);
+  return error::kNoError;
+}
+
+error::Error GLES2DecoderImpl::HandleUniformMatrix4x3fvImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::UniformMatrix4x3fvImmediate& c =
+      *static_cast<const gles2::cmds::UniformMatrix4x3fvImmediate*>(cmd_data);
+  (void)c;
+  GLint location = static_cast<GLint>(c.location);
+  GLsizei count = static_cast<GLsizei>(c.count);
+  GLboolean transpose = static_cast<GLboolean>(c.transpose);
+  uint32_t data_size;
+  if (!ComputeDataSize(count, sizeof(GLfloat), 12, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLfloat* value =
+      GetImmediateDataAs<const GLfloat*>(c, data_size, immediate_data_size);
+  if (value == NULL) {
+    return error::kOutOfBounds;
+  }
+  glUniformMatrix4x3fv(location, count, transpose, value);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleUseProgram(uint32_t immediate_data_size,
                                                 const void* cmd_data) {
   const gles2::cmds::UseProgram& c =
@@ -2521,6 +2969,90 @@
   return error::kNoError;
 }
 
+error::Error GLES2DecoderImpl::HandleVertexAttribI4i(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::VertexAttribI4i& c =
+      *static_cast<const gles2::cmds::VertexAttribI4i*>(cmd_data);
+  (void)c;
+  GLuint indx = static_cast<GLuint>(c.indx);
+  GLint x = static_cast<GLint>(c.x);
+  GLint y = static_cast<GLint>(c.y);
+  GLint z = static_cast<GLint>(c.z);
+  GLint w = static_cast<GLint>(c.w);
+  glVertexAttribI4i(indx, x, y, z, w);
+  return error::kNoError;
+}
+
+error::Error GLES2DecoderImpl::HandleVertexAttribI4ivImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::VertexAttribI4ivImmediate& c =
+      *static_cast<const gles2::cmds::VertexAttribI4ivImmediate*>(cmd_data);
+  (void)c;
+  GLuint indx = static_cast<GLuint>(c.indx);
+  uint32_t data_size;
+  if (!ComputeDataSize(1, sizeof(GLint), 4, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLint* values =
+      GetImmediateDataAs<const GLint*>(c, data_size, immediate_data_size);
+  if (values == NULL) {
+    return error::kOutOfBounds;
+  }
+  glVertexAttribI4iv(indx, values);
+  return error::kNoError;
+}
+
+error::Error GLES2DecoderImpl::HandleVertexAttribI4ui(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::VertexAttribI4ui& c =
+      *static_cast<const gles2::cmds::VertexAttribI4ui*>(cmd_data);
+  (void)c;
+  GLuint indx = static_cast<GLuint>(c.indx);
+  GLuint x = static_cast<GLuint>(c.x);
+  GLuint y = static_cast<GLuint>(c.y);
+  GLuint z = static_cast<GLuint>(c.z);
+  GLuint w = static_cast<GLuint>(c.w);
+  glVertexAttribI4ui(indx, x, y, z, w);
+  return error::kNoError;
+}
+
+error::Error GLES2DecoderImpl::HandleVertexAttribI4uivImmediate(
+    uint32_t immediate_data_size,
+    const void* cmd_data) {
+  if (!unsafe_es3_apis_enabled())
+    return error::kUnknownCommand;
+  const gles2::cmds::VertexAttribI4uivImmediate& c =
+      *static_cast<const gles2::cmds::VertexAttribI4uivImmediate*>(cmd_data);
+  (void)c;
+  GLuint indx = static_cast<GLuint>(c.indx);
+  uint32_t data_size;
+  if (!ComputeDataSize(1, sizeof(GLuint), 4, &data_size)) {
+    return error::kOutOfBounds;
+  }
+  if (data_size > immediate_data_size) {
+    return error::kOutOfBounds;
+  }
+  const GLuint* values =
+      GetImmediateDataAs<const GLuint*>(c, data_size, immediate_data_size);
+  if (values == NULL) {
+    return error::kOutOfBounds;
+  }
+  glVertexAttribI4uiv(indx, values);
+  return error::kNoError;
+}
+
 error::Error GLES2DecoderImpl::HandleViewport(uint32_t immediate_data_size,
                                               const void* cmd_data) {
   const gles2::cmds::Viewport& c =
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_mock.h b/gpu/command_buffer/service/gles2_cmd_decoder_mock.h
index d855c87..4428a40 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_mock.h
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_mock.h
@@ -78,6 +78,7 @@
   MOCK_METHOD0(GetQueryManager, gpu::gles2::QueryManager*());
   MOCK_METHOD0(GetVertexArrayManager, gpu::gles2::VertexArrayManager*());
   MOCK_METHOD0(GetImageManager, gpu::gles2::ImageManager*());
+  MOCK_METHOD0(GetValuebufferManager, gpu::gles2::ValuebufferManager*());
   MOCK_METHOD1(
       SetResizeCallback, void(const base::Callback<void(gfx::Size, float)>&));
   MOCK_METHOD0(GetAsyncPixelTransferDelegate,
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_1.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_1.cc
index 912e908..db1c62f 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_1.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_1.cc
@@ -278,26 +278,6 @@
   }
 };
 
-template <>
-void GLES2DecoderTestBase::SpecializedSetup<cmds::RenderbufferStorage, 0>(
-    bool valid) {
-  DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_,
-                    kServiceRenderbufferId);
-  if (valid) {
-    EnsureRenderbufferBound(false);
-    EXPECT_CALL(*gl_, GetError())
-        .WillOnce(Return(GL_NO_ERROR))
-        .RetiresOnSaturation();
-    EXPECT_CALL(*gl_,
-                RenderbufferStorageEXT(GL_RENDERBUFFER, _, 3, 4))
-        .Times(1)
-        .RetiresOnSaturation();
-    EXPECT_CALL(*gl_, GetError())
-        .WillOnce(Return(GL_NO_ERROR))
-        .RetiresOnSaturation();
-  }
-}
-
 
 #include "gpu/command_buffer/service/gles2_cmd_decoder_unittest_1_autogen.h"
 
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_1_autogen.h b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_1_autogen.h
index 6fe923c..f9b450e 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_1_autogen.h
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_1_autogen.h
@@ -352,6 +352,18 @@
 // TODO(gman): CompressedTexSubImage2DBucket
 // TODO(gman): CompressedTexSubImage2D
 
+TEST_P(GLES2DecoderTest1, CopyBufferSubDataValidArgs) {
+  EXPECT_CALL(*gl_,
+              CopyBufferSubData(GL_ARRAY_BUFFER, GL_ARRAY_BUFFER, 3, 4, 5));
+  SpecializedSetup<cmds::CopyBufferSubData, 0>(true);
+  cmds::CopyBufferSubData cmd;
+  cmd.Init(GL_ARRAY_BUFFER, GL_ARRAY_BUFFER, 3, 4, 5);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
 // TODO(gman): CopyTexImage2D
 
 TEST_P(GLES2DecoderTest1, CopyTexSubImage2DValidArgs) {
@@ -745,6 +757,20 @@
   EXPECT_EQ(GL_INVALID_ENUM, GetGLError());
 }
 
+TEST_P(GLES2DecoderTest1, FramebufferTextureLayerValidArgs) {
+  EXPECT_CALL(*gl_,
+              FramebufferTextureLayer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0,
+                                      kServiceTextureId, 4, 5));
+  SpecializedSetup<cmds::FramebufferTextureLayer, 0>(true);
+  cmds::FramebufferTextureLayer cmd;
+  cmd.Init(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, client_texture_id_, 4, 5);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
+
 TEST_P(GLES2DecoderTest1, FrontFaceValidArgs) {
   EXPECT_CALL(*gl_, FrontFace(GL_CW));
   SpecializedSetup<cmds::FrontFace, 0>(true);
@@ -1218,6 +1244,31 @@
   EXPECT_EQ(0u, result->size);
 }
 
+TEST_P(GLES2DecoderTest1, GetInternalformativValidArgs) {
+  EXPECT_CALL(*gl_, GetError())
+      .WillOnce(Return(GL_NO_ERROR))
+      .WillOnce(Return(GL_NO_ERROR))
+      .RetiresOnSaturation();
+  SpecializedSetup<cmds::GetInternalformativ, 0>(true);
+  typedef cmds::GetInternalformativ::Result Result;
+  Result* result = static_cast<Result*>(shared_memory_address_);
+  EXPECT_CALL(*gl_, GetInternalformativ(GL_RENDERBUFFER, GL_RGBA4,
+                                        GL_RENDERBUFFER_RED_SIZE, 4,
+                                        result->GetData()));
+  result->size = 0;
+  cmds::GetInternalformativ cmd;
+  cmd.Init(GL_RENDERBUFFER, GL_RGBA4, GL_RENDERBUFFER_RED_SIZE, 4,
+           shared_memory_id_, shared_memory_offset_);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(
+                GL_RENDERBUFFER_RED_SIZE),
+            result->GetNumResults());
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
+
 TEST_P(GLES2DecoderTest1, GetProgramivValidArgs) {
   SpecializedSetup<cmds::GetProgramiv, 0>(true);
   typedef cmds::GetProgramiv::Result Result;
@@ -1834,49 +1885,4 @@
 }
 // TODO(gman): ReadPixels
 
-// TODO(gman): ReleaseShaderCompiler
-
-TEST_P(GLES2DecoderTest1, RenderbufferStorageValidArgs) {
-  SpecializedSetup<cmds::RenderbufferStorage, 0>(true);
-  cmds::RenderbufferStorage cmd;
-  cmd.Init(GL_RENDERBUFFER, GL_RGBA4, 3, 4);
-  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
-  EXPECT_EQ(GL_NO_ERROR, GetGLError());
-}
-
-TEST_P(GLES2DecoderTest1, RenderbufferStorageInvalidArgs0_0) {
-  EXPECT_CALL(*gl_, RenderbufferStorageEXT(_, _, _, _)).Times(0);
-  SpecializedSetup<cmds::RenderbufferStorage, 0>(false);
-  cmds::RenderbufferStorage cmd;
-  cmd.Init(GL_FRAMEBUFFER, GL_RGBA4, 3, 4);
-  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
-  EXPECT_EQ(GL_INVALID_ENUM, GetGLError());
-}
-
-TEST_P(GLES2DecoderTest1, RenderbufferStorageInvalidArgs2_0) {
-  EXPECT_CALL(*gl_, RenderbufferStorageEXT(_, _, _, _)).Times(0);
-  SpecializedSetup<cmds::RenderbufferStorage, 0>(false);
-  cmds::RenderbufferStorage cmd;
-  cmd.Init(GL_RENDERBUFFER, GL_RGBA4, -1, 4);
-  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
-  EXPECT_EQ(GL_INVALID_VALUE, GetGLError());
-}
-
-TEST_P(GLES2DecoderTest1, RenderbufferStorageInvalidArgs3_0) {
-  EXPECT_CALL(*gl_, RenderbufferStorageEXT(_, _, _, _)).Times(0);
-  SpecializedSetup<cmds::RenderbufferStorage, 0>(false);
-  cmds::RenderbufferStorage cmd;
-  cmd.Init(GL_RENDERBUFFER, GL_RGBA4, 3, -1);
-  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
-  EXPECT_EQ(GL_INVALID_VALUE, GetGLError());
-}
-
-TEST_P(GLES2DecoderTest1, SampleCoverageValidArgs) {
-  EXPECT_CALL(*gl_, SampleCoverage(1, true));
-  SpecializedSetup<cmds::SampleCoverage, 0>(true);
-  cmds::SampleCoverage cmd;
-  cmd.Init(1, true);
-  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
-  EXPECT_EQ(GL_NO_ERROR, GetGLError());
-}
 #endif  // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_1_AUTOGEN_H_
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2.cc
index 1d8ac40..5d0ce3f 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2.cc
@@ -252,6 +252,26 @@
 INSTANTIATE_TEST_CASE_P(Service, GLES2DecoderTest2, ::testing::Bool());
 
 template <>
+void GLES2DecoderTestBase::SpecializedSetup<cmds::RenderbufferStorage, 0>(
+    bool valid) {
+  DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_,
+                    kServiceRenderbufferId);
+  if (valid) {
+    EnsureRenderbufferBound(false);
+    EXPECT_CALL(*gl_, GetError())
+        .WillOnce(Return(GL_NO_ERROR))
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl_,
+                RenderbufferStorageEXT(GL_RENDERBUFFER, _, 3, 4))
+        .Times(1)
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl_, GetError())
+        .WillOnce(Return(GL_NO_ERROR))
+        .RetiresOnSaturation();
+  }
+}
+
+template <>
 void GLES2DecoderTestBase::SpecializedSetup<cmds::GenQueriesEXTImmediate, 0>(
     bool valid) {
   if (!valid) {
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h
index 9397f45..b69197f 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h
@@ -12,6 +12,52 @@
 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_2_AUTOGEN_H_
 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_2_AUTOGEN_H_
 
+// TODO(gman): ReleaseShaderCompiler
+
+TEST_P(GLES2DecoderTest2, RenderbufferStorageValidArgs) {
+  SpecializedSetup<cmds::RenderbufferStorage, 0>(true);
+  cmds::RenderbufferStorage cmd;
+  cmd.Init(GL_RENDERBUFFER, GL_RGBA4, 3, 4);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+}
+
+TEST_P(GLES2DecoderTest2, RenderbufferStorageInvalidArgs0_0) {
+  EXPECT_CALL(*gl_, RenderbufferStorageEXT(_, _, _, _)).Times(0);
+  SpecializedSetup<cmds::RenderbufferStorage, 0>(false);
+  cmds::RenderbufferStorage cmd;
+  cmd.Init(GL_FRAMEBUFFER, GL_RGBA4, 3, 4);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_INVALID_ENUM, GetGLError());
+}
+
+TEST_P(GLES2DecoderTest2, RenderbufferStorageInvalidArgs2_0) {
+  EXPECT_CALL(*gl_, RenderbufferStorageEXT(_, _, _, _)).Times(0);
+  SpecializedSetup<cmds::RenderbufferStorage, 0>(false);
+  cmds::RenderbufferStorage cmd;
+  cmd.Init(GL_RENDERBUFFER, GL_RGBA4, -1, 4);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_INVALID_VALUE, GetGLError());
+}
+
+TEST_P(GLES2DecoderTest2, RenderbufferStorageInvalidArgs3_0) {
+  EXPECT_CALL(*gl_, RenderbufferStorageEXT(_, _, _, _)).Times(0);
+  SpecializedSetup<cmds::RenderbufferStorage, 0>(false);
+  cmds::RenderbufferStorage cmd;
+  cmd.Init(GL_RENDERBUFFER, GL_RGBA4, 3, -1);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_INVALID_VALUE, GetGLError());
+}
+
+TEST_P(GLES2DecoderTest2, SampleCoverageValidArgs) {
+  EXPECT_CALL(*gl_, SampleCoverage(1, true));
+  SpecializedSetup<cmds::SampleCoverage, 0>(true);
+  cmds::SampleCoverage cmd;
+  cmd.Init(1, true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+}
+
 TEST_P(GLES2DecoderTest2, ScissorValidArgs) {
   EXPECT_CALL(*gl_, Scissor(1, 2, 3, 4));
   SpecializedSetup<cmds::Scissor, 0>(true);
@@ -277,6 +323,18 @@
   EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
   EXPECT_EQ(GL_INVALID_ENUM, GetGLError());
 }
+
+TEST_P(GLES2DecoderTest2, TexStorage3DValidArgs) {
+  EXPECT_CALL(*gl_, TexStorage3D(GL_TEXTURE_3D, 2, GL_RGB565, 4, 5, 6));
+  SpecializedSetup<cmds::TexStorage3D, 0>(true);
+  cmds::TexStorage3D cmd;
+  cmd.Init(GL_TEXTURE_3D, 2, GL_RGB565, 4, 5, 6);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
 // TODO(gman): TexSubImage2D
 
 TEST_P(GLES2DecoderTest2, Uniform1fValidArgs) {
@@ -304,6 +362,36 @@
 // TODO(gman): Uniform1i
 // TODO(gman): Uniform1ivImmediate
 
+TEST_P(GLES2DecoderTest2, Uniform1uiValidArgs) {
+  EXPECT_CALL(*gl_, Uniform1uiv(1, 1, _));
+  SpecializedSetup<cmds::Uniform1ui, 0>(true);
+  cmds::Uniform1ui cmd;
+  cmd.Init(1, 2);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
+
+TEST_P(GLES2DecoderTest2, Uniform1uivImmediateValidArgs) {
+  cmds::Uniform1uivImmediate& cmd =
+      *GetImmediateAs<cmds::Uniform1uivImmediate>();
+  EXPECT_CALL(
+      *gl_,
+      Uniform1uiv(1, 2, reinterpret_cast<GLuint*>(ImmediateDataAddress(&cmd))));
+  SpecializedSetup<cmds::Uniform1uivImmediate, 0>(true);
+  GLuint temp[1 * 2] = {
+      0,
+  };
+  cmd.Init(1, 2, &temp[0]);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
 TEST_P(GLES2DecoderTest2, Uniform2fValidArgs) {
   EXPECT_CALL(*gl_, Uniform2fv(1, 1, _));
   SpecializedSetup<cmds::Uniform2f, 0>(true);
@@ -350,6 +438,36 @@
   EXPECT_EQ(GL_NO_ERROR, GetGLError());
 }
 
+TEST_P(GLES2DecoderTest2, Uniform2uiValidArgs) {
+  EXPECT_CALL(*gl_, Uniform2uiv(1, 1, _));
+  SpecializedSetup<cmds::Uniform2ui, 0>(true);
+  cmds::Uniform2ui cmd;
+  cmd.Init(1, 2, 3);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
+
+TEST_P(GLES2DecoderTest2, Uniform2uivImmediateValidArgs) {
+  cmds::Uniform2uivImmediate& cmd =
+      *GetImmediateAs<cmds::Uniform2uivImmediate>();
+  EXPECT_CALL(
+      *gl_,
+      Uniform2uiv(1, 2, reinterpret_cast<GLuint*>(ImmediateDataAddress(&cmd))));
+  SpecializedSetup<cmds::Uniform2uivImmediate, 0>(true);
+  GLuint temp[2 * 2] = {
+      0,
+  };
+  cmd.Init(1, 2, &temp[0]);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
 TEST_P(GLES2DecoderTest2, Uniform3fValidArgs) {
   EXPECT_CALL(*gl_, Uniform3fv(1, 1, _));
   SpecializedSetup<cmds::Uniform3f, 0>(true);
@@ -396,6 +514,36 @@
   EXPECT_EQ(GL_NO_ERROR, GetGLError());
 }
 
+TEST_P(GLES2DecoderTest2, Uniform3uiValidArgs) {
+  EXPECT_CALL(*gl_, Uniform3uiv(1, 1, _));
+  SpecializedSetup<cmds::Uniform3ui, 0>(true);
+  cmds::Uniform3ui cmd;
+  cmd.Init(1, 2, 3, 4);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
+
+TEST_P(GLES2DecoderTest2, Uniform3uivImmediateValidArgs) {
+  cmds::Uniform3uivImmediate& cmd =
+      *GetImmediateAs<cmds::Uniform3uivImmediate>();
+  EXPECT_CALL(
+      *gl_,
+      Uniform3uiv(1, 2, reinterpret_cast<GLuint*>(ImmediateDataAddress(&cmd))));
+  SpecializedSetup<cmds::Uniform3uivImmediate, 0>(true);
+  GLuint temp[3 * 2] = {
+      0,
+  };
+  cmd.Init(1, 2, &temp[0]);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
 TEST_P(GLES2DecoderTest2, Uniform4fValidArgs) {
   EXPECT_CALL(*gl_, Uniform4fv(1, 1, _));
   SpecializedSetup<cmds::Uniform4f, 0>(true);
@@ -442,6 +590,36 @@
   EXPECT_EQ(GL_NO_ERROR, GetGLError());
 }
 
+TEST_P(GLES2DecoderTest2, Uniform4uiValidArgs) {
+  EXPECT_CALL(*gl_, Uniform4uiv(1, 1, _));
+  SpecializedSetup<cmds::Uniform4ui, 0>(true);
+  cmds::Uniform4ui cmd;
+  cmd.Init(1, 2, 3, 4, 5);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
+
+TEST_P(GLES2DecoderTest2, Uniform4uivImmediateValidArgs) {
+  cmds::Uniform4uivImmediate& cmd =
+      *GetImmediateAs<cmds::Uniform4uivImmediate>();
+  EXPECT_CALL(
+      *gl_,
+      Uniform4uiv(1, 2, reinterpret_cast<GLuint*>(ImmediateDataAddress(&cmd))));
+  SpecializedSetup<cmds::Uniform4uivImmediate, 0>(true);
+  GLuint temp[4 * 2] = {
+      0,
+  };
+  cmd.Init(1, 2, &temp[0]);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
 TEST_P(GLES2DecoderTest2, UniformMatrix2fvImmediateValidArgs) {
   cmds::UniformMatrix2fvImmediate& cmd =
       *GetImmediateAs<cmds::UniformMatrix2fvImmediate>();
@@ -457,6 +635,42 @@
   EXPECT_EQ(GL_NO_ERROR, GetGLError());
 }
 
+TEST_P(GLES2DecoderTest2, UniformMatrix2x3fvImmediateValidArgs) {
+  cmds::UniformMatrix2x3fvImmediate& cmd =
+      *GetImmediateAs<cmds::UniformMatrix2x3fvImmediate>();
+  EXPECT_CALL(*gl_,
+              UniformMatrix2x3fv(1, 2, false, reinterpret_cast<GLfloat*>(
+                                                  ImmediateDataAddress(&cmd))));
+  SpecializedSetup<cmds::UniformMatrix2x3fvImmediate, 0>(true);
+  GLfloat temp[6 * 2] = {
+      0,
+  };
+  cmd.Init(1, 2, &temp[0]);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
+TEST_P(GLES2DecoderTest2, UniformMatrix2x4fvImmediateValidArgs) {
+  cmds::UniformMatrix2x4fvImmediate& cmd =
+      *GetImmediateAs<cmds::UniformMatrix2x4fvImmediate>();
+  EXPECT_CALL(*gl_,
+              UniformMatrix2x4fv(1, 2, false, reinterpret_cast<GLfloat*>(
+                                                  ImmediateDataAddress(&cmd))));
+  SpecializedSetup<cmds::UniformMatrix2x4fvImmediate, 0>(true);
+  GLfloat temp[8 * 2] = {
+      0,
+  };
+  cmd.Init(1, 2, &temp[0]);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
 TEST_P(GLES2DecoderTest2, UniformMatrix3fvImmediateValidArgs) {
   cmds::UniformMatrix3fvImmediate& cmd =
       *GetImmediateAs<cmds::UniformMatrix3fvImmediate>();
@@ -472,6 +686,42 @@
   EXPECT_EQ(GL_NO_ERROR, GetGLError());
 }
 
+TEST_P(GLES2DecoderTest2, UniformMatrix3x2fvImmediateValidArgs) {
+  cmds::UniformMatrix3x2fvImmediate& cmd =
+      *GetImmediateAs<cmds::UniformMatrix3x2fvImmediate>();
+  EXPECT_CALL(*gl_,
+              UniformMatrix3x2fv(1, 2, false, reinterpret_cast<GLfloat*>(
+                                                  ImmediateDataAddress(&cmd))));
+  SpecializedSetup<cmds::UniformMatrix3x2fvImmediate, 0>(true);
+  GLfloat temp[6 * 2] = {
+      0,
+  };
+  cmd.Init(1, 2, &temp[0]);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
+TEST_P(GLES2DecoderTest2, UniformMatrix3x4fvImmediateValidArgs) {
+  cmds::UniformMatrix3x4fvImmediate& cmd =
+      *GetImmediateAs<cmds::UniformMatrix3x4fvImmediate>();
+  EXPECT_CALL(*gl_,
+              UniformMatrix3x4fv(1, 2, false, reinterpret_cast<GLfloat*>(
+                                                  ImmediateDataAddress(&cmd))));
+  SpecializedSetup<cmds::UniformMatrix3x4fvImmediate, 0>(true);
+  GLfloat temp[12 * 2] = {
+      0,
+  };
+  cmd.Init(1, 2, &temp[0]);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
 TEST_P(GLES2DecoderTest2, UniformMatrix4fvImmediateValidArgs) {
   cmds::UniformMatrix4fvImmediate& cmd =
       *GetImmediateAs<cmds::UniformMatrix4fvImmediate>();
@@ -487,6 +737,42 @@
   EXPECT_EQ(GL_NO_ERROR, GetGLError());
 }
 
+TEST_P(GLES2DecoderTest2, UniformMatrix4x2fvImmediateValidArgs) {
+  cmds::UniformMatrix4x2fvImmediate& cmd =
+      *GetImmediateAs<cmds::UniformMatrix4x2fvImmediate>();
+  EXPECT_CALL(*gl_,
+              UniformMatrix4x2fv(1, 2, false, reinterpret_cast<GLfloat*>(
+                                                  ImmediateDataAddress(&cmd))));
+  SpecializedSetup<cmds::UniformMatrix4x2fvImmediate, 0>(true);
+  GLfloat temp[8 * 2] = {
+      0,
+  };
+  cmd.Init(1, 2, &temp[0]);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
+TEST_P(GLES2DecoderTest2, UniformMatrix4x3fvImmediateValidArgs) {
+  cmds::UniformMatrix4x3fvImmediate& cmd =
+      *GetImmediateAs<cmds::UniformMatrix4x3fvImmediate>();
+  EXPECT_CALL(*gl_,
+              UniformMatrix4x3fv(1, 2, false, reinterpret_cast<GLfloat*>(
+                                                  ImmediateDataAddress(&cmd))));
+  SpecializedSetup<cmds::UniformMatrix4x3fvImmediate, 0>(true);
+  GLfloat temp[12 * 2] = {
+      0,
+  };
+  cmd.Init(1, 2, &temp[0]);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
 TEST_P(GLES2DecoderTest2, UseProgramValidArgs) {
   EXPECT_CALL(*gl_, UseProgram(kServiceProgramId));
   SpecializedSetup<cmds::UseProgram, 0>(true);
@@ -605,6 +891,66 @@
   EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
   EXPECT_EQ(GL_NO_ERROR, GetGLError());
 }
+
+TEST_P(GLES2DecoderTest2, VertexAttribI4iValidArgs) {
+  EXPECT_CALL(*gl_, VertexAttribI4i(1, 2, 3, 4, 5));
+  SpecializedSetup<cmds::VertexAttribI4i, 0>(true);
+  cmds::VertexAttribI4i cmd;
+  cmd.Init(1, 2, 3, 4, 5);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
+
+TEST_P(GLES2DecoderTest2, VertexAttribI4ivImmediateValidArgs) {
+  cmds::VertexAttribI4ivImmediate& cmd =
+      *GetImmediateAs<cmds::VertexAttribI4ivImmediate>();
+  SpecializedSetup<cmds::VertexAttribI4ivImmediate, 0>(true);
+  GLint temp[4] = {
+      0,
+  };
+  cmd.Init(1, &temp[0]);
+  EXPECT_CALL(*gl_, VertexAttribI4iv(1, reinterpret_cast<GLint*>(
+                                            ImmediateDataAddress(&cmd))));
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+
+TEST_P(GLES2DecoderTest2, VertexAttribI4uiValidArgs) {
+  EXPECT_CALL(*gl_, VertexAttribI4ui(1, 2, 3, 4, 5));
+  SpecializedSetup<cmds::VertexAttribI4ui, 0>(true);
+  cmds::VertexAttribI4ui cmd;
+  cmd.Init(1, 2, 3, 4, 5);
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
+}
+
+TEST_P(GLES2DecoderTest2, VertexAttribI4uivImmediateValidArgs) {
+  cmds::VertexAttribI4uivImmediate& cmd =
+      *GetImmediateAs<cmds::VertexAttribI4uivImmediate>();
+  SpecializedSetup<cmds::VertexAttribI4uivImmediate, 0>(true);
+  GLuint temp[4] = {
+      0,
+  };
+  cmd.Init(1, &temp[0]);
+  EXPECT_CALL(*gl_, VertexAttribI4uiv(1, reinterpret_cast<GLuint*>(
+                                             ImmediateDataAddress(&cmd))));
+  decoder_->set_unsafe_es3_apis_enabled(true);
+  EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+  decoder_->set_unsafe_es3_apis_enabled(false);
+  EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
+}
+// TODO(gman): VertexAttribIPointer
+
 // TODO(gman): VertexAttribPointer
 
 TEST_P(GLES2DecoderTest2, ViewportValidArgs) {
@@ -672,50 +1018,4 @@
 // TODO(gman): CopyTextureCHROMIUM
 // TODO(gman): DrawArraysInstancedANGLE
 // TODO(gman): DrawElementsInstancedANGLE
-// TODO(gman): VertexAttribDivisorANGLE
-// TODO(gman): GenMailboxCHROMIUM
-
-// TODO(gman): ProduceTextureCHROMIUMImmediate
-// TODO(gman): ProduceTextureDirectCHROMIUMImmediate
-// TODO(gman): ConsumeTextureCHROMIUMImmediate
-// TODO(gman): CreateAndConsumeTextureCHROMIUMImmediate
-// TODO(gman): BindUniformLocationCHROMIUMBucket
-// TODO(gman): GenValuebuffersCHROMIUMImmediate
-// TODO(gman): DeleteValuebuffersCHROMIUMImmediate
-
-TEST_P(GLES2DecoderTest2, IsValuebufferCHROMIUMValidArgs) {
-  SpecializedSetup<cmds::IsValuebufferCHROMIUM, 0>(true);
-  cmds::IsValuebufferCHROMIUM cmd;
-  cmd.Init(client_valuebuffer_id_, shared_memory_id_, shared_memory_offset_);
-  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
-  EXPECT_EQ(GL_NO_ERROR, GetGLError());
-}
-
-TEST_P(GLES2DecoderTest2, IsValuebufferCHROMIUMInvalidArgsBadSharedMemoryId) {
-  SpecializedSetup<cmds::IsValuebufferCHROMIUM, 0>(false);
-  cmds::IsValuebufferCHROMIUM cmd;
-  cmd.Init(client_valuebuffer_id_, kInvalidSharedMemoryId,
-           shared_memory_offset_);
-  EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
-  cmd.Init(client_valuebuffer_id_, shared_memory_id_,
-           kInvalidSharedMemoryOffset);
-  EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
-}
-// TODO(gman): BindValuebufferCHROMIUM
-// TODO(gman): SubscribeValueCHROMIUM
-// TODO(gman): PopulateSubscribedValuesCHROMIUM
-// TODO(gman): UniformValuebufferCHROMIUM
-// TODO(gman): BindTexImage2DCHROMIUM
-// TODO(gman): ReleaseTexImage2DCHROMIUM
-// TODO(gman): TraceBeginCHROMIUM
-
-// TODO(gman): TraceEndCHROMIUM
-// TODO(gman): AsyncTexSubImage2DCHROMIUM
-
-// TODO(gman): AsyncTexImage2DCHROMIUM
-
-// TODO(gman): WaitAsyncTexImage2DCHROMIUM
-
-// TODO(gman): WaitAllAsyncTexImage2DCHROMIUM
-
 #endif  // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_2_AUTOGEN_H_
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_3_autogen.h b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_3_autogen.h
index 1c98b68..0ee2ba5 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_3_autogen.h
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_3_autogen.h
@@ -12,6 +12,52 @@
 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_3_AUTOGEN_H_
 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_3_AUTOGEN_H_
 
+// TODO(gman): VertexAttribDivisorANGLE
+// TODO(gman): GenMailboxCHROMIUM
+
+// TODO(gman): ProduceTextureCHROMIUMImmediate
+// TODO(gman): ProduceTextureDirectCHROMIUMImmediate
+// TODO(gman): ConsumeTextureCHROMIUMImmediate
+// TODO(gman): CreateAndConsumeTextureCHROMIUMImmediate
+// TODO(gman): BindUniformLocationCHROMIUMBucket
+// TODO(gman): GenValuebuffersCHROMIUMImmediate
+// TODO(gman): DeleteValuebuffersCHROMIUMImmediate
+
+TEST_P(GLES2DecoderTest3, IsValuebufferCHROMIUMValidArgs) {
+  SpecializedSetup<cmds::IsValuebufferCHROMIUM, 0>(true);
+  cmds::IsValuebufferCHROMIUM cmd;
+  cmd.Init(client_valuebuffer_id_, shared_memory_id_, shared_memory_offset_);
+  EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+  EXPECT_EQ(GL_NO_ERROR, GetGLError());
+}
+
+TEST_P(GLES2DecoderTest3, IsValuebufferCHROMIUMInvalidArgsBadSharedMemoryId) {
+  SpecializedSetup<cmds::IsValuebufferCHROMIUM, 0>(false);
+  cmds::IsValuebufferCHROMIUM cmd;
+  cmd.Init(client_valuebuffer_id_, kInvalidSharedMemoryId,
+           shared_memory_offset_);
+  EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
+  cmd.Init(client_valuebuffer_id_, shared_memory_id_,
+           kInvalidSharedMemoryOffset);
+  EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
+}
+// TODO(gman): BindValuebufferCHROMIUM
+// TODO(gman): SubscribeValueCHROMIUM
+// TODO(gman): PopulateSubscribedValuesCHROMIUM
+// TODO(gman): UniformValuebufferCHROMIUM
+// TODO(gman): BindTexImage2DCHROMIUM
+// TODO(gman): ReleaseTexImage2DCHROMIUM
+// TODO(gman): TraceBeginCHROMIUM
+
+// TODO(gman): TraceEndCHROMIUM
+// TODO(gman): AsyncTexSubImage2DCHROMIUM
+
+// TODO(gman): AsyncTexImage2DCHROMIUM
+
+// TODO(gman): WaitAsyncTexImage2DCHROMIUM
+
+// TODO(gman): WaitAllAsyncTexImage2DCHROMIUM
+
 // TODO(gman): LoseContextCHROMIUM
 // TODO(gman): InsertSyncPointCHROMIUM
 
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc
index a27bb3d..017f36c 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc
@@ -12,6 +12,7 @@
 #include "base/strings/string_split.h"
 #include "gpu/command_buffer/common/gles2_cmd_format.h"
 #include "gpu/command_buffer/common/gles2_cmd_utils.h"
+#include "gpu/command_buffer/common/value_state.h"
 #include "gpu/command_buffer/service/cmd_buffer_engine.h"
 #include "gpu/command_buffer/service/context_group.h"
 #include "gpu/command_buffer/service/logger.h"
@@ -173,6 +174,7 @@
                        memory_tracker_,
                        new ShaderTranslatorCache,
                        feature_info.get(),
+                       new ValueStateMap,
                        normalized_init.bind_generates_resource));
   bool use_default_textures = normalized_init.bind_generates_resource;
 
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.h b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.h
index 1a2b54a..459f1e0 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.h
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.h
@@ -145,6 +145,10 @@
     return group_->valuebuffer_manager();
   }
 
+  ValueStateMap* pending_valuebuffer_state() {
+    return group_->pending_valuebuffer_state();
+  }
+
   ImageManager* GetImageManager() { return decoder_->GetImageManager(); }
 
   void DoCreateProgram(GLuint client_id, GLuint service_id);
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_valuebuffer.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_valuebuffer.cc
index 012d504..47e6a6b 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_valuebuffer.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_valuebuffer.cc
@@ -8,7 +8,6 @@
 #include "gpu/command_buffer/common/gles2_cmd_format.h"
 #include "gpu/command_buffer/common/gles2_cmd_utils.h"
 #include "gpu/command_buffer/service/gles2_cmd_decoder_unittest.h"
-
 #include "gpu/command_buffer/service/test_helper.h"
 #include "gpu/command_buffer/service/valuebuffer_manager.h"
 #include "testing/gtest/include/gtest/gtest.h"
@@ -30,7 +29,7 @@
   valuestate.int_value[0] = 111;
   valuestate.int_value[1] = 222;
   valuebuffer_manager()->CreateValuebuffer(kBufferId);
-  valuebuffer_manager()->UpdateValueState(
+  pending_valuebuffer_state()->UpdateState(
       GL_MOUSE_POSITION_CHROMIUM, valuestate);
   BindValuebufferCHROMIUM cmd1;
   cmd1.Init(GL_SUBSCRIBED_VALUES_BUFFER_CHROMIUM, kBufferId);
@@ -54,7 +53,7 @@
   valuestate.int_value[0] = 111;
   valuestate.int_value[1] = 222;
   valuebuffer_manager()->CreateValuebuffer(kBufferId);
-  valuebuffer_manager()->UpdateValueState(
+  pending_valuebuffer_state()->UpdateState(
       GL_MOUSE_POSITION_CHROMIUM, valuestate);
   SubscribeValueCHROMIUM cmd1;
   cmd1.Init(GL_SUBSCRIBED_VALUES_BUFFER_CHROMIUM, GL_MOUSE_POSITION_CHROMIUM);
@@ -68,7 +67,7 @@
   valuestate.int_value[0] = 111;
   valuestate.int_value[1] = 222;
   valuebuffer_manager()->CreateValuebuffer(kBufferId);
-  valuebuffer_manager()->UpdateValueState(
+  pending_valuebuffer_state()->UpdateState(
       GL_MOUSE_POSITION_CHROMIUM, valuestate);
   BindValuebufferCHROMIUM cmd1;
   cmd1.Init(GL_SUBSCRIBED_VALUES_BUFFER_CHROMIUM, kBufferId);
@@ -85,7 +84,7 @@
   valuestate.int_value[0] = 111;
   valuestate.int_value[1] = 222;
   valuebuffer_manager()->CreateValuebuffer(kBufferId);
-  valuebuffer_manager()->UpdateValueState(
+  pending_valuebuffer_state()->UpdateState(
       GL_MOUSE_POSITION_CHROMIUM, valuestate);
   BindValuebufferCHROMIUM cmd1;
   cmd1.Init(GL_SUBSCRIBED_VALUES_BUFFER_CHROMIUM, kBufferId);
@@ -107,7 +106,7 @@
   valuestate.int_value[0] = 111;
   valuestate.int_value[1] = 222;
   valuebuffer_manager()->CreateValuebuffer(kBufferId);
-  valuebuffer_manager()->UpdateValueState(
+  pending_valuebuffer_state()->UpdateState(
       GL_MOUSE_POSITION_CHROMIUM, valuestate);
   BindValuebufferCHROMIUM cmd1;
   cmd1.Init(GL_SUBSCRIBED_VALUES_BUFFER_CHROMIUM, kBufferId);
diff --git a/gpu/command_buffer/service/gles2_cmd_validation_autogen.h b/gpu/command_buffer/service/gles2_cmd_validation_autogen.h
index c72bcf8..3436e96 100644
--- a/gpu/command_buffer/service/gles2_cmd_validation_autogen.h
+++ b/gpu/command_buffer/service/gles2_cmd_validation_autogen.h
@@ -57,6 +57,7 @@
 ValueValidator<GLenum> stencil_op;
 ValueValidator<GLenum> string_type;
 ValueValidator<GLenum> subscription_target;
+ValueValidator<GLenum> texture_3_d_target;
 ValueValidator<GLenum> texture_bind_target;
 ValueValidator<GLenum> texture_format;
 ValueValidator<GLenum> texture_internal_format;
diff --git a/gpu/command_buffer/service/gles2_cmd_validation_implementation_autogen.h b/gpu/command_buffer/service/gles2_cmd_validation_implementation_autogen.h
index 6a646ac..d718391 100644
--- a/gpu/command_buffer/service/gles2_cmd_validation_implementation_autogen.h
+++ b/gpu/command_buffer/service/gles2_cmd_validation_implementation_autogen.h
@@ -417,6 +417,11 @@
     GL_MOUSE_POSITION_CHROMIUM,
 };
 
+static const GLenum valid_texture_3_d_target_table[] = {
+    GL_TEXTURE_3D,
+    GL_TEXTURE_2D_ARRAY,
+};
+
 static const GLenum valid_texture_bind_target_table[] = {
     GL_TEXTURE_2D,
     GL_TEXTURE_CUBE_MAP,
@@ -603,6 +608,8 @@
       string_type(valid_string_type_table, arraysize(valid_string_type_table)),
       subscription_target(valid_subscription_target_table,
                           arraysize(valid_subscription_target_table)),
+      texture_3_d_target(valid_texture_3_d_target_table,
+                         arraysize(valid_texture_3_d_target_table)),
       texture_bind_target(valid_texture_bind_target_table,
                           arraysize(valid_texture_bind_target_table)),
       texture_format(valid_texture_format_table,
diff --git a/gpu/command_buffer/service/gpu_switches.cc b/gpu/command_buffer/service/gpu_switches.cc
index 8f5bc35..7298140 100644
--- a/gpu/command_buffer/service/gpu_switches.cc
+++ b/gpu/command_buffer/service/gpu_switches.cc
@@ -56,11 +56,18 @@
 const char kEnableShareGroupAsyncTextureUpload[] =
     "enable-share-group-async-texture-upload";
 
+// Enable WebGL subscribe uniform extension.
+const char kEnableSubscribeUniformExtension[] =
+    "enable-subscribe-uniform-extension";
+
 // Simulates shared textures when share groups are not available. Not available
 // everywhere.
 const char kEnableThreadedTextureMailboxes[] =
     "enable-threaded-texture-mailboxes";
 
+// Enable OpenGL ES 3 APIs without proper service side validation.
+const char kEnableUnsafeES3APIs[] = "enable-unsafe-es3-apis";
+
 const char* kGpuSwitches[] = {
   kCompileShaderAlwaysSucceeds,
   kDisableGLErrorLimit,
@@ -77,6 +84,8 @@
   kGpuProgramCacheSizeKb,
   kDisableGpuShaderDiskCache,
   kEnableShareGroupAsyncTextureUpload,
+  kEnableUnsafeES3APIs,
+  kEnableSubscribeUniformExtension,
 };
 
 const int kNumGpuSwitches = arraysize(kGpuSwitches);
diff --git a/gpu/command_buffer/service/gpu_switches.h b/gpu/command_buffer/service/gpu_switches.h
index 2645543..c7a34f6 100644
--- a/gpu/command_buffer/service/gpu_switches.h
+++ b/gpu/command_buffer/service/gpu_switches.h
@@ -26,7 +26,9 @@
 GPU_EXPORT extern const char kGpuProgramCacheSizeKb[];
 GPU_EXPORT extern const char kDisableGpuShaderDiskCache[];
 GPU_EXPORT extern const char kEnableShareGroupAsyncTextureUpload[];
+GPU_EXPORT extern const char kEnableSubscribeUniformExtension[];
 GPU_EXPORT extern const char kEnableThreadedTextureMailboxes[];
+GPU_EXPORT extern const char kEnableUnsafeES3APIs[];
 
 GPU_EXPORT extern const char* kGpuSwitches[];
 GPU_EXPORT extern const int kNumGpuSwitches;
diff --git a/gpu/command_buffer/service/in_process_command_buffer.cc b/gpu/command_buffer/service/in_process_command_buffer.cc
index 815b197..8836904 100644
--- a/gpu/command_buffer/service/in_process_command_buffer.cc
+++ b/gpu/command_buffer/service/in_process_command_buffer.cc
@@ -19,6 +19,7 @@
 #include "base/synchronization/condition_variable.h"
 #include "base/threading/thread.h"
 #include "gpu/command_buffer/client/gpu_memory_buffer_manager.h"
+#include "gpu/command_buffer/common/value_state.h"
 #include "gpu/command_buffer/service/command_buffer_service.h"
 #include "gpu/command_buffer/service/context_group.h"
 #include "gpu/command_buffer/service/gl_context_virtual.h"
@@ -105,9 +106,12 @@
   return shader_translator_cache_;
 }
 
-base::LazyInstance<std::set<InProcessCommandBuffer*> > default_thread_clients_ =
-    LAZY_INSTANCE_INITIALIZER;
-base::LazyInstance<base::Lock> default_thread_clients_lock_ =
+struct GpuInProcessThreadHolder {
+  GpuInProcessThreadHolder() : gpu_thread(new GpuInProcessThread) {}
+  scoped_refptr<InProcessCommandBuffer::Service> gpu_thread;
+};
+
+base::LazyInstance<GpuInProcessThreadHolder> g_default_service =
     LAZY_INSTANCE_INITIALIZER;
 
 class ScopedEvent {
@@ -194,18 +198,12 @@
   return mailbox_manager_;
 }
 
-scoped_refptr<InProcessCommandBuffer::Service>
-InProcessCommandBuffer::GetDefaultService() {
-  base::AutoLock lock(default_thread_clients_lock_.Get());
-  scoped_refptr<Service> service;
-  if (!default_thread_clients_.Get().empty()) {
-    InProcessCommandBuffer* other = *default_thread_clients_.Get().begin();
-    service = other->service_;
-    DCHECK(service.get());
-  } else {
-    service = new GpuInProcessThread;
+scoped_refptr<gpu::ValueStateMap>
+InProcessCommandBuffer::Service::pending_valuebuffer_state() {
+  if (!pending_valuebuffer_state_.get()) {
+    pending_valuebuffer_state_ = new gpu::ValueStateMap();
   }
-  return service;
+  return pending_valuebuffer_state_;
 }
 
 InProcessCommandBuffer::InProcessCommandBuffer(
@@ -216,19 +214,14 @@
       last_put_offset_(-1),
       gpu_memory_buffer_manager_(nullptr),
       flush_event_(false, false),
-      service_(service.get() ? service : GetDefaultService()),
+      service_(service.get() ? service : g_default_service.Get().gpu_thread),
       gpu_thread_weak_ptr_factory_(this) {
-  if (!service.get()) {
-    base::AutoLock lock(default_thread_clients_lock_.Get());
-    default_thread_clients_.Get().insert(this);
-  }
+  DCHECK(service_.get());
   next_image_id_.GetNext();
 }
 
 InProcessCommandBuffer::~InProcessCommandBuffer() {
   Destroy();
-  base::AutoLock lock(default_thread_clients_lock_.Get());
-  default_thread_clients_.Get().erase(this);
 }
 
 void InProcessCommandBuffer::OnResizeView(gfx::Size size, float scale_factor) {
@@ -358,6 +351,7 @@
                                     NULL,
                                     service_->shader_translator_cache(),
                                     NULL,
+                                    service_->pending_valuebuffer_state(),
                                     bind_generates_resource)));
 
   gpu_scheduler_.reset(
diff --git a/gpu/command_buffer/service/in_process_command_buffer.h b/gpu/command_buffer/service/in_process_command_buffer.h
index cb1ab28..b1abd4c 100644
--- a/gpu/command_buffer/service/in_process_command_buffer.h
+++ b/gpu/command_buffer/service/in_process_command_buffer.h
@@ -46,6 +46,7 @@
 #endif
 
 namespace gpu {
+class ValueStateMap;
 
 namespace gles2 {
 class GLES2Decoder;
@@ -138,9 +139,11 @@
     virtual scoped_refptr<gles2::ShaderTranslatorCache>
         shader_translator_cache() = 0;
     scoped_refptr<gles2::MailboxManager> mailbox_manager();
+    scoped_refptr<gpu::ValueStateMap> pending_valuebuffer_state();
 
    private:
     scoped_refptr<gles2::MailboxManager> mailbox_manager_;
+    scoped_refptr<gpu::ValueStateMap> pending_valuebuffer_state_;
   };
 
 #if defined(OS_ANDROID)
@@ -207,8 +210,6 @@
   void PumpCommands();
   void PerformIdleWork();
 
-  static scoped_refptr<Service> GetDefaultService();
-
   // Members accessed on the gpu thread (possibly with the exception of
   // creation):
   bool context_lost_;
diff --git a/gpu/command_buffer/service/program_manager.cc b/gpu/command_buffer/service/program_manager.cc
index f3c447c..1de61bb 100644
--- a/gpu/command_buffer/service/program_manager.cc
+++ b/gpu/command_buffer/service/program_manager.cc
@@ -14,6 +14,7 @@
 #include "base/logging.h"
 #include "base/memory/scoped_ptr.h"
 #include "base/metrics/histogram.h"
+#include "base/numerics/safe_math.h"
 #include "base/strings/string_number_conversions.h"
 #include "base/strings/string_util.h"
 #include "base/time/time.h"
@@ -66,7 +67,7 @@
     return false;
   }
 
-  GLint index = 0;
+  base::CheckedNumeric<GLint> index = 0;
   size_t last = name.size() - 1;
   for (size_t pos = open_pos + 1; pos < last; ++pos) {
     int8 digit = name[pos] - '0';
@@ -75,8 +76,11 @@
     }
     index = index * 10 + digit;
   }
+  if (!index.IsValid()) {
+    return false;
+  }
 
-  *element_index = index;
+  *element_index = index.ValueOrDie();
   *new_name = name.substr(0, open_pos);
   return true;
 }
diff --git a/gpu/command_buffer/service/test_helper.cc b/gpu/command_buffer/service/test_helper.cc
index cea7b8a..7d9fb6f 100644
--- a/gpu/command_buffer/service/test_helper.cc
+++ b/gpu/command_buffer/service/test_helper.cc
@@ -344,21 +344,22 @@
 
   if (strstr(extensions, "GL_ARB_texture_float") ||
       (is_es3 && strstr(extensions, "GL_EXT_color_buffer_float"))) {
-    static const GLuint gl_ids[] = {101, 102};
+    static const GLuint tx_ids[] = {101, 102};
+    static const GLuint fb_ids[] = {103, 104};
     const GLsizei width = 16;
     EXPECT_CALL(*gl, GetIntegerv(GL_FRAMEBUFFER_BINDING, _))
-        .WillOnce(SetArgumentPointee<1>(gl_ids[0]))
+        .WillOnce(SetArgumentPointee<1>(fb_ids[0]))
         .RetiresOnSaturation();
     EXPECT_CALL(*gl, GetIntegerv(GL_TEXTURE_BINDING_2D, _))
-        .WillOnce(SetArgumentPointee<1>(gl_ids[0]))
+        .WillOnce(SetArgumentPointee<1>(tx_ids[0]))
         .RetiresOnSaturation();
     EXPECT_CALL(*gl, GenTextures(1, _))
-        .WillOnce(SetArrayArgument<1>(gl_ids + 1, gl_ids + 2))
+        .WillOnce(SetArrayArgument<1>(tx_ids + 1, tx_ids + 2))
         .RetiresOnSaturation();
     EXPECT_CALL(*gl, GenFramebuffersEXT(1, _))
-        .WillOnce(SetArrayArgument<1>(gl_ids + 1, gl_ids + 2))
+        .WillOnce(SetArrayArgument<1>(fb_ids + 1, fb_ids + 2))
         .RetiresOnSaturation();
-    EXPECT_CALL(*gl, BindTexture(GL_TEXTURE_2D, gl_ids[1]))
+    EXPECT_CALL(*gl, BindTexture(GL_TEXTURE_2D, tx_ids[1]))
         .Times(1)
         .RetiresOnSaturation();
     EXPECT_CALL(*gl, TexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER,
@@ -369,11 +370,11 @@
         GL_RGBA, GL_FLOAT, _))
         .Times(1)
         .RetiresOnSaturation();
-    EXPECT_CALL(*gl, BindFramebufferEXT(GL_FRAMEBUFFER, gl_ids[1]))
+    EXPECT_CALL(*gl, BindFramebufferEXT(GL_FRAMEBUFFER, fb_ids[1]))
         .Times(1)
         .RetiresOnSaturation();
     EXPECT_CALL(*gl, FramebufferTexture2DEXT(GL_FRAMEBUFFER,
-        GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, gl_ids[1], 0))
+        GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, tx_ids[1], 0))
         .Times(1)
         .RetiresOnSaturation();
     EXPECT_CALL(*gl, CheckFramebufferStatusEXT(GL_FRAMEBUFFER))
@@ -398,10 +399,10 @@
     EXPECT_CALL(*gl, DeleteTextures(1, _))
         .Times(1)
         .RetiresOnSaturation();
-    EXPECT_CALL(*gl, BindFramebufferEXT(GL_FRAMEBUFFER, gl_ids[0]))
+    EXPECT_CALL(*gl, BindFramebufferEXT(GL_FRAMEBUFFER, fb_ids[0]))
         .Times(1)
         .RetiresOnSaturation();
-    EXPECT_CALL(*gl, BindTexture(GL_TEXTURE_2D, gl_ids[0]))
+    EXPECT_CALL(*gl, BindTexture(GL_TEXTURE_2D, tx_ids[0]))
         .Times(1)
         .RetiresOnSaturation();
 #if DCHECK_IS_ON
@@ -421,6 +422,59 @@
         .WillOnce(SetArgumentPointee<1>(8))
         .RetiresOnSaturation();
   }
+
+  if (is_es3 || strstr(extensions, "GL_EXT_texture_rg") ||
+      (strstr(extensions, "GL_ARB_texture_rg"))) {
+    static const GLuint tx_ids[] = {101, 102};
+    static const GLuint fb_ids[] = {103, 104};
+    const GLsizei width = 1;
+    EXPECT_CALL(*gl, GetIntegerv(GL_FRAMEBUFFER_BINDING, _))
+        .WillOnce(SetArgumentPointee<1>(fb_ids[0]))
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, GetIntegerv(GL_TEXTURE_BINDING_2D, _))
+        .WillOnce(SetArgumentPointee<1>(tx_ids[0]))
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, GenTextures(1, _))
+        .WillOnce(SetArrayArgument<1>(tx_ids + 1, tx_ids + 2))
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, BindTexture(GL_TEXTURE_2D, tx_ids[1]))
+        .Times(1)
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, TexImage2D(GL_TEXTURE_2D, 0, GL_RED_EXT, width, width, 0,
+        GL_RED_EXT, GL_UNSIGNED_BYTE, _))
+        .Times(1)
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, GenFramebuffersEXT(1, _))
+        .WillOnce(SetArrayArgument<1>(fb_ids + 1, fb_ids + 2))
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, BindFramebufferEXT(GL_FRAMEBUFFER, fb_ids[1]))
+        .Times(1)
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, FramebufferTexture2DEXT(GL_FRAMEBUFFER,
+        GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, tx_ids[1], 0))
+        .Times(1)
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, CheckFramebufferStatusEXT(GL_FRAMEBUFFER))
+        .WillOnce(Return(GL_FRAMEBUFFER_COMPLETE))
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, DeleteFramebuffersEXT(1, _))
+        .Times(1)
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, DeleteTextures(1, _))
+        .Times(1)
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, BindFramebufferEXT(GL_FRAMEBUFFER, fb_ids[0]))
+        .Times(1)
+        .RetiresOnSaturation();
+    EXPECT_CALL(*gl, BindTexture(GL_TEXTURE_2D, tx_ids[0]))
+        .Times(1)
+        .RetiresOnSaturation();
+#if DCHECK_IS_ON
+    EXPECT_CALL(*gl, GetError())
+        .WillOnce(Return(GL_NO_ERROR))
+        .RetiresOnSaturation();
+#endif
+  }
 }
 
 void TestHelper::SetupExpectationsForClearingUniforms(
diff --git a/gpu/command_buffer/service/valuebuffer_manager.cc b/gpu/command_buffer/service/valuebuffer_manager.cc
index eb4db09..21de3f8 100644
--- a/gpu/command_buffer/service/valuebuffer_manager.cc
+++ b/gpu/command_buffer/service/valuebuffer_manager.cc
@@ -2,16 +2,17 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "gpu/command_buffer/service/valuebuffer_manager.h"
-
+#include "gpu/command_buffer/service/gl_utils.h"
 #include "gpu/command_buffer/service/program_manager.h"
+#include "gpu/command_buffer/service/valuebuffer_manager.h"
 
 namespace gpu {
 namespace gles2 {
 
-Valuebuffer::Valuebuffer(ValuebufferManager* manager, GLuint client_id)
+Valuebuffer::Valuebuffer(ValuebufferManager* manager, unsigned int client_id)
     : manager_(manager), client_id_(client_id), has_been_bound_(false) {
   manager_->StartTracking(this);
+  active_state_map_ = new ValueStateMap();
 }
 
 Valuebuffer::~Valuebuffer() {
@@ -21,40 +22,40 @@
   }
 }
 
-void Valuebuffer::AddSubscription(GLenum subscription) {
+void Valuebuffer::AddSubscription(unsigned int subscription) {
   subscriptions_.insert(subscription);
 }
 
-void Valuebuffer::RemoveSubscription(GLenum subscription) {
+void Valuebuffer::RemoveSubscription(unsigned int subscription) {
   subscriptions_.erase(subscription);
 }
 
-bool Valuebuffer::IsSubscribed(GLenum subscription) {
+bool Valuebuffer::IsSubscribed(unsigned int subscription) {
   return subscriptions_.find(subscription) != subscriptions_.end();
 }
 
-const ValueState *Valuebuffer::GetState(GLenum target) const {
-  StateMap::const_iterator it = active_state_map_.find(target);
-  return it != active_state_map_.end() ? &it->second : NULL;
+const ValueState* Valuebuffer::GetState(unsigned int target) const {
+  return active_state_map_->GetState(target);
 }
 
-void Valuebuffer::UpdateState(const StateMap& pending_state) {
+void Valuebuffer::UpdateState(const ValueStateMap* pending_state) {
+  DCHECK(pending_state);
   for (SubscriptionSet::const_iterator it = subscriptions_.begin();
        it != subscriptions_.end(); ++it) {
-    StateMap::const_iterator pending_state_it = pending_state.find((*it));
-    if (pending_state_it != pending_state.end()) {
-      active_state_map_[pending_state_it->first] = pending_state_it->second;
+    const ValueState *state = pending_state->GetState(*it);
+    if (state != NULL) {
+      active_state_map_->UpdateState(*it, *state);
     }
   }
 }
 
-ValuebufferManager::ValuebufferManager()
-    : valuebuffer_count_(0) {
+ValuebufferManager::ValuebufferManager(ValueStateMap* state_map)
+    : valuebuffer_count_(0),
+      pending_state_map_(state_map) {
 }
 
 ValuebufferManager::~ValuebufferManager() {
   DCHECK(valuebuffer_map_.empty());
-  DCHECK(pending_state_map_.empty());
   // If this triggers, that means something is keeping a reference to
   // a Valuebuffer belonging to this.
   CHECK_EQ(valuebuffer_count_, 0u);
@@ -62,7 +63,6 @@
 
 void ValuebufferManager::Destroy() {
   valuebuffer_map_.clear();
-  pending_state_map_.clear();
 }
 
 void ValuebufferManager::StartTracking(Valuebuffer* /* valuebuffer */) {
@@ -73,19 +73,19 @@
   --valuebuffer_count_;
 }
 
-void ValuebufferManager::CreateValuebuffer(GLuint client_id) {
+void ValuebufferManager::CreateValuebuffer(unsigned int client_id) {
   scoped_refptr<Valuebuffer> valuebuffer(new Valuebuffer(this, client_id));
   std::pair<ValuebufferMap::iterator, bool> result =
       valuebuffer_map_.insert(std::make_pair(client_id, valuebuffer));
   DCHECK(result.second);
 }
 
-Valuebuffer* ValuebufferManager::GetValuebuffer(GLuint client_id) {
+Valuebuffer* ValuebufferManager::GetValuebuffer(unsigned int client_id) {
   ValuebufferMap::iterator it = valuebuffer_map_.find(client_id);
   return it != valuebuffer_map_.end() ? it->second.get() : NULL;
 }
 
-void ValuebufferManager::RemoveValuebuffer(GLuint client_id) {
+void ValuebufferManager::RemoveValuebuffer(unsigned int client_id) {
   ValuebufferMap::iterator it = valuebuffer_map_.find(client_id);
   if (it != valuebuffer_map_.end()) {
     Valuebuffer* valuebuffer = it->second.get();
@@ -96,15 +96,10 @@
 
 void ValuebufferManager::UpdateValuebufferState(Valuebuffer* valuebuffer) {
   DCHECK(valuebuffer);
-  valuebuffer->UpdateState(pending_state_map_);
+  valuebuffer->UpdateState(pending_state_map_.get());
 }
 
-void ValuebufferManager::UpdateValueState(
-    GLenum target, const ValueState& state) {
-  pending_state_map_[target] = state;
-}
-
-uint32 ValuebufferManager::ApiTypeForSubscriptionTarget(GLenum target) {
+uint32 ValuebufferManager::ApiTypeForSubscriptionTarget(unsigned int target) {
   switch (target) {
     case GL_MOUSE_POSITION_CHROMIUM:
       return Program::kUniform2i;
diff --git a/gpu/command_buffer/service/valuebuffer_manager.h b/gpu/command_buffer/service/valuebuffer_manager.h
index 3cc4ac1..022bf41 100644
--- a/gpu/command_buffer/service/valuebuffer_manager.h
+++ b/gpu/command_buffer/service/valuebuffer_manager.h
@@ -9,7 +9,7 @@
 #include "base/containers/hash_tables.h"
 #include "base/memory/ref_counted.h"
 #include "base/memory/scoped_ptr.h"
-#include "gpu/command_buffer/service/gl_utils.h"
+#include "gpu/command_buffer/common/value_state.h"
 #include "gpu/gpu_export.h"
 
 namespace gpu {
@@ -17,16 +17,11 @@
 
 class ValuebufferManager;
 
-union ValueState {
-  float float_value[4];
-  int int_value[4];
-};
-
 class GPU_EXPORT Valuebuffer : public base::RefCounted<Valuebuffer> {
  public:
-  Valuebuffer(ValuebufferManager* manager, GLuint client_id);
+  Valuebuffer(ValuebufferManager* manager, unsigned int client_id);
 
-  GLuint client_id() const { return client_id_; }
+  unsigned int client_id() const { return client_id_; }
 
   bool IsDeleted() const { return client_id_ == 0; }
 
@@ -34,26 +29,25 @@
 
   bool IsValid() const { return has_been_bound_ && !IsDeleted(); }
 
-  void AddSubscription(GLenum subscription);
-  void RemoveSubscription(GLenum subscription);
+  void AddSubscription(unsigned int subscription);
+  void RemoveSubscription(unsigned int subscription);
 
   // Returns true if this Valuebuffer is subscribed to subscription
-  bool IsSubscribed(GLenum subscription);
+  bool IsSubscribed(unsigned int subscription);
 
   // Returns the active state for a given target in this Valuebuffer
   // returns NULL if target state doesn't exist
-  const ValueState* GetState(GLenum target) const;
+  const ValueState* GetState(unsigned int target) const;
 
  private:
   friend class ValuebufferManager;
   friend class base::RefCounted<Valuebuffer>;
 
-  typedef base::hash_map<GLenum, ValueState> StateMap;
-  typedef base::hash_set<GLenum> SubscriptionSet;
+  typedef base::hash_set<unsigned int> SubscriptionSet;
 
   ~Valuebuffer();
 
-  void UpdateState(const StateMap& pending_state);
+  void UpdateState(const ValueStateMap* pending_state);
 
   void MarkAsDeleted() { client_id_ = 0; }
 
@@ -61,58 +55,57 @@
   ValuebufferManager* manager_;
 
   // Client side Valuebuffer id.
-  GLuint client_id_;
+  unsigned int client_id_;
 
   // Whether this Valuebuffer has ever been bound.
   bool has_been_bound_;
 
   SubscriptionSet subscriptions_;
 
-  StateMap active_state_map_;
+  scoped_refptr<ValueStateMap> active_state_map_;
 };
 
 class GPU_EXPORT ValuebufferManager {
  public:
-  ValuebufferManager();
+  ValuebufferManager(ValueStateMap* state_map);
   ~ValuebufferManager();
 
   // Must call before destruction.
   void Destroy();
 
   // Creates a Valuebuffer for the given Valuebuffer ids.
-  void CreateValuebuffer(GLuint client_id);
+  void CreateValuebuffer(unsigned int client_id);
 
   // Gets the Valuebuffer for the given Valuebuffer id.
-  Valuebuffer* GetValuebuffer(GLuint client_id);
+  Valuebuffer* GetValuebuffer(unsigned int client_id);
 
   // Removes a Valuebuffer for the given Valuebuffer id.
-  void RemoveValuebuffer(GLuint client_id);
+  void RemoveValuebuffer(unsigned int client_id);
 
   // Updates the value state for the given Valuebuffer
   void UpdateValuebufferState(Valuebuffer* valuebuffer);
 
-  // Gets the state for the given subscription target
-  void UpdateValueState(GLenum target, const ValueState& state);
-
-  static uint32 ApiTypeForSubscriptionTarget(GLenum target);
+  static uint32 ApiTypeForSubscriptionTarget(unsigned int target);
 
  private:
   friend class Valuebuffer;
 
-  typedef base::hash_map<GLuint, scoped_refptr<Valuebuffer>> ValuebufferMap;
+  typedef base::hash_map<unsigned int, scoped_refptr<Valuebuffer>>
+      ValuebufferMap;
 
   void StartTracking(Valuebuffer* valuebuffer);
   void StopTracking(Valuebuffer* valuebuffer);
 
   // Counts the number of Valuebuffer allocated with 'this' as its manager.
   // Allows to check no Valuebuffer will outlive this.
-  unsigned valuebuffer_count_;
+  unsigned int valuebuffer_count_;
 
   // Info for each Valuebuffer in the system.
   ValuebufferMap valuebuffer_map_;
 
   // Current value state in the system
-  Valuebuffer::StateMap pending_state_map_;
+  // Updated by GpuChannel
+  scoped_refptr<ValueStateMap> pending_state_map_;
 
   DISALLOW_COPY_AND_ASSIGN(ValuebufferManager);
 };
diff --git a/gpu/command_buffer/service/valuebuffer_manager_unittest.cc b/gpu/command_buffer/service/valuebuffer_manager_unittest.cc
index ead5df5..44cc2f7 100644
--- a/gpu/command_buffer/service/valuebuffer_manager_unittest.cc
+++ b/gpu/command_buffer/service/valuebuffer_manager_unittest.cc
@@ -9,6 +9,7 @@
 #include "base/strings/string_util.h"
 #include "gpu/command_buffer/common/gles2_cmd_format.h"
 #include "gpu/command_buffer/common/gles2_cmd_utils.h"
+#include "gpu/command_buffer/common/value_state.h"
 #include "gpu/command_buffer/service/common_decoder.h"
 #include "gpu/command_buffer/service/feature_info.h"
 #include "gpu/command_buffer/service/gpu_service_test.h"
@@ -23,47 +24,59 @@
 
 class ValuebufferManagerTest : public GpuServiceTest {
  public:
-  ValuebufferManagerTest() : manager_() {}
-  ~ValuebufferManagerTest() override { manager_.Destroy(); }
+  ValuebufferManagerTest() {}
+  ~ValuebufferManagerTest() {}
+
+  void SetUp() override {
+    GpuServiceTest::SetUp();
+    pending_state_map_ = new ValueStateMap();
+    manager_.reset(new ValuebufferManager(pending_state_map_.get()));
+  }
+
+  void TearDown() override {
+    manager_->Destroy();
+    GpuServiceTest::TearDown();
+  }
 
  protected:
-  ValuebufferManager manager_;
+  scoped_refptr<ValueStateMap> pending_state_map_;
+  scoped_ptr<ValuebufferManager> manager_;
 };
 
 TEST_F(ValuebufferManagerTest, Basic) {
   const GLuint kClient1Id = 1;
   const GLuint kClient2Id = 2;
   // Check we can create a Valuebuffer
-  manager_.CreateValuebuffer(kClient1Id);
-  Valuebuffer* valuebuffer0 = manager_.GetValuebuffer(kClient1Id);
+  manager_->CreateValuebuffer(kClient1Id);
+  Valuebuffer* valuebuffer0 = manager_->GetValuebuffer(kClient1Id);
   ASSERT_TRUE(valuebuffer0 != NULL);
   EXPECT_EQ(kClient1Id, valuebuffer0->client_id());
   // Check we get nothing for a non-existent Valuebuffer.
   // Check trying to a remove non-existent Valuebuffer does not crash
-  manager_.RemoveValuebuffer(kClient2Id);
+  manager_->RemoveValuebuffer(kClient2Id);
   // Check we can't get the renderbuffer after we remove it.
-  manager_.RemoveValuebuffer(kClient1Id);
-  EXPECT_TRUE(manager_.GetValuebuffer(kClient1Id) == NULL);
+  manager_->RemoveValuebuffer(kClient1Id);
+  EXPECT_TRUE(manager_->GetValuebuffer(kClient1Id) == NULL);
 }
 
 TEST_F(ValuebufferManagerTest, Destroy) {
   const GLuint kClient1Id = 1;
   // Check we can create Valuebuffer.
-  manager_.CreateValuebuffer(kClient1Id);
-  Valuebuffer* valuebuffer0 = manager_.GetValuebuffer(kClient1Id);
+  manager_->CreateValuebuffer(kClient1Id);
+  Valuebuffer* valuebuffer0 = manager_->GetValuebuffer(kClient1Id);
   ASSERT_TRUE(valuebuffer0 != NULL);
   EXPECT_EQ(kClient1Id, valuebuffer0->client_id());
-  manager_.Destroy();
+  manager_->Destroy();
   // Check the resources were released.
-  Valuebuffer* valuebuffer1 = manager_.GetValuebuffer(kClient1Id);
+  Valuebuffer* valuebuffer1 = manager_->GetValuebuffer(kClient1Id);
   ASSERT_TRUE(valuebuffer1 == NULL);
 }
 
 TEST_F(ValuebufferManagerTest, ValueBuffer) {
   const GLuint kClient1Id = 1;
   // Check we can create a Valuebuffer
-  manager_.CreateValuebuffer(kClient1Id);
-  Valuebuffer* valuebuffer0 = manager_.GetValuebuffer(kClient1Id);
+  manager_->CreateValuebuffer(kClient1Id);
+  Valuebuffer* valuebuffer0 = manager_->GetValuebuffer(kClient1Id);
   ASSERT_TRUE(valuebuffer0 != NULL);
   EXPECT_EQ(kClient1Id, valuebuffer0->client_id());
   EXPECT_FALSE(valuebuffer0->IsValid());
@@ -75,21 +88,21 @@
   valuestate1.int_value[0] = 111;
   ValueState valuestate2;
   valuestate2.int_value[0] = 222;
-  manager_.CreateValuebuffer(kClient1Id);
-  Valuebuffer* valuebuffer0 = manager_.GetValuebuffer(kClient1Id);
+  manager_->CreateValuebuffer(kClient1Id);
+  Valuebuffer* valuebuffer0 = manager_->GetValuebuffer(kClient1Id);
   ASSERT_TRUE(valuebuffer0 != NULL);
   EXPECT_EQ(kClient1Id, valuebuffer0->client_id());
   valuebuffer0->AddSubscription(GL_MOUSE_POSITION_CHROMIUM);
   ASSERT_TRUE(valuebuffer0->GetState(GL_MOUSE_POSITION_CHROMIUM) == NULL);
-  manager_.UpdateValueState(GL_MOUSE_POSITION_CHROMIUM, valuestate1);
-  manager_.UpdateValuebufferState(valuebuffer0);
+  pending_state_map_->UpdateState(GL_MOUSE_POSITION_CHROMIUM, valuestate1);
+  manager_->UpdateValuebufferState(valuebuffer0);
   const ValueState* new_state1 =
       valuebuffer0->GetState(GL_MOUSE_POSITION_CHROMIUM);
   ASSERT_TRUE(new_state1 != NULL);
   ASSERT_TRUE(new_state1->int_value[0] == 111);
   // Ensure state changes
-  manager_.UpdateValueState(GL_MOUSE_POSITION_CHROMIUM, valuestate2);
-  manager_.UpdateValuebufferState(valuebuffer0);
+  pending_state_map_->UpdateState(GL_MOUSE_POSITION_CHROMIUM, valuestate2);
+  manager_->UpdateValuebufferState(valuebuffer0);
   const ValueState* new_state2 =
       valuebuffer0->GetState(GL_MOUSE_POSITION_CHROMIUM);
   ASSERT_TRUE(new_state2 != NULL);
diff --git a/gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc b/gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc
index a8cbb66..2c44e1a 100644
--- a/gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc
+++ b/gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc
@@ -76,43 +76,6 @@
   EXPECT_TRUE(GL_NO_ERROR == glGetError());
 }
 
-TEST_F(GLCopyTextureCHROMIUMTest, ImmutableTexture) {
-  if (!GLTestHelper::HasExtension("GL_EXT_texture_storage")) {
-    LOG(INFO) << "GL_EXT_texture_storage not supported. Skipping test...";
-    return;
-  }
-
-  uint8 pixels[1 * 4] = {255u, 0u, 0u, 255u};
-
-  glBindTexture(GL_TEXTURE_2D, textures_[0]);
-  glTexStorage2DEXT(GL_TEXTURE_2D, 1, GL_RGBA8_OES, 1, 1);
-  glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE,
-                  pixels);
-
-  glBindTexture(GL_TEXTURE_2D, textures_[1]);
-  glTexStorage2DEXT(GL_TEXTURE_2D, 1, GL_RGBA8_OES, 1, 1);
-  glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D,
-                         textures_[1], 0);
-  EXPECT_TRUE(glGetError() == GL_NO_ERROR);
-
-  glCopyTextureCHROMIUM(GL_TEXTURE_2D, textures_[0], textures_[1], 0, GL_RGBA,
-                        GL_UNSIGNED_BYTE);
-  EXPECT_TRUE(glGetError() == GL_NO_ERROR);
-
-  // Check the FB is still bound.
-  GLint value = 0;
-  glGetIntegerv(GL_FRAMEBUFFER_BINDING, &value);
-  GLuint fb_id = value;
-  EXPECT_EQ(framebuffer_id_, fb_id);
-
-  // Check that FB is complete.
-  EXPECT_EQ(static_cast<GLenum>(GL_FRAMEBUFFER_COMPLETE),
-            glCheckFramebufferStatus(GL_FRAMEBUFFER));
-
-  GLTestHelper::CheckPixels(0, 0, 1, 1, 0, pixels);
-  EXPECT_TRUE(GL_NO_ERROR == glGetError());
-}
-
 TEST_F(GLCopyTextureCHROMIUMTest, InternalFormat) {
   GLint src_formats[] = {GL_ALPHA,     GL_RGB,             GL_RGBA,
                          GL_LUMINANCE, GL_LUMINANCE_ALPHA, GL_BGRA_EXT};
diff --git a/gpu/command_buffer/tests/gl_manager.cc b/gpu/command_buffer/tests/gl_manager.cc
index c09901f..6e5e58e 100644
--- a/gpu/command_buffer/tests/gl_manager.cc
+++ b/gpu/command_buffer/tests/gl_manager.cc
@@ -18,6 +18,7 @@
 #include "gpu/command_buffer/client/transfer_buffer.h"
 #include "gpu/command_buffer/common/constants.h"
 #include "gpu/command_buffer/common/gles2_cmd_utils.h"
+#include "gpu/command_buffer/common/value_state.h"
 #include "gpu/command_buffer/service/command_buffer_service.h"
 #include "gpu/command_buffer/service/context_group.h"
 #include "gpu/command_buffer/service/gl_context_virtual.h"
@@ -203,6 +204,7 @@
                                 NULL,
                                 new gpu::gles2::ShaderTranslatorCache,
                                 feature_info,
+                                NULL,
                                 options.bind_generates_resource);
   }
 
diff --git a/gpu/command_buffer/tests/gl_test_utils.cc b/gpu/command_buffer/tests/gl_test_utils.cc
index 0ab71da..d3272ca 100644
--- a/gpu/command_buffer/tests/gl_test_utils.cc
+++ b/gpu/command_buffer/tests/gl_test_utils.cc
@@ -7,7 +7,6 @@
 #include <stdio.h>
 #include "base/basictypes.h"
 #include "base/memory/scoped_ptr.h"
-#include "testing/gmock/include/gmock/gmock.h"
 #include "testing/gtest/include/gtest/gtest.h"
 
 // GCC requires these declarations, but MSVC requires they not be present.
@@ -240,8 +239,3 @@
   fclose(fp);
   return true;
 }
-
-int GLTestHelper::RunTests(int argc, char** argv) {
-  testing::InitGoogleMock(&argc, argv);
-  return RUN_ALL_TESTS();
-}
diff --git a/gpu/command_buffer/tests/gl_test_utils.h b/gpu/command_buffer/tests/gl_test_utils.h
index 972ea0a..15a726e 100644
--- a/gpu/command_buffer/tests/gl_test_utils.h
+++ b/gpu/command_buffer/tests/gl_test_utils.h
@@ -47,9 +47,6 @@
 
   // Uses ReadPixels to save an area of the current FBO/Backbuffer.
   static bool SaveBackbufferAsBMP(const char* filename, int width, int height);
-
-  // Run unit tests.
-  static int RunTests(int argc, char** argv);
 };
 
 #endif  // GPU_COMMAND_BUFFER_TESTS_GL_TEST_UTILS_H_
diff --git a/gpu/command_buffer/tests/gl_tests_main.cc b/gpu/command_buffer/tests/gl_tests_main.cc
index 460ecae..8952e44 100644
--- a/gpu/command_buffer/tests/gl_tests_main.cc
+++ b/gpu/command_buffer/tests/gl_tests_main.cc
@@ -3,14 +3,17 @@
 // found in the LICENSE file.
 
 #include "base/at_exit.h"
+#include "base/bind.h"
 #include "base/command_line.h"
 #include "base/message_loop/message_loop.h"
 #if defined(OS_MACOSX)
 #include "base/mac/scoped_nsautorelease_pool.h"
 #endif
+#include "base/test/launcher/unit_test_launcher.h"
+#include "base/test/test_suite.h"
 #include "gpu/command_buffer/client/gles2_lib.h"
-#include "gpu/command_buffer/tests/gl_test_utils.h"
 #include "gpu/config/gpu_util.h"
+#include "testing/gmock/include/gmock/gmock.h"
 #include "ui/gl/gl_surface.h"
 
 #if defined(OS_ANDROID)
@@ -18,12 +21,20 @@
 #include "ui/gl/android/gl_jni_registrar.h"
 #endif
 
+namespace {
+
+int RunHelper(base::TestSuite* testSuite) {
+  base::MessageLoopForIO message_loop;
+  return testSuite->Run();
+}
+
+}  // namespace
+
 int main(int argc, char** argv) {
 #if defined(OS_ANDROID)
   ui::gl::android::RegisterJni(base::android::AttachCurrentThread());
-#else
-  base::AtExitManager exit_manager;
 #endif
+  base::TestSuite test_suite(argc, argv);
   CommandLine::Init(argc, argv);
 #if defined(OS_MACOSX)
   base::mac::ScopedNSAutoreleasePool pool;
@@ -31,8 +42,9 @@
   gfx::GLSurface::InitializeOneOff();
   ::gles2::Initialize();
   gpu::ApplyGpuDriverBugWorkarounds(CommandLine::ForCurrentProcess());
-  base::MessageLoop main_message_loop;
-  return GLTestHelper::RunTests(argc, argv);
+  testing::InitGoogleMock(&argc, argv);
+  return base::LaunchUnitTestsSerially(
+      argc,
+      argv,
+      base::Bind(&RunHelper, base::Unretained(&test_suite)));
 }
-
-
diff --git a/gpu/command_buffer/tests/gl_unittest.cc b/gpu/command_buffer/tests/gl_unittest.cc
index 9915190..49eb002 100644
--- a/gpu/command_buffer/tests/gl_unittest.cc
+++ b/gpu/command_buffer/tests/gl_unittest.cc
@@ -5,6 +5,7 @@
 #include <GLES2/gl2.h>
 #include <GLES2/gl2ext.h>
 
+#include "gpu/command_buffer/service/feature_info.h"
 #include "gpu/command_buffer/tests/gl_manager.h"
 #include "gpu/command_buffer/tests/gl_test_utils.h"
 #include "testing/gmock/include/gmock/gmock.h"
@@ -88,6 +89,25 @@
   EXPECT_TRUE(GLTestHelper::CheckPixels(0, 0, 1, 1, 0, expected_draw));
 }
 
+TEST_F(GLTest, FeatureFlagsMatchCapabilities) {
+  scoped_refptr<gles2::FeatureInfo> features = new gles2::FeatureInfo;
+  EXPECT_TRUE(features->Initialize());
+  const auto& caps = gl_.GetCapabilities();
+  const auto& flags = features->feature_flags();
+  EXPECT_EQ(caps.egl_image_external, flags.oes_egl_image_external);
+  EXPECT_EQ(caps.texture_format_bgra8888, flags.ext_texture_format_bgra8888);
+  EXPECT_EQ(caps.texture_format_etc1, flags.oes_compressed_etc1_rgb8_texture);
+  EXPECT_EQ(caps.texture_rectangle, flags.arb_texture_rectangle);
+  EXPECT_EQ(caps.texture_usage, flags.angle_texture_usage);
+  EXPECT_EQ(caps.texture_storage, flags.ext_texture_storage);
+  EXPECT_EQ(caps.discard_framebuffer, flags.ext_discard_framebuffer);
+  EXPECT_EQ(caps.sync_query, flags.chromium_sync_query);
+  EXPECT_EQ(caps.blend_equation_advanced, flags.blend_equation_advanced);
+  EXPECT_EQ(caps.blend_equation_advanced_coherent,
+            flags.blend_equation_advanced_coherent);
+  EXPECT_EQ(caps.texture_rg, flags.ext_texture_rg);
+}
+
 TEST_F(GLTest, GetString) {
   EXPECT_STREQ(
       "OpenGL ES 2.0 Chromium",
diff --git a/gpu/command_buffer_common.gypi b/gpu/command_buffer_common.gypi
index 7c9d2ec..d793b48 100644
--- a/gpu/command_buffer_common.gypi
+++ b/gpu/command_buffer_common.gypi
@@ -31,5 +31,7 @@
     'command_buffer/common/mailbox_holder.h',
     'command_buffer/common/thread_local.h',
     'command_buffer/common/time.h',
+    'command_buffer/common/value_state.cc',
+    'command_buffer/common/value_state.h',
   ],
 }
diff --git a/gpu/config/gpu_driver_bug_list_json.cc b/gpu/config/gpu_driver_bug_list_json.cc
index 3db1ff9..b447c1a 100644
--- a/gpu/config/gpu_driver_bug_list_json.cc
+++ b/gpu/config/gpu_driver_bug_list_json.cc
@@ -19,7 +19,7 @@
 {
   "name": "gpu driver bug list",
   // Please update the version number whenever you change this file.
-  "version": "7.9",
+  "version": "7.11",
   "entries": [
     {
       "id": 1,
@@ -175,7 +175,11 @@
       "id": 11,
       "description": "Limit max texure size to 4096 on Macs with Intel GPUs",
       "os": {
-        "type": "macosx"
+        "type": "macosx",
+        "version": {
+          "op": "<",
+          "value": "10.9"
+        }
       },
       "vendor_id": "0x8086",
       "features": [
@@ -212,7 +216,11 @@
       "id": 14,
       "description": "Limit max texure size and cube map texture size to 4096 on Macs with AMD GPUs",
       "os": {
-        "type": "macosx"
+        "type": "macosx",
+        "version": {
+          "op": "<",
+          "value": "10.9"
+        }
       },
       "vendor_id": "0x1002",
       "features": [
@@ -1044,7 +1052,7 @@
         "type": "android",
         "version": {
           "op": "<=",
-          "value": "5.0.0"
+          "value": "5.0.1"
         }
       },
       "gl_vendor": "NVIDIA.*",
diff --git a/gpu/config/gpu_info_collector_linux.cc b/gpu/config/gpu_info_collector_linux.cc
index 061fe35..ac5660a 100644
--- a/gpu/config/gpu_info_collector_linux.cc
+++ b/gpu/config/gpu_info_collector_linux.cc
@@ -31,6 +31,7 @@
 
 namespace {
 
+#if defined(USE_LIBPCI)
 // This checks if a system supports PCI bus.
 // We check the existence of /sys/bus/pci or /sys/bug/pci_express.
 bool IsPciSupported() {
@@ -39,6 +40,7 @@
   return (base::PathExists(pci_path) ||
           base::PathExists(pcie_path));
 }
+#endif  // defined(USE_LIBPCI)
 
 // Scan /etc/ati/amdpcsdb.default for "ReleaseVersion".
 // Return empty string on failing.
diff --git a/gpu/config/software_rendering_list_json.cc b/gpu/config/software_rendering_list_json.cc
index 11e8e81..b9f5e3a 100644
--- a/gpu/config/software_rendering_list_json.cc
+++ b/gpu/config/software_rendering_list_json.cc
@@ -18,7 +18,7 @@
 {
   "name": "software rendering list",
   // Please update the version number whenever you change this file.
-  "version": "9.12",
+  "version": "9.13",
   "entries": [
     {
       "id": 1,
@@ -1165,6 +1165,23 @@
       "features": [
         "all"
       ]
+    },
+    {
+      "id": 104,
+      "description": "GPU raster broken on PowerVR Rogue",
+      "cr_bugs": [436331],
+      "os": {
+        "type": "android",
+        "version": {
+          "op": "<",
+          "value": "5.0"
+        }
+      },
+      "gl_renderer": "PowerVR Rogue.*",
+      "features": [
+        "accelerated_2d_canvas",
+        "gpu_rasterization"
+      ]
     }
   ]
 }
diff --git a/gpu/gles2_conform_support/egl/display.cc b/gpu/gles2_conform_support/egl/display.cc
index 3fc17b9..e471c69 100644
--- a/gpu/gles2_conform_support/egl/display.cc
+++ b/gpu/gles2_conform_support/egl/display.cc
@@ -10,6 +10,7 @@
 #include "gpu/command_buffer/client/gles2_implementation.h"
 #include "gpu/command_buffer/client/gles2_lib.h"
 #include "gpu/command_buffer/client/transfer_buffer.h"
+#include "gpu/command_buffer/common/value_state.h"
 #include "gpu/command_buffer/service/context_group.h"
 #include "gpu/command_buffer/service/mailbox_manager.h"
 #include "gpu/command_buffer/service/memory_tracking.h"
@@ -115,7 +116,7 @@
     return NULL;
 
   scoped_refptr<gpu::gles2::ContextGroup> group(new gpu::gles2::ContextGroup(
-      NULL, NULL, new gpu::gles2::ShaderTranslatorCache, NULL, true));
+      NULL, NULL, new gpu::gles2::ShaderTranslatorCache, NULL, NULL, true));
 
   decoder_.reset(gpu::gles2::GLES2Decoder::Create(group.get()));
   if (!decoder_.get())
diff --git a/gpu/gpu.gyp b/gpu/gpu.gyp
index 5a9deb1..40eb5f9 100644
--- a/gpu/gpu.gyp
+++ b/gpu/gpu.gyp
@@ -128,6 +128,7 @@
       'type': '<(gtest_target_type)',
       'dependencies': [
         '../base/base.gyp:base',
+        '../base/base.gyp:test_support_base',
         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
         '../testing/gmock.gyp:gmock',
         '../testing/gtest.gyp:gtest',
@@ -293,6 +294,7 @@
       'type': '<(gtest_target_type)',
       'dependencies': [
         '../base/base.gyp:base',
+        '../base/base.gyp:test_support_base',
         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
         '../testing/gmock.gyp:gmock',
         '../testing/gtest.gyp:gtest',
diff --git a/gpu/ipc/gpu_command_buffer_traits.cc b/gpu/ipc/gpu_command_buffer_traits.cc
index 1b30034..ade1e1d 100644
--- a/gpu/ipc/gpu_command_buffer_traits.cc
+++ b/gpu/ipc/gpu_command_buffer_traits.cc
@@ -5,6 +5,7 @@
 #include "gpu/ipc/gpu_command_buffer_traits.h"
 
 #include "gpu/command_buffer/common/mailbox_holder.h"
+#include "gpu/command_buffer/common/value_state.h"
 
 // Generate param traits write methods.
 #include "ipc/param_traits_write_macros.h"
@@ -95,4 +96,31 @@
   *l += base::StringPrintf(":%04x@%d", p.texture_target, p.sync_point);
 }
 
+void ParamTraits<gpu::ValueState>::Write(Message* m, const param_type& p) {
+  m->WriteData(reinterpret_cast<const char*>(&p),
+               sizeof(gpu::ValueState));
+}
+
+bool ParamTraits<gpu::ValueState>::Read(const Message* m,
+                                        PickleIterator* iter,
+                                        param_type* p) {
+  int length;
+  const char* data = NULL;
+  if (!m->ReadData(iter, &data, &length) || length != sizeof(gpu::ValueState))
+    return false;
+  DCHECK(data);
+  memcpy(p, data, sizeof(gpu::ValueState));
+  return true;
+}
+
+void ParamTraits<gpu::ValueState>::Log(const param_type& p, std::string* l) {
+  l->append("<ValueState (");
+  for (size_t i = 0; i < sizeof(p.int_value); ++i)
+    *l += base::StringPrintf("%i ", p.int_value[i]);
+  l->append(" int values ");
+  for (size_t i = 0; i < sizeof(p.float_value); ++i)
+    *l += base::StringPrintf("%f ", p.float_value[i]);
+  l->append(" float values)>");
+}
+
 }  // namespace IPC
diff --git a/gpu/ipc/gpu_command_buffer_traits.h b/gpu/ipc/gpu_command_buffer_traits.h
index 3451639..1c7e02e 100644
--- a/gpu/ipc/gpu_command_buffer_traits.h
+++ b/gpu/ipc/gpu_command_buffer_traits.h
@@ -13,6 +13,7 @@
 namespace gpu {
 struct Mailbox;
 struct MailboxHolder;
+union ValueState;
 }
 
 namespace IPC {
@@ -41,6 +42,14 @@
   static void Log(const param_type& p, std::string* l);
 };
 
+template <>
+struct GPU_EXPORT ParamTraits<gpu::ValueState> {
+  typedef gpu::ValueState param_type;
+  static void Write(Message* m, const param_type& p);
+  static bool Read(const Message* m, PickleIterator* iter, param_type* p);
+  static void Log(const param_type& p, std::string* l);
+};
+
 }  // namespace IPC
 
 #endif  // GPU_IPC_GPU_PARAM_TRAITS_H_
diff --git a/gpu/ipc/gpu_command_buffer_traits_multi.h b/gpu/ipc/gpu_command_buffer_traits_multi.h
index 0978f79..8201f32 100644
--- a/gpu/ipc/gpu_command_buffer_traits_multi.h
+++ b/gpu/ipc/gpu_command_buffer_traits_multi.h
@@ -56,4 +56,5 @@
   IPC_STRUCT_TRAITS_MEMBER(image)
   IPC_STRUCT_TRAITS_MEMBER(blend_equation_advanced)
   IPC_STRUCT_TRAITS_MEMBER(blend_equation_advanced_coherent)
+  IPC_STRUCT_TRAITS_MEMBER(texture_rg)
 IPC_STRUCT_TRAITS_END()
diff --git a/mojo/tools/roll/cc_strip_video.patch b/mojo/tools/roll/cc_strip_video.patch
index 90bb220..8e92de1 100644
--- a/mojo/tools/roll/cc_strip_video.patch
+++ b/mojo/tools/roll/cc_strip_video.patch
@@ -1,5 +1,5 @@
 diff --git a/cc/BUILD.gn b/cc/BUILD.gn
-index a296bb0..ab3aab4 100644
+index c744c5b..16a1589 100644
 --- a/cc/BUILD.gn
 +++ b/cc/BUILD.gn
 @@ -212,13 +212,6 @@ component("cc") {
@@ -16,7 +16,7 @@
      "output/begin_frame_args.cc",
      "output/begin_frame_args.h",
      "output/bsp_tree.cc",
-@@ -429,8 +422,6 @@ component("cc") {
+@@ -453,8 +446,6 @@ component("cc") {
      "resources/ui_resource_client.h",
      "resources/ui_resource_request.cc",
      "resources/ui_resource_request.h",
@@ -25,15 +25,7 @@
      "resources/zero_copy_raster_worker_pool.cc",
      "resources/zero_copy_raster_worker_pool.h",
      "scheduler/begin_frame_source.cc",
-@@ -492,7 +483,6 @@ component("cc") {
-     "//gpu",
-     "//gpu/command_buffer/client:gles2_interface",
-     "//gpu/command_buffer/client:gpu_memory_buffer_manager",
--    "//media",
-     "//ui/events:events_base",
-     "//ui/gfx",
-     "//ui/gfx/geometry",
-@@ -563,8 +553,6 @@ source_set("test_support") {
+@@ -588,8 +579,6 @@ source_set("test_support") {
      "test/fake_tile_manager_client.h",
      "test/fake_ui_resource_layer_tree_host_impl.cc",
      "test/fake_ui_resource_layer_tree_host_impl.h",
@@ -42,7 +34,7 @@
      "test/geometry_test_utils.cc",
      "test/geometry_test_utils.h",
      "test/test_in_process_context_provider.cc",
-@@ -717,7 +705,6 @@ test("cc_unittests") {
+@@ -744,7 +733,6 @@ test("cc_unittests") {
      "layers/tiled_layer_unittest.cc",
      "layers/ui_resource_layer_impl_unittest.cc",
      "layers/ui_resource_layer_unittest.cc",
@@ -50,7 +42,7 @@
      "output/begin_frame_args_unittest.cc",
      "output/delegating_renderer_unittest.cc",
      "output/filter_operations_unittest.cc",
-@@ -747,7 +734,6 @@ test("cc_unittests") {
+@@ -775,7 +763,6 @@ test("cc_unittests") {
      "resources/texture_uploader_unittest.cc",
      "resources/tile_manager_unittest.cc",
      "resources/tile_priority_unittest.cc",
@@ -58,7 +50,7 @@
      "scheduler/begin_frame_source_unittest.cc",
      "scheduler/delay_based_time_source_unittest.cc",
      "scheduler/scheduler_state_machine_unittest.cc",
-@@ -776,7 +762,6 @@ test("cc_unittests") {
+@@ -804,7 +791,6 @@ test("cc_unittests") {
      "trees/layer_tree_host_unittest_picture.cc",
      "trees/layer_tree_host_unittest_proxy.cc",
      "trees/layer_tree_host_unittest_scroll.cc",
@@ -66,22 +58,6 @@
      "trees/layer_tree_impl_unittest.cc",
      "trees/occlusion_tracker_unittest.cc",
      "trees/occlusion_unittest.cc",
-@@ -803,7 +788,6 @@ test("cc_unittests") {
-     "//gpu:test_support",
-     "//gpu/command_buffer/client:gles2_interface",
-     "//gpu/command_buffer/common:gles2_utils",
--    "//media",
-     "//testing/gmock",
-     "//testing/gtest",
-     "//ui/events:events_base",
-@@ -835,7 +819,6 @@ test("cc_perftests") {
-     "//gpu",
-     "//gpu:test_support",
-     "//gpu/command_buffer/common:gles2_utils",
--    "//media",
-     "//skia",
-     "//testing/gmock",
-     "//testing/gtest",
 diff --git a/cc/layers/video_frame_provider.h b/cc/layers/video_frame_provider.h
 deleted file mode 100644
 index 784d951..0000000
@@ -253,7 +229,7 @@
 -
 -}  // namespace cc
 diff --git a/cc/output/gl_renderer.cc b/cc/output/gl_renderer.cc
-index 75dcfe8..cb6189e 100644
+index 27f40eb..49af1c3 100644
 --- a/cc/output/gl_renderer.cc
 +++ b/cc/output/gl_renderer.cc
 @@ -13,7 +13,6 @@
@@ -635,8 +611,20 @@
  #include "cc/quads/draw_quad.h"
  
  namespace cc {
+diff --git a/cc/resources/drawing_display_item.cc b/cc/resources/drawing_display_item.cc
+index ecf7a75..9466d5c 100644
+--- a/cc/resources/drawing_display_item.cc
++++ b/cc/resources/drawing_display_item.cc
+@@ -4,6 +4,7 @@
+ 
+ #include "cc/resources/drawing_display_item.h"
+ 
++#include "base/logging.h"
+ #include "third_party/skia/include/core/SkCanvas.h"
+ #include "third_party/skia/include/core/SkMatrix.h"
+ #include "third_party/skia/include/core/SkPicture.h"
 diff --git a/cc/trees/layer_tree_host_impl_unittest.cc b/cc/trees/layer_tree_host_impl_unittest.cc
-index e128013..0b9d976 100644
+index f31cde0..4e070e2 100644
 --- a/cc/trees/layer_tree_host_impl_unittest.cc
 +++ b/cc/trees/layer_tree_host_impl_unittest.cc
 @@ -27,7 +27,6 @@
@@ -679,7 +667,7 @@
    }
  
    LayerTreeSettings DefaultSettings() {
-@@ -5151,18 +5146,6 @@ TEST_F(LayerTreeHostImplTest, LayersFreeTextures) {
+@@ -5247,18 +5242,6 @@ TEST_F(LayerTreeHostImplTest, LayersFreeTextures) {
        LayerImpl::Create(host_impl_->active_tree(), 1);
    root_layer->SetBounds(gfx::Size(10, 10));
  
@@ -698,7 +686,7 @@
    scoped_ptr<IOSurfaceLayerImpl> io_surface_layer =
        IOSurfaceLayerImpl::Create(host_impl_->active_tree(), 5);
    io_surface_layer->SetBounds(gfx::Size(10, 10));
-@@ -6225,16 +6208,6 @@ TEST_F(LayerTreeHostImplTest,
+@@ -6321,16 +6304,6 @@ TEST_F(LayerTreeHostImplTest,
    scoped_ptr<SolidColorLayerImpl> root_layer =
        SolidColorLayerImpl::Create(host_impl_->active_tree(), 1);
  
@@ -716,7 +704,7 @@
    EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame));
    host_impl_->DrawLayers(&frame, gfx::FrameTime::Now());
 diff --git a/cc/trees/layer_tree_host_unittest.cc b/cc/trees/layer_tree_host_unittest.cc
-index 2abf6d3..b0ce5a5 100644
+index 712909f..51c5d7e 100644
 --- a/cc/trees/layer_tree_host_unittest.cc
 +++ b/cc/trees/layer_tree_host_unittest.cc
 @@ -18,7 +18,6 @@
@@ -735,7 +723,7 @@
  #include "cc/test/geometry_test_utils.h"
  #include "cc/test/layer_tree_test.h"
  #include "cc/test/test_shared_bitmap_manager.h"
-@@ -4149,28 +4147,6 @@ class LayerInvalidateCausesDraw : public LayerTreeHostTest {
+@@ -4189,28 +4187,6 @@ class LayerInvalidateCausesDraw : public LayerTreeHostTest {
    int num_draws_;
  };
  
@@ -765,7 +753,7 @@
  // to the compositor thread, even though no resources are updated in
  // response to that invalidation.
 diff --git a/cc/trees/layer_tree_host_unittest_context.cc b/cc/trees/layer_tree_host_unittest_context.cc
-index 134d928..dc34d3c 100644
+index 2d23d75..b646e6a 100644
 --- a/cc/trees/layer_tree_host_unittest_context.cc
 +++ b/cc/trees/layer_tree_host_unittest_context.cc
 @@ -15,8 +15,6 @@
@@ -883,3 +871,893 @@
  };
  
  SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources);
+diff --git a/mojo/tools/roll/cc_strip_video.patch b/mojo/tools/roll/cc_strip_video.patch
+index 90bb220..c7cb034 100644
+--- a/mojo/tools/roll/cc_strip_video.patch
++++ b/mojo/tools/roll/cc_strip_video.patch
+@@ -1,885 +0,0 @@
+-diff --git a/cc/BUILD.gn b/cc/BUILD.gn
+-index a296bb0..ab3aab4 100644
+---- a/cc/BUILD.gn
+-+++ b/cc/BUILD.gn
+-@@ -212,13 +212,6 @@ component("cc") {
+-     "layers/ui_resource_layer.h",
+-     "layers/ui_resource_layer_impl.cc",
+-     "layers/ui_resource_layer_impl.h",
+--    "layers/video_frame_provider.h",
+--    "layers/video_frame_provider_client_impl.cc",
+--    "layers/video_frame_provider_client_impl.h",
+--    "layers/video_layer.cc",
+--    "layers/video_layer.h",
+--    "layers/video_layer_impl.cc",
+--    "layers/video_layer_impl.h",
+-     "output/begin_frame_args.cc",
+-     "output/begin_frame_args.h",
+-     "output/bsp_tree.cc",
+-@@ -429,8 +422,6 @@ component("cc") {
+-     "resources/ui_resource_client.h",
+-     "resources/ui_resource_request.cc",
+-     "resources/ui_resource_request.h",
+--    "resources/video_resource_updater.cc",
+--    "resources/video_resource_updater.h",
+-     "resources/zero_copy_raster_worker_pool.cc",
+-     "resources/zero_copy_raster_worker_pool.h",
+-     "scheduler/begin_frame_source.cc",
+-@@ -492,7 +483,6 @@ component("cc") {
+-     "//gpu",
+-     "//gpu/command_buffer/client:gles2_interface",
+-     "//gpu/command_buffer/client:gpu_memory_buffer_manager",
+--    "//media",
+-     "//ui/events:events_base",
+-     "//ui/gfx",
+-     "//ui/gfx/geometry",
+-@@ -563,8 +553,6 @@ source_set("test_support") {
+-     "test/fake_tile_manager_client.h",
+-     "test/fake_ui_resource_layer_tree_host_impl.cc",
+-     "test/fake_ui_resource_layer_tree_host_impl.h",
+--    "test/fake_video_frame_provider.cc",
+--    "test/fake_video_frame_provider.h",
+-     "test/geometry_test_utils.cc",
+-     "test/geometry_test_utils.h",
+-     "test/test_in_process_context_provider.cc",
+-@@ -717,7 +705,6 @@ test("cc_unittests") {
+-     "layers/tiled_layer_unittest.cc",
+-     "layers/ui_resource_layer_impl_unittest.cc",
+-     "layers/ui_resource_layer_unittest.cc",
+--    "layers/video_layer_impl_unittest.cc",
+-     "output/begin_frame_args_unittest.cc",
+-     "output/delegating_renderer_unittest.cc",
+-     "output/filter_operations_unittest.cc",
+-@@ -747,7 +734,6 @@ test("cc_unittests") {
+-     "resources/texture_uploader_unittest.cc",
+-     "resources/tile_manager_unittest.cc",
+-     "resources/tile_priority_unittest.cc",
+--    "resources/video_resource_updater_unittest.cc",
+-     "scheduler/begin_frame_source_unittest.cc",
+-     "scheduler/delay_based_time_source_unittest.cc",
+-     "scheduler/scheduler_state_machine_unittest.cc",
+-@@ -776,7 +762,6 @@ test("cc_unittests") {
+-     "trees/layer_tree_host_unittest_picture.cc",
+-     "trees/layer_tree_host_unittest_proxy.cc",
+-     "trees/layer_tree_host_unittest_scroll.cc",
+--    "trees/layer_tree_host_unittest_video.cc",
+-     "trees/layer_tree_impl_unittest.cc",
+-     "trees/occlusion_tracker_unittest.cc",
+-     "trees/occlusion_unittest.cc",
+-@@ -803,7 +788,6 @@ test("cc_unittests") {
+-     "//gpu:test_support",
+-     "//gpu/command_buffer/client:gles2_interface",
+-     "//gpu/command_buffer/common:gles2_utils",
+--    "//media",
+-     "//testing/gmock",
+-     "//testing/gtest",
+-     "//ui/events:events_base",
+-@@ -835,7 +819,6 @@ test("cc_perftests") {
+-     "//gpu",
+-     "//gpu:test_support",
+-     "//gpu/command_buffer/common:gles2_utils",
+--    "//media",
+-     "//skia",
+-     "//testing/gmock",
+-     "//testing/gtest",
+-diff --git a/cc/layers/video_frame_provider.h b/cc/layers/video_frame_provider.h
+-deleted file mode 100644
+-index 784d951..0000000
+---- a/cc/layers/video_frame_provider.h
+-+++ /dev/null
+-@@ -1,63 +0,0 @@
+--// Copyright (c) 2012 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.
+--
+--#ifndef CC_LAYERS_VIDEO_FRAME_PROVIDER_H_
+--#define CC_LAYERS_VIDEO_FRAME_PROVIDER_H_
+--
+--#include "base/memory/ref_counted.h"
+--
+--namespace media {
+--class VideoFrame;
+--}
+--
+--namespace cc {
+--
+--// Threading notes: This class may be used in a multi threaded manner.
+--// Specifically, the implementation may call GetCurrentFrame() or
+--// PutCurrentFrame() from the compositor thread. If so, the caller is
+--// responsible for making sure Client::DidReceiveFrame() and
+--// Client::DidUpdateMatrix() are only called from this same thread.
+--class VideoFrameProvider {
+-- public:
+--  virtual ~VideoFrameProvider() {}
+--
+--  class Client {
+--   public:
+--    // Provider will call this method to tell the client to stop using it.
+--    // StopUsingProvider() may be called from any thread. The client should
+--    // block until it has PutCurrentFrame() any outstanding frames.
+--    virtual void StopUsingProvider() = 0;
+--
+--    // Notifies the provider's client that a call to GetCurrentFrame() will
+--    // return new data.
+--    virtual void DidReceiveFrame() = 0;
+--
+--    // Notifies the provider's client of a new UV transform matrix to be used.
+--    virtual void DidUpdateMatrix(const float* matrix) = 0;
+--
+--   protected:
+--    virtual ~Client() {}
+--  };
+--
+--  // May be called from any thread, but there must be some external guarantee
+--  // that the provider is not destroyed before this call returns.
+--  virtual void SetVideoFrameProviderClient(Client* client) = 0;
+--
+--  // This function places a lock on the current frame and returns a pointer to
+--  // it. Calls to this method should always be followed with a call to
+--  // PutCurrentFrame().
+--  // Only the current provider client should call this function.
+--  virtual scoped_refptr<media::VideoFrame> GetCurrentFrame() = 0;
+--
+--  // This function releases the lock on the video frame. It should always be
+--  // called after GetCurrentFrame(). Frames passed into this method
+--  // should no longer be referenced after the call is made. Only the current
+--  // provider client should call this function.
+--  virtual void PutCurrentFrame(
+--      const scoped_refptr<media::VideoFrame>& frame) = 0;
+--};
+--
+--}  // namespace cc
+--
+--#endif  // CC_LAYERS_VIDEO_FRAME_PROVIDER_H_
+-diff --git a/cc/layers/video_frame_provider_client_impl.cc b/cc/layers/video_frame_provider_client_impl.cc
+-deleted file mode 100644
+-index 50333c1..0000000
+---- a/cc/layers/video_frame_provider_client_impl.cc
+-+++ /dev/null
+-@@ -1,95 +0,0 @@
+--// Copyright 2013 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.
+--
+--#include "cc/layers/video_frame_provider_client_impl.h"
+--
+--#include "base/debug/trace_event.h"
+--#include "cc/base/math_util.h"
+--#include "cc/layers/video_layer_impl.h"
+--#include "media/base/video_frame.h"
+--
+--namespace cc {
+--
+--// static
+--scoped_refptr<VideoFrameProviderClientImpl>
+--    VideoFrameProviderClientImpl::Create(
+--        VideoFrameProvider* provider) {
+--  return make_scoped_refptr(
+--      new VideoFrameProviderClientImpl(provider));
+--}
+--
+--VideoFrameProviderClientImpl::~VideoFrameProviderClientImpl() {}
+--
+--VideoFrameProviderClientImpl::VideoFrameProviderClientImpl(
+--    VideoFrameProvider* provider)
+--    : active_video_layer_(nullptr), provider_(provider) {
+--  // This only happens during a commit on the compositor thread while the main
+--  // thread is blocked. That makes this a thread-safe call to set the video
+--  // frame provider client that does not require a lock. The same is true of
+--  // the call to Stop().
+--  provider_->SetVideoFrameProviderClient(this);
+--
+--  // This matrix is the default transformation for stream textures, and flips
+--  // on the Y axis.
+--  stream_texture_matrix_ = gfx::Transform(
+--      1.0, 0.0, 0.0, 0.0,
+--      0.0, -1.0, 0.0, 1.0,
+--      0.0, 0.0, 1.0, 0.0,
+--      0.0, 0.0, 0.0, 1.0);
+--}
+--
+--void VideoFrameProviderClientImpl::Stop() {
+--  if (!provider_)
+--    return;
+--  provider_->SetVideoFrameProviderClient(nullptr);
+--  provider_ = nullptr;
+--}
+--
+--scoped_refptr<media::VideoFrame>
+--VideoFrameProviderClientImpl::AcquireLockAndCurrentFrame() {
+--  provider_lock_.Acquire();  // Balanced by call to ReleaseLock().
+--  if (!provider_)
+--    return nullptr;
+--
+--  return provider_->GetCurrentFrame();
+--}
+--
+--void VideoFrameProviderClientImpl::PutCurrentFrame(
+--    const scoped_refptr<media::VideoFrame>& frame) {
+--  provider_lock_.AssertAcquired();
+--  provider_->PutCurrentFrame(frame);
+--}
+--
+--void VideoFrameProviderClientImpl::ReleaseLock() {
+--  provider_lock_.AssertAcquired();
+--  provider_lock_.Release();
+--}
+--
+--void VideoFrameProviderClientImpl::StopUsingProvider() {
+--  // Block the provider from shutting down until this client is done
+--  // using the frame.
+--  base::AutoLock locker(provider_lock_);
+--  provider_ = nullptr;
+--}
+--
+--void VideoFrameProviderClientImpl::DidReceiveFrame() {
+--  TRACE_EVENT1("cc",
+--               "VideoFrameProviderClientImpl::DidReceiveFrame",
+--               "active_video_layer",
+--               !!active_video_layer_);
+--  if (active_video_layer_)
+--    active_video_layer_->SetNeedsRedraw();
+--}
+--
+--void VideoFrameProviderClientImpl::DidUpdateMatrix(const float* matrix) {
+--  stream_texture_matrix_ = gfx::Transform(
+--      matrix[0], matrix[4], matrix[8], matrix[12],
+--      matrix[1], matrix[5], matrix[9], matrix[13],
+--      matrix[2], matrix[6], matrix[10], matrix[14],
+--      matrix[3], matrix[7], matrix[11], matrix[15]);
+--  if (active_video_layer_)
+--    active_video_layer_->SetNeedsRedraw();
+--}
+--
+--}  // namespace cc
+-diff --git a/cc/output/gl_renderer.cc b/cc/output/gl_renderer.cc
+-index 75dcfe8..cb6189e 100644
+---- a/cc/output/gl_renderer.cc
+-+++ b/cc/output/gl_renderer.cc
+-@@ -13,7 +13,6 @@
+- #include "base/debug/trace_event.h"
+- #include "base/logging.h"
+- #include "cc/base/math_util.h"
+--#include "cc/layers/video_layer_impl.h"
+- #include "cc/output/compositor_frame.h"
+- #include "cc/output/compositor_frame_metadata.h"
+- #include "cc/output/context_provider.h"
+-diff --git a/cc/output/renderer_pixeltest.cc b/cc/output/renderer_pixeltest.cc
+-index 0c2bc3d..d112ed1 100644
+---- a/cc/output/renderer_pixeltest.cc
+-+++ b/cc/output/renderer_pixeltest.cc
+-@@ -12,7 +12,6 @@
+- #include "cc/test/fake_picture_pile_impl.h"
+- #include "cc/test/pixel_test.h"
+- #include "gpu/command_buffer/client/gles2_interface.h"
+--#include "media/base/video_frame.h"
+- #include "third_party/skia/include/core/SkColorPriv.h"
+- #include "third_party/skia/include/core/SkImageFilter.h"
+- #include "third_party/skia/include/core/SkMatrix.h"
+-@@ -385,346 +384,6 @@ TEST_F(GLRendererPixelTest, NonPremultipliedTextureWithBackground) {
+-       FuzzyPixelOffByOneComparator(true)));
+- }
+- 
+--class VideoGLRendererPixelTest : public GLRendererPixelTest {
+-- protected:
+--  void CreateTestYUVVideoDrawQuad_Striped(const SharedQuadState* shared_state,
+--                                          media::VideoFrame::Format format,
+--                                          bool is_transparent,
+--                                          const gfx::RectF& tex_coord_rect,
+--                                          RenderPass* render_pass) {
+--    const gfx::Rect rect(this->device_viewport_size_);
+--
+--    scoped_refptr<media::VideoFrame> video_frame =
+--        media::VideoFrame::CreateFrame(
+--            format, rect.size(), rect, rect.size(), base::TimeDelta());
+--
+--    // YUV values representing a striped pattern, for validating texture
+--    // coordinates for sampling.
+--    uint8_t y_value = 0;
+--    uint8_t u_value = 0;
+--    uint8_t v_value = 0;
+--    for (int i = 0; i < video_frame->rows(media::VideoFrame::kYPlane); ++i) {
+--      uint8_t* y_row = video_frame->data(media::VideoFrame::kYPlane) +
+--                       video_frame->stride(media::VideoFrame::kYPlane) * i;
+--      for (int j = 0; j < video_frame->row_bytes(media::VideoFrame::kYPlane);
+--           ++j) {
+--        y_row[j] = (y_value += 1);
+--      }
+--    }
+--    for (int i = 0; i < video_frame->rows(media::VideoFrame::kUPlane); ++i) {
+--      uint8_t* u_row = video_frame->data(media::VideoFrame::kUPlane) +
+--                       video_frame->stride(media::VideoFrame::kUPlane) * i;
+--      uint8_t* v_row = video_frame->data(media::VideoFrame::kVPlane) +
+--                       video_frame->stride(media::VideoFrame::kVPlane) * i;
+--      for (int j = 0; j < video_frame->row_bytes(media::VideoFrame::kUPlane);
+--           ++j) {
+--        u_row[j] = (u_value += 3);
+--        v_row[j] = (v_value += 5);
+--      }
+--    }
+--    CreateTestYUVVideoDrawQuad_FromVideoFrame(
+--        shared_state, video_frame, is_transparent, tex_coord_rect, render_pass);
+--  }
+--
+--  void CreateTestYUVVideoDrawQuad_Solid(const SharedQuadState* shared_state,
+--                                        media::VideoFrame::Format format,
+--                                        bool is_transparent,
+--                                        const gfx::RectF& tex_coord_rect,
+--                                        uint8 y,
+--                                        uint8 u,
+--                                        uint8 v,
+--                                        RenderPass* render_pass) {
+--    const gfx::Rect rect(this->device_viewport_size_);
+--
+--    scoped_refptr<media::VideoFrame> video_frame =
+--        media::VideoFrame::CreateFrame(
+--            format, rect.size(), rect, rect.size(), base::TimeDelta());
+--
+--    // YUV values of a solid, constant, color. Useful for testing that color
+--    // space/color range are being handled properly.
+--    memset(video_frame->data(media::VideoFrame::kYPlane),
+--           y,
+--           video_frame->stride(media::VideoFrame::kYPlane) *
+--               video_frame->rows(media::VideoFrame::kYPlane));
+--    memset(video_frame->data(media::VideoFrame::kUPlane),
+--           u,
+--           video_frame->stride(media::VideoFrame::kUPlane) *
+--               video_frame->rows(media::VideoFrame::kUPlane));
+--    memset(video_frame->data(media::VideoFrame::kVPlane),
+--           v,
+--           video_frame->stride(media::VideoFrame::kVPlane) *
+--               video_frame->rows(media::VideoFrame::kVPlane));
+--
+--    CreateTestYUVVideoDrawQuad_FromVideoFrame(
+--        shared_state, video_frame, is_transparent, tex_coord_rect, render_pass);
+--  }
+--
+--  void CreateTestYUVVideoDrawQuad_FromVideoFrame(
+--      const SharedQuadState* shared_state,
+--      scoped_refptr<media::VideoFrame> video_frame,
+--      bool is_transparent,
+--      const gfx::RectF& tex_coord_rect,
+--      RenderPass* render_pass) {
+--    const bool with_alpha = (video_frame->format() == media::VideoFrame::YV12A);
+--    const YUVVideoDrawQuad::ColorSpace color_space =
+--        (video_frame->format() == media::VideoFrame::YV12J
+--             ? YUVVideoDrawQuad::REC_601_JPEG
+--             : YUVVideoDrawQuad::REC_601);
+--    const gfx::Rect rect(this->device_viewport_size_);
+--    const gfx::Rect opaque_rect(0, 0, 0, 0);
+--
+--    if (with_alpha)
+--      memset(video_frame->data(media::VideoFrame::kAPlane),
+--             is_transparent ? 0 : 128,
+--             video_frame->stride(media::VideoFrame::kAPlane) *
+--                 video_frame->rows(media::VideoFrame::kAPlane));
+--
+--    VideoFrameExternalResources resources =
+--        video_resource_updater_->CreateExternalResourcesFromVideoFrame(
+--            video_frame);
+--
+--    EXPECT_EQ(VideoFrameExternalResources::YUV_RESOURCE, resources.type);
+--    EXPECT_EQ(media::VideoFrame::NumPlanes(video_frame->format()),
+--              resources.mailboxes.size());
+--    EXPECT_EQ(media::VideoFrame::NumPlanes(video_frame->format()),
+--              resources.release_callbacks.size());
+--
+--    ResourceProvider::ResourceId y_resource =
+--        resource_provider_->CreateResourceFromTextureMailbox(
+--            resources.mailboxes[media::VideoFrame::kYPlane],
+--            SingleReleaseCallbackImpl::Create(
+--                resources.release_callbacks[media::VideoFrame::kYPlane]));
+--    ResourceProvider::ResourceId u_resource =
+--        resource_provider_->CreateResourceFromTextureMailbox(
+--            resources.mailboxes[media::VideoFrame::kUPlane],
+--            SingleReleaseCallbackImpl::Create(
+--                resources.release_callbacks[media::VideoFrame::kUPlane]));
+--    ResourceProvider::ResourceId v_resource =
+--        resource_provider_->CreateResourceFromTextureMailbox(
+--            resources.mailboxes[media::VideoFrame::kVPlane],
+--            SingleReleaseCallbackImpl::Create(
+--                resources.release_callbacks[media::VideoFrame::kVPlane]));
+--    ResourceProvider::ResourceId a_resource = 0;
+--    if (with_alpha) {
+--      a_resource = resource_provider_->CreateResourceFromTextureMailbox(
+--          resources.mailboxes[media::VideoFrame::kAPlane],
+--          SingleReleaseCallbackImpl::Create(
+--              resources.release_callbacks[media::VideoFrame::kAPlane]));
+--    }
+--
+--    YUVVideoDrawQuad* yuv_quad =
+--        render_pass->CreateAndAppendDrawQuad<YUVVideoDrawQuad>();
+--    yuv_quad->SetNew(shared_state,
+--                     rect,
+--                     opaque_rect,
+--                     rect,
+--                     tex_coord_rect,
+--                     y_resource,
+--                     u_resource,
+--                     v_resource,
+--                     a_resource,
+--                     color_space);
+--  }
+--
+--  void SetUp() override {
+--    GLRendererPixelTest::SetUp();
+--    video_resource_updater_.reset(new VideoResourceUpdater(
+--        output_surface_->context_provider(), resource_provider_.get()));
+--  }
+--
+-- private:
+--  scoped_ptr<VideoResourceUpdater> video_resource_updater_;
+--};
+--
+--TEST_F(VideoGLRendererPixelTest, SimpleYUVRect) {
+--  gfx::Rect rect(this->device_viewport_size_);
+--
+--  RenderPassId id(1, 1);
+--  scoped_ptr<RenderPass> pass = CreateTestRootRenderPass(id, rect);
+--
+--  SharedQuadState* shared_state =
+--      CreateTestSharedQuadState(gfx::Transform(), rect, pass.get());
+--
+--  CreateTestYUVVideoDrawQuad_Striped(shared_state,
+--                                     media::VideoFrame::YV12,
+--                                     false,
+--                                     gfx::RectF(0.0f, 0.0f, 1.0f, 1.0f),
+--                                     pass.get());
+--
+--  RenderPassList pass_list;
+--  pass_list.push_back(pass.Pass());
+--
+--  EXPECT_TRUE(
+--      this->RunPixelTest(&pass_list,
+--                         base::FilePath(FILE_PATH_LITERAL("yuv_stripes.png")),
+--                         FuzzyPixelOffByOneComparator(true)));
+--}
+--
+--TEST_F(VideoGLRendererPixelTest, OffsetYUVRect) {
+--  gfx::Rect rect(this->device_viewport_size_);
+--
+--  RenderPassId id(1, 1);
+--  scoped_ptr<RenderPass> pass = CreateTestRootRenderPass(id, rect);
+--
+--  SharedQuadState* shared_state =
+--      CreateTestSharedQuadState(gfx::Transform(), rect, pass.get());
+--
+--  // Intentionally sets frame format to I420 for testing coverage.
+--  CreateTestYUVVideoDrawQuad_Striped(shared_state,
+--                                     media::VideoFrame::I420,
+--                                     false,
+--                                     gfx::RectF(0.125f, 0.25f, 0.75f, 0.5f),
+--                                     pass.get());
+--
+--  RenderPassList pass_list;
+--  pass_list.push_back(pass.Pass());
+--
+--  EXPECT_TRUE(this->RunPixelTest(
+--      &pass_list,
+--      base::FilePath(FILE_PATH_LITERAL("yuv_stripes_offset.png")),
+--      FuzzyPixelOffByOneComparator(true)));
+--}
+--
+--TEST_F(VideoGLRendererPixelTest, SimpleYUVRectBlack) {
+--  gfx::Rect rect(this->device_viewport_size_);
+--
+--  RenderPassId id(1, 1);
+--  scoped_ptr<RenderPass> pass = CreateTestRootRenderPass(id, rect);
+--
+--  SharedQuadState* shared_state =
+--      CreateTestSharedQuadState(gfx::Transform(), rect, pass.get());
+--
+--  // In MPEG color range YUV values of (15,128,128) should produce black.
+--  CreateTestYUVVideoDrawQuad_Solid(shared_state,
+--                                   media::VideoFrame::YV12,
+--                                   false,
+--                                   gfx::RectF(0.0f, 0.0f, 1.0f, 1.0f),
+--                                   15,
+--                                   128,
+--                                   128,
+--                                   pass.get());
+--
+--  RenderPassList pass_list;
+--  pass_list.push_back(pass.Pass());
+--
+--  // If we didn't get black out of the YUV values above, then we probably have a
+--  // color range issue.
+--  EXPECT_TRUE(this->RunPixelTest(&pass_list,
+--                                 base::FilePath(FILE_PATH_LITERAL("black.png")),
+--                                 FuzzyPixelOffByOneComparator(true)));
+--}
+--
+--TEST_F(VideoGLRendererPixelTest, SimpleYUVJRect) {
+--  gfx::Rect rect(this->device_viewport_size_);
+--
+--  RenderPassId id(1, 1);
+--  scoped_ptr<RenderPass> pass = CreateTestRootRenderPass(id, rect);
+--
+--  SharedQuadState* shared_state =
+--      CreateTestSharedQuadState(gfx::Transform(), rect, pass.get());
+--
+--  // YUV of (149,43,21) should be green (0,255,0) in RGB.
+--  CreateTestYUVVideoDrawQuad_Solid(shared_state,
+--                                   media::VideoFrame::YV12J,
+--                                   false,
+--                                   gfx::RectF(0.0f, 0.0f, 1.0f, 1.0f),
+--                                   149,
+--                                   43,
+--                                   21,
+--                                   pass.get());
+--
+--  RenderPassList pass_list;
+--  pass_list.push_back(pass.Pass());
+--
+--  EXPECT_TRUE(this->RunPixelTest(&pass_list,
+--                                 base::FilePath(FILE_PATH_LITERAL("green.png")),
+--                                 FuzzyPixelOffByOneComparator(true)));
+--}
+--
+--TEST_F(VideoGLRendererPixelTest, SimpleYUVJRectGrey) {
+--  gfx::Rect rect(this->device_viewport_size_);
+--
+--  RenderPassId id(1, 1);
+--  scoped_ptr<RenderPass> pass = CreateTestRootRenderPass(id, rect);
+--
+--  SharedQuadState* shared_state =
+--      CreateTestSharedQuadState(gfx::Transform(), rect, pass.get());
+--
+--  // Dark grey in JPEG color range (in MPEG, this is black).
+--  CreateTestYUVVideoDrawQuad_Solid(shared_state,
+--                                   media::VideoFrame::YV12J,
+--                                   false,
+--                                   gfx::RectF(0.0f, 0.0f, 1.0f, 1.0f),
+--                                   15,
+--                                   128,
+--                                   128,
+--                                   pass.get());
+--
+--  RenderPassList pass_list;
+--  pass_list.push_back(pass.Pass());
+--
+--  EXPECT_TRUE(
+--      this->RunPixelTest(&pass_list,
+--                         base::FilePath(FILE_PATH_LITERAL("dark_grey.png")),
+--                         FuzzyPixelOffByOneComparator(true)));
+--}
+--
+--TEST_F(VideoGLRendererPixelTest, SimpleYUVARect) {
+--  gfx::Rect rect(this->device_viewport_size_);
+--
+--  RenderPassId id(1, 1);
+--  scoped_ptr<RenderPass> pass = CreateTestRootRenderPass(id, rect);
+--
+--  SharedQuadState* shared_state =
+--      CreateTestSharedQuadState(gfx::Transform(), rect, pass.get());
+--
+--  CreateTestYUVVideoDrawQuad_Striped(shared_state,
+--                                     media::VideoFrame::YV12A,
+--                                     false,
+--                                     gfx::RectF(0.0f, 0.0f, 1.0f, 1.0f),
+--                                     pass.get());
+--
+--  SolidColorDrawQuad* color_quad =
+--      pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>();
+--  color_quad->SetNew(shared_state, rect, rect, SK_ColorWHITE, false);
+--
+--  RenderPassList pass_list;
+--  pass_list.push_back(pass.Pass());
+--
+--  EXPECT_TRUE(this->RunPixelTest(
+--      &pass_list,
+--      base::FilePath(FILE_PATH_LITERAL("yuv_stripes_alpha.png")),
+--      FuzzyPixelOffByOneComparator(true)));
+--}
+--
+--TEST_F(VideoGLRendererPixelTest, FullyTransparentYUVARect) {
+--  gfx::Rect rect(this->device_viewport_size_);
+--
+--  RenderPassId id(1, 1);
+--  scoped_ptr<RenderPass> pass = CreateTestRootRenderPass(id, rect);
+--
+--  SharedQuadState* shared_state =
+--      CreateTestSharedQuadState(gfx::Transform(), rect, pass.get());
+--
+--  CreateTestYUVVideoDrawQuad_Striped(shared_state,
+--                                     media::VideoFrame::YV12A,
+--                                     true,
+--                                     gfx::RectF(0.0f, 0.0f, 1.0f, 1.0f),
+--                                     pass.get());
+--
+--  SolidColorDrawQuad* color_quad =
+--      pass->CreateAndAppendDrawQuad<SolidColorDrawQuad>();
+--  color_quad->SetNew(shared_state, rect, rect, SK_ColorBLACK, false);
+--
+--  RenderPassList pass_list;
+--  pass_list.push_back(pass.Pass());
+--
+--  EXPECT_TRUE(this->RunPixelTest(
+--      &pass_list,
+--      base::FilePath(FILE_PATH_LITERAL("black.png")),
+--      ExactPixelComparator(true)));
+--}
+--
+- TYPED_TEST(RendererPixelTest, FastPassColorFilterAlpha) {
+-   gfx::Rect viewport_rect(this->device_viewport_size_);
+- 
+-diff --git a/cc/quads/yuv_video_draw_quad.h b/cc/quads/yuv_video_draw_quad.h
+-index e1c5410..edda34a 100644
+---- a/cc/quads/yuv_video_draw_quad.h
+-+++ b/cc/quads/yuv_video_draw_quad.h
+-@@ -8,7 +8,6 @@
+- #include "base/basictypes.h"
+- #include "base/memory/scoped_ptr.h"
+- #include "cc/base/cc_export.h"
+--#include "cc/layers/video_layer_impl.h"
+- #include "cc/quads/draw_quad.h"
+- 
+- namespace cc {
+-diff --git a/cc/trees/layer_tree_host_impl_unittest.cc b/cc/trees/layer_tree_host_impl_unittest.cc
+-index e128013..0b9d976 100644
+---- a/cc/trees/layer_tree_host_impl_unittest.cc
+-+++ b/cc/trees/layer_tree_host_impl_unittest.cc
+-@@ -27,7 +27,6 @@
+- #include "cc/layers/solid_color_scrollbar_layer_impl.h"
+- #include "cc/layers/texture_layer_impl.h"
+- #include "cc/layers/tiled_layer_impl.h"
+--#include "cc/layers/video_layer_impl.h"
+- #include "cc/output/begin_frame_args.h"
+- #include "cc/output/compositor_frame_ack.h"
+- #include "cc/output/compositor_frame_metadata.h"
+-@@ -47,7 +46,6 @@
+- #include "cc/test/fake_picture_layer_impl.h"
+- #include "cc/test/fake_picture_pile_impl.h"
+- #include "cc/test/fake_proxy.h"
+--#include "cc/test/fake_video_frame_provider.h"
+- #include "cc/test/geometry_test_utils.h"
+- #include "cc/test/layer_test_common.h"
+- #include "cc/test/render_pass_test_common.h"
+-@@ -56,7 +54,6 @@
+- #include "cc/test/test_web_graphics_context_3d.h"
+- #include "cc/trees/layer_tree_impl.h"
+- #include "cc/trees/single_thread_proxy.h"
+--#include "media/base/media.h"
+- #include "testing/gmock/include/gmock/gmock.h"
+- #include "testing/gtest/include/gtest/gtest.h"
+- #include "third_party/skia/include/core/SkMallocPixelRef.h"
+-@@ -70,7 +67,6 @@ using ::testing::Return;
+- using ::testing::AnyNumber;
+- using ::testing::AtLeast;
+- using ::testing::_;
+--using media::VideoFrame;
+- 
+- namespace cc {
+- namespace {
+-@@ -94,7 +90,6 @@ class LayerTreeHostImplTest : public testing::Test,
+-         reduce_memory_result_(true),
+-         current_limit_bytes_(0),
+-         current_priority_cutoff_value_(0) {
+--    media::InitializeMediaLibraryForTesting();
+-   }
+- 
+-   LayerTreeSettings DefaultSettings() {
+-@@ -5151,18 +5146,6 @@ TEST_F(LayerTreeHostImplTest, LayersFreeTextures) {
+-       LayerImpl::Create(host_impl_->active_tree(), 1);
+-   root_layer->SetBounds(gfx::Size(10, 10));
+- 
+--  scoped_refptr<VideoFrame> softwareFrame =
+--      media::VideoFrame::CreateColorFrame(
+--          gfx::Size(4, 4), 0x80, 0x80, 0x80, base::TimeDelta());
+--  FakeVideoFrameProvider provider;
+--  provider.set_frame(softwareFrame);
+--  scoped_ptr<VideoLayerImpl> video_layer = VideoLayerImpl::Create(
+--      host_impl_->active_tree(), 4, &provider, media::VIDEO_ROTATION_0);
+--  video_layer->SetBounds(gfx::Size(10, 10));
+--  video_layer->SetContentBounds(gfx::Size(10, 10));
+--  video_layer->SetDrawsContent(true);
+--  root_layer->AddChild(video_layer.Pass());
+--
+-   scoped_ptr<IOSurfaceLayerImpl> io_surface_layer =
+-       IOSurfaceLayerImpl::Create(host_impl_->active_tree(), 5);
+-   io_surface_layer->SetBounds(gfx::Size(10, 10));
+-@@ -6225,16 +6208,6 @@ TEST_F(LayerTreeHostImplTest,
+-   scoped_ptr<SolidColorLayerImpl> root_layer =
+-       SolidColorLayerImpl::Create(host_impl_->active_tree(), 1);
+- 
+--  // VideoLayerImpl will not be drawn.
+--  FakeVideoFrameProvider provider;
+--  scoped_ptr<VideoLayerImpl> video_layer = VideoLayerImpl::Create(
+--      host_impl_->active_tree(), 2, &provider, media::VIDEO_ROTATION_0);
+--  video_layer->SetBounds(gfx::Size(10, 10));
+--  video_layer->SetContentBounds(gfx::Size(10, 10));
+--  video_layer->SetDrawsContent(true);
+--  root_layer->AddChild(video_layer.Pass());
+--  SetupRootLayerImpl(root_layer.Pass());
+--
+-   LayerTreeHostImpl::FrameData frame;
+-   EXPECT_EQ(DRAW_SUCCESS, host_impl_->PrepareToDraw(&frame));
+-   host_impl_->DrawLayers(&frame, gfx::FrameTime::Now());
+-diff --git a/cc/trees/layer_tree_host_unittest.cc b/cc/trees/layer_tree_host_unittest.cc
+-index 2abf6d3..b0ce5a5 100644
+---- a/cc/trees/layer_tree_host_unittest.cc
+-+++ b/cc/trees/layer_tree_host_unittest.cc
+-@@ -18,7 +18,6 @@
+- #include "cc/layers/painted_scrollbar_layer.h"
+- #include "cc/layers/picture_layer.h"
+- #include "cc/layers/solid_color_layer.h"
+--#include "cc/layers/video_layer.h"
+- #include "cc/output/begin_frame_args.h"
+- #include "cc/output/compositor_frame_ack.h"
+- #include "cc/output/copy_output_request.h"
+-@@ -41,7 +40,6 @@
+- #include "cc/test/fake_picture_pile.h"
+- #include "cc/test/fake_proxy.h"
+- #include "cc/test/fake_scoped_ui_resource.h"
+--#include "cc/test/fake_video_frame_provider.h"
+- #include "cc/test/geometry_test_utils.h"
+- #include "cc/test/layer_tree_test.h"
+- #include "cc/test/test_shared_bitmap_manager.h"
+-@@ -4149,28 +4147,6 @@ class LayerInvalidateCausesDraw : public LayerTreeHostTest {
+-   int num_draws_;
+- };
+- 
+--// VideoLayer must support being invalidated and then passing that along
+--// to the compositor thread, even though no resources are updated in
+--// response to that invalidation.
+--class LayerTreeHostTestVideoLayerInvalidate : public LayerInvalidateCausesDraw {
+-- public:
+--  void SetupTree() override {
+--    LayerTreeHostTest::SetupTree();
+--    scoped_refptr<VideoLayer> video_layer =
+--        VideoLayer::Create(&provider_, media::VIDEO_ROTATION_0);
+--    video_layer->SetBounds(gfx::Size(10, 10));
+--    video_layer->SetIsDrawable(true);
+--    layer_tree_host()->root_layer()->AddChild(video_layer);
+--
+--    invalidate_layer_ = video_layer;
+--  }
+--
+-- private:
+--  FakeVideoFrameProvider provider_;
+--};
+--
+--SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestVideoLayerInvalidate);
+--
+- // IOSurfaceLayer must support being invalidated and then passing that along
+- // to the compositor thread, even though no resources are updated in
+- // response to that invalidation.
+-diff --git a/cc/trees/layer_tree_host_unittest_context.cc b/cc/trees/layer_tree_host_unittest_context.cc
+-index 134d928..dc34d3c 100644
+---- a/cc/trees/layer_tree_host_unittest_context.cc
+-+++ b/cc/trees/layer_tree_host_unittest_context.cc
+-@@ -15,8 +15,6 @@
+- #include "cc/layers/picture_layer.h"
+- #include "cc/layers/texture_layer.h"
+- #include "cc/layers/texture_layer_impl.h"
+--#include "cc/layers/video_layer.h"
+--#include "cc/layers/video_layer_impl.h"
+- #include "cc/output/filter_operations.h"
+- #include "cc/resources/single_release_callback.h"
+- #include "cc/test/fake_content_layer.h"
+-@@ -32,7 +30,6 @@
+- #include "cc/test/fake_picture_layer_impl.h"
+- #include "cc/test/fake_scoped_ui_resource.h"
+- #include "cc/test/fake_scrollbar.h"
+--#include "cc/test/fake_video_frame_provider.h"
+- #include "cc/test/layer_tree_test.h"
+- #include "cc/test/render_pass_test_common.h"
+- #include "cc/test/test_context_provider.h"
+-@@ -42,9 +39,6 @@
+- #include "cc/trees/layer_tree_impl.h"
+- #include "cc/trees/single_thread_proxy.h"
+- #include "gpu/GLES2/gl2extchromium.h"
+--#include "media/base/media.h"
+--
+--using media::VideoFrame;
+- 
+- namespace cc {
+- namespace {
+-@@ -65,7 +59,6 @@ class LayerTreeHostContextTest : public LayerTreeTest {
+-         context_should_support_io_surface_(false),
+-         fallback_context_works_(false),
+-         async_output_surface_creation_(false) {
+--    media::InitializeMediaLibraryForTesting();
+-   }
+- 
+-   void LoseContext() {
+-@@ -1083,49 +1076,6 @@ class LayerTreeHostContextTestDontUseLostResources
+-     layer_with_mask->SetMaskLayer(mask.get());
+-     root->AddChild(layer_with_mask);
+- 
+--    scoped_refptr<VideoLayer> video_color =
+--        VideoLayer::Create(&color_frame_provider_, media::VIDEO_ROTATION_0);
+--    video_color->SetBounds(gfx::Size(10, 10));
+--    video_color->SetIsDrawable(true);
+--    root->AddChild(video_color);
+--
+--    scoped_refptr<VideoLayer> video_hw =
+--        VideoLayer::Create(&hw_frame_provider_, media::VIDEO_ROTATION_0);
+--    video_hw->SetBounds(gfx::Size(10, 10));
+--    video_hw->SetIsDrawable(true);
+--    root->AddChild(video_hw);
+--
+--    scoped_refptr<VideoLayer> video_scaled_hw =
+--        VideoLayer::Create(&scaled_hw_frame_provider_, media::VIDEO_ROTATION_0);
+--    video_scaled_hw->SetBounds(gfx::Size(10, 10));
+--    video_scaled_hw->SetIsDrawable(true);
+--    root->AddChild(video_scaled_hw);
+--
+--    color_video_frame_ = VideoFrame::CreateColorFrame(
+--        gfx::Size(4, 4), 0x80, 0x80, 0x80, base::TimeDelta());
+--    hw_video_frame_ =
+--        VideoFrame::WrapNativeTexture(make_scoped_ptr(new gpu::MailboxHolder(
+--                                          mailbox, GL_TEXTURE_2D, sync_point)),
+--                                      media::VideoFrame::ReleaseMailboxCB(),
+--                                      gfx::Size(4, 4),
+--                                      gfx::Rect(0, 0, 4, 4),
+--                                      gfx::Size(4, 4),
+--                                      base::TimeDelta(),
+--                                      VideoFrame::ReadPixelsCB());
+--    scaled_hw_video_frame_ =
+--        VideoFrame::WrapNativeTexture(make_scoped_ptr(new gpu::MailboxHolder(
+--                                          mailbox, GL_TEXTURE_2D, sync_point)),
+--                                      media::VideoFrame::ReleaseMailboxCB(),
+--                                      gfx::Size(4, 4),
+--                                      gfx::Rect(0, 0, 3, 2),
+--                                      gfx::Size(4, 4),
+--                                      base::TimeDelta(),
+--                                      VideoFrame::ReadPixelsCB());
+--
+--    color_frame_provider_.set_frame(color_video_frame_);
+--    hw_frame_provider_.set_frame(hw_video_frame_);
+--    scaled_hw_frame_provider_.set_frame(scaled_hw_video_frame_);
+--
+-     if (!delegating_renderer()) {
+-       // TODO(danakj): IOSurface layer can not be transported. crbug.com/239335
+-       scoped_refptr<IOSurfaceLayer> io_surface = IOSurfaceLayer::Create();
+-@@ -1155,14 +1105,6 @@ class LayerTreeHostContextTestDontUseLostResources
+- 
+-   void CommitCompleteOnThread(LayerTreeHostImpl* host_impl) override {
+-     LayerTreeHostContextTest::CommitCompleteOnThread(host_impl);
+--
+--    if (host_impl->active_tree()->source_frame_number() == 3) {
+--      // On the third commit we're recovering from context loss. Hardware
+--      // video frames should not be reused by the VideoFrameProvider, but
+--      // software frames can be.
+--      hw_frame_provider_.set_frame(NULL);
+--      scaled_hw_frame_provider_.set_frame(NULL);
+--    }
+-   }
+- 
+-   DrawResult PrepareToDrawOnThread(LayerTreeHostImpl* host_impl,
+-@@ -1212,14 +1154,6 @@ class LayerTreeHostContextTestDontUseLostResources
+-   scoped_refptr<DelegatedFrameResourceCollection>
+-       delegated_resource_collection_;
+-   scoped_refptr<DelegatedFrameProvider> delegated_frame_provider_;
+--
+--  scoped_refptr<VideoFrame> color_video_frame_;
+--  scoped_refptr<VideoFrame> hw_video_frame_;
+--  scoped_refptr<VideoFrame> scaled_hw_video_frame_;
+--
+--  FakeVideoFrameProvider color_frame_provider_;
+--  FakeVideoFrameProvider hw_frame_provider_;
+--  FakeVideoFrameProvider scaled_hw_frame_provider_;
+- };
+- 
+- SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostContextTestDontUseLostResources);
diff --git a/mojo/tools/roll/patch.py b/mojo/tools/roll/patch.py
index 30e5a96..5711627 100755
--- a/mojo/tools/roll/patch.py
+++ b/mojo/tools/roll/patch.py
@@ -14,7 +14,10 @@
   utils.commit("filter gyp_environment out of build/landmines.py")
 
   utils.filter_file("gpu/BUILD.gn", lambda line: not "//gpu/ipc" in line)
-  utils.commit("filter gpu/ipc out of gpu/BUILD.gn")
+  utils.commit("filter //gpu/ipc out of gpu/BUILD.gn")
+
+  utils.filter_file("cc/BUILD.gn", lambda line: not "//media" in line)
+  utils.commit("filter //media out of cc/BUILD.gn")
 
   for p in utils.find(["*.patch"], os.path.dirname(os.path.realpath(__file__))):
     print "applying patch %s" % os.path.basename(p)
diff --git a/net/PRESUBMIT.py b/net/PRESUBMIT.py
new file mode 100644
index 0000000..207cad0
--- /dev/null
+++ b/net/PRESUBMIT.py
@@ -0,0 +1,12 @@
+# Copyright 2014 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.
+
+"""Top-level presubmit script for src/net.
+
+See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts
+for more details about the presubmit API built into depot_tools.
+"""
+
+def CheckChangeOnUpload(input_api, output_api):
+  return input_api.canned_checks.CheckPatchFormatted(input_api, output_api)
diff --git a/net/android/BUILD.gn b/net/android/BUILD.gn
index 8c803a1..f583e7f 100644
--- a/net/android/BUILD.gn
+++ b/net/android/BUILD.gn
@@ -52,12 +52,15 @@
 java_cpp_enum("net_android_java_enums_srcjar") {
   sources = [
     "../base/mime_util.h",
+    "../base/network_change_notifier.h",
     "cert_verify_result_android.h",
     "keystore.h"
   ]
   outputs = [
     "org/chromium/net/CertificateMimeType.java",
     "org/chromium/net/CertVerifyStatusAndroid.java",
+    "org/chromium/net/ConnectionSubtype.java",
+    "org/chromium/net/ConnectionType.java",
     "org/chromium/net/PrivateKeyType.java",
   ]
 }
diff --git a/net/android/java/src/org/chromium/net/NetworkChangeNotifier.java b/net/android/java/src/org/chromium/net/NetworkChangeNotifier.java
index 1008b7e..928af78 100644
--- a/net/android/java/src/org/chromium/net/NetworkChangeNotifier.java
+++ b/net/android/java/src/org/chromium/net/NetworkChangeNotifier.java
@@ -33,21 +33,12 @@
         public void onConnectionTypeChanged(int connectionType);
     }
 
-    // These constants must always match the ones in network_change_notifier.h.
-    public static final int CONNECTION_UNKNOWN = 0;
-    public static final int CONNECTION_ETHERNET = 1;
-    public static final int CONNECTION_WIFI = 2;
-    public static final int CONNECTION_2G = 3;
-    public static final int CONNECTION_3G = 4;
-    public static final int CONNECTION_4G = 5;
-    public static final int CONNECTION_NONE = 6;
-    public static final int CONNECTION_BLUETOOTH = 7;
-
     private final Context mContext;
     private final ArrayList<Long> mNativeChangeNotifiers;
     private final ObserverList<ConnectionTypeObserver> mConnectionTypeObservers;
     private NetworkChangeNotifierAutoDetect mAutoDetector;
-    private int mCurrentConnectionType = CONNECTION_UNKNOWN;
+    private int mCurrentConnectionType = ConnectionType.CONNECTION_UNKNOWN;
+    private double mCurrentMaxBandwidth = Double.POSITIVE_INFINITY;
 
     private static NetworkChangeNotifier sInstance;
 
@@ -81,6 +72,18 @@
         return mCurrentConnectionType;
     }
 
+    @CalledByNative
+    public double getCurrentMaxBandwidth() {
+        return mCurrentMaxBandwidth;
+    }
+
+    /**
+     * Calls a native map lookup of subtype to max bandwidth.
+     */
+    public static double getMaxBandwidthForConnectionSubtype(int subtype) {
+        return nativeGetMaxBandwidthForConnectionSubtype(subtype);
+    }
+
     /**
      * Adds a native-side observer.
      */
@@ -144,11 +147,13 @@
                     new NetworkChangeNotifierAutoDetect.Observer() {
                         @Override
                         public void onConnectionTypeChanged(int newConnectionType) {
+                            updateCurrentMaxBandwidth(mAutoDetector.getCurrentMaxBandwidthInMbps());
                             updateCurrentConnectionType(newConnectionType);
                         }
                     },
                     mContext,
                     alwaysWatchForChanges);
+                updateCurrentMaxBandwidth(mAutoDetector.getCurrentMaxBandwidthInMbps());
                 updateCurrentConnectionType(mAutoDetector.getCurrentConnectionType());
             }
         } else {
@@ -169,9 +174,12 @@
     }
 
     private void forceConnectivityStateInternal(boolean forceOnline) {
-        boolean connectionCurrentlyExists = mCurrentConnectionType != CONNECTION_NONE;
+        boolean connectionCurrentlyExists =
+                mCurrentConnectionType != ConnectionType.CONNECTION_NONE;
         if (connectionCurrentlyExists != forceOnline) {
-            updateCurrentConnectionType(forceOnline ? CONNECTION_UNKNOWN : CONNECTION_NONE);
+            updateCurrentMaxBandwidth(forceOnline ? Double.POSITIVE_INFINITY : 0.0);
+            updateCurrentConnectionType(forceOnline ? ConnectionType.CONNECTION_UNKNOWN
+                    : ConnectionType.CONNECTION_NONE);
         }
     }
 
@@ -180,6 +188,10 @@
         notifyObserversOfConnectionTypeChange(newConnectionType);
     }
 
+    private void updateCurrentMaxBandwidth(double maxBandwidth) {
+        mCurrentMaxBandwidth = maxBandwidth;
+    }
+
     /**
      * Alerts all observers of a connection change.
      */
@@ -217,6 +229,8 @@
     @NativeClassQualifiedName("NetworkChangeNotifierDelegateAndroid")
     private native void nativeNotifyConnectionTypeChanged(long nativePtr, int newConnectionType);
 
+    private static native double nativeGetMaxBandwidthForConnectionSubtype(int subtype);
+
     // For testing only.
     public static NetworkChangeNotifierAutoDetect getAutoDetectorForTest() {
         return getInstance().mAutoDetector;
@@ -227,6 +241,7 @@
      */
     public static boolean isOnline() {
         int connectionType = getInstance().getCurrentConnectionType();
-        return connectionType != CONNECTION_UNKNOWN && connectionType != CONNECTION_NONE;
+        return connectionType != ConnectionType.CONNECTION_UNKNOWN
+                && connectionType != ConnectionType.CONNECTION_NONE;
     }
 }
diff --git a/net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java b/net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java
index 9db46e2..12ae465 100644
--- a/net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java
+++ b/net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java
@@ -4,11 +4,14 @@
 
 package org.chromium.net;
 
+import android.Manifest.permission;
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
+import android.content.pm.PackageManager;
 import android.net.ConnectivityManager;
+import android.net.NetworkInfo;
 import android.net.wifi.WifiInfo;
 import android.net.wifi.WifiManager;
 import android.telephony.TelephonyManager;
@@ -25,6 +28,30 @@
 public class NetworkChangeNotifierAutoDetect extends BroadcastReceiver
         implements ApplicationStatus.ApplicationStateListener {
 
+    static class NetworkState {
+        private final boolean mConnected;
+        private final int mType;
+        private final int mSubtype;
+
+        public NetworkState(boolean connected, int type, int subtype) {
+            mConnected = connected;
+            mType = type;
+            mSubtype = subtype;
+        }
+
+        public boolean isConnected() {
+            return mConnected;
+        }
+
+        public int getNetworkType() {
+            return mType;
+        }
+
+        public int getNetworkSubType() {
+            return mSubtype;
+        }
+    }
+
     /** Queries the ConnectivityManager for information about the current connection. */
     static class ConnectivityManagerDelegate {
         private final ConnectivityManager mConnectivityManager;
@@ -40,48 +67,73 @@
             mConnectivityManager = null;
         }
 
-        boolean activeNetworkExists() {
-            return mConnectivityManager.getActiveNetworkInfo() != null;
-        }
-
-        boolean isConnected() {
-            return mConnectivityManager.getActiveNetworkInfo().isConnected();
-        }
-
-        int getNetworkType() {
-            return mConnectivityManager.getActiveNetworkInfo().getType();
-        }
-
-        int getNetworkSubtype() {
-            return mConnectivityManager.getActiveNetworkInfo().getSubtype();
+        NetworkState getNetworkState() {
+            final NetworkInfo networkInfo = mConnectivityManager.getActiveNetworkInfo();
+            if (networkInfo == null || !networkInfo.isConnected()) {
+                return new NetworkState(false, -1, -1);
+            }
+            return new NetworkState(true, networkInfo.getType(), networkInfo.getSubtype());
         }
     }
 
     /** Queries the WifiManager for SSID of the current Wifi connection. */
     static class WifiManagerDelegate {
+        private final Context mContext;
         private final WifiManager mWifiManager;
+        private final boolean mHasWifiPermission;
 
         WifiManagerDelegate(Context context) {
-            mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
+            mContext = context;
+            // TODO(jkarlin): If the embedder doesn't have ACCESS_WIFI_STATE permission then inform
+            // native code and fail if native NetworkChangeNotifierAndroid::GetMaxBandwidth() is
+            // called.
+            mHasWifiPermission = mContext.getPackageManager().checkPermission(
+                    permission.ACCESS_WIFI_STATE, mContext.getPackageName())
+                    == PackageManager.PERMISSION_GRANTED;
+            mWifiManager = mHasWifiPermission
+                    ? (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE) : null;
         }
 
         // For testing.
         WifiManagerDelegate() {
             // All the methods below should be overridden.
+            mContext = null;
             mWifiManager = null;
+            mHasWifiPermission = false;
         }
 
         String getWifiSSID() {
-            WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
-            if (wifiInfo == null)
-                return "";
-            String ssid = wifiInfo.getSSID();
-            return ssid == null ? "" : ssid;
+            final Intent intent = mContext.registerReceiver(null,
+                    new IntentFilter(WifiManager.NETWORK_STATE_CHANGED_ACTION));
+            if (intent != null) {
+                final WifiInfo wifiInfo = intent.getParcelableExtra(WifiManager.EXTRA_WIFI_INFO);
+                if (wifiInfo != null) {
+                    final String ssid = wifiInfo.getSSID();
+                    if (ssid != null) {
+                        return ssid;
+                    }
+                }
+            }
+            return "";
+        }
+
+        /*
+         * Requires ACCESS_WIFI_STATE permission to get the real link speed, else returns
+         * UNKNOWN_LINK_SPEED.
+         */
+        int getLinkSpeedInMbps() {
+            if (!mHasWifiPermission || mWifiManager == null) return UNKNOWN_LINK_SPEED;
+            final WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
+            if (wifiInfo == null) return UNKNOWN_LINK_SPEED;
+
+            // wifiInfo.getLinkSpeed returns the current wifi linkspeed, which can change even
+            // though the connection type hasn't changed.
+            return wifiInfo.getLinkSpeed();
         }
     }
 
     private static final String TAG = "NetworkChangeNotifierAutoDetect";
-
+    private static final int UNKNOWN_LINK_SPEED = -1;
     private final NetworkConnectivityIntentFilter mIntentFilter =
             new NetworkConnectivityIntentFilter();
 
@@ -161,29 +213,29 @@
 
     public int getCurrentConnectionType() {
         // Track exactly what type of connection we have.
-        if (!mConnectivityManagerDelegate.activeNetworkExists()
-                || !mConnectivityManagerDelegate.isConnected()) {
-            return NetworkChangeNotifier.CONNECTION_NONE;
+        final NetworkState networkState = mConnectivityManagerDelegate.getNetworkState();
+        if (!networkState.isConnected()) {
+            return ConnectionType.CONNECTION_NONE;
         }
 
-        switch (mConnectivityManagerDelegate.getNetworkType()) {
+        switch (networkState.getNetworkType()) {
             case ConnectivityManager.TYPE_ETHERNET:
-                return NetworkChangeNotifier.CONNECTION_ETHERNET;
+                return ConnectionType.CONNECTION_ETHERNET;
             case ConnectivityManager.TYPE_WIFI:
-                return NetworkChangeNotifier.CONNECTION_WIFI;
+                return ConnectionType.CONNECTION_WIFI;
             case ConnectivityManager.TYPE_WIMAX:
-                return NetworkChangeNotifier.CONNECTION_4G;
+                return ConnectionType.CONNECTION_4G;
             case ConnectivityManager.TYPE_BLUETOOTH:
-                return NetworkChangeNotifier.CONNECTION_BLUETOOTH;
+                return ConnectionType.CONNECTION_BLUETOOTH;
             case ConnectivityManager.TYPE_MOBILE:
                 // Use information from TelephonyManager to classify the connection.
-                switch (mConnectivityManagerDelegate.getNetworkSubtype()) {
+                switch (networkState.getNetworkSubType()) {
                     case TelephonyManager.NETWORK_TYPE_GPRS:
                     case TelephonyManager.NETWORK_TYPE_EDGE:
                     case TelephonyManager.NETWORK_TYPE_CDMA:
                     case TelephonyManager.NETWORK_TYPE_1xRTT:
                     case TelephonyManager.NETWORK_TYPE_IDEN:
-                        return NetworkChangeNotifier.CONNECTION_2G;
+                        return ConnectionType.CONNECTION_2G;
                     case TelephonyManager.NETWORK_TYPE_UMTS:
                     case TelephonyManager.NETWORK_TYPE_EVDO_0:
                     case TelephonyManager.NETWORK_TYPE_EVDO_A:
@@ -193,19 +245,94 @@
                     case TelephonyManager.NETWORK_TYPE_EVDO_B:
                     case TelephonyManager.NETWORK_TYPE_EHRPD:
                     case TelephonyManager.NETWORK_TYPE_HSPAP:
-                        return NetworkChangeNotifier.CONNECTION_3G;
+                        return ConnectionType.CONNECTION_3G;
                     case TelephonyManager.NETWORK_TYPE_LTE:
-                        return NetworkChangeNotifier.CONNECTION_4G;
+                        return ConnectionType.CONNECTION_4G;
                     default:
-                        return NetworkChangeNotifier.CONNECTION_UNKNOWN;
+                        return ConnectionType.CONNECTION_UNKNOWN;
                 }
             default:
-                return NetworkChangeNotifier.CONNECTION_UNKNOWN;
+                return ConnectionType.CONNECTION_UNKNOWN;
+        }
+    }
+
+    /*
+     * Returns the bandwidth of the current connection in Mbps.  The result is
+     * derived from the NetInfo v3 specification's mapping from network type to
+     * max link speed. In cases where more information is available, such as wifi,
+     * that is used instead. For more on NetInfo, see http://w3c.github.io/netinfo/.
+     *
+     * TODO(jkarlin): Add a notification of bandwidth change to the NetworkChangeNotifier.
+     * Without that the MaxBandwidth value will be stale until the network type or address
+     * changes again.
+     */
+    public double getCurrentMaxBandwidthInMbps() {
+        if (getCurrentConnectionType() == ConnectionType.CONNECTION_WIFI) {
+            final int link_speed = mWifiManagerDelegate.getLinkSpeedInMbps();
+            if (link_speed != UNKNOWN_LINK_SPEED) {
+                return link_speed;
+            }
+        }
+
+        return NetworkChangeNotifier.getMaxBandwidthForConnectionSubtype(
+                getCurrentConnectionSubtype());
+    }
+
+    private int getCurrentConnectionSubtype() {
+        final NetworkState networkState = mConnectivityManagerDelegate.getNetworkState();
+        if (!networkState.isConnected()) {
+            return ConnectionSubtype.SUBTYPE_NONE;
+        }
+
+        switch (networkState.getNetworkType()) {
+            case ConnectivityManager.TYPE_ETHERNET:
+            case ConnectivityManager.TYPE_WIFI:
+            case ConnectivityManager.TYPE_WIMAX:
+            case ConnectivityManager.TYPE_BLUETOOTH:
+                return ConnectionSubtype.SUBTYPE_UNKNOWN;
+            case ConnectivityManager.TYPE_MOBILE:
+                // Use information from TelephonyManager to classify the connection.
+                switch (networkState.getNetworkSubType()) {
+                    case TelephonyManager.NETWORK_TYPE_GPRS:
+                        return ConnectionSubtype.SUBTYPE_GPRS;
+                    case TelephonyManager.NETWORK_TYPE_EDGE:
+                        return ConnectionSubtype.SUBTYPE_EDGE;
+                    case TelephonyManager.NETWORK_TYPE_CDMA:
+                        return ConnectionSubtype.SUBTYPE_CDMA;
+                    case TelephonyManager.NETWORK_TYPE_1xRTT:
+                        return ConnectionSubtype.SUBTYPE_1XRTT;
+                    case TelephonyManager.NETWORK_TYPE_IDEN:
+                        return ConnectionSubtype.SUBTYPE_IDEN;
+                    case TelephonyManager.NETWORK_TYPE_UMTS:
+                        return ConnectionSubtype.SUBTYPE_UMTS;
+                    case TelephonyManager.NETWORK_TYPE_EVDO_0:
+                        return ConnectionSubtype.SUBTYPE_EVDO_REV_0;
+                    case TelephonyManager.NETWORK_TYPE_EVDO_A:
+                        return ConnectionSubtype.SUBTYPE_EVDO_REV_A;
+                    case TelephonyManager.NETWORK_TYPE_HSDPA:
+                        return ConnectionSubtype.SUBTYPE_HSDPA;
+                    case TelephonyManager.NETWORK_TYPE_HSUPA:
+                        return ConnectionSubtype.SUBTYPE_HSUPA;
+                    case TelephonyManager.NETWORK_TYPE_HSPA:
+                        return ConnectionSubtype.SUBTYPE_HSPA;
+                    case TelephonyManager.NETWORK_TYPE_EVDO_B:
+                        return ConnectionSubtype.SUBTYPE_EVDO_REV_B;
+                    case TelephonyManager.NETWORK_TYPE_EHRPD:
+                        return ConnectionSubtype.SUBTYPE_EHRPD;
+                    case TelephonyManager.NETWORK_TYPE_HSPAP:
+                        return ConnectionSubtype.SUBTYPE_HSPAP;
+                    case TelephonyManager.NETWORK_TYPE_LTE:
+                        return ConnectionSubtype.SUBTYPE_LTE;
+                    default:
+                        return ConnectionSubtype.SUBTYPE_UNKNOWN;
+                }
+            default:
+                return ConnectionSubtype.SUBTYPE_UNKNOWN;
         }
     }
 
     private String getCurrentWifiSSID() {
-        if (getCurrentConnectionType() != NetworkChangeNotifier.CONNECTION_WIFI)
+        if (getCurrentConnectionType() != ConnectionType.CONNECTION_WIFI)
             return "";
         return mWifiManagerDelegate.getWifiSSID();
     }
diff --git a/net/android/javatests/src/org/chromium/net/NetworkChangeNotifierTest.java b/net/android/javatests/src/org/chromium/net/NetworkChangeNotifierTest.java
index 887bc3b..f4eafd9 100644
--- a/net/android/javatests/src/org/chromium/net/NetworkChangeNotifierTest.java
+++ b/net/android/javatests/src/org/chromium/net/NetworkChangeNotifierTest.java
@@ -13,7 +13,9 @@
 import android.test.suitebuilder.annotation.MediumTest;
 
 import org.chromium.base.ApplicationState;
+import org.chromium.base.library_loader.LibraryLoader;
 import org.chromium.base.test.util.Feature;
+import org.chromium.net.NetworkChangeNotifierAutoDetect.NetworkState;
 
 /**
  * Tests for org.chromium.net.NetworkChangeNotifier.
@@ -50,33 +52,18 @@
         private int mNetworkSubtype;
 
         @Override
-        boolean activeNetworkExists() {
-            return mActiveNetworkExists;
-        }
-
-        @Override
-        boolean isConnected() {
-            return getNetworkType() != NetworkChangeNotifier.CONNECTION_NONE;
+        NetworkState getNetworkState() {
+            return new NetworkState(mActiveNetworkExists, mNetworkType, mNetworkSubtype);
         }
 
         void setActiveNetworkExists(boolean networkExists) {
             mActiveNetworkExists = networkExists;
         }
 
-        @Override
-        int getNetworkType() {
-            return mNetworkType;
-        }
-
         void setNetworkType(int networkType) {
             mNetworkType = networkType;
         }
 
-        @Override
-        int getNetworkSubtype() {
-            return mNetworkSubtype;
-        }
-
         void setNetworkSubtype(int networkSubtype) {
             mNetworkSubtype = networkSubtype;
         }
@@ -88,6 +75,7 @@
     class MockWifiManagerDelegate
             extends NetworkChangeNotifierAutoDetect.WifiManagerDelegate {
         private String mWifiSSID;
+        private int mLinkSpeedMbps;
 
         @Override
         String getWifiSSID() {
@@ -97,6 +85,104 @@
         void setWifiSSID(String wifiSSID) {
             mWifiSSID = wifiSSID;
         }
+
+        @Override
+        int getLinkSpeedInMbps() {
+            return mLinkSpeedMbps;
+        }
+
+        void setLinkSpeedInMbps(int linkSpeedInMbps) {
+            mLinkSpeedMbps = linkSpeedInMbps;
+        }
+    }
+
+    @Override
+    protected void setUp() throws Exception {
+        super.setUp();
+        LibraryLoader.ensureInitialized();
+        createTestNotifier();
+    }
+
+    private NetworkChangeNotifierAutoDetect mReceiver;
+    private MockConnectivityManagerDelegate mConnectivityDelegate;
+    private MockWifiManagerDelegate mWifiDelegate;
+
+    private void createTestNotifier() {
+        Context context = getInstrumentation().getTargetContext();
+        NetworkChangeNotifier.resetInstanceForTests(context);
+        NetworkChangeNotifier.setAutoDetectConnectivityState(true);
+
+        mReceiver = NetworkChangeNotifier.getAutoDetectorForTest();
+        assertNotNull(mReceiver);
+
+        mConnectivityDelegate =
+                new MockConnectivityManagerDelegate();
+        mConnectivityDelegate.setActiveNetworkExists(true);
+        mReceiver.setConnectivityManagerDelegateForTests(mConnectivityDelegate);
+
+        mWifiDelegate = new MockWifiManagerDelegate();
+        mReceiver.setWifiManagerDelegateForTests(mWifiDelegate);
+        mWifiDelegate.setWifiSSID("foo");
+    }
+
+    /**
+     * Tests that changing the network type changes the maxBandwidth.
+     */
+    @UiThreadTest
+    @MediumTest
+    @Feature({"Android-AppBase"})
+    public void testNetworkChangeNotifierMaxBandwidthEthernet() throws InterruptedException {
+        // Show that for Ethernet the link speed is unknown (+Infinity).
+        mConnectivityDelegate.setNetworkType(ConnectivityManager.TYPE_ETHERNET);
+        assertEquals(ConnectionType.CONNECTION_ETHERNET,
+                mReceiver.getCurrentConnectionType());
+        assertEquals(Double.POSITIVE_INFINITY, mReceiver.getCurrentMaxBandwidthInMbps());
+    }
+
+    @UiThreadTest
+    @MediumTest
+    @Feature({"Android-AppBase"})
+    public void testNetworkChangeNotifierMaxBandwidthWifi() throws InterruptedException {
+        // Test that for wifi types the link speed is read from the WifiManager.
+        mWifiDelegate.setLinkSpeedInMbps(42);
+        mConnectivityDelegate.setNetworkType(ConnectivityManager.TYPE_WIFI);
+        assertEquals(ConnectionType.CONNECTION_WIFI, mReceiver.getCurrentConnectionType());
+        assertEquals(42.0, mReceiver.getCurrentMaxBandwidthInMbps());
+    }
+
+    @UiThreadTest
+    @MediumTest
+    @Feature({"Android-AppBase"})
+    public void testNetworkChangeNotifierMaxBandwidthWiMax() throws InterruptedException {
+        // Show that for WiMax the link speed is unknown (+Infinity), although the type is 4g.
+        // TODO(jkarlin): Add support for CONNECTION_WIMAX as specified in
+        // http://w3c.github.io/netinfo/.
+        mConnectivityDelegate.setNetworkType(ConnectivityManager.TYPE_WIMAX);
+        assertEquals(ConnectionType.CONNECTION_4G,
+                mReceiver.getCurrentConnectionType());
+        assertEquals(Double.POSITIVE_INFINITY, mReceiver.getCurrentMaxBandwidthInMbps());
+    }
+
+    @UiThreadTest
+    @MediumTest
+    @Feature({"Android-AppBase"})
+    public void testNetworkChangeNotifierMaxBandwidthBluetooth() throws InterruptedException {
+        // Show that for bluetooth the link speed is unknown (+Infinity).
+        mConnectivityDelegate.setNetworkType(ConnectivityManager.TYPE_BLUETOOTH);
+        assertEquals(ConnectionType.CONNECTION_BLUETOOTH,
+                mReceiver.getCurrentConnectionType());
+        assertEquals(Double.POSITIVE_INFINITY, mReceiver.getCurrentMaxBandwidthInMbps());
+    }
+
+    @UiThreadTest
+    @MediumTest
+    @Feature({"Android-AppBase"})
+    public void testNetworkChangeNotifierMaxBandwidthMobile() throws InterruptedException {
+        // Test that for mobile types the subtype is used to determine the maxBandwidth.
+        mConnectivityDelegate.setNetworkType(ConnectivityManager.TYPE_MOBILE);
+        mConnectivityDelegate.setNetworkSubtype(TelephonyManager.NETWORK_TYPE_LTE);
+        assertEquals(ConnectionType.CONNECTION_4G, mReceiver.getCurrentConnectionType());
+        assertEquals(100.0, mReceiver.getCurrentMaxBandwidthInMbps());
     }
 
     /**
@@ -107,70 +193,50 @@
     @MediumTest
     @Feature({"Android-AppBase"})
     public void testNetworkChangeNotifierJavaObservers() throws InterruptedException {
-        // Create a new notifier that doesn't have a native-side counterpart.
-        Context context = getInstrumentation().getTargetContext();
-        NetworkChangeNotifier.resetInstanceForTests(context);
-
-        NetworkChangeNotifier.setAutoDetectConnectivityState(true);
-        NetworkChangeNotifierAutoDetect receiver = NetworkChangeNotifier.getAutoDetectorForTest();
-        assertTrue(receiver != null);
-
-        MockConnectivityManagerDelegate connectivityDelegate =
-                new MockConnectivityManagerDelegate();
-        connectivityDelegate.setActiveNetworkExists(true);
-        connectivityDelegate.setNetworkType(NetworkChangeNotifier.CONNECTION_UNKNOWN);
-        connectivityDelegate.setNetworkSubtype(TelephonyManager.NETWORK_TYPE_UNKNOWN);
-        receiver.setConnectivityManagerDelegateForTests(connectivityDelegate);
-
-        MockWifiManagerDelegate wifiDelegate = new MockWifiManagerDelegate();
-        wifiDelegate.setWifiSSID("foo");
-        receiver.setWifiManagerDelegateForTests(wifiDelegate);
-
         // Initialize the NetworkChangeNotifier with a connection.
         Intent connectivityIntent = new Intent(ConnectivityManager.CONNECTIVITY_ACTION);
-        receiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
+        mReceiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
 
         // We shouldn't be re-notified if the connection hasn't actually changed.
         NetworkChangeNotifierTestObserver observer = new NetworkChangeNotifierTestObserver();
         NetworkChangeNotifier.addConnectionTypeObserver(observer);
-        receiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
+        mReceiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
         assertFalse(observer.hasReceivedNotification());
 
         // We shouldn't be notified if we're connected to non-Wifi and the Wifi SSID changes.
-        wifiDelegate.setWifiSSID("bar");
-        receiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
+        mWifiDelegate.setWifiSSID("bar");
+        mReceiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
         assertFalse(observer.hasReceivedNotification());
         // We should be notified when we change to Wifi.
-        connectivityDelegate.setNetworkType(ConnectivityManager.TYPE_WIFI);
-        receiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
+        mConnectivityDelegate.setNetworkType(ConnectivityManager.TYPE_WIFI);
+        mReceiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
         assertTrue(observer.hasReceivedNotification());
         observer.resetHasReceivedNotification();
         // We should be notified when the Wifi SSID changes.
-        wifiDelegate.setWifiSSID("foo");
-        receiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
+        mWifiDelegate.setWifiSSID("foo");
+        mReceiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
         assertTrue(observer.hasReceivedNotification());
         observer.resetHasReceivedNotification();
         // We shouldn't be re-notified if the Wifi SSID hasn't actually changed.
-        receiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
+        mReceiver.onReceive(getInstrumentation().getTargetContext(), connectivityIntent);
         assertFalse(observer.hasReceivedNotification());
 
         // Mimic that connectivity has been lost and ensure that Chrome notifies our observer.
-        connectivityDelegate.setActiveNetworkExists(false);
-        connectivityDelegate.setNetworkType(NetworkChangeNotifier.CONNECTION_NONE);
+        mConnectivityDelegate.setActiveNetworkExists(false);
         Intent noConnectivityIntent = new Intent(ConnectivityManager.CONNECTIVITY_ACTION);
-        receiver.onReceive(getInstrumentation().getTargetContext(), noConnectivityIntent);
+        mReceiver.onReceive(getInstrumentation().getTargetContext(), noConnectivityIntent);
         assertTrue(observer.hasReceivedNotification());
 
         observer.resetHasReceivedNotification();
         // Pretend we got moved to the background.
-        receiver.onApplicationStateChange(ApplicationState.HAS_PAUSED_ACTIVITIES);
+        mReceiver.onApplicationStateChange(ApplicationState.HAS_PAUSED_ACTIVITIES);
         // Change the state.
-        connectivityDelegate.setActiveNetworkExists(true);
-        connectivityDelegate.setNetworkType(NetworkChangeNotifier.CONNECTION_WIFI);
+        mConnectivityDelegate.setActiveNetworkExists(true);
+        mConnectivityDelegate.setNetworkType(ConnectivityManager.TYPE_WIFI);
         // The NetworkChangeNotifierAutoDetect doesn't receive any notification while we are in the
         // background, but when we get back to the foreground the state changed should be detected
         // and a notification sent.
-        receiver.onApplicationStateChange(ApplicationState.HAS_RUNNING_ACTIVITIES);
+        mReceiver.onApplicationStateChange(ApplicationState.HAS_RUNNING_ACTIVITIES);
         assertTrue(observer.hasReceivedNotification());
     }
 }
diff --git a/net/android/network_change_notifier_android.cc b/net/android/network_change_notifier_android.cc
index 410d1fb..2063e7b 100644
--- a/net/android/network_change_notifier_android.cc
+++ b/net/android/network_change_notifier_android.cc
@@ -114,6 +114,10 @@
   return delegate_->GetCurrentConnectionType();
 }
 
+double NetworkChangeNotifierAndroid::GetCurrentMaxBandwidth() const {
+  return delegate_->GetCurrentMaxBandwidth();
+}
+
 void NetworkChangeNotifierAndroid::OnConnectionTypeChanged() {
   DnsConfigServiceThread::NotifyNetworkChangeNotifierObservers();
 }
diff --git a/net/android/network_change_notifier_android.h b/net/android/network_change_notifier_android.h
index 57d29b8..7710c26 100644
--- a/net/android/network_change_notifier_android.h
+++ b/net/android/network_change_notifier_android.h
@@ -46,12 +46,19 @@
 
   // NetworkChangeNotifier:
   virtual ConnectionType GetCurrentConnectionType() const override;
+  // Requires ACCESS_WIFI_STATE permission in order to provide precise WiFi link
+  // speed.
+  virtual double GetCurrentMaxBandwidth() const override;
 
   // NetworkChangeNotifierDelegateAndroid::Observer:
   virtual void OnConnectionTypeChanged() override;
 
   static bool Register(JNIEnv* env);
 
+  // Promote GetMaxBandwidthForConnectionSubtype to public for the Android
+  // delegate class.
+  using NetworkChangeNotifier::GetMaxBandwidthForConnectionSubtype;
+
  private:
   friend class NetworkChangeNotifierAndroidTest;
   friend class NetworkChangeNotifierFactoryAndroid;
diff --git a/net/android/network_change_notifier_android_unittest.cc b/net/android/network_change_notifier_android_unittest.cc
index 6aadb54..0818d5a 100644
--- a/net/android/network_change_notifier_android_unittest.cc
+++ b/net/android/network_change_notifier_android_unittest.cc
@@ -213,4 +213,17 @@
             other_connection_type_observer_.notifications_count());
 }
 
+TEST_F(NetworkChangeNotifierAndroidTest, MaxBandwidth) {
+  SetOnline();
+  EXPECT_EQ(NetworkChangeNotifier::CONNECTION_UNKNOWN,
+            notifier_.GetConnectionType());
+  EXPECT_EQ(std::numeric_limits<double>::infinity(),
+            notifier_.GetMaxBandwidth());
+
+  SetOffline();
+  EXPECT_EQ(NetworkChangeNotifier::CONNECTION_NONE,
+            notifier_.GetConnectionType());
+  EXPECT_EQ(0.0, notifier_.GetMaxBandwidth());
+}
+
 }  // namespace net
diff --git a/net/android/network_change_notifier_delegate_android.cc b/net/android/network_change_notifier_delegate_android.cc
index fbbaced..a6a7132 100644
--- a/net/android/network_change_notifier_delegate_android.cc
+++ b/net/android/network_change_notifier_delegate_android.cc
@@ -6,6 +6,7 @@
 
 #include "base/logging.h"
 #include "jni/NetworkChangeNotifier_jni.h"
+#include "net/android/network_change_notifier_android.h"
 
 namespace net {
 
@@ -32,8 +33,24 @@
   return static_cast<NetworkChangeNotifier::ConnectionType>(connection_type);
 }
 
+// Converts a Java side connection type (integer) to
+// the native side NetworkChangeNotifier::ConnectionType.
+NetworkChangeNotifier::ConnectionSubtype ConvertConnectionSubtype(
+    jint subtype) {
+  DCHECK(subtype >= 0 && subtype <= NetworkChangeNotifier::SUBTYPE_LAST);
+
+  return static_cast<NetworkChangeNotifier::ConnectionSubtype>(subtype);
+}
+
 }  // namespace
 
+jdouble GetMaxBandwidthForConnectionSubtype(JNIEnv* env,
+                                            jclass caller,
+                                            jint subtype) {
+  return NetworkChangeNotifierAndroid::GetMaxBandwidthForConnectionSubtype(
+      ConvertConnectionSubtype(subtype));
+}
+
 NetworkChangeNotifierDelegateAndroid::NetworkChangeNotifierDelegateAndroid()
     : observers_(new ObserverListThreadSafe<Observer>()) {
   JNIEnv* env = base::android::AttachCurrentThread();
@@ -47,6 +64,8 @@
       ConvertConnectionType(
           Java_NetworkChangeNotifier_getCurrentConnectionType(
               env, java_network_change_notifier_.obj())));
+  SetCurrentMaxBandwidth(Java_NetworkChangeNotifier_getCurrentMaxBandwidth(
+      env, java_network_change_notifier_.obj()));
 }
 
 NetworkChangeNotifierDelegateAndroid::~NetworkChangeNotifierDelegateAndroid() {
@@ -60,10 +79,15 @@
 
 NetworkChangeNotifier::ConnectionType
 NetworkChangeNotifierDelegateAndroid::GetCurrentConnectionType() const {
-  base::AutoLock auto_lock(connection_type_lock_);
+  base::AutoLock auto_lock(connection_lock_);
   return connection_type_;
 }
 
+double NetworkChangeNotifierDelegateAndroid::GetCurrentMaxBandwidth() const {
+  base::AutoLock auto_lock(connection_lock_);
+  return connection_max_bandwidth_;
+}
+
 void NetworkChangeNotifierDelegateAndroid::NotifyConnectionTypeChanged(
     JNIEnv* env,
     jobject obj,
@@ -72,6 +96,8 @@
   const ConnectionType actual_connection_type = ConvertConnectionType(
       new_connection_type);
   SetCurrentConnectionType(actual_connection_type);
+  SetCurrentMaxBandwidth(Java_NetworkChangeNotifier_getCurrentMaxBandwidth(
+      env, java_network_change_notifier_.obj()));
   observers_->Notify(&Observer::OnConnectionTypeChanged);
 }
 
@@ -98,10 +124,16 @@
 
 void NetworkChangeNotifierDelegateAndroid::SetCurrentConnectionType(
     ConnectionType new_connection_type) {
-  base::AutoLock auto_lock(connection_type_lock_);
+  base::AutoLock auto_lock(connection_lock_);
   connection_type_ = new_connection_type;
 }
 
+void NetworkChangeNotifierDelegateAndroid::SetCurrentMaxBandwidth(
+    double max_bandwidth) {
+  base::AutoLock auto_lock(connection_lock_);
+  connection_max_bandwidth_ = max_bandwidth;
+}
+
 void NetworkChangeNotifierDelegateAndroid::SetOnline() {
   JNIEnv* env = base::android::AttachCurrentThread();
   Java_NetworkChangeNotifier_forceConnectivityState(env, true);
diff --git a/net/android/network_change_notifier_delegate_android.h b/net/android/network_change_notifier_delegate_android.h
index f93c30b..f561888 100644
--- a/net/android/network_change_notifier_delegate_android.h
+++ b/net/android/network_change_notifier_delegate_android.h
@@ -55,6 +55,9 @@
   // Can be called from any thread.
   ConnectionType GetCurrentConnectionType() const;
 
+  // Can be called from any thread.
+  double GetCurrentMaxBandwidth() const;
+
   // Initializes JNI bindings.
   static bool Register(JNIEnv* env);
 
@@ -62,6 +65,7 @@
   friend class BaseNetworkChangeNotifierAndroidTest;
 
   void SetCurrentConnectionType(ConnectionType connection_type);
+  void SetCurrentMaxBandwidth(double max_bandwidth);
 
   // Methods calling the Java side exposed for testing.
   void SetOnline();
@@ -71,8 +75,9 @@
   scoped_refptr<ObserverListThreadSafe<Observer> > observers_;
   scoped_refptr<base::SingleThreadTaskRunner> jni_task_runner_;
   base::android::ScopedJavaGlobalRef<jobject> java_network_change_notifier_;
-  mutable base::Lock connection_type_lock_;  // Protects the state below.
+  mutable base::Lock connection_lock_;  // Protects the state below.
   ConnectionType connection_type_;
+  double connection_max_bandwidth_;
 
   DISALLOW_COPY_AND_ASSIGN(NetworkChangeNotifierDelegateAndroid);
 };
diff --git a/net/base/dns_util.cc b/net/base/dns_util.cc
index c095eb8..f75cd95 100644
--- a/net/base/dns_util.cc
+++ b/net/base/dns_util.cc
@@ -13,9 +13,9 @@
   const char* buf = dotted.data();
   unsigned n = dotted.size();
   char label[63];
-  unsigned int labellen = 0; /* <= sizeof label */
+  size_t labellen = 0; /* <= sizeof label */
   char name[255];
-  unsigned int namelen = 0; /* <= sizeof name */
+  size_t namelen = 0; /* <= sizeof name */
   char ch;
 
   for (;;) {
@@ -27,7 +27,7 @@
       if (labellen) {
         if (namelen + labellen + 1 > sizeof name)
           return false;
-        name[namelen++] = labellen;
+        name[namelen++] = static_cast<char>(labellen);
         memcpy(name + namelen, label, labellen);
         namelen += labellen;
         labellen = 0;
@@ -42,7 +42,7 @@
   if (labellen) {
     if (namelen + labellen + 1 > sizeof name)
       return false;
-    name[namelen++] = labellen;
+    name[namelen++] = static_cast<char>(labellen);
     memcpy(name + namelen, label, labellen);
     namelen += labellen;
     labellen = 0;
diff --git a/net/base/elements_upload_data_stream.cc b/net/base/elements_upload_data_stream.cc
index 86ea28c..e8d33ee 100644
--- a/net/base/elements_upload_data_stream.cc
+++ b/net/base/elements_upload_data_stream.cc
@@ -129,10 +129,10 @@
   if (read_failed_) {
     // If an error occured during read operation, then pad with zero.
     // Otherwise the server will hang waiting for the rest of the data.
-    int num_bytes_to_fill = std::min(
+    int num_bytes_to_fill = static_cast<int>(std::min(
         static_cast<uint64>(buf->BytesRemaining()),
-        size() - position() - buf->BytesConsumed());
-    DCHECK_LE(0, num_bytes_to_fill);
+        size() - position() - buf->BytesConsumed()));
+    DCHECK_GE(num_bytes_to_fill, 0);
     memset(buf->data(), 0, num_bytes_to_fill);
     buf->DidConsume(num_bytes_to_fill);
   }
diff --git a/net/base/file_stream_context.cc b/net/base/file_stream_context.cc
index 8909b2c..5acaab6 100644
--- a/net/base/file_stream_context.cc
+++ b/net/base/file_stream_context.cc
@@ -33,14 +33,15 @@
       os_error(0) {
 }
 
-FileStream::Context::IOResult::IOResult(int64 result, int os_error)
+FileStream::Context::IOResult::IOResult(int64 result,
+                                        logging::SystemErrorCode os_error)
     : result(result),
       os_error(os_error) {
 }
 
 // static
 FileStream::Context::IOResult FileStream::Context::IOResult::FromOSError(
-    int64 os_error) {
+    logging::SystemErrorCode os_error) {
   return IOResult(MapSystemError(os_error), os_error);
 }
 
diff --git a/net/base/file_stream_context.h b/net/base/file_stream_context.h
index 5493e25..82a2412 100644
--- a/net/base/file_stream_context.h
+++ b/net/base/file_stream_context.h
@@ -100,11 +100,11 @@
  private:
   struct IOResult {
     IOResult();
-    IOResult(int64 result, int os_error);
-    static IOResult FromOSError(int64 os_error);
+    IOResult(int64 result, logging::SystemErrorCode os_error);
+    static IOResult FromOSError(logging::SystemErrorCode os_error);
 
     int64 result;
-    int os_error;  // Set only when result < 0.
+    logging::SystemErrorCode os_error;  // Set only when result < 0.
   };
 
   struct OpenResult {
diff --git a/net/base/host_port_pair.cc b/net/base/host_port_pair.cc
index 1570bbb..1550c36 100644
--- a/net/base/host_port_pair.cc
+++ b/net/base/host_port_pair.cc
@@ -47,7 +47,10 @@
 }
 
 std::string HostPortPair::ToString() const {
-  return base::StringPrintf("%s:%u", HostForURL().c_str(), port_);
+  std::string ret(HostForURL());
+  ret += ':';
+  ret += base::IntToString(port_);
+  return ret;
 }
 
 std::string HostPortPair::HostForURL() const {
diff --git a/net/base/mime_util.cc b/net/base/mime_util.cc
index 27f3c70..c35e24c 100644
--- a/net/base/mime_util.cc
+++ b/net/base/mime_util.cc
@@ -59,7 +59,8 @@
     MPEG2_AAC_MAIN,
     MPEG2_AAC_SSR,
     MPEG4_AAC_LC,
-    MPEG4_AAC_SBRv1,
+    MPEG4_AAC_SBR_v1,
+    MPEG4_AAC_SBR_PS_v2,
     VORBIS,
     OPUS,
     H264_BASELINE,
@@ -475,7 +476,8 @@
     case MimeUtil::PCM:
     case MimeUtil::MP3:
     case MimeUtil::MPEG4_AAC_LC:
-    case MimeUtil::MPEG4_AAC_SBRv1:
+    case MimeUtil::MPEG4_AAC_SBR_v1:
+    case MimeUtil::MPEG4_AAC_SBR_PS_v2:
     case MimeUtil::H264_BASELINE:
     case MimeUtil::H264_MAIN:
     case MimeUtil::H264_HIGH:
@@ -528,16 +530,17 @@
 //   mp4a.69     - MPEG-2 extension to MPEG-1
 //   mp4a.6B     - MPEG-1 audio
 //   mp4a.40.2   - MPEG-4 AAC LC
-//   mp4a.40.5   - MPEG-4 AAC SBRv1
+//   mp4a.40.5   - MPEG-4 HE-AAC v1 (AAC LC + SBR)
+//   mp4a.40.29  - MPEG-4 HE-AAC v2 (AAC LC + SBR + PS)
 //
 //   avc1.42E0xx - H.264 Baseline
 //   avc1.4D40xx - H.264 Main
 //   avc1.6400xx - H.264 High
 static const char kMP4AudioCodecsExpression[] =
-    "mp4a.66,mp4a.67,mp4a.68,mp4a.69,mp4a.6B,mp4a.40.2,mp4a.40.5";
+    "mp4a.66,mp4a.67,mp4a.68,mp4a.69,mp4a.6B,mp4a.40.2,mp4a.40.5,mp4a.40.29";
 static const char kMP4VideoCodecsExpression[] =
     "avc1.42E00A,avc1.4D400A,avc1.64000A," \
-    "mp4a.66,mp4a.67,mp4a.68,mp4a.69,mp4a.6B,mp4a.40.2,mp4a.40.5";
+    "mp4a.66,mp4a.67,mp4a.68,mp4a.69,mp4a.6B,mp4a.40.2,mp4a.40.5,mp4a.40.29";
 
 static const MediaFormatStrict format_codec_mappings[] = {
   { "video/webm", "opus,vorbis,vp8,vp8.0,vp9,vp9.0" },
@@ -576,7 +579,8 @@
   { "mp4a.69", MimeUtil::MP3 },
   { "mp4a.6B", MimeUtil::MP3 },
   { "mp4a.40.2", MimeUtil::MPEG4_AAC_LC },
-  { "mp4a.40.5", MimeUtil::MPEG4_AAC_SBRv1 },
+  { "mp4a.40.5", MimeUtil::MPEG4_AAC_SBR_v1 },
+  { "mp4a.40.29", MimeUtil::MPEG4_AAC_SBR_PS_v2 },
   { "vorbis", MimeUtil::VORBIS },
   { "opus", MimeUtil::OPUS },
   { "vp8", MimeUtil::VP8 },
@@ -1044,7 +1048,8 @@
     case MPEG2_AAC_MAIN:
     case MPEG2_AAC_SSR:
     case MPEG4_AAC_LC:
-    case MPEG4_AAC_SBRv1:
+    case MPEG4_AAC_SBR_v1:
+    case MPEG4_AAC_SBR_PS_v2:
     case H264_BASELINE:
     case H264_MAIN:
     case H264_HIGH:
diff --git a/net/base/net_errors.h b/net/base/net_errors.h
index 29b7742..64343f1 100644
--- a/net/base/net_errors.h
+++ b/net/base/net_errors.h
@@ -10,6 +10,7 @@
 
 #include "base/basictypes.h"
 #include "base/files/file.h"
+#include "base/logging.h"
 #include "net/base/net_export.h"
 
 namespace net {
@@ -45,7 +46,7 @@
 NET_EXPORT bool IsClientCertificateError(int error);
 
 // Map system error code to Error.
-NET_EXPORT Error MapSystemError(int os_error);
+NET_EXPORT Error MapSystemError(logging::SystemErrorCode os_error);
 
 // Returns a list of all the possible net error codes (not counting OK). This
 // is intended for use with UMA histograms that are reporting the result of
diff --git a/net/base/net_errors_posix.cc b/net/base/net_errors_posix.cc
index 751e448..a8573fd 100644
--- a/net/base/net_errors_posix.cc
+++ b/net/base/net_errors_posix.cc
@@ -14,7 +14,7 @@
 
 namespace net {
 
-Error MapSystemError(int os_error) {
+Error MapSystemError(logging::SystemErrorCode os_error) {
   if (os_error != 0)
     DVLOG(2) << "Error " << os_error;
 
diff --git a/net/base/net_errors_win.cc b/net/base/net_errors_win.cc
index 7f27dee..4bc9685 100644
--- a/net/base/net_errors_win.cc
+++ b/net/base/net_errors_win.cc
@@ -11,7 +11,7 @@
 namespace net {
 
 // Map winsock and system errors to Chromium errors.
-Error MapSystemError(int os_error) {
+Error MapSystemError(logging::SystemErrorCode os_error) {
   if (os_error != 0)
     DVLOG(2) << "Error " << os_error;
 
diff --git a/net/base/net_log_event_type_list.h b/net/base/net_log_event_type_list.h
index d6e6187..ce30360 100644
--- a/net/base/net_log_event_type_list.h
+++ b/net/base/net_log_event_type_list.h
@@ -2418,3 +2418,64 @@
 //     "net_error": <error created>
 //   }
 EVENT_TYPE(SDCH_DICTIONARY_FETCH_IMPLIED_ERROR)
+
+// -----------------------------------------------------------------------------
+// Data Reduction Proxy events.
+// -----------------------------------------------------------------------------
+
+// This event is created when the data reduction proxy has been turned on or
+// off. It always contains the parameter:
+//  {
+//    "enabled": <true if the proxy is enabled>
+//  }
+//
+// If it is enabled, it contains additional parameters:
+//  {
+//    "primary_restricted": <Whether the primary proxy is restricted or not>,
+//    "fallback_restricted": <Whether the fallback proxy is restricted or not>,
+//    "primary_origin": <The primary proxy origin address>,
+//    "fallback_origin": <The fallback proxy origin address>,
+//    "ssl_origin": <The SSL proxy origin address>,
+//  }
+EVENT_TYPE(DATA_REDUCTION_PROXY_ENABLED)
+
+// The start/end of a canary request is sent to the data reduction proxy.
+//
+// The BEGIN phase contains the following parameters:
+//  {
+//    "url": <The URL of the canary endpoint>,
+//  }
+//
+// The END phase contains the following parameters:
+//  {
+//    "net_error": <The net_error of the completion of the canary request>,
+//  }
+EVENT_TYPE(DATA_REDUCTION_PROXY_CANARY_REQUEST)
+
+// This event is created when a response to the canary request has been
+// received with the following parameters:
+//  {
+//    "headers": <The list of header:value pairs>,
+//  }
+EVENT_TYPE(DATA_REDUCTION_PROXY_CANARY_RESPONSE_RECEIVED)
+
+// This event is created when a bypass event takes place with the following
+// parameters:
+//  {
+//    "action": <For DRP proxy sourced bypasses in the chrome-proxy header,
+//               the bypass type>,
+//    "bypass_type": <For non-DRP proxy sourced bypasses, the bypass type>,
+//    "url": <The origin URL of the remote endpoint which resulted in the
+//            bypass>,
+//    "bypass_duration_seconds": <The length of time to be in a bypass state>,
+//  }
+EVENT_TYPE(DATA_REDUCTION_PROXY_BYPASS_REQUESTED)
+
+// This event is created when the data reduction proxy configuration changes
+// (i.e. a switch between primary and fallback) with the following parameters:
+//  {
+//    "proxy_server": <The URL of the proxy server no longer being used>,
+//    "net_error": <The net_error encountered when using the proxy server; this
+//                  can be 0 if the proxy server is explicitly skipped>,
+//  }
+EVENT_TYPE(DATA_REDUCTION_PROXY_FALLBACK)
diff --git a/net/base/net_log_source_type_list.h b/net/base/net_log_source_type_list.h
index dc553a4..dbad470 100644
--- a/net/base/net_log_source_type_list.h
+++ b/net/base/net_log_source_type_list.h
@@ -27,3 +27,4 @@
 SOURCE_TYPE(PROXY_CLIENT_SOCKET)
 SOURCE_TYPE(IPV6_REACHABILITY_CHECK)
 SOURCE_TYPE(ASYNC_REVALIDATION)
+SOURCE_TYPE(DATA_REDUCTION_PROXY)
diff --git a/net/base/network_change_notifier.cc b/net/base/network_change_notifier.cc
index afd6b23..b797864 100644
--- a/net/base/network_change_notifier.cc
+++ b/net/base/network_change_notifier.cc
@@ -305,7 +305,8 @@
     if (bytes_read > 10000 &&
         request_duration > base::TimeDelta::FromMilliseconds(1) &&
         request.creation_time() > last_connection_change_) {
-      int32 kbps = bytes_read * 8 / request_duration.InMilliseconds();
+      int32 kbps = static_cast<int32>(
+          bytes_read * 8 / request_duration.InMilliseconds());
       if (kbps > peak_kbps_since_last_connection_change_)
         peak_kbps_since_last_connection_change_ = kbps;
     }
@@ -784,6 +785,81 @@
 }
 
 // static
+double NetworkChangeNotifier::GetMaxBandwidthForConnectionSubtype(
+    ConnectionSubtype subtype) {
+  switch (subtype) {
+    case SUBTYPE_GSM:
+      return 0.01;
+    case SUBTYPE_IDEN:
+      return 0.064;
+    case SUBTYPE_CDMA:
+      return 0.115;
+    case SUBTYPE_1XRTT:
+      return 0.153;
+    case SUBTYPE_GPRS:
+      return 0.237;
+    case SUBTYPE_EDGE:
+      return 0.384;
+    case SUBTYPE_UMTS:
+      return 2.0;
+    case SUBTYPE_EVDO_REV_0:
+      return 2.46;
+    case SUBTYPE_EVDO_REV_A:
+      return 3.1;
+    case SUBTYPE_HSPA:
+      return 3.6;
+    case SUBTYPE_EVDO_REV_B:
+      return 14.7;
+    case SUBTYPE_HSDPA:
+      return 14.3;
+    case SUBTYPE_HSUPA:
+      return 14.4;
+    case SUBTYPE_EHRPD:
+      return 21.0;
+    case SUBTYPE_HSPAP:
+      return 42.0;
+    case SUBTYPE_LTE:
+      return 100.0;
+    case SUBTYPE_LTE_ADVANCED:
+      return 100.0;
+    case SUBTYPE_BLUETOOTH_1_2:
+      return 1.0;
+    case SUBTYPE_BLUETOOTH_2_1:
+      return 3.0;
+    case SUBTYPE_BLUETOOTH_3_0:
+      return 24.0;
+    case SUBTYPE_BLUETOOTH_4_0:
+      return 1.0;
+    case SUBTYPE_ETHERNET:
+      return 10.0;
+    case SUBTYPE_FAST_ETHERNET:
+      return 100.0;
+    case SUBTYPE_GIGABIT_ETHERNET:
+      return 1000.0;
+    case SUBTYPE_10_GIGABIT_ETHERNET:
+      return 10000.0;
+    case SUBTYPE_WIFI_B:
+      return 11.0;
+    case SUBTYPE_WIFI_G:
+      return 54.0;
+    case SUBTYPE_WIFI_N:
+      return 600.0;
+    case SUBTYPE_WIFI_AC:
+      return 1300.0;
+    case SUBTYPE_WIFI_AD:
+      return 7000.0;
+    case SUBTYPE_UNKNOWN:
+      return std::numeric_limits<double>::infinity();
+    case SUBTYPE_NONE:
+      return 0.0;
+    case SUBTYPE_OTHER:
+      return std::numeric_limits<double>::infinity();
+  }
+  NOTREACHED();
+  return std::numeric_limits<double>::infinity();
+}
+
+// static
 void NetworkChangeNotifier::NotifyObserversOfIPAddressChange() {
   if (g_network_change_notifier &&
       !g_network_change_notifier->test_notifications_only_) {
diff --git a/net/base/network_change_notifier.h b/net/base/network_change_notifier.h
index bdd2d18..285c52b 100644
--- a/net/base/network_change_notifier.h
+++ b/net/base/network_change_notifier.h
@@ -34,6 +34,9 @@
  public:
   // This is a superset of the connection types in the NetInfo v3 specification:
   // http://w3c.github.io/netinfo/.
+  //
+  // A Java counterpart will be generated for this enum.
+  // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.net
   enum ConnectionType {
     CONNECTION_UNKNOWN = 0,  // A connection exists, but its type is unknown.
                              // Also used as a default value.
@@ -47,6 +50,49 @@
     CONNECTION_LAST = CONNECTION_BLUETOOTH
   };
 
+  // This is the NetInfo v3 set of connection technologies as seen in
+  // http://w3c.github.io/netinfo/. This enum is copied in
+  // NetworkChangeNotifier.java so be sure to change both at once.
+  //
+  // A Java counterpart will be generated for this enum.
+  // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.net
+  enum ConnectionSubtype {
+    SUBTYPE_GSM = 0,
+    SUBTYPE_IDEN,
+    SUBTYPE_CDMA,
+    SUBTYPE_1XRTT,
+    SUBTYPE_GPRS,
+    SUBTYPE_EDGE,
+    SUBTYPE_UMTS,
+    SUBTYPE_EVDO_REV_0,
+    SUBTYPE_EVDO_REV_A,
+    SUBTYPE_HSPA,
+    SUBTYPE_EVDO_REV_B,
+    SUBTYPE_HSDPA,
+    SUBTYPE_HSUPA,
+    SUBTYPE_EHRPD,
+    SUBTYPE_HSPAP,
+    SUBTYPE_LTE,
+    SUBTYPE_LTE_ADVANCED,
+    SUBTYPE_BLUETOOTH_1_2,
+    SUBTYPE_BLUETOOTH_2_1,
+    SUBTYPE_BLUETOOTH_3_0,
+    SUBTYPE_BLUETOOTH_4_0,
+    SUBTYPE_ETHERNET,
+    SUBTYPE_FAST_ETHERNET,
+    SUBTYPE_GIGABIT_ETHERNET,
+    SUBTYPE_10_GIGABIT_ETHERNET,
+    SUBTYPE_WIFI_B,
+    SUBTYPE_WIFI_G,
+    SUBTYPE_WIFI_N,
+    SUBTYPE_WIFI_AC,
+    SUBTYPE_WIFI_AD,
+    SUBTYPE_UNKNOWN,
+    SUBTYPE_NONE,
+    SUBTYPE_OTHER,
+    SUBTYPE_LAST = SUBTYPE_OTHER
+  };
+
   class NET_EXPORT IPAddressObserver {
    public:
     // Will be called when the IP address of the primary interface changes.
@@ -162,7 +208,9 @@
   // Returns a theoretical upper limit on download bandwidth, potentially based
   // on underlying connection type, signal strength, or some other signal. The
   // default mapping of connection type to maximum bandwidth is provided in the
-  // NetInfo spec: http://w3c.github.io/netinfo/.
+  // NetInfo spec: http://w3c.github.io/netinfo/. Host-specific application
+  // permissions may be required, please see host-specific declaration for more
+  // information.
   static double GetMaxBandwidth();
 
   // Retrieve the last read DnsConfig. This could be expensive if the system has
@@ -306,6 +354,11 @@
   // cheap as it is called often.
   virtual double GetCurrentMaxBandwidth() const;
 
+  // Returns a theoretical upper limit on download bandwidth given a connection
+  // subtype. The mapping of connection type to maximum bandwidth is provided in
+  // the NetInfo spec: http://w3c.github.io/netinfo/.
+  static double GetMaxBandwidthForConnectionSubtype(ConnectionSubtype subtype);
+
   // Broadcasts a notification to all registered observers.  Note that this
   // happens asynchronously, even for observers on the current thread, even in
   // tests.
diff --git a/net/base/upload_bytes_element_reader.cc b/net/base/upload_bytes_element_reader.cc
index 6927d8e..44f61f4 100644
--- a/net/base/upload_bytes_element_reader.cc
+++ b/net/base/upload_bytes_element_reader.cc
@@ -48,8 +48,8 @@
                                    const CompletionCallback& callback) {
   DCHECK_LT(0, buf_length);
 
-  const size_t num_bytes_to_read =
-      std::min(BytesRemaining(), static_cast<uint64>(buf_length));
+  const int num_bytes_to_read = static_cast<int>(
+      std::min(BytesRemaining(), static_cast<uint64>(buf_length)));
 
   // Check if we have anything to copy first, because we are getting
   // the address of an element in |bytes_| and that will throw an
diff --git a/net/base/upload_file_element_reader.cc b/net/base/upload_file_element_reader.cc
index 4682466..9be9117 100644
--- a/net/base/upload_file_element_reader.cc
+++ b/net/base/upload_file_element_reader.cc
@@ -78,8 +78,8 @@
                                   const CompletionCallback& callback) {
   DCHECK(!callback.is_null());
 
-  uint64 num_bytes_to_read =
-      std::min(BytesRemaining(), static_cast<uint64>(buf_length));
+  int num_bytes_to_read = static_cast<int>(
+      std::min(BytesRemaining(), static_cast<uint64>(buf_length)));
   if (num_bytes_to_read == 0)
     return 0;
 
@@ -140,7 +140,7 @@
   if (result < 0) {
     DLOG(WARNING) << "Failed to seek \"" << path_.value()
                   << "\" to offset: " << range_offset_ << " (" << result << ")";
-    callback.Run(result);
+    callback.Run(static_cast<int>(result));
     return;
   }
 
diff --git a/net/cert/cert_policy_enforcer.cc b/net/cert/cert_policy_enforcer.cc
new file mode 100644
index 0000000..c9ce7cc
--- /dev/null
+++ b/net/cert/cert_policy_enforcer.cc
@@ -0,0 +1,165 @@
+// Copyright 2014 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.
+
+#include "net/cert/cert_policy_enforcer.h"
+
+#include <algorithm>
+
+#include "base/build_time.h"
+#include "base/metrics/field_trial.h"
+#include "base/metrics/histogram.h"
+#include "base/numerics/safe_conversions.h"
+#include "base/strings/string_number_conversions.h"
+#include "net/cert/ct_ev_whitelist.h"
+#include "net/cert/ct_verify_result.h"
+#include "net/cert/signed_certificate_timestamp.h"
+#include "net/cert/x509_certificate.h"
+
+namespace net {
+
+namespace {
+
+bool IsEmbeddedSCT(const scoped_refptr<ct::SignedCertificateTimestamp>& sct) {
+  return sct->origin == ct::SignedCertificateTimestamp::SCT_EMBEDDED;
+}
+
+// Returns true if the current build is recent enough to ensure that
+// built-in security information (e.g. CT Logs) is fresh enough.
+// TODO(eranm): Move to base or net/base
+bool IsBuildTimely() {
+#if defined(DONT_EMBED_BUILD_METADATA) && !defined(OFFICIAL_BUILD)
+  return true;
+#else
+  const base::Time build_time = base::GetBuildTime();
+  // We consider built-in information to be timely for 10 weeks.
+  return (base::Time::Now() - build_time).InDays() < 70 /* 10 weeks */;
+#endif
+}
+
+uint32_t ApproximateMonthDifference(const base::Time& start,
+                                    const base::Time& end) {
+  base::Time::Exploded exploded_start;
+  base::Time::Exploded exploded_expiry;
+  start.UTCExplode(&exploded_start);
+  end.UTCExplode(&exploded_expiry);
+  uint32_t month_diff = (exploded_expiry.year - exploded_start.year) * 12 +
+                        (exploded_expiry.month - exploded_start.month);
+
+  // Add any remainder as a full month.
+  if (exploded_expiry.day_of_month > exploded_start.day_of_month)
+    ++month_diff;
+
+  return month_diff;
+}
+
+enum CTComplianceStatus {
+  CT_NOT_COMPLIANT = 0,
+  CT_IN_WHITELIST = 1,
+  CT_ENOUGH_SCTS = 2,
+  CT_COMPLIANCE_MAX,
+};
+
+void LogCTComplianceStatusToUMA(CTComplianceStatus status) {
+  UMA_HISTOGRAM_ENUMERATION("Net.SSL_EVCertificateCTCompliance", status,
+                            CT_COMPLIANCE_MAX);
+}
+
+}  // namespace
+
+CertPolicyEnforcer::CertPolicyEnforcer(size_t num_ct_logs,
+                                       bool require_ct_for_ev)
+    : num_ct_logs_(num_ct_logs), require_ct_for_ev_(require_ct_for_ev) {
+}
+
+CertPolicyEnforcer::~CertPolicyEnforcer() {
+}
+
+bool CertPolicyEnforcer::DoesConformToCTEVPolicy(
+    X509Certificate* cert,
+    const ct::EVCertsWhitelist* ev_whitelist,
+    const ct::CTVerifyResult& ct_result) {
+  if (!require_ct_for_ev_)
+    return true;
+
+  if (!IsBuildTimely())
+    return false;
+
+  if (IsCertificateInWhitelist(cert, ev_whitelist)) {
+    LogCTComplianceStatusToUMA(CT_IN_WHITELIST);
+    return true;
+  }
+
+  if (HasRequiredNumberOfSCTs(cert, ct_result)) {
+    LogCTComplianceStatusToUMA(CT_ENOUGH_SCTS);
+    return true;
+  }
+
+  LogCTComplianceStatusToUMA(CT_NOT_COMPLIANT);
+  return false;
+}
+
+bool CertPolicyEnforcer::IsCertificateInWhitelist(
+    X509Certificate* cert,
+    const ct::EVCertsWhitelist* ev_whitelist) {
+  bool cert_in_ev_whitelist = false;
+  if (ev_whitelist && ev_whitelist->IsValid()) {
+    const SHA256HashValue fingerprint(
+        X509Certificate::CalculateFingerprint256(cert->os_cert_handle()));
+
+    std::string truncated_fp =
+        std::string(reinterpret_cast<const char*>(fingerprint.data), 8);
+    cert_in_ev_whitelist = ev_whitelist->ContainsCertificateHash(truncated_fp);
+
+    UMA_HISTOGRAM_BOOLEAN("Net.SSL_EVCertificateInWhitelist",
+                          cert_in_ev_whitelist);
+  }
+  return cert_in_ev_whitelist;
+}
+
+bool CertPolicyEnforcer::HasRequiredNumberOfSCTs(
+    X509Certificate* cert,
+    const ct::CTVerifyResult& ct_result) {
+  // TODO(eranm): Count the number of *independent* SCTs once the information
+  // about log operators is available, crbug.com/425174
+  size_t num_valid_scts = ct_result.verified_scts.size();
+  size_t num_embedded_scts =
+      std::count_if(ct_result.verified_scts.begin(),
+                    ct_result.verified_scts.end(), IsEmbeddedSCT);
+
+  size_t num_non_embedded_scts = num_valid_scts - num_embedded_scts;
+  // If at least two valid SCTs were delivered by means other than embedding
+  // (i.e. in a TLS extension or OCSP), then the certificate conforms to bullet
+  // number 3 of the "Qualifying Certificate" section of the CT/EV policy.
+  if (num_non_embedded_scts >= 2)
+    return true;
+
+  if (cert->valid_start().is_null() || cert->valid_expiry().is_null() ||
+      cert->valid_start().is_max() || cert->valid_expiry().is_max()) {
+    // Will not be able to calculate the certificate's validity period.
+    return false;
+  }
+
+  uint32_t expiry_in_months_approx =
+      ApproximateMonthDifference(cert->valid_start(), cert->valid_expiry());
+
+  // For embedded SCTs, if the certificate has the number of SCTs specified in
+  // table 1 of the "Qualifying Certificate" section of the CT/EV policy, then
+  // it qualifies.
+  size_t num_required_embedded_scts;
+  if (expiry_in_months_approx > 39) {
+    num_required_embedded_scts = 5;
+  } else if (expiry_in_months_approx > 27) {
+    num_required_embedded_scts = 4;
+  } else if (expiry_in_months_approx >= 15) {
+    num_required_embedded_scts = 3;
+  } else {
+    num_required_embedded_scts = 2;
+  }
+
+  size_t min_acceptable_logs = std::max(num_ct_logs_, static_cast<size_t>(2u));
+  return num_embedded_scts >=
+         std::min(num_required_embedded_scts, min_acceptable_logs);
+}
+
+}  // namespace net
diff --git a/net/cert/cert_policy_enforcer.h b/net/cert/cert_policy_enforcer.h
new file mode 100644
index 0000000..68039b3
--- /dev/null
+++ b/net/cert/cert_policy_enforcer.h
@@ -0,0 +1,56 @@
+// Copyright 2014 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.
+#ifndef NET_CERT_CERT_POLICY_ENFORCER_H
+#define NET_CERT_CERT_POLICY_ENFORCER_H
+
+#include <stddef.h>
+
+#include "net/base/net_export.h"
+
+namespace net {
+
+namespace ct {
+
+struct CTVerifyResult;
+class EVCertsWhitelist;
+
+}  // namespace ct
+
+class X509Certificate;
+
+// Class for checking that a given certificate conforms to security-related
+// policies.
+class NET_EXPORT CertPolicyEnforcer {
+ public:
+  // Set the parameters for this policy enforcer:
+  // |num_ct_logs| is the number of Certificate Transparency log currently
+  // known to Chrome.
+  // |require_ct_for_ev| indicates whether Certificate Transparency presence
+  // is required for EV certificates.
+  CertPolicyEnforcer(size_t num_ct_logs, bool require_ct_for_ev);
+  virtual ~CertPolicyEnforcer();
+
+  // Returns true if the collection of SCTs for the given certificate
+  // conforms with the CT/EV policy.
+  // |cert| is the certificate for which the SCTs apply.
+  // |ct_result| must contain the result of verifying any SCTs associated with
+  // |cert| prior to invoking this method.
+  bool DoesConformToCTEVPolicy(X509Certificate* cert,
+                               const ct::EVCertsWhitelist* ev_whitelist,
+                               const ct::CTVerifyResult& ct_result);
+
+ private:
+  bool IsCertificateInWhitelist(X509Certificate* cert,
+                                const ct::EVCertsWhitelist* ev_whitelist);
+
+  bool HasRequiredNumberOfSCTs(X509Certificate* cert,
+                               const ct::CTVerifyResult& ct_result);
+
+  size_t num_ct_logs_;
+  bool require_ct_for_ev_;
+};
+
+}  // namespace net
+
+#endif  // NET_CERT_CERT_POLICY_ENFORCER_H
diff --git a/net/cert/cert_policy_enforcer_unittest.cc b/net/cert/cert_policy_enforcer_unittest.cc
new file mode 100644
index 0000000..45a2e6a
--- /dev/null
+++ b/net/cert/cert_policy_enforcer_unittest.cc
@@ -0,0 +1,212 @@
+// Copyright 2014 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.
+
+#include "net/cert/cert_policy_enforcer.h"
+
+#include <string>
+
+#include "base/memory/scoped_ptr.h"
+#include "net/base/test_data_directory.h"
+#include "net/cert/ct_ev_whitelist.h"
+#include "net/cert/ct_verify_result.h"
+#include "net/cert/x509_certificate.h"
+#include "net/test/cert_test_util.h"
+#include "net/test/ct_test_util.h"
+#include "testing/gmock/include/gmock/gmock.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace net {
+
+namespace {
+
+class DummyEVCertsWhitelist : public ct::EVCertsWhitelist {
+ public:
+  DummyEVCertsWhitelist(bool is_valid_response, bool contains_hash_response)
+      : canned_is_valid_(is_valid_response),
+        canned_contains_response_(contains_hash_response) {}
+
+  bool IsValid() const override { return canned_is_valid_; }
+
+  bool ContainsCertificateHash(
+      const std::string& certificate_hash) const override {
+    return canned_contains_response_;
+  }
+
+ protected:
+  ~DummyEVCertsWhitelist() override {}
+
+ private:
+  bool canned_is_valid_;
+  bool canned_contains_response_;
+};
+
+class CertPolicyEnforcerTest : public ::testing::Test {
+ public:
+  virtual void SetUp() override {
+    policy_enforcer_.reset(new CertPolicyEnforcer(5, true));
+
+    std::string der_test_cert(ct::GetDerEncodedX509Cert());
+    chain_ = X509Certificate::CreateFromBytes(der_test_cert.data(),
+                                              der_test_cert.size());
+    ASSERT_TRUE(chain_.get());
+  }
+
+  void FillResultWithSCTsOfOrigin(
+      ct::SignedCertificateTimestamp::Origin desired_origin,
+      int num_scts,
+      ct::CTVerifyResult* result) {
+    for (int i = 0; i < num_scts; ++i) {
+      scoped_refptr<ct::SignedCertificateTimestamp> sct(
+          new ct::SignedCertificateTimestamp());
+      sct->origin = desired_origin;
+      result->verified_scts.push_back(sct);
+    }
+  }
+
+ protected:
+  scoped_ptr<CertPolicyEnforcer> policy_enforcer_;
+  scoped_refptr<X509Certificate> chain_;
+};
+
+TEST_F(CertPolicyEnforcerTest, ConformsToCTEVPolicyWithNonEmbeddedSCTs) {
+  ct::CTVerifyResult result;
+  FillResultWithSCTsOfOrigin(
+      ct::SignedCertificateTimestamp::SCT_FROM_TLS_EXTENSION, 2, &result);
+
+  EXPECT_TRUE(
+      policy_enforcer_->DoesConformToCTEVPolicy(chain_.get(), nullptr, result));
+}
+
+TEST_F(CertPolicyEnforcerTest, ConformsToCTEVPolicyWithEmbeddedSCTs) {
+  // This chain_ is valid for 10 years - over 121 months - so requires 5 SCTs.
+  ct::CTVerifyResult result;
+  FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 5,
+                             &result);
+
+  EXPECT_TRUE(
+      policy_enforcer_->DoesConformToCTEVPolicy(chain_.get(), nullptr, result));
+}
+
+TEST_F(CertPolicyEnforcerTest, DoesNotConformToCTEVPolicyNotEnoughSCTs) {
+  scoped_refptr<ct::EVCertsWhitelist> non_including_whitelist(
+      new DummyEVCertsWhitelist(true, false));
+  // This chain_ is valid for 10 years - over 121 months - so requires 5 SCTs.
+  // However, as there are only two logs, two SCTs will be required - supply one
+  // to guarantee the test fails.
+  ct::CTVerifyResult result;
+  FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 1,
+                             &result);
+
+  EXPECT_FALSE(policy_enforcer_->DoesConformToCTEVPolicy(
+      chain_.get(), non_including_whitelist.get(), result));
+
+  // ... but should be OK if whitelisted.
+  scoped_refptr<ct::EVCertsWhitelist> whitelist(
+      new DummyEVCertsWhitelist(true, true));
+  EXPECT_TRUE(policy_enforcer_->DoesConformToCTEVPolicy(
+      chain_.get(), whitelist.get(), result));
+}
+
+TEST_F(CertPolicyEnforcerTest, DoesNotEnforceCTPolicyIfNotRequired) {
+  scoped_ptr<CertPolicyEnforcer> enforcer(new CertPolicyEnforcer(3, false));
+
+  ct::CTVerifyResult result;
+  FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 1,
+                             &result);
+  // Expect true despite the chain not having enough SCTs as the policy
+  // is not enforced.
+  EXPECT_TRUE(enforcer->DoesConformToCTEVPolicy(chain_.get(), nullptr, result));
+}
+
+TEST_F(CertPolicyEnforcerTest, DoesNotConformToPolicyInvalidDates) {
+  scoped_refptr<X509Certificate> no_valid_dates_cert(new X509Certificate(
+      "subject", "issuer", base::Time(), base::Time::Now()));
+  ct::CTVerifyResult result;
+  FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 5,
+                             &result);
+  EXPECT_FALSE(policy_enforcer_->DoesConformToCTEVPolicy(
+      no_valid_dates_cert.get(), nullptr, result));
+  // ... but should be OK if whitelisted.
+  scoped_refptr<ct::EVCertsWhitelist> whitelist(
+      new DummyEVCertsWhitelist(true, true));
+  EXPECT_TRUE(policy_enforcer_->DoesConformToCTEVPolicy(
+      chain_.get(), whitelist.get(), result));
+}
+
+TEST_F(CertPolicyEnforcerTest,
+       ConformsToPolicyExactNumberOfSCTsForValidityPeriod) {
+  // Test multiple validity periods: Over 27 months, Over 15 months (but less
+  // than 27 months),
+  // Less than 15 months.
+  const size_t validity_period[] = {12, 19, 30, 50};
+  const size_t needed_scts[] = {2, 3, 4, 5};
+
+  for (int i = 0; i < 3; ++i) {
+    size_t curr_validity = validity_period[i];
+    scoped_refptr<X509Certificate> cert(new X509Certificate(
+        "subject", "issuer", base::Time::Now(),
+        base::Time::Now() + base::TimeDelta::FromDays(31 * curr_validity)));
+    size_t curr_required_scts = needed_scts[i];
+    ct::CTVerifyResult result;
+    for (size_t j = 0; j < curr_required_scts - 1; ++j) {
+      FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED,
+                                 1, &result);
+      EXPECT_FALSE(policy_enforcer_->DoesConformToCTEVPolicy(cert.get(),
+                                                             nullptr, result))
+          << " for: " << curr_validity << " and " << curr_required_scts
+          << " scts=" << result.verified_scts.size() << " j=" << j;
+    }
+    FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 1,
+                               &result);
+    EXPECT_TRUE(
+        policy_enforcer_->DoesConformToCTEVPolicy(cert.get(), nullptr, result));
+  }
+}
+
+TEST_F(CertPolicyEnforcerTest,
+       ConformsToPolicyButDoesNotRequireMoreThanNumLogs) {
+  scoped_ptr<CertPolicyEnforcer> enforcer(new CertPolicyEnforcer(2, true));
+
+  ct::CTVerifyResult result;
+  FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 2,
+                             &result);
+  // Expect true despite the chain not having enough SCTs according to the
+  // policy
+  // since we only have 2 logs.
+  EXPECT_TRUE(enforcer->DoesConformToCTEVPolicy(chain_.get(), nullptr, result));
+}
+
+TEST_F(CertPolicyEnforcerTest, ConformsToPolicyByEVWhitelistPresence) {
+  scoped_refptr<ct::EVCertsWhitelist> whitelist(
+      new DummyEVCertsWhitelist(true, true));
+
+  ct::CTVerifyResult result;
+  FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 1,
+                             &result);
+  EXPECT_TRUE(policy_enforcer_->DoesConformToCTEVPolicy(
+      chain_.get(), whitelist.get(), result));
+}
+
+TEST_F(CertPolicyEnforcerTest, IgnoresInvalidEVWhitelist) {
+  scoped_refptr<ct::EVCertsWhitelist> whitelist(
+      new DummyEVCertsWhitelist(false, true));
+
+  ct::CTVerifyResult result;
+  FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 1,
+                             &result);
+  EXPECT_FALSE(policy_enforcer_->DoesConformToCTEVPolicy(
+      chain_.get(), whitelist.get(), result));
+}
+
+TEST_F(CertPolicyEnforcerTest, IgnoresNullEVWhitelist) {
+  ct::CTVerifyResult result;
+  FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 1,
+                             &result);
+  EXPECT_FALSE(
+      policy_enforcer_->DoesConformToCTEVPolicy(chain_.get(), nullptr, result));
+}
+
+}  // namespace
+
+}  // namespace net
diff --git a/net/cert/crl_set_storage.cc b/net/cert/crl_set_storage.cc
index 1b11d78..2da4f92 100644
--- a/net/cert/crl_set_storage.cc
+++ b/net/cert/crl_set_storage.cc
@@ -8,6 +8,7 @@
 #include "base/debug/trace_event.h"
 #include "base/format_macros.h"
 #include "base/json/json_reader.h"
+#include "base/numerics/safe_conversions.h"
 #include "base/strings/stringprintf.h"
 #include "base/values.h"
 #include "crypto/sha2.h"
@@ -517,10 +518,12 @@
   }
 
   std::string ret;
-  char* out = WriteInto(&ret, len + 1 /* to include final NUL */);
+  uint8_t* out = reinterpret_cast<uint8_t*>(
+      WriteInto(&ret, len + 1 /* to include final NUL */));
   size_t off = 0;
-  out[off++] = header.size();
-  out[off++] = header.size() >> 8;
+  CHECK(base::IsValueInRangeForNumericType<uint16>(header.size()));
+  out[off++] = static_cast<uint8_t>(header.size());
+  out[off++] = static_cast<uint8_t>(header.size() >> 8);
   memcpy(out + off, header.data(), header.size());
   off += header.size();
 
@@ -534,7 +537,8 @@
 
     for (std::vector<std::string>::const_iterator j = i->second.begin();
          j != i->second.end(); ++j) {
-      out[off++] = j->size();
+      CHECK(base::IsValueInRangeForNumericType<uint8_t>(j->size()));
+      out[off++] = static_cast<uint8_t>(j->size());
       memcpy(out + off, j->data(), j->size());
       off += j->size();
     }
diff --git a/net/cert/ct_log_response_parser.cc b/net/cert/ct_log_response_parser.cc
index bd59a9e..f7cc25f 100644
--- a/net/cert/ct_log_response_parser.cc
+++ b/net/cert/ct_log_response_parser.cc
@@ -127,7 +127,8 @@
   signed_tree_head->tree_size = parsed_sth.tree_size;
   signed_tree_head->timestamp =
       base::Time::UnixEpoch() +
-      base::TimeDelta::FromMilliseconds(parsed_sth.timestamp);
+      base::TimeDelta::FromMilliseconds(
+          static_cast<int64>(parsed_sth.timestamp));
   signed_tree_head->signature = parsed_sth.signature;
   memcpy(signed_tree_head->sha256_root_hash,
          parsed_sth.sha256_root_hash.c_str(),
diff --git a/net/cert/x509_certificate.cc b/net/cert/x509_certificate.cc
index 880d487..02e0234 100644
--- a/net/cert/x509_certificate.cc
+++ b/net/cert/x509_certificate.cc
@@ -629,27 +629,16 @@
     if (presented_domain != reference_domain)
       continue;
 
-    base::StringPiece pattern_begin, pattern_end;
-    SplitOnChar(presented_host, '*', &pattern_begin, &pattern_end);
-
-    if (pattern_end.empty()) {  // No '*' in the presented_host
+    if (presented_host != "*") {
       if (presented_host == reference_host)
         return true;
       continue;
     }
-    pattern_end.remove_prefix(1);  // move past the *
 
     if (!allow_wildcards)
       continue;
 
-    // * must not match a substring of an IDN A label; just a whole fragment.
-    if (reference_host.starts_with("xn--") &&
-        !(pattern_begin.empty() && pattern_end.empty()))
-      continue;
-
-    if (reference_host.starts_with(pattern_begin) &&
-        reference_host.ends_with(pattern_end))
-      return true;
+    return true;
   }
   return false;
 }
diff --git a/net/cert/x509_certificate_unittest.cc b/net/cert/x509_certificate_unittest.cc
index c64da2c..f5e49f8 100644
--- a/net/cert/x509_certificate_unittest.cc
+++ b/net/cert/x509_certificate_unittest.cc
@@ -971,10 +971,10 @@
     { false, "w.bar.foo.com", "w*.bar.foo.com" },
     { false, "www.bar.foo.com", "ww*ww.bar.foo.com" },
     { false, "wwww.bar.foo.com", "ww*ww.bar.foo.com" },
-    { true, "wwww.bar.foo.com", "w*w.bar.foo.com" },
+    { false, "wwww.bar.foo.com", "w*w.bar.foo.com" },
     { false, "wwww.bar.foo.com", "w*w.bar.foo.c0m" },
-    { true, "WALLY.bar.foo.com", "wa*.bar.foo.com" },
-    { true, "wally.bar.foo.com", "*Ly.bar.foo.com" },
+    { false, "WALLY.bar.foo.com", "wa*.bar.foo.com" },
+    { false, "wally.bar.foo.com", "*Ly.bar.foo.com" },
     { true, "ww%57.foo.com", "", "www.foo.com" },
     { true, "www&.foo.com", "www%26.foo.com" },
     // Common name must not be used if subject alternative name was provided.
@@ -998,12 +998,14 @@
     { true, "foo.example.com", "*.example.com" },
     { false, "bar.foo.example.com", "*.example.com" },
     { false, "example.com", "*.example.com" },
-    //   (e.g., baz*.example.net and *baz.example.net and b*z.example.net would
-    //   be taken to match baz1.example.net and foobaz.example.net and
-    //   buzz.example.net, respectively
-    { true, "baz1.example.net", "baz*.example.net" },
-    { true, "foobaz.example.net", "*baz.example.net" },
-    { true, "buzz.example.net", "b*z.example.net" },
+    //   Partial wildcards are disallowed, though RFC 2818 rules allow them.
+    //   That is, forms such as baz*.example.net, *baz.example.net, and
+    //   b*z.example.net should NOT match domains. Instead, the wildcard must
+    //   always be the left-most label, and only a single label.
+    { false, "baz1.example.net", "baz*.example.net" },
+    { false, "foobaz.example.net", "*baz.example.net" },
+    { false, "buzz.example.net", "b*z.example.net" },
+    { false, "www.test.example.net", "www.*.example.net" },
     // Wildcards should not be valid for public registry controlled domains,
     // and unknown/unrecognized domains, at least three domain components must
     // be present.
diff --git a/net/cert/x509_certificate_win.cc b/net/cert/x509_certificate_win.cc
index 0bed756..c965f69 100644
--- a/net/cert/x509_certificate_win.cc
+++ b/net/cert/x509_certificate_win.cc
@@ -37,14 +37,14 @@
 
 void ExplodedTimeToSystemTime(const base::Time::Exploded& exploded,
                               SYSTEMTIME* system_time) {
-  system_time->wYear = exploded.year;
-  system_time->wMonth = exploded.month;
-  system_time->wDayOfWeek = exploded.day_of_week;
-  system_time->wDay = exploded.day_of_month;
-  system_time->wHour = exploded.hour;
-  system_time->wMinute = exploded.minute;
-  system_time->wSecond = exploded.second;
-  system_time->wMilliseconds = exploded.millisecond;
+  system_time->wYear = static_cast<WORD>(exploded.year);
+  system_time->wMonth = static_cast<WORD>(exploded.month);
+  system_time->wDayOfWeek = static_cast<WORD>(exploded.day_of_week);
+  system_time->wDay = static_cast<WORD>(exploded.day_of_month);
+  system_time->wHour = static_cast<WORD>(exploded.hour);
+  system_time->wMinute = static_cast<WORD>(exploded.minute);
+  system_time->wSecond = static_cast<WORD>(exploded.second);
+  system_time->wMilliseconds = static_cast<WORD>(exploded.millisecond);
 }
 
 //-----------------------------------------------------------------------------
diff --git a/net/cookies/cookie_monster.cc b/net/cookies/cookie_monster.cc
index cd9c9b8..e879a8f 100644
--- a/net/cookies/cookie_monster.cc
+++ b/net/cookies/cookie_monster.cc
@@ -1162,6 +1162,7 @@
   std::sort(cookie_ptrs.begin(), cookie_ptrs.end(), CookieSorter);
 
   CookieList cookies;
+  cookies.reserve(cookie_ptrs.size());
   for (std::vector<CanonicalCookie*>::const_iterator it = cookie_ptrs.begin();
        it != cookie_ptrs.end(); it++)
     cookies.push_back(**it);
diff --git a/net/disk_cache/blockfile/addr.h b/net/disk_cache/blockfile/addr.h
index 99d2c93..a5e4367 100644
--- a/net/disk_cache/blockfile/addr.h
+++ b/net/disk_cache/blockfile/addr.h
@@ -25,10 +25,10 @@
 };
 
 const int kMaxBlockSize = 4096 * 4;
-const int kMaxBlockFile = 255;
+const int16 kMaxBlockFile = 255;
 const int kMaxNumBlocks = 4;
-const int kFirstAdditionalBlockFile = 4;
-const int kFirstAdditionalBlockFileV3 = 7;
+const int16 kFirstAdditionalBlockFile = 4;
+const size_t kFirstAdditionalBlockFileV3 = 7;
 
 // Defines a storage address for a cache record
 //
diff --git a/net/disk_cache/blockfile/backend_impl.cc b/net/disk_cache/blockfile/backend_impl.cc
index 20995b7..1998d33 100644
--- a/net/disk_cache/blockfile/backend_impl.cc
+++ b/net/disk_cache/blockfile/backend_impl.cc
@@ -484,8 +484,10 @@
   if (!cache_entry) {
     CACHE_UMA(AGE_MS, "OpenTime.Miss", 0, start);
     CACHE_UMA(COUNTS_10000, "AllOpenBySize.Miss", 0, current_size);
-    CACHE_UMA(HOURS, "AllOpenByTotalHours.Miss", 0, total_hours);
-    CACHE_UMA(HOURS, "AllOpenByUseHours.Miss", 0, use_hours);
+    CACHE_UMA(HOURS, "AllOpenByTotalHours.Miss", 0,
+              static_cast<base::HistogramBase::Sample>(total_hours));
+    CACHE_UMA(HOURS, "AllOpenByUseHours.Miss", 0,
+              static_cast<base::HistogramBase::Sample>(use_hours));
     stats_.OnEvent(Stats::OPEN_MISS);
     return NULL;
   }
@@ -497,8 +499,10 @@
         cache_entry->entry()->address().value());
   CACHE_UMA(AGE_MS, "OpenTime", 0, start);
   CACHE_UMA(COUNTS_10000, "AllOpenBySize.Hit", 0, current_size);
-  CACHE_UMA(HOURS, "AllOpenByTotalHours.Hit", 0, total_hours);
-  CACHE_UMA(HOURS, "AllOpenByUseHours.Hit", 0, use_hours);
+  CACHE_UMA(HOURS, "AllOpenByTotalHours.Hit", 0,
+            static_cast<base::HistogramBase::Sample>(total_hours));
+  CACHE_UMA(HOURS, "AllOpenByUseHours.Hit", 0,
+            static_cast<base::HistogramBase::Sample>(use_hours));
   stats_.OnEvent(Stats::OPEN_HIT);
   web_fonts_histogram::RecordCacheHit(cache_entry);
   SIMPLE_STATS_COUNTER("disk_cache.hit");
@@ -1886,7 +1890,7 @@
   // time is the ratio of that bin's total count to the count in the same bin in
   // the TotalTime histogram.
   if (base::RandInt(0, 99) < hit_ratio_as_percentage)
-    CACHE_UMA(HOURS, "HitRatioByTotalTime", 0, implicit_cast<int>(total_hours));
+    CACHE_UMA(HOURS, "HitRatioByTotalTime", 0, static_cast<int>(total_hours));
 
   int64 use_hours = stats_.GetCounter(Stats::LAST_REPORT_TIMER) / 120;
   stats_.SetCounter(Stats::LAST_REPORT_TIMER, stats_.GetCounter(Stats::TIMER));
@@ -1904,7 +1908,7 @@
   // is the ratio of that bin's total count to the count in the same bin in the
   // UseTime histogram.
   if (base::RandInt(0, 99) < hit_ratio_as_percentage)
-    CACHE_UMA(HOURS, "HitRatioByUseTime", 0, implicit_cast<int>(use_hours));
+    CACHE_UMA(HOURS, "HitRatioByUseTime", 0, static_cast<int>(use_hours));
   CACHE_UMA(PERCENTAGE, "HitRatio", 0, hit_ratio_as_percentage);
 
   int64 trim_rate = stats_.GetCounter(Stats::TRIM_ENTRY) / use_hours;
diff --git a/net/disk_cache/blockfile/block_bitmaps_v3.cc b/net/disk_cache/blockfile/block_bitmaps_v3.cc
index 011793c..ab86fc2 100644
--- a/net/disk_cache/blockfile/block_bitmaps_v3.cc
+++ b/net/disk_cache/blockfile/block_bitmaps_v3.cc
@@ -71,7 +71,7 @@
 void BlockBitmaps::ReportStats() {
   int used_blocks[kFirstAdditionalBlockFile];
   int load[kFirstAdditionalBlockFile];
-  for (int i = 0; i < kFirstAdditionalBlockFile; i++) {
+  for (int16 i = 0; i < kFirstAdditionalBlockFile; i++) {
     GetFileStats(i, &used_blocks[i], &load[i]);
   }
   UMA_HISTOGRAM_COUNTS("DiskCache.Blocks_0", used_blocks[0]);
@@ -104,7 +104,7 @@
 }
 
 int BlockBitmaps::GetHeaderNumber(Addr address) {
-  DCHECK_GE(bitmaps_.size(), static_cast<size_t>(kFirstAdditionalBlockFileV3));
+  DCHECK_GE(bitmaps_.size(), kFirstAdditionalBlockFileV3);
   DCHECK(address.is_block_file() || !address.is_initialized());
   if (!address.is_initialized())
     return -1;
diff --git a/net/disk_cache/blockfile/block_files.cc b/net/disk_cache/blockfile/block_files.cc
index 4ae217b..58d25da 100644
--- a/net/disk_cache/blockfile/block_files.cc
+++ b/net/disk_cache/blockfile/block_files.cc
@@ -28,7 +28,7 @@
 
 // Returns the type of block (number of consecutive blocks that can be stored)
 // for a given nibble of the bitmap.
-inline int GetMapBlockType(uint8 value) {
+inline int GetMapBlockType(uint32 value) {
   value &= 0xf;
   return s_types[value];
 }
@@ -279,7 +279,7 @@
   thread_checker_.reset(new base::ThreadChecker);
 
   block_files_.resize(kFirstAdditionalBlockFile);
-  for (int i = 0; i < kFirstAdditionalBlockFile; i++) {
+  for (int16 i = 0; i < kFirstAdditionalBlockFile; i++) {
     if (create_files)
       if (!CreateBlockFile(i, static_cast<FileType>(i + 1), true))
         return false;
@@ -574,7 +574,7 @@
 MappedFile* BlockFiles::NextFile(MappedFile* file) {
   ScopedFlush flush(file);
   BlockFileHeader* header = reinterpret_cast<BlockFileHeader*>(file->buffer());
-  int new_file = header->next_file;
+  int16 new_file = header->next_file;
   if (!new_file) {
     // RANKINGS is not reported as a type for small entries, but we may be
     // extending the rankings block file.
@@ -595,8 +595,8 @@
   return GetFile(address);
 }
 
-int BlockFiles::CreateNextBlockFile(FileType block_type) {
-  for (int i = kFirstAdditionalBlockFile; i <= kMaxBlockFile; i++) {
+int16 BlockFiles::CreateNextBlockFile(FileType block_type) {
+  for (int16 i = kFirstAdditionalBlockFile; i <= kMaxBlockFile; i++) {
     if (CreateBlockFile(i, block_type, false))
       return i;
   }
diff --git a/net/disk_cache/blockfile/block_files.h b/net/disk_cache/blockfile/block_files.h
index f84c314..7c2794a 100644
--- a/net/disk_cache/blockfile/block_files.h
+++ b/net/disk_cache/blockfile/block_files.h
@@ -136,7 +136,7 @@
   MappedFile* NextFile(MappedFile* file);
 
   // Creates an empty block file and returns its index.
-  int CreateNextBlockFile(FileType block_type);
+  int16 CreateNextBlockFile(FileType block_type);
 
   // Removes a chained block file that is now empty.
   bool RemoveEmptyFile(FileType block_type);
diff --git a/net/disk_cache/simple/simple_backend_impl.cc b/net/disk_cache/simple/simple_backend_impl.cc
index 6385a37..8cf592a 100644
--- a/net/disk_cache/simple/simple_backend_impl.cc
+++ b/net/disk_cache/simple/simple_backend_impl.cc
@@ -271,12 +271,15 @@
 }
 
 bool SimpleBackendImpl::SetMaxSize(int max_bytes) {
+  if (max_bytes < 0)
+    return false;
   orig_max_size_ = max_bytes;
-  return index_->SetMaxSize(max_bytes);
+  index_->SetMaxSize(max_bytes);
+  return true;
 }
 
 int SimpleBackendImpl::GetMaxFileSize() const {
-  return index_->max_size() / kMaxFileRatio;
+  return static_cast<int>(index_->max_size() / kMaxFileRatio);
 }
 
 void SimpleBackendImpl::OnDoomStart(uint64 entry_hash) {
diff --git a/net/disk_cache/simple/simple_entry_impl.cc b/net/disk_cache/simple/simple_entry_impl.cc
index a6de878..a894aff 100644
--- a/net/disk_cache/simple/simple_entry_impl.cc
+++ b/net/disk_cache/simple/simple_entry_impl.cc
@@ -1022,9 +1022,9 @@
   DCHECK_EQ(STATE_READY, state_);
   state_ = STATE_IO_PENDING;
 
-  int64 max_sparse_data_size = kint64max;
+  uint64 max_sparse_data_size = kint64max;
   if (backend_.get()) {
-    int64 max_cache_size = backend_->index()->max_size();
+    uint64 max_cache_size = backend_->index()->max_size();
     max_sparse_data_size = max_cache_size / kMaxSparseDataSizeDivisor;
   }
 
diff --git a/net/disk_cache/simple/simple_index.cc b/net/disk_cache/simple/simple_index.cc
index 66d9f42..6eb60bd 100644
--- a/net/disk_cache/simple/simple_index.cc
+++ b/net/disk_cache/simple/simple_index.cc
@@ -82,9 +82,9 @@
     entry_size_(0) {
 }
 
-EntryMetadata::EntryMetadata(base::Time last_used_time, int entry_size)
+EntryMetadata::EntryMetadata(base::Time last_used_time, uint64 entry_size)
     : last_used_time_seconds_since_epoch_(0),
-      entry_size_(entry_size) {
+      entry_size_(base::checked_cast<int32>(entry_size)) {
   SetLastUsedTime(last_used_time);
 }
 
@@ -111,6 +111,14 @@
     last_used_time_seconds_since_epoch_ = 1;
 }
 
+uint64 EntryMetadata::GetEntrySize() const {
+  return entry_size_;
+}
+
+void EntryMetadata::SetEntrySize(uint64 entry_size) {
+  entry_size_ = base::checked_cast<int32>(entry_size);
+}
+
 void EntryMetadata::Serialize(Pickle* pickle) const {
   DCHECK(pickle);
   int64 internal_last_used_time = GetLastUsedTime().ToInternalValue();
@@ -122,10 +130,11 @@
   DCHECK(it);
   int64 tmp_last_used_time;
   uint64 tmp_entry_size;
-  if (!it->ReadInt64(&tmp_last_used_time) || !it->ReadUInt64(&tmp_entry_size))
+  if (!it->ReadInt64(&tmp_last_used_time) || !it->ReadUInt64(&tmp_entry_size) ||
+      tmp_entry_size > static_cast<uint64>(std::numeric_limits<int32>::max()))
     return false;
   SetLastUsedTime(base::Time::FromInternalValue(tmp_last_used_time));
-  entry_size_ = tmp_entry_size;
+  entry_size_ = static_cast<int32>(tmp_entry_size);
   return true;
 }
 
@@ -179,18 +188,13 @@
   index_file_->LoadIndexEntries(cache_mtime, reply, load_result);
 }
 
-bool SimpleIndex::SetMaxSize(int max_bytes) {
-  if (max_bytes < 0)
-    return false;
-
+void SimpleIndex::SetMaxSize(uint64 max_bytes) {
   // Zero size means use the default.
-  if (!max_bytes)
-    return true;
-
-  max_size_ = max_bytes;
-  high_watermark_ = max_size_ - max_size_ / kEvictionMarginDivisor;
-  low_watermark_ = max_size_ - 2 * (max_size_ / kEvictionMarginDivisor);
-  return true;
+  if (max_bytes) {
+    max_size_ = max_bytes;
+    high_watermark_ = max_size_ - max_size_ / kEvictionMarginDivisor;
+    low_watermark_ = max_size_ - 2 * (max_size_ / kEvictionMarginDivisor);
+  }
 }
 
 int SimpleIndex::ExecuteWhenReady(const net::CompletionCallback& task) {
@@ -286,12 +290,12 @@
   // Take all live key hashes from the index and sort them by time.
   eviction_in_progress_ = true;
   eviction_start_time_ = base::TimeTicks::Now();
-  SIMPLE_CACHE_UMA(MEMORY_KB,
-                   "Eviction.CacheSizeOnStart2", cache_type_,
-                   cache_size_ / kBytesInKb);
-  SIMPLE_CACHE_UMA(MEMORY_KB,
-                   "Eviction.MaxCacheSizeOnStart2", cache_type_,
-                   max_size_ / kBytesInKb);
+  SIMPLE_CACHE_UMA(
+      MEMORY_KB, "Eviction.CacheSizeOnStart2", cache_type_,
+      static_cast<base::HistogramBase::Sample>(cache_size_ / kBytesInKb));
+  SIMPLE_CACHE_UMA(
+      MEMORY_KB, "Eviction.MaxCacheSizeOnStart2", cache_type_,
+      static_cast<base::HistogramBase::Sample>(max_size_ / kBytesInKb));
   std::vector<uint64> entry_hashes;
   entry_hashes.reserve(entries_set_.size());
   for (EntrySet::const_iterator it = entries_set_.begin(),
@@ -308,8 +312,7 @@
     DCHECK(it != entry_hashes.end());
     EntrySet::iterator found_meta = entries_set_.find(*it);
     DCHECK(found_meta != entries_set_.end());
-    uint64 to_evict_size = found_meta->second.GetEntrySize();
-    evicted_so_far_size += to_evict_size;
+    evicted_so_far_size += found_meta->second.GetEntrySize();
     ++it;
   }
 
@@ -320,15 +323,16 @@
   SIMPLE_CACHE_UMA(TIMES,
                    "Eviction.TimeToSelectEntries", cache_type_,
                    base::TimeTicks::Now() - eviction_start_time_);
-  SIMPLE_CACHE_UMA(MEMORY_KB,
-                   "Eviction.SizeOfEvicted2", cache_type_,
-                   evicted_so_far_size / kBytesInKb);
+  SIMPLE_CACHE_UMA(
+      MEMORY_KB, "Eviction.SizeOfEvicted2", cache_type_,
+      static_cast<base::HistogramBase::Sample>(
+          evicted_so_far_size / kBytesInKb));
 
   delegate_->DoomEntries(&entry_hashes, base::Bind(&SimpleIndex::EvictionDone,
                                                    AsWeakPtr()));
 }
 
-bool SimpleIndex::UpdateEntrySize(uint64 entry_hash, int entry_size) {
+bool SimpleIndex::UpdateEntrySize(uint64 entry_hash, int64 entry_size) {
   DCHECK(io_thread_checker_.CalledOnValidThread());
   EntrySet::iterator it = entries_set_.find(entry_hash);
   if (it == entries_set_.end())
@@ -349,9 +353,9 @@
   SIMPLE_CACHE_UMA(TIMES,
                    "Eviction.TimeToDone", cache_type_,
                    base::TimeTicks::Now() - eviction_start_time_);
-  SIMPLE_CACHE_UMA(MEMORY_KB,
-                   "Eviction.SizeWhenDone2", cache_type_,
-                   cache_size_ / kBytesInKb);
+  SIMPLE_CACHE_UMA(
+      MEMORY_KB, "Eviction.SizeWhenDone2", cache_type_,
+      static_cast<base::HistogramBase::Sample>(cache_size_ / kBytesInKb));
 }
 
 // static
@@ -374,10 +378,10 @@
 }
 
 void SimpleIndex::UpdateEntryIteratorSize(EntrySet::iterator* it,
-                                          int entry_size) {
+                                          int64 entry_size) {
   // Update the total cache size with the new entry size.
   DCHECK(io_thread_checker_.CalledOnValidThread());
-  DCHECK_GE(cache_size_, implicit_cast<uint64>((*it)->second.GetEntrySize()));
+  DCHECK_GE(cache_size_, (*it)->second.GetEntrySize());
   cache_size_ -= (*it)->second.GetEntrySize();
   cache_size_ += entry_size;
   (*it)->second.SetEntrySize(entry_size);
diff --git a/net/disk_cache/simple/simple_index.h b/net/disk_cache/simple/simple_index.h
index 2b7e1cd..3829a35 100644
--- a/net/disk_cache/simple/simple_index.h
+++ b/net/disk_cache/simple/simple_index.h
@@ -40,13 +40,13 @@
 class NET_EXPORT_PRIVATE EntryMetadata {
  public:
   EntryMetadata();
-  EntryMetadata(base::Time last_used_time, int entry_size);
+  EntryMetadata(base::Time last_used_time, uint64 entry_size);
 
   base::Time GetLastUsedTime() const;
   void SetLastUsedTime(const base::Time& last_used_time);
 
-  int GetEntrySize() const { return entry_size_; }
-  void SetEntrySize(int entry_size) { entry_size_ = entry_size; }
+  uint64 GetEntrySize() const;
+  void SetEntrySize(uint64 entry_size);
 
   // Serialize the data into the provided pickle.
   void Serialize(Pickle* pickle) const;
@@ -86,8 +86,8 @@
 
   void Initialize(base::Time cache_mtime);
 
-  bool SetMaxSize(int max_bytes);
-  int max_size() const { return max_size_; }
+  void SetMaxSize(uint64 max_bytes);
+  uint64 max_size() const { return max_size_; }
 
   void Insert(uint64 entry_hash);
   void Remove(uint64 entry_hash);
@@ -104,7 +104,7 @@
   // Update the size (in bytes) of an entry, in the metadata stored in the
   // index. This should be the total disk-file size including all streams of the
   // entry.
-  bool UpdateEntrySize(uint64 entry_hash, int entry_size);
+  bool UpdateEntrySize(uint64 entry_hash, int64 entry_size);
 
   typedef base::hash_map<uint64, EntryMetadata> EntrySet;
 
@@ -143,7 +143,7 @@
 
   void PostponeWritingToDisk();
 
-  void UpdateEntryIteratorSize(EntrySet::iterator* it, int entry_size);
+  void UpdateEntryIteratorSize(EntrySet::iterator* it, int64 entry_size);
 
   // Must run on IO Thread.
   void MergeInitializingSet(scoped_ptr<SimpleIndexLoadResult> load_result);
diff --git a/net/disk_cache/simple/simple_index_unittest.cc b/net/disk_cache/simple/simple_index_unittest.cc
index 1096488..a74cb10 100644
--- a/net/disk_cache/simple/simple_index_unittest.cc
+++ b/net/disk_cache/simple/simple_index_unittest.cc
@@ -28,7 +28,7 @@
 
 const base::Time kTestLastUsedTime =
     base::Time::UnixEpoch() + base::TimeDelta::FromDays(20);
-const int kTestEntrySize = 789;
+const uint64 kTestEntrySize = 789;
 
 }  // namespace
 
@@ -171,7 +171,7 @@
 TEST_F(EntryMetadataTest, Basics) {
   EntryMetadata entry_metadata;
   EXPECT_EQ(base::Time(), entry_metadata.GetLastUsedTime());
-  EXPECT_EQ(0, entry_metadata.GetEntrySize());
+  EXPECT_EQ(0U, entry_metadata.GetEntrySize());
 
   entry_metadata = NewEntryMetadataWithValues();
   CheckEntryMetadataValues(entry_metadata);
@@ -231,7 +231,7 @@
   // Confirm blank state.
   EntryMetadata metadata;
   EXPECT_EQ(base::Time(), metadata.GetLastUsedTime());
-  EXPECT_EQ(0, metadata.GetEntrySize());
+  EXPECT_EQ(0U, metadata.GetEntrySize());
 
   // Confirm state after insert.
   index()->Insert(hashes_.at<1>());
@@ -239,14 +239,14 @@
   base::Time now(base::Time::Now());
   EXPECT_LT(now - base::TimeDelta::FromMinutes(1), metadata.GetLastUsedTime());
   EXPECT_GT(now + base::TimeDelta::FromMinutes(1), metadata.GetLastUsedTime());
-  EXPECT_EQ(0, metadata.GetEntrySize());
+  EXPECT_EQ(0U, metadata.GetEntrySize());
 
   // Confirm state after remove.
   metadata = EntryMetadata();
   index()->Remove(hashes_.at<1>());
   EXPECT_FALSE(GetEntryForTesting(hashes_.at<1>(), &metadata));
   EXPECT_EQ(base::Time(), metadata.GetLastUsedTime());
-  EXPECT_EQ(0, metadata.GetEntrySize());
+  EXPECT_EQ(0U, metadata.GetEntrySize());
 }
 
 TEST_F(SimpleIndexTest, Has) {
@@ -330,11 +330,11 @@
   EXPECT_GT(
       now - base::TimeDelta::FromDays(2) + base::TimeDelta::FromSeconds(1),
       metadata.GetLastUsedTime());
-  EXPECT_EQ(475, metadata.GetEntrySize());
+  EXPECT_EQ(475U, metadata.GetEntrySize());
 
   index()->UpdateEntrySize(kHash1, 600u);
   EXPECT_TRUE(GetEntryForTesting(kHash1, &metadata));
-  EXPECT_EQ(600, metadata.GetEntrySize());
+  EXPECT_EQ(600U, metadata.GetEntrySize());
   EXPECT_EQ(1, index()->GetEntryCount());
 }
 
@@ -383,7 +383,7 @@
   EXPECT_GT(
       now - base::TimeDelta::FromDays(2) + base::TimeDelta::FromSeconds(1),
       metadata.GetLastUsedTime());
-  EXPECT_EQ(10, metadata.GetEntrySize());
+  EXPECT_EQ(10U, metadata.GetEntrySize());
   EXPECT_TRUE(GetEntryForTesting(hashes_.at<2>(), &metadata));
   EXPECT_LT(
       now - base::TimeDelta::FromDays(3) - base::TimeDelta::FromSeconds(1),
@@ -391,7 +391,7 @@
   EXPECT_GT(
       now - base::TimeDelta::FromDays(3) + base::TimeDelta::FromSeconds(1),
       metadata.GetLastUsedTime());
-  EXPECT_EQ(100, metadata.GetEntrySize());
+  EXPECT_EQ(100U, metadata.GetEntrySize());
 }
 
 // Remove something that's going to come in from the loaded index.
@@ -423,7 +423,7 @@
   base::Time now(base::Time::Now());
   EXPECT_LT(now - base::TimeDelta::FromMinutes(1), metadata.GetLastUsedTime());
   EXPECT_GT(now + base::TimeDelta::FromMinutes(1), metadata.GetLastUsedTime());
-  EXPECT_EQ(0, metadata.GetEntrySize());
+  EXPECT_EQ(0U, metadata.GetEntrySize());
 }
 
 // Insert and Remove something that's going to come in from the loaded index.
@@ -456,7 +456,7 @@
   base::Time now(base::Time::Now());
   EXPECT_LT(now - base::TimeDelta::FromMinutes(1), metadata.GetLastUsedTime());
   EXPECT_GT(now + base::TimeDelta::FromMinutes(1), metadata.GetLastUsedTime());
-  EXPECT_EQ(0, metadata.GetEntrySize());
+  EXPECT_EQ(0U, metadata.GetEntrySize());
 }
 
 // Do all above tests at once + a non-conflict to test for cross-key
@@ -494,14 +494,14 @@
   EXPECT_TRUE(GetEntryForTesting(hashes_.at<2>(), &metadata));
   EXPECT_LT(now - base::TimeDelta::FromMinutes(1), metadata.GetLastUsedTime());
   EXPECT_GT(now + base::TimeDelta::FromMinutes(1), metadata.GetLastUsedTime());
-  EXPECT_EQ(0, metadata.GetEntrySize());
+  EXPECT_EQ(0U, metadata.GetEntrySize());
 
   EXPECT_FALSE(index()->Has(hashes_.at<3>()));
 
   EXPECT_TRUE(GetEntryForTesting(hashes_.at<4>(), &metadata));
   EXPECT_LT(now - base::TimeDelta::FromMinutes(1), metadata.GetLastUsedTime());
   EXPECT_GT(now + base::TimeDelta::FromMinutes(1), metadata.GetLastUsedTime());
-  EXPECT_EQ(0, metadata.GetEntrySize());
+  EXPECT_EQ(0U, metadata.GetEntrySize());
 
   EXPECT_TRUE(GetEntryForTesting(hashes_.at<5>(), &metadata));
 
@@ -512,7 +512,7 @@
       now - base::TimeDelta::FromDays(6) - base::TimeDelta::FromSeconds(1),
       metadata.GetLastUsedTime());
 
-  EXPECT_EQ(100000, metadata.GetEntrySize());
+  EXPECT_EQ(100000U, metadata.GetEntrySize());
 }
 
 TEST_F(SimpleIndexTest, BasicEviction) {
@@ -601,7 +601,7 @@
   const EntryMetadata& entry1(entry_set.begin()->second);
   EXPECT_LT(now - base::TimeDelta::FromMinutes(1), entry1.GetLastUsedTime());
   EXPECT_GT(now + base::TimeDelta::FromMinutes(1), entry1.GetLastUsedTime());
-  EXPECT_EQ(20, entry1.GetEntrySize());
+  EXPECT_EQ(20U, entry1.GetEntrySize());
 }
 
 TEST_F(SimpleIndexTest, DiskWritePostponed) {
diff --git a/net/disk_cache/simple/simple_synchronous_entry.cc b/net/disk_cache/simple/simple_synchronous_entry.cc
index 52f8f08..f859105 100644
--- a/net/disk_cache/simple/simple_synchronous_entry.cc
+++ b/net/disk_cache/simple/simple_synchronous_entry.cc
@@ -134,8 +134,8 @@
 int SimpleEntryStat::GetOffsetInFile(const std::string& key,
                                      int offset,
                                      int stream_index) const {
-  const int64 headers_size = sizeof(SimpleFileHeader) + key.size();
-  const int64 additional_offset =
+  const size_t headers_size = sizeof(SimpleFileHeader) + key.size();
+  const size_t additional_offset =
       stream_index == 0 ? data_size_[1] + sizeof(SimpleFileEOF) : 0;
   return headers_size + offset + additional_offset;
 }
@@ -154,8 +154,9 @@
   return GetOffsetInFile(key, eof_data_offset, stream_index);
 }
 
-int SimpleEntryStat::GetFileSize(const std::string& key, int file_index) const {
-  const int total_data_size =
+int64 SimpleEntryStat::GetFileSize(const std::string& key,
+                                   int file_index) const {
+  const int32 total_data_size =
       file_index == 0 ? data_size_[0] + data_size_[1] + sizeof(SimpleFileEOF)
                       : data_size_[2];
   return GetFileSizeFromKeyAndDataSize(key, total_data_size);
@@ -451,7 +452,7 @@
 void SimpleSynchronousEntry::WriteSparseData(
     const EntryOperationData& in_entry_op,
     net::IOBuffer* in_buf,
-    int64 max_sparse_data_size,
+    uint64 max_sparse_data_size,
     SimpleEntryStat* out_entry_stat,
     int* out_result) {
   DCHECK(initialized_);
@@ -467,7 +468,7 @@
     return;
   }
 
-  int64 sparse_data_size = out_entry_stat->sparse_data_size();
+  uint64 sparse_data_size = out_entry_stat->sparse_data_size();
   // This is a pessimistic estimate; it assumes the entire buffer is going to
   // be appended as a new range, not written over existing ranges.
   if (sparse_data_size + buf_len > max_sparse_data_size) {
diff --git a/net/disk_cache/simple/simple_synchronous_entry.h b/net/disk_cache/simple/simple_synchronous_entry.h
index 739a488..7f98b21 100644
--- a/net/disk_cache/simple/simple_synchronous_entry.h
+++ b/net/disk_cache/simple/simple_synchronous_entry.h
@@ -44,7 +44,7 @@
                       int stream_index) const;
   int GetEOFOffsetInFile(const std::string& key, int stream_index) const;
   int GetLastEOFOffsetInFile(const std::string& key, int file_index) const;
-  int GetFileSize(const std::string& key, int file_index) const;
+  int64 GetFileSize(const std::string& key, int file_index) const;
 
   base::Time last_used() const { return last_used_; }
   base::Time last_modified() const { return last_modified_; }
@@ -158,7 +158,7 @@
                       int* out_result);
   void WriteSparseData(const EntryOperationData& in_entry_op,
                        net::IOBuffer* in_buf,
-                       int64 max_sparse_data_size,
+                       uint64 max_sparse_data_size,
                        SimpleEntryStat* out_entry_stat,
                        int* out_result);
   void GetAvailableRange(const EntryOperationData& in_entry_op,
diff --git a/net/dns/dns_hosts.cc b/net/dns/dns_hosts.cc
index 3867b44..b4d213b 100644
--- a/net/dns/dns_hosts.cc
+++ b/net/dns/dns_hosts.cc
@@ -195,7 +195,8 @@
   if (!base::GetFileSize(path, &size))
     return false;
 
-  UMA_HISTOGRAM_COUNTS("AsyncDNS.HostsSize", size);
+  UMA_HISTOGRAM_COUNTS("AsyncDNS.HostsSize",
+                       static_cast<base::HistogramBase::Sample>(size));
 
   // Reject HOSTS files larger than |kMaxHostsSize| bytes.
   const int64 kMaxHostsSize = 1 << 25;  // 32MB
diff --git a/net/dns/dns_session.cc b/net/dns/dns_session.cc
index d6992f1..0b6292e 100644
--- a/net/dns/dns_session.cc
+++ b/net/dns/dns_session.cc
@@ -39,7 +39,9 @@
     : last_failure_count(0), rtt_estimate(rtt_estimate_param) {
     rtt_histogram.reset(new base::SampleVector(buckets));
     // Seed histogram with 2 samples at |rtt_estimate| timeout.
-    rtt_histogram->Accumulate(rtt_estimate.InMilliseconds(), 2);
+    rtt_histogram->Accumulate(
+        static_cast<base::HistogramBase::Sample>(rtt_estimate.InMilliseconds()),
+        2);
   }
 
   // Count of consecutive failures after last success.
@@ -100,7 +102,9 @@
   RecordServerStats();
 }
 
-int DnsSession::NextQueryId() const { return rand_callback_.Run(); }
+uint16 DnsSession::NextQueryId() const {
+  return static_cast<uint16>(rand_callback_.Run());
+}
 
 unsigned DnsSession::NextFirstServerIndex() {
   unsigned index = NextGoodServerIndex(server_index_);
@@ -182,8 +186,8 @@
   deviation += (abs_error - deviation) / 4;  // * delta
 
   // Histogram-based method.
-  server_stats_[server_index]->rtt_histogram
-      ->Accumulate(rtt.InMilliseconds(), 1);
+  server_stats_[server_index]->rtt_histogram->Accumulate(
+      static_cast<base::HistogramBase::Sample>(rtt.InMilliseconds()), 1);
 }
 
 void DnsSession::RecordLostPacket(unsigned server_index, int attempt) {
diff --git a/net/dns/dns_session.h b/net/dns/dns_session.h
index 01ba5e5..e878a57 100644
--- a/net/dns/dns_session.h
+++ b/net/dns/dns_session.h
@@ -66,7 +66,7 @@
   NetLog* net_log() const { return net_log_; }
 
   // Return the next random query ID.
-  int NextQueryId() const;
+  uint16 NextQueryId() const;
 
   // Return the index of the first configured server to use on first attempt.
   unsigned NextFirstServerIndex();
diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc
index 03eb7f2..beb2197 100644
--- a/net/dns/dns_transaction.cc
+++ b/net/dns/dns_transaction.cc
@@ -392,8 +392,10 @@
     if (rv < 0)
       return rv;
 
-    base::WriteBigEndian<uint16>(length_buffer_->data(),
-                                 query_->io_buffer()->size());
+    uint16 query_size = static_cast<uint16>(query_->io_buffer()->size());
+    if (static_cast<int>(query_size) != query_->io_buffer()->size())
+      return ERR_FAILED;
+    base::WriteBigEndian<uint16>(length_buffer_->data(), query_size);
     buffer_ =
         new DrainableIOBuffer(length_buffer_.get(), length_buffer_->size());
     next_state_ = STATE_SEND_LENGTH;
diff --git a/net/dns/host_resolver_impl.cc b/net/dns/host_resolver_impl.cc
index 9426da5..b06a006 100644
--- a/net/dns/host_resolver_impl.cc
+++ b/net/dns/host_resolver_impl.cc
@@ -24,6 +24,7 @@
 #include "base/message_loop/message_loop_proxy.h"
 #include "base/metrics/field_trial.h"
 #include "base/metrics/histogram.h"
+#include "base/profiler/scoped_tracker.h"
 #include "base/stl_util.h"
 #include "base/strings/string_util.h"
 #include "base/strings/utf_string_conversions.h"
@@ -480,6 +481,11 @@
 
   // Prepare final AddressList and call completion callback.
   void OnComplete(int error, const AddressList& addr_list) {
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+    tracked_objects::ScopedTracker tracking_profile(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "436634 HostResolverImpl::Request::OnComplete"));
+
     DCHECK(!was_canceled());
     if (error == OK)
       *addresses_ = EnsurePortOnAddressList(addr_list, info_.port());
@@ -679,6 +685,11 @@
                         const uint32 attempt_number,
                         int error,
                         const int os_error) {
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+    tracked_objects::ScopedTracker tracking_profile1(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "436634 HostResolverImpl::ProcTask::OnLookupComplete1"));
+
     DCHECK(origin_loop_->BelongsToCurrentThread());
     // If results are empty, we should return an error.
     bool empty_list_on_ok = (error == OK && results.empty());
@@ -740,6 +751,11 @@
     net_log_.EndEvent(NetLog::TYPE_HOST_RESOLVER_IMPL_PROC_TASK,
                       net_log_callback);
 
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+    tracked_objects::ScopedTracker tracking_profile2(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "436634 HostResolverImpl::ProcTask::OnLookupComplete2"));
+
     callback_.Run(error, results_);
   }
 
@@ -1470,6 +1486,11 @@
   void OnProcTaskComplete(base::TimeTicks start_time,
                           int net_error,
                           const AddressList& addr_list) {
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+    tracked_objects::ScopedTracker tracking_profile(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "436634 HostResolverImpl::Job::OnProcTaskComplete"));
+
     DCHECK(is_proc_running());
 
     if (!resolver_->resolved_known_ipv6_hostname_ &&
@@ -1619,6 +1640,11 @@
   // Performs Job's last rites. Completes all Requests. Deletes this.
   void CompleteRequests(const HostCache::Entry& entry,
                         base::TimeDelta ttl) {
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+    tracked_objects::ScopedTracker tracking_profile1(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "436634 HostResolverImpl::Job::CompleteRequests1"));
+
     CHECK(resolver_.get());
 
     // This job must be removed from resolver's |jobs_| now to make room for a
@@ -1668,6 +1694,11 @@
     if (did_complete)
       resolver_->CacheResult(key_, entry, ttl);
 
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+    tracked_objects::ScopedTracker tracking_profile2(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "436634 HostResolverImpl::Job::CompleteRequests2"));
+
     // Complete all of the requests that were attached to the job.
     for (RequestsList::const_iterator it = requests_.begin();
          it != requests_.end(); ++it) {
diff --git a/net/dns/single_request_host_resolver.cc b/net/dns/single_request_host_resolver.cc
index 7974aba..2c4b3aa 100644
--- a/net/dns/single_request_host_resolver.cc
+++ b/net/dns/single_request_host_resolver.cc
@@ -8,6 +8,7 @@
 #include "base/bind_helpers.h"
 #include "base/compiler_specific.h"
 #include "base/logging.h"
+#include "base/profiler/scoped_tracker.h"
 #include "net/base/net_errors.h"
 
 namespace net {
@@ -63,6 +64,11 @@
 }
 
 void SingleRequestHostResolver::OnResolveCompletion(int result) {
+  // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+  tracked_objects::ScopedTracker tracking_profile(
+      FROM_HERE_WITH_EXPLICIT_FUNCTION(
+          "436634 SingleRequestHostResolver::OnResolveCompletion"));
+
   DCHECK(cur_request_);
   DCHECK_EQ(false, cur_request_callback_.is_null());
 
diff --git a/net/filter/gzip_header.cc b/net/filter/gzip_header.cc
index 4d1cad9..f4aca6b 100644
--- a/net/filter/gzip_header.cc
+++ b/net/filter/gzip_header.cc
@@ -105,7 +105,7 @@
       case IN_FEXTRA: {
         // Grab the rest of the bytes in the extra field, or as many
         // of them as are actually present so far.
-        const int num_extra_bytes = static_cast<const int>(std::min(
+        const uint16 num_extra_bytes = static_cast<uint16>(std::min(
             static_cast<ptrdiff_t>(extra_length_),
             (end - pos)));
         pos += num_extra_bytes;
diff --git a/net/http/disk_based_cert_cache.cc b/net/http/disk_based_cert_cache.cc
index 9b39d85..b91fb10 100644
--- a/net/http/disk_based_cert_cache.cc
+++ b/net/http/disk_based_cert_cache.cc
@@ -10,6 +10,7 @@
 #include "base/callback_helpers.h"
 #include "base/memory/ref_counted.h"
 #include "base/metrics/histogram.h"
+#include "base/profiler/scoped_tracker.h"
 #include "base/stl_util.h"
 #include "base/strings/string_number_conversions.h"
 #include "net/base/io_buffer.h"
@@ -397,6 +398,11 @@
 }
 
 void DiskBasedCertCache::ReadWorker::OnIOComplete(int rv) {
+  // TODO(vadimt): Remove ScopedTracker below once crbug.com/422516 is fixed.
+  tracked_objects::ScopedTracker tracking_profile(
+      FROM_HERE_WITH_EXPLICIT_FUNCTION(
+          "422516 DiskBasedCertCache::ReadWorker::OnIOComplete"));
+
   if (canceled_) {
     Finish(ERR_FAILED);
     return;
diff --git a/net/http/disk_cache_based_quic_server_info.cc b/net/http/disk_cache_based_quic_server_info.cc
index 148df3f..ab34bbe 100644
--- a/net/http/disk_cache_based_quic_server_info.cc
+++ b/net/http/disk_cache_based_quic_server_info.cc
@@ -9,6 +9,7 @@
 #include "base/callback_helpers.h"
 #include "base/logging.h"
 #include "base/metrics/histogram.h"
+#include "base/profiler/scoped_tracker.h"
 #include "net/base/completion_callback.h"
 #include "net/base/io_buffer.h"
 #include "net/base/net_errors.h"
@@ -78,9 +79,11 @@
     const CompletionCallback& callback) {
   DCHECK(CalledOnValidThread());
   DCHECK_NE(GET_BACKEND, state_);
+  wait_for_data_start_time_ = base::TimeTicks::Now();
 
   RecordQuicServerInfoStatus(QUIC_SERVER_INFO_WAIT_FOR_DATA_READY);
   if (ready_) {
+    wait_for_data_end_time_ = base::TimeTicks::Now();
     RecordLastFailure();
     return OK;
   }
@@ -183,11 +186,17 @@
 
 void DiskCacheBasedQuicServerInfo::OnIOComplete(CacheOperationDataShim* unused,
                                                 int rv) {
+  // TODO(vadimt): Remove ScopedTracker below once crbug.com/422516 is fixed.
+  tracked_objects::ScopedTracker tracking_profile(
+      FROM_HERE_WITH_EXPLICIT_FUNCTION(
+          "422516 DiskCacheBasedQuicServerInfo::OnIOComplete"));
+
   DCHECK_NE(NONE, state_);
   rv = DoLoop(rv);
   if (rv == ERR_IO_PENDING)
     return;
   if (!wait_for_ready_callback_.is_null()) {
+    wait_for_data_end_time_ = base::TimeTicks::Now();
     RecordLastFailure();
     base::ResetAndReturn(&wait_for_ready_callback_).Run(rv);
   }
diff --git a/net/http/http_cache_transaction.cc b/net/http/http_cache_transaction.cc
index 896db76..23fb2d1 100644
--- a/net/http/http_cache_transaction.cc
+++ b/net/http/http_cache_transaction.cc
@@ -2883,15 +2883,16 @@
   }
 
   TimeDelta before_send_time = send_request_since_ - first_cache_access_since_;
-  int before_send_percent =
-      total_time.ToInternalValue() == 0 ? 0
-                                        : before_send_time * 100 / total_time;
-  DCHECK_LE(0, before_send_percent);
-  DCHECK_GE(100, before_send_percent);
+  int64 before_send_percent = (total_time.ToInternalValue() == 0) ?
+      0 : before_send_time * 100 / total_time;
+  DCHECK_GE(before_send_percent, 0);
+  DCHECK_LE(before_send_percent, 100);
+  base::HistogramBase::Sample before_send_sample =
+      static_cast<base::HistogramBase::Sample>(before_send_percent);
 
   UMA_HISTOGRAM_TIMES("HttpCache.AccessToDone.SentRequest", total_time);
   UMA_HISTOGRAM_TIMES("HttpCache.BeforeSend", before_send_time);
-  UMA_HISTOGRAM_PERCENTAGE("HttpCache.PercentBeforeSend", before_send_percent);
+  UMA_HISTOGRAM_PERCENTAGE("HttpCache.PercentBeforeSend", before_send_sample);
 
   // TODO(gavinp): Remove or minimize these histograms, particularly the ones
   // below this comment after we have received initial data.
@@ -2900,25 +2901,25 @@
       UMA_HISTOGRAM_TIMES("HttpCache.BeforeSend.CantConditionalize",
                           before_send_time);
       UMA_HISTOGRAM_PERCENTAGE("HttpCache.PercentBeforeSend.CantConditionalize",
-                               before_send_percent);
+                               before_send_sample);
       break;
     }
     case PATTERN_ENTRY_NOT_CACHED: {
       UMA_HISTOGRAM_TIMES("HttpCache.BeforeSend.NotCached", before_send_time);
       UMA_HISTOGRAM_PERCENTAGE("HttpCache.PercentBeforeSend.NotCached",
-                               before_send_percent);
+                               before_send_sample);
       break;
     }
     case PATTERN_ENTRY_VALIDATED: {
       UMA_HISTOGRAM_TIMES("HttpCache.BeforeSend.Validated", before_send_time);
       UMA_HISTOGRAM_PERCENTAGE("HttpCache.PercentBeforeSend.Validated",
-                               before_send_percent);
+                               before_send_sample);
       break;
     }
     case PATTERN_ENTRY_UPDATED: {
       UMA_HISTOGRAM_TIMES("HttpCache.BeforeSend.Updated", before_send_time);
       UMA_HISTOGRAM_PERCENTAGE("HttpCache.PercentBeforeSend.Updated",
-                               before_send_percent);
+                               before_send_sample);
       break;
     }
     default:
diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc
index 28b3b22..656db54 100644
--- a/net/http/http_network_session.cc
+++ b/net/http/http_network_session.cc
@@ -37,21 +37,14 @@
   // TODO(yutak): Differentiate WebSocket pool manager and allow more
   // simultaneous connections for WebSockets.
   return new net::ClientSocketPoolManagerImpl(
-      params.net_log,
-      params.client_socket_factory
-          ? params.client_socket_factory
-          : net::ClientSocketFactory::GetDefaultFactory(),
-      params.host_resolver,
-      params.cert_verifier,
-      params.channel_id_service,
-      params.transport_security_state,
-      params.cert_transparency_verifier,
-      params.ssl_session_cache_shard,
-      params.proxy_service,
-      params.ssl_config_service,
-      params.enable_ssl_connect_job_waiting,
-      params.proxy_delegate,
-      pool_type);
+      params.net_log, params.client_socket_factory
+                          ? params.client_socket_factory
+                          : net::ClientSocketFactory::GetDefaultFactory(),
+      params.host_resolver, params.cert_verifier, params.channel_id_service,
+      params.transport_security_state, params.cert_transparency_verifier,
+      params.cert_policy_enforcer, params.ssl_session_cache_shard,
+      params.proxy_service, params.ssl_config_service,
+      params.enable_ssl_connect_job_waiting, params.proxy_delegate, pool_type);
 }
 
 }  // unnamed namespace
@@ -62,6 +55,7 @@
     : client_socket_factory(NULL),
       host_resolver(NULL),
       cert_verifier(NULL),
+      cert_policy_enforcer(NULL),
       channel_id_service(NULL),
       transport_security_state(NULL),
       cert_transparency_verifier(NULL),
diff --git a/net/http/http_network_session.h b/net/http/http_network_session.h
index 557b84e..bf93c83 100644
--- a/net/http/http_network_session.h
+++ b/net/http/http_network_session.h
@@ -29,6 +29,7 @@
 
 namespace net {
 
+class CertPolicyEnforcer;
 class CertVerifier;
 class ChannelIDService;
 class ClientSocketFactory;
@@ -66,6 +67,7 @@
     ClientSocketFactory* client_socket_factory;
     HostResolver* host_resolver;
     CertVerifier* cert_verifier;
+    CertPolicyEnforcer* cert_policy_enforcer;
     ChannelIDService* channel_id_service;
     TransportSecurityState* transport_security_state;
     CTVerifier* cert_transparency_verifier;
diff --git a/net/http/http_network_transaction.cc b/net/http/http_network_transaction.cc
index 8cddaf5..b4ef356 100644
--- a/net/http/http_network_transaction.cc
+++ b/net/http/http_network_transaction.cc
@@ -961,11 +961,6 @@
       return result;
   }
 
-  if (result == ERR_QUIC_HANDSHAKE_FAILED) {
-    ResetConnectionAndRequestForResend();
-    return OK;
-  }
-
   // ERR_CONNECTION_CLOSED is treated differently at this point; if partial
   // response headers were received, we do the best we can to make sense of it
   // and send it back up the stack.
diff --git a/net/http/http_network_transaction_unittest.cc b/net/http/http_network_transaction_unittest.cc
index 878406e..eacd06c 100644
--- a/net/http/http_network_transaction_unittest.cc
+++ b/net/http/http_network_transaction_unittest.cc
@@ -583,6 +583,7 @@
                           NULL,
                           NULL,
                           NULL,
+                          NULL,
                           std::string(),
                           NULL,
                           NULL,
diff --git a/net/http/http_proxy_client_socket_pool_unittest.cc b/net/http/http_proxy_client_socket_pool_unittest.cc
index bdaf57f..f818432 100644
--- a/net/http/http_proxy_client_socket_pool_unittest.cc
+++ b/net/http/http_proxy_client_socket_pool_unittest.cc
@@ -171,6 +171,7 @@
                          NULL /* channel_id_store */,
                          NULL /* transport_security_state */,
                          NULL /* cert_transparency_verifier */,
+                         NULL /* cert_policy_enforcer */,
                          std::string() /* ssl_session_cache_shard */,
                          session_deps_.deterministic_socket_factory.get(),
                          &transport_socket_pool_,
diff --git a/net/http/http_response_info.cc b/net/http/http_response_info.cc
index 6967d79..c3a4827 100644
--- a/net/http/http_response_info.cc
+++ b/net/http/http_response_info.cc
@@ -343,7 +343,7 @@
            ssl_info.signed_certificate_timestamps.begin(); it !=
            ssl_info.signed_certificate_timestamps.end(); ++it) {
         it->sct->Persist(pickle);
-        pickle->WriteUInt16(it->status);
+        pickle->WriteUInt16(static_cast<uint16>(it->status));
       }
     }
   }
diff --git a/net/http/http_server_properties.h b/net/http/http_server_properties.h
index a63dc6a..b860cc7 100644
--- a/net/http/http_server_properties.h
+++ b/net/http/http_server_properties.h
@@ -13,6 +13,7 @@
 #include "base/time/time.h"
 #include "net/base/host_port_pair.h"
 #include "net/base/net_export.h"
+#include "net/quic/quic_bandwidth.h"
 #include "net/socket/next_proto.h"
 #include "net/spdy/spdy_framer.h"  // TODO(willchan): Reconsider this.
 #include "net/spdy/spdy_protocol.h"
@@ -143,8 +144,10 @@
 class NET_EXPORT HttpServerProperties {
  public:
   struct NetworkStats {
+    NetworkStats() : bandwidth_estimate(QuicBandwidth::Zero()) {}
+
     base::TimeDelta srtt;
-    uint64 bandwidth_estimate;
+    QuicBandwidth bandwidth_estimate;
   };
 
   HttpServerProperties() {}
diff --git a/net/http/http_server_properties_impl.cc b/net/http/http_server_properties_impl.cc
index 1bf541b..8a8e49a 100644
--- a/net/http/http_server_properties_impl.cc
+++ b/net/http/http_server_properties_impl.cc
@@ -127,16 +127,6 @@
   }
 }
 
-// static
-std::string HttpServerPropertiesImpl::GetFlattenedSpdyServer(
-    const net::HostPortPair& host_port_pair) {
-  std::string spdy_server;
-  spdy_server.append(host_port_pair.host());
-  spdy_server.append(":");
-  base::StringAppendF(&spdy_server, "%d", host_port_pair.port());
-  return spdy_server;
-}
-
 static const AlternateProtocolInfo* g_forced_alternate_protocol = NULL;
 
 // static
@@ -172,10 +162,9 @@
   DCHECK(CalledOnValidThread());
   if (host_port_pair.host().empty())
     return false;
-  std::string spdy_server = GetFlattenedSpdyServer(host_port_pair);
 
   SpdyServerHostPortMap::iterator spdy_host_port =
-      spdy_servers_map_.Get(spdy_server);
+      spdy_servers_map_.Get(host_port_pair.ToString());
   if (spdy_host_port != spdy_servers_map_.end())
     return spdy_host_port->second;
   return false;
@@ -187,16 +176,15 @@
   DCHECK(CalledOnValidThread());
   if (host_port_pair.host().empty())
     return;
-  std::string spdy_server = GetFlattenedSpdyServer(host_port_pair);
 
   SpdyServerHostPortMap::iterator spdy_host_port =
-      spdy_servers_map_.Get(spdy_server);
+      spdy_servers_map_.Get(host_port_pair.ToString());
   if ((spdy_host_port != spdy_servers_map_.end()) &&
       (spdy_host_port->second == support_spdy)) {
     return;
   }
   // Cache the data.
-  spdy_servers_map_.Put(spdy_server, support_spdy);
+  spdy_servers_map_.Put(host_port_pair.ToString(), support_spdy);
 }
 
 bool HttpServerPropertiesImpl::HasAlternateProtocol(
@@ -204,12 +192,16 @@
   if (g_forced_alternate_protocol)
     return true;
   AlternateProtocolMap::const_iterator it = alternate_protocol_map_.Get(server);
-  if (it != alternate_protocol_map_.end() &&
-      it->second.probability >= alternate_protocol_probability_threshold_) {
-    return true;
+  if (it != alternate_protocol_map_.end())
+    return it->second.probability >= alternate_protocol_probability_threshold_;
+
+  auto canonical = GetCanonicalHost(server);
+  if (canonical == canonical_host_to_origin_map_.end() ||
+      canonical->second.Equals(server)) {
+    return false;
   }
 
-  return GetCanonicalHost(server) != canonical_host_to_origin_map_.end();
+  return HasAlternateProtocol(canonical->second);
 }
 
 std::string HttpServerPropertiesImpl::GetCanonicalSuffix(
diff --git a/net/http/http_server_properties_impl_unittest.cc b/net/http/http_server_properties_impl_unittest.cc
index 3d1bacb..4dda0db 100644
--- a/net/http/http_server_properties_impl_unittest.cc
+++ b/net/http/http_server_properties_impl_unittest.cc
@@ -34,12 +34,10 @@
 
 TEST_F(SpdyServerPropertiesTest, Initialize) {
   HostPortPair spdy_server_google("www.google.com", 443);
-  std::string spdy_server_g =
-      HttpServerPropertiesImpl::GetFlattenedSpdyServer(spdy_server_google);
+  std::string spdy_server_g = spdy_server_google.ToString();
 
   HostPortPair spdy_server_docs("docs.google.com", 443);
-  std::string spdy_server_d =
-      HttpServerPropertiesImpl::GetFlattenedSpdyServer(spdy_server_docs);
+  std::string spdy_server_d = spdy_server_docs.ToString();
 
   // Check by initializing NULL spdy servers.
   impl_.InitializeSpdyServers(NULL, true);
@@ -155,11 +153,9 @@
   std::string string_value_g;
   std::string string_value_m;
   HostPortPair spdy_server_google("www.google.com", 443);
-  std::string spdy_server_g =
-      HttpServerPropertiesImpl::GetFlattenedSpdyServer(spdy_server_google);
+  std::string spdy_server_g = spdy_server_google.ToString();
   HostPortPair spdy_server_mail("mail.google.com", 443);
-  std::string spdy_server_m =
-      HttpServerPropertiesImpl::GetFlattenedSpdyServer(spdy_server_mail);
+  std::string spdy_server_m = spdy_server_mail.ToString();
 
   // Add www.google.com:443 as not supporting SPDY.
   impl_.SetSupportsSpdy(spdy_server_google, false);
@@ -204,11 +200,9 @@
   std::string string_value_g;
   std::string string_value_m;
   HostPortPair spdy_server_google("www.google.com", 443);
-  std::string spdy_server_g =
-      HttpServerPropertiesImpl::GetFlattenedSpdyServer(spdy_server_google);
+  std::string spdy_server_g = spdy_server_google.ToString();
   HostPortPair spdy_server_mail("mail.google.com", 443);
-  std::string spdy_server_m =
-      HttpServerPropertiesImpl::GetFlattenedSpdyServer(spdy_server_mail);
+  std::string spdy_server_m = spdy_server_mail.ToString();
 
   // Add www.google.com:443 as supporting SPDY.
   impl_.SetSupportsSpdy(spdy_server_google, true);
@@ -445,6 +439,36 @@
   EXPECT_EQ(".c.youtube.com", impl_.GetCanonicalSuffix(canonical_port_pair));
 }
 
+TEST_F(AlternateProtocolServerPropertiesTest, CanonicalBelowThreshold) {
+  impl_.SetAlternateProtocolProbabilityThreshold(0.02);
+
+  HostPortPair test_host_port_pair("foo.c.youtube.com", 80);
+  HostPortPair canonical_port_pair("bar.c.youtube.com", 80);
+  AlternateProtocolInfo canonical_protocol(1234, QUIC, 0.01);
+
+  impl_.SetAlternateProtocol(canonical_port_pair,
+                             canonical_protocol.port,
+                             canonical_protocol.protocol,
+                             canonical_protocol.probability);
+  EXPECT_FALSE(impl_.HasAlternateProtocol(canonical_port_pair));
+  EXPECT_FALSE(impl_.HasAlternateProtocol(test_host_port_pair));
+}
+
+TEST_F(AlternateProtocolServerPropertiesTest, CanonicalAboveThreshold) {
+  impl_.SetAlternateProtocolProbabilityThreshold(0.02);
+
+  HostPortPair test_host_port_pair("foo.c.youtube.com", 80);
+  HostPortPair canonical_port_pair("bar.c.youtube.com", 80);
+  AlternateProtocolInfo canonical_protocol(1234, QUIC, 0.03);
+
+  impl_.SetAlternateProtocol(canonical_port_pair,
+                             canonical_protocol.port,
+                             canonical_protocol.protocol,
+                             canonical_protocol.probability);
+  EXPECT_TRUE(impl_.HasAlternateProtocol(canonical_port_pair));
+  EXPECT_TRUE(impl_.HasAlternateProtocol(test_host_port_pair));
+}
+
 TEST_F(AlternateProtocolServerPropertiesTest, ClearCanonical) {
   HostPortPair test_host_port_pair("foo.c.youtube.com", 80);
   HostPortPair canonical_port_pair("bar.c.youtube.com", 80);
diff --git a/net/http/http_server_properties_manager.cc b/net/http/http_server_properties_manager.cc
index 5773129..62db0b4 100644
--- a/net/http/http_server_properties_manager.cc
+++ b/net/http/http_server_properties_manager.cc
@@ -27,13 +27,7 @@
 // Time to wait before starting an update the preferences from the
 // http_server_properties_impl_ cache. Scheduling another update during this
 // period will reset the timer.
-// TODO(rtenneti): Remove OS_ANDROID ifdef after testing if flushing of
-// AlternateProtocolHosts to disk in 500ms helps with QUIC's 0RTT or not.
-#if defined(OS_ANDROID)
-const int64 kUpdatePrefsDelayMs = 500;
-#else
 const int64 kUpdatePrefsDelayMs = 5000;
-#endif
 
 // "version" 0 indicates, http_server_properties doesn't have "version"
 // property.
diff --git a/net/http/http_stream_factory_impl_unittest.cc b/net/http/http_stream_factory_impl_unittest.cc
index 4ac5467..beac733 100644
--- a/net/http/http_stream_factory_impl_unittest.cc
+++ b/net/http/http_stream_factory_impl_unittest.cc
@@ -403,16 +403,17 @@
                           nullptr,  // ssl_histograms
                           host_resolver,
                           cert_verifier,
-                          nullptr,           // channel_id_store
-                          nullptr,           // transport_security_state
-                          nullptr,           // cert_transparency_verifier
+                          nullptr,        // channel_id_store
+                          nullptr,        // transport_security_state
+                          nullptr,        // cert_transparency_verifier
+                          nullptr,        // cert_policy_enforcer
                           std::string(),  // ssl_session_cache_shard
-                          nullptr,           // deterministic_socket_factory
-                          nullptr,           // transport_socket_pool
+                          nullptr,        // deterministic_socket_factory
+                          nullptr,        // transport_socket_pool
                           nullptr,
                           nullptr,
                           nullptr,   // ssl_config_service
-                          false,  // enable_ssl_connect_job_waiting
+                          false,     // enable_ssl_connect_job_waiting
                           nullptr),  // net_log
       last_num_streams_(-1) {
 }
diff --git a/net/http/http_stream_parser.cc b/net/http/http_stream_parser.cc
index b998986..41b85df 100644
--- a/net/http/http_stream_parser.cc
+++ b/net/http/http_stream_parser.cc
@@ -25,7 +25,7 @@
 
 namespace {
 
-const size_t kMaxMergedHeaderAndBodySize = 1400;
+const uint64 kMaxMergedHeaderAndBodySize = 1400;
 const size_t kRequestBodyBufferSize = 1 << 14;  // 16KB
 
 std::string GetResponseHeaderLines(const HttpResponseHeaders& headers) {
@@ -59,12 +59,12 @@
   return false;
 }
 
-base::Value* NetLogSendRequestBodyCallback(int length,
+base::Value* NetLogSendRequestBodyCallback(uint64 length,
                                            bool is_chunked,
                                            bool did_merge,
                                            NetLog::LogLevel /* log_level */) {
   base::DictionaryValue* dict = new base::DictionaryValue();
-  dict->SetInteger("length", length);
+  dict->SetInteger("length", static_cast<int>(length));
   dict->SetBoolean("is_chunked", is_chunked);
   dict->SetBoolean("did_merge", did_merge);
   return dict;
@@ -253,8 +253,8 @@
   // single write.
   bool did_merge = false;
   if (ShouldMergeRequestHeadersAndBody(request, request_->upload_data_stream)) {
-    size_t merged_size =
-        request_headers_length_ + request_->upload_data_stream->size();
+    int merged_size = static_cast<int>(
+        request_headers_length_ + request_->upload_data_stream->size());
     scoped_refptr<IOBuffer> merged_request_headers_and_body(
         new IOBuffer(merged_size));
     // We'll repurpose |request_headers_| to store the merged headers and
@@ -265,10 +265,10 @@
     memcpy(request_headers_->data(), request.data(), request_headers_length_);
     request_headers_->DidConsume(request_headers_length_);
 
-    size_t todo = request_->upload_data_stream->size();
+    uint64 todo = request_->upload_data_stream->size();
     while (todo) {
-      int consumed = request_->upload_data_stream
-          ->Read(request_headers_.get(), todo, CompletionCallback());
+      int consumed = request_->upload_data_stream->Read(
+          request_headers_.get(), static_cast<int>(todo), CompletionCallback());
       DCHECK_GT(consumed, 0);  // Read() won't fail if not chunked.
       request_headers_->DidConsume(consumed);
       todo -= consumed;
@@ -1059,7 +1059,7 @@
       // IsInMemory() ensures that the request body is not chunked.
       request_body->IsInMemory() &&
       request_body->size() > 0) {
-    size_t merged_size = request_headers.size() + request_body->size();
+    uint64 merged_size = request_headers.size() + request_body->size();
     if (merged_size <= kMaxMergedHeaderAndBodySize)
       return true;
   }
diff --git a/net/http/transport_security_state.cc b/net/http/transport_security_state.cc
index 6217d57..a2d377e 100644
--- a/net/http/transport_security_state.cc
+++ b/net/http/transport_security_state.cc
@@ -264,7 +264,7 @@
       break;
 
     for (size_t j = 0; j < label_length; ++j) {
-      new_host[i + 1 + j] = tolower(new_host[i + 1 + j]);
+      new_host[i + 1 + j] = static_cast<char>(tolower(new_host[i + 1 + j]));
     }
   }
 
diff --git a/net/http/transport_security_state_static.h b/net/http/transport_security_state_static.h
index 1774a24..79fa777 100644
--- a/net/http/transport_security_state_static.h
+++ b/net/http/transport_security_state_static.h
@@ -710,1552 +710,1592 @@
 // it's a pointer to the n'th element of the array.
 static const uint8 kHSTSHuffmanTree[] = {
   0xf0, 0xf7, 0x00, 0xec, 0x01, 0x80, 0xe7, 0xe1,
-  0xb3, 0xb1, 0x04, 0xf1, 0xb4, 0x05, 0x06, 0xfa,
-  0xf6, 0x07, 0xeb, 0x08, 0xed, 0x09, 0xae, 0xe3,
-  0x0a, 0x0b, 0x03, 0x0c, 0x02, 0x0d, 0xe2, 0xe8,
-  0x0f, 0xf3, 0xee, 0xf4, 0x10, 0x11, 0xff, 0x12,
-  0xad, 0xe6, 0x14, 0xf5, 0xb8, 0xb9, 0xb6, 0x16,
-  0xb7, 0x17, 0xb5, 0x18, 0xb0, 0x19, 0xb2, 0x1a,
-  0x1b, 0xea, 0xf8, 0x1c, 0x1d, 0xf9, 0xe4, 0x1e,
-  0x15, 0x1f, 0xe5, 0x20, 0xe9, 0xf2, 0xef, 0x22,
-  0x21, 0x23, 0x13, 0x24, 0x0e, 0x25,
+  0xb9, 0xb6, 0x04, 0xb8, 0xb7, 0x05, 0xb5, 0x06,
+  0x07, 0xf1, 0xb1, 0xb0, 0xb2, 0x09, 0x08, 0x0a,
+  0x0b, 0xfa, 0xf6, 0x0c, 0xeb, 0x0d, 0xed, 0x0e,
+  0xae, 0xe3, 0x0f, 0x10, 0x03, 0x11, 0x02, 0x12,
+  0xe2, 0xe8, 0x14, 0xf3, 0x15, 0xe5, 0xff, 0x16,
+  0xee, 0xf4, 0x18, 0xef, 0xb3, 0xb4, 0x1a, 0xea,
+  0xf8, 0x1b, 0xad, 0x1c, 0x1d, 0xe4, 0xe6, 0xf9,
+  0x1f, 0xf5, 0x1e, 0x20, 0xe9, 0xf2, 0x21, 0x22,
+  0x19, 0x23, 0x17, 0x24, 0x13, 0x25,
 };
 
 static const uint8 kPreloadedHSTSData[] = {
-  0xfe, 0x76, 0x0a, 0x77, 0x21, 0xa2, 0x25, 0x9f,
-  0x0a, 0x77, 0x21, 0xa2, 0x2d, 0x9b, 0x29, 0x2a,
-  0x4a, 0x54, 0x80, 0x26, 0x94, 0x02, 0xd3, 0xfa,
-  0xf8, 0x20, 0x67, 0xaa, 0x53, 0x8d, 0x34, 0xfc,
-  0xfb, 0x79, 0xb6, 0x34, 0x74, 0x29, 0xf9, 0x72,
-  0x14, 0x9d, 0x89, 0x86, 0xee, 0x43, 0xb6, 0x7f,
-  0x3b, 0x05, 0x3b, 0x90, 0xd1, 0x51, 0x4f, 0xff,
-  0x5b, 0xd6, 0x76, 0x9c, 0xca, 0x36, 0x5c, 0xd8,
-  0xe9, 0xf0, 0xa7, 0x72, 0x1a, 0x2b, 0xd9, 0xf7,
-  0x9b, 0xd3, 0x5a, 0x0e, 0x93, 0xb0, 0xf7, 0x04,
-  0xc2, 0x7f, 0xe7, 0x73, 0xdd, 0x82, 0x9d, 0xc8,
-  0x68, 0x91, 0xa7, 0xff, 0x39, 0x9c, 0xf7, 0x60,
-  0xa7, 0x72, 0x1a, 0x27, 0x89, 0xff, 0xce, 0x67,
-  0x3d, 0xd8, 0x29, 0xdc, 0x86, 0x89, 0xfe, 0x7f,
-  0xf3, 0x99, 0xcf, 0x76, 0x0a, 0x77, 0x21, 0xa2,
-  0x86, 0x9f, 0xfc, 0xe6, 0x73, 0xdd, 0x82, 0x9d,
-  0xc8, 0x68, 0xa2, 0x27, 0xfd, 0xcf, 0x76, 0x0a,
-  0x77, 0x21, 0xa2, 0x91, 0x9f, 0xff, 0xb3, 0x6b,
-  0x2e, 0xf7, 0x5f, 0xfc, 0x0a, 0xd5, 0x40, 0x54,
-  0x9c, 0xc4, 0x51, 0xee, 0x23, 0x4f, 0xfc, 0xee,
-  0x7b, 0xb0, 0x53, 0xb9, 0x0d, 0x12, 0x84, 0x50,
-  0xba, 0x70, 0xf8, 0xd2, 0x10, 0xc7, 0x76, 0x76,
-  0x30, 0xaf, 0x61, 0x35, 0x93, 0x00, 0xa4, 0xdd,
-  0xa9, 0x55, 0x4b, 0x58, 0x7a, 0xb7, 0x96, 0x4f,
-  0xfe, 0x73, 0x39, 0xee, 0xc1, 0x4e, 0xe4, 0x34,
-  0x4e, 0x73, 0xff, 0x9c, 0xce, 0x7b, 0xb0, 0x53,
-  0xb9, 0x0d, 0x14, 0x4c, 0xff, 0xc2, 0xf7, 0x5b,
+  0xfe, 0x75, 0x8a, 0x6e, 0xa1, 0xa2, 0x25, 0x9f,
+  0x0a, 0x6e, 0xa1, 0xa2, 0x2d, 0x9a, 0xe9, 0x2a,
+  0x4a, 0x54, 0x80, 0x26, 0x94, 0x02, 0xd3, 0xfb,
+  0x36, 0x20, 0x67, 0xaa, 0x53, 0x8d, 0x34, 0xfc,
+  0xfc, 0x79, 0xb5, 0xb4, 0x74, 0x29, 0xf9, 0x6a,
+  0x14, 0x9d, 0x69, 0x86, 0xf1, 0x43, 0xb6, 0x7f,
+  0x3a, 0xc5, 0x37, 0x50, 0xd1, 0x51, 0x4f, 0xff,
+  0x63, 0xd8, 0x77, 0x4b, 0xba, 0x39, 0x5b, 0xe4,
+  0xe9, 0xf0, 0xa6, 0xea, 0x1a, 0x2b, 0xd9, 0xf7,
+  0x9b, 0xd3, 0xba, 0x0e, 0x93, 0xac, 0xf7, 0x04,
+  0xc2, 0x7f, 0xe7, 0x6b, 0xdd, 0x62, 0x9b, 0xa8,
+  0x68, 0x91, 0xa7, 0xff, 0x39, 0x9a, 0xf7, 0x58,
+  0xa6, 0xea, 0x1a, 0x27, 0x89, 0xff, 0xce, 0x66,
+  0xbd, 0xd6, 0x29, 0xba, 0x86, 0x89, 0xfe, 0x7f,
+  0xf3, 0x99, 0xaf, 0x75, 0x8a, 0x6e, 0xa1, 0xa2,
+  0x86, 0x9f, 0xfc, 0xe6, 0x6b, 0xdd, 0x62, 0x9b,
+  0xa8, 0x68, 0xa2, 0x27, 0xfd, 0xaf, 0x75, 0x8a,
+  0x6e, 0xa1, 0xa2, 0x91, 0x9f, 0xff, 0xaf, 0x9c,
+  0x2f, 0x57, 0x67, 0xfa, 0x0a, 0xd5, 0x40, 0x54,
+  0x9c, 0xc4, 0x51, 0xf1, 0x23, 0x4f, 0xfc, 0xed,
+  0x7b, 0xac, 0x53, 0x75, 0x0d, 0x12, 0x84, 0x50,
+  0xba, 0x70, 0xf8, 0xd2, 0x10, 0xc7, 0x8e, 0x76,
+  0x30, 0xaf, 0x61, 0x36, 0x13, 0x00, 0xa4, 0xdc,
+  0xa9, 0x55, 0x4b, 0xb8, 0x7a, 0xb7, 0x96, 0x4f,
+  0xfe, 0x73, 0x35, 0xee, 0xb1, 0x4d, 0xd4, 0x34,
+  0x4e, 0x73, 0xff, 0x9c, 0xcd, 0x7b, 0xac, 0x53,
+  0x75, 0x0d, 0x14, 0x4c, 0xff, 0xc2, 0xf7, 0x63,
   0xd5, 0x69, 0xfe, 0x01, 0xd0, 0x28, 0xea, 0xaa,
-  0x96, 0xaa, 0x53, 0xf9, 0xd8, 0x29, 0xdc, 0x86,
-  0x88, 0x72, 0x7c, 0x29, 0xdc, 0x86, 0x88, 0xbe,
-  0x7d, 0xd7, 0x7a, 0xe9, 0x2a, 0x4e, 0xc3, 0xd8,
-  0xf9, 0x84, 0xff, 0xe7, 0x33, 0x9e, 0xec, 0x14,
-  0xee, 0x43, 0x44, 0xc9, 0x3f, 0x9d, 0x82, 0x9d,
-  0xc8, 0x68, 0xb7, 0xa7, 0xff, 0x39, 0x9c, 0xf7,
-  0x60, 0xa7, 0x72, 0x1a, 0x29, 0x38, 0x54, 0xe6,
-  0x5f, 0x09, 0x3c, 0x27, 0xaa, 0x93, 0x63, 0xb9,
-  0xfc, 0xec, 0x14, 0xee, 0x43, 0x44, 0x3b, 0x3f,
-  0xf9, 0xcc, 0xe7, 0xbb, 0x05, 0x3b, 0x90, 0xd1,
-  0x2c, 0x4f, 0xe7, 0x60, 0xa7, 0x72, 0x1a, 0x23,
-  0x09, 0xf0, 0xa7, 0x72, 0x1a, 0x23, 0xd9, 0xea,
-  0xf5, 0x2d, 0x8e, 0x9e, 0x77, 0x3d, 0xd8, 0x7a,
-  0x97, 0x30, 0x9f, 0xce, 0xc1, 0x4e, 0xe4, 0x34,
-  0x58, 0x73, 0xf9, 0xd8, 0x29, 0xdc, 0x86, 0x8b,
+  0x97, 0x6a, 0x53, 0xf9, 0xd6, 0x29, 0xba, 0x86,
+  0x88, 0x72, 0x7c, 0x29, 0xba, 0x86, 0x88, 0xbe,
+  0x7d, 0xb9, 0x7a, 0xf4, 0x2a, 0x4e, 0xb3, 0xd8,
+  0xf9, 0x84, 0xff, 0xe7, 0x33, 0x5e, 0xeb, 0x14,
+  0xdd, 0x43, 0x44, 0xc9, 0x3f, 0x9d, 0x62, 0x9b,
+  0xa8, 0x68, 0xb7, 0xa7, 0xff, 0x39, 0x9a, 0xf7,
+  0x58, 0xa6, 0xea, 0x1a, 0x29, 0x38, 0x54, 0xe6,
+  0x5f, 0x09, 0x3b, 0x27, 0xaa, 0x93, 0x63, 0xb9,
+  0xfc, 0xeb, 0x14, 0xdd, 0x43, 0x44, 0x3b, 0x3f,
+  0xf9, 0xcc, 0xd7, 0xba, 0xc5, 0x37, 0x50, 0xd1,
+  0x2c, 0x4f, 0xe7, 0x58, 0xa6, 0xea, 0x1a, 0x23,
+  0x09, 0xf0, 0xa6, 0xea, 0x1a, 0x23, 0xd9, 0xea,
+  0xed, 0x2d, 0x8e, 0x9e, 0x76, 0xbd, 0xd6, 0x7a,
+  0x99, 0x30, 0x9f, 0xce, 0xb1, 0x4d, 0xd4, 0x34,
+  0x58, 0x73, 0xf9, 0xd6, 0x29, 0xba, 0x86, 0x8b,
   0x9e, 0x15, 0x3c, 0xaa, 0x0e, 0xde, 0xa5, 0xe8,
-  0x47, 0xb0, 0xe2, 0xe7, 0x73, 0xf9, 0xd8, 0x29,
-  0xdc, 0x86, 0x88, 0x7a, 0x7c, 0x29, 0xdc, 0x86,
-  0x88, 0x9a, 0x6b, 0xb0, 0xe9, 0xff, 0xd9, 0x6d,
-  0xf4, 0x55, 0x7d, 0x4d, 0xd5, 0x87, 0x45, 0x27,
-  0xc7, 0x61, 0x69, 0xeb, 0xeb, 0xdb, 0xcd, 0x10,
-  0xbc, 0x9d, 0x88, 0xe7, 0xac, 0x24, 0xf5, 0x23,
-  0x9e, 0xbd, 0xbd, 0x73, 0xa7, 0xff, 0x79, 0xa7,
-  0xe5, 0x2f, 0xd0, 0xce, 0xef, 0x9d, 0x37, 0x37,
-  0x9d, 0x2d, 0xd3, 0x11, 0x0f, 0x62, 0x2e, 0x4d,
-  0x9f, 0x5b, 0xaf, 0xcf, 0x3a, 0x7b, 0xd5, 0xf0,
-  0x0e, 0x9c, 0x10, 0x84, 0xa9, 0xf7, 0x7e, 0xf6,
-  0xc2, 0x9c, 0x5e, 0x4f, 0xba, 0xed, 0x65, 0xce,
-  0x8d, 0x91, 0x34, 0x03, 0xef, 0x9a, 0xcf, 0xfc,
-  0x0f, 0x35, 0xa2, 0xcb, 0xe1, 0xd7, 0x76, 0x74,
-  0xff, 0xbd, 0xa5, 0x7e, 0xb5, 0x5f, 0x30, 0xe9,
-  0xfb, 0x1b, 0x6a, 0xfc, 0xa9, 0xd3, 0xd9, 0xb6,
-  0x50, 0x74, 0x62, 0x79, 0xbe, 0x86, 0x03, 0x46,
-  0x36, 0x4c, 0xf9, 0xfd, 0xcb, 0xe7, 0xec, 0x0a,
-  0xe6, 0xde, 0x3a, 0x7f, 0xff, 0xf7, 0xff, 0x4a,
-  0xe9, 0xfe, 0x6d, 0x6f, 0x35, 0xa2, 0xb9, 0x4b,
-  0xc7, 0x02, 0x74, 0xfb, 0xd7, 0xd5, 0x68, 0x3a,
-  0x7f, 0x52, 0xfa, 0xe9, 0xd5, 0x69, 0x3a, 0x7f,
-  0x70, 0x75, 0x69, 0x6f, 0xc7, 0x47, 0x8f, 0xaf,
-  0xe7, 0x10, 0xa9, 0x9a, 0xe3, 0xf8, 0xc2, 0x52,
-  0x6d, 0x5e, 0x74, 0xee, 0xbd, 0x4e, 0x9b, 0x5a,
-  0x0e, 0x9e, 0x5f, 0xdd, 0xa7, 0x9b, 0x31, 0x1b,
-  0x9f, 0xff, 0x6a, 0xb7, 0xd1, 0xfd, 0x5b, 0xf4,
-  0x65, 0xf7, 0x32, 0xe7, 0x4f, 0xfd, 0x65, 0xd3,
-  0xa2, 0xff, 0xeb, 0xad, 0xce, 0x9f, 0xda, 0x29,
-  0x7f, 0xad, 0xab, 0x0e, 0x80, 0x1f, 0xff, 0xd1,
-  0xe7, 0xfc, 0x2d, 0x68, 0xaa, 0xfa, 0x8e, 0xb9,
-  0xd0, 0xa7, 0xc7, 0xa9, 0x14, 0xff, 0xff, 0xf6,
-  0xbf, 0xa8, 0xfd, 0x5a, 0xd1, 0xbe, 0xfe, 0x7e,
-  0x53, 0x7c, 0x6d, 0xfc, 0xa9, 0xd2, 0x53, 0xa7,
-  0xf3, 0xf8, 0x7d, 0x55, 0xa4, 0xe9, 0xff, 0xff,
-  0xfd, 0xe0, 0x57, 0xf9, 0xd4, 0xe8, 0xda, 0xda,
-  0xe8, 0xfe, 0x52, 0xfc, 0xd6, 0x8f, 0xe7, 0x52,
-  0x74, 0xee, 0xe4, 0x34, 0x53, 0x11, 0x88, 0xbf,
-  0x48, 0x4c, 0xcf, 0xfb, 0x3f, 0x4b, 0xeb, 0x75,
-  0x16, 0x8e, 0x9f, 0x53, 0xfc, 0x6d, 0x87, 0x47,
-  0x8f, 0xa3, 0x8f, 0xe7, 0xfb, 0x99, 0xb5, 0x96,
-  0x8c, 0x09, 0xd3, 0xff, 0xfb, 0xf8, 0x97, 0xba,
-  0xde, 0xad, 0x7f, 0x03, 0xa1, 0x5b, 0xa9, 0xd3,
-  0xfe, 0x45, 0x65, 0xb2, 0xb9, 0xef, 0x9d, 0x0a,
-  0x8a, 0x4b, 0x34, 0x4f, 0x85, 0x5b, 0x28, 0x9d,
-  0x3f, 0x77, 0xf4, 0x6c, 0xbf, 0x3a, 0x30, 0xfd,
-  0xfc, 0x45, 0xa9, 0x34, 0x50, 0xbb, 0x3f, 0xb2,
-  0x56, 0x93, 0x84, 0x8d, 0x0e, 0x92, 0x2f, 0x42,
-  0x19, 0xa0, 0xf1, 0x87, 0x8b, 0x21, 0x1d, 0xf2,
-  0x1b, 0xc6, 0xa9, 0x3f, 0xed, 0x23, 0xc1, 0xd1,
-  0xdb, 0x75, 0x07, 0x4f, 0x67, 0xf4, 0xee, 0xce,
-  0x9f, 0xff, 0xff, 0x5b, 0xd7, 0xb6, 0x0a, 0xb6,
-  0xd0, 0xcd, 0x5b, 0xf4, 0x65, 0x2f, 0xcd, 0x7e,
-  0x0a, 0x9d, 0x2b, 0xf9, 0x16, 0xd5, 0x27, 0x9f,
-  0xff, 0x66, 0x5b, 0xc9, 0x6c, 0xd1, 0x5d, 0x6c,
-  0xbb, 0xb3, 0xa7, 0xff, 0xaf, 0x6c, 0x06, 0x86,
-  0x2e, 0x5f, 0x6c, 0xf9, 0xd3, 0xfd, 0x4e, 0x86,
-  0x2e, 0x7e, 0xfb, 0x87, 0x4a, 0xb8, 0x88, 0xfe,
-  0x51, 0x97, 0xbe, 0x98, 0x85, 0xe1, 0xd3, 0x3e,
-  0x7a, 0xd2, 0xfa, 0x9d, 0x3f, 0xff, 0xff, 0xec,
-  0xfe, 0x9d, 0x1e, 0xb6, 0xae, 0x6b, 0xd7, 0x56,
-  0x7f, 0xb4, 0xdb, 0xce, 0xcb, 0x52, 0x05, 0xd8,
-  0xa9, 0xff, 0xff, 0x93, 0xc1, 0xdb, 0x51, 0xd1,
-  0xaa, 0xd1, 0x54, 0xb6, 0xb6, 0xa7, 0x82, 0x74,
-  0xda, 0xd1, 0x4a, 0x68, 0xde, 0x28, 0xac, 0x29,
-  0x61, 0x55, 0x79, 0xda, 0x33, 0x9f, 0xc6, 0xeb,
-  0x3f, 0xf9, 0x89, 0xa2, 0xdc, 0xfc, 0x67, 0x7c,
-  0x07, 0x4f, 0xff, 0xbd, 0xfb, 0xdb, 0x1b, 0xee,
-  0xd6, 0x6e, 0xfb, 0xe0, 0x3a, 0x7f, 0xe5, 0xfd,
-  0x1f, 0xc6, 0xd5, 0xd5, 0x69, 0x3a, 0x2a, 0x8a,
-  0x5d, 0x57, 0x67, 0xb2, 0xf8, 0xdd, 0x9d, 0x3b,
-  0x73, 0x2c, 0x74, 0xd9, 0xb1, 0xd1, 0x42, 0x6d,
-  0x8f, 0x87, 0x7d, 0x49, 0x2e, 0x4a, 0xd8, 0x7a,
-  0x7e, 0xd9, 0x7f, 0x6e, 0x79, 0xd3, 0x97, 0x65,
-  0x3a, 0x7f, 0x34, 0xfc, 0xbd, 0x79, 0xad, 0x07,
-  0x90, 0xc2, 0xd9, 0xf9, 0xbe, 0xdd, 0xbb, 0x50,
-  0x1d, 0x3f, 0x85, 0xaf, 0xe5, 0xba, 0xe7, 0x46,
-  0x1f, 0x2f, 0x8c, 0xe7, 0xe5, 0x06, 0x5f, 0x7d,
-  0x07, 0x43, 0xcf, 0x43, 0xe4, 0x33, 0xff, 0xfe,
-  0xbf, 0xf8, 0x15, 0xa3, 0x3d, 0xfb, 0xff, 0x1b,
-  0x68, 0xa8, 0x7e, 0x74, 0xff, 0xbd, 0x8d, 0x68,
-  0xaa, 0xdb, 0xb7, 0x67, 0x4f, 0xee, 0xa6, 0xb6,
-  0xce, 0x13, 0xa3, 0x63, 0xf5, 0xba, 0x24, 0x98,
-  0x74, 0xef, 0xe6, 0xc7, 0x42, 0x9a, 0xca, 0x44,
-  0x27, 0xea, 0x6b, 0x99, 0xfd, 0x27, 0x4f, 0x33,
-  0x7a, 0x80, 0xe8, 0xc3, 0xd2, 0xf1, 0x7c, 0x2a,
-  0x79, 0x59, 0x0e, 0x7f, 0x27, 0x8b, 0x9c, 0xfe,
-  0xbf, 0xa8, 0xcb, 0x6b, 0x73, 0xa7, 0xb2, 0x95,
-  0x68, 0xe9, 0xfa, 0xdc, 0xf6, 0x0f, 0x8e, 0x9f,
-  0x78, 0x03, 0x94, 0x9d, 0x1a, 0x51, 0x55, 0xe3,
-  0x50, 0x11, 0x6a, 0x59, 0x3f, 0xff, 0x0b, 0xed,
-  0x8d, 0x59, 0x7f, 0xa7, 0xf9, 0x7b, 0x6a, 0x74,
-  0xff, 0xfe, 0xf6, 0x52, 0xfa, 0xde, 0xca, 0xc5,
-  0xf6, 0xda, 0x15, 0xba, 0x9d, 0x3f, 0xff, 0xfe,
-  0xd7, 0xfa, 0x03, 0xd4, 0xbc, 0x78, 0x1a, 0x2b,
-  0xaa, 0xd3, 0x6c, 0xf7, 0xf3, 0x49, 0xd3, 0xff,
-  0xed, 0x44, 0x72, 0xf5, 0xb7, 0xb3, 0x45, 0x80,
-  0xa7, 0x46, 0x23, 0x8a, 0xd0, 0x8c, 0x9f, 0xfe,
-  0x7b, 0x7d, 0xb1, 0x7e, 0xd7, 0xf2, 0xf5, 0xe3,
-  0xa7, 0xff, 0xdb, 0x63, 0x34, 0x37, 0xdd, 0x6a,
-  0xd3, 0xf8, 0x68, 0x3a, 0x7f, 0xb3, 0xf4, 0x68,
-  0x07, 0x73, 0x47, 0x4f, 0xfa, 0xba, 0xff, 0x45,
-  0x75, 0xdc, 0xd4, 0x4e, 0x9f, 0xfd, 0x46, 0x8a,
-  0xdb, 0x5d, 0x17, 0xad, 0x54, 0x4e, 0x9f, 0xff,
-  0xf6, 0x53, 0x5f, 0x60, 0x74, 0x5b, 0x2f, 0x5c,
-  0xa3, 0x46, 0x7b, 0x63, 0xa3, 0x11, 0x85, 0xe5,
-  0x08, 0xa1, 0x5c, 0x3a, 0x46, 0x99, 0x49, 0x3f,
-  0x94, 0x98, 0xb9, 0x53, 0xbb, 0xc6, 0x13, 0x3f,
-  0xee, 0x1b, 0x65, 0xd7, 0xfe, 0x01, 0xd3, 0xfd,
-  0x81, 0xa5, 0xf5, 0xd1, 0x7f, 0x1d, 0x3f, 0xff,
-  0xe5, 0x45, 0x66, 0x86, 0xad, 0xef, 0xed, 0xa3,
-  0x7a, 0x7f, 0x2d, 0x87, 0x42, 0x23, 0xab, 0xe7,
-  0x8d, 0xe7, 0x93, 0xde, 0xbf, 0x94, 0xe9, 0xff,
-  0xff, 0xfa, 0xea, 0xcf, 0xfb, 0x4d, 0xb9, 0xad,
-  0x1f, 0xd5, 0xbf, 0x46, 0x52, 0xfc, 0xd7, 0xe0,
-  0xa9, 0xd0, 0xf4, 0x5c, 0x78, 0x86, 0x15, 0x79,
-  0x3f, 0x25, 0xf2, 0xfa, 0x35, 0xde, 0x87, 0x54,
-  0xf5, 0xeb, 0xc0, 0x3a, 0x7f, 0xeb, 0x7b, 0x47,
-  0x87, 0x5a, 0x38, 0x50, 0xe9, 0xef, 0x5b, 0xa8,
-  0x3a, 0x7e, 0xbf, 0x0f, 0xe9, 0xf1, 0xd1, 0x88,
-  0xb6, 0xd2, 0x42, 0x88, 0xd7, 0x22, 0x9e, 0xdf,
-  0xaf, 0x54, 0xe9, 0xff, 0xfb, 0xc3, 0xa3, 0x3d,
-  0x9f, 0xd3, 0x6f, 0x63, 0x31, 0x0e, 0x9f, 0xff,
-  0xef, 0x50, 0x2a, 0xca, 0xea, 0xba, 0x14, 0x57,
-  0x6b, 0x2b, 0x0e, 0x8c, 0x46, 0x20, 0xae, 0x4f,
-  0xff, 0xfe, 0x11, 0xf5, 0x1a, 0x2d, 0x97, 0xfa,
-  0xb5, 0x6c, 0xa1, 0x69, 0xbe, 0xa8, 0x74, 0xff,
-  0xff, 0xcb, 0xa6, 0xcb, 0xa3, 0xf9, 0xae, 0x9d,
-  0x14, 0xbe, 0xbe, 0xfe, 0xf5, 0xa0, 0xe9, 0xf5,
-  0x35, 0xf6, 0x7c, 0xe8, 0xc4, 0x53, 0xea, 0xff,
-  0x1e, 0x4d, 0x1a, 0xd1, 0x91, 0xcf, 0xfc, 0xfa,
-  0xfb, 0x4d, 0x97, 0xd4, 0x2e, 0x93, 0xa7, 0xfb,
-  0xfa, 0xb5, 0xfc, 0xb7, 0x5c, 0xe9, 0xfe, 0xda,
-  0xca, 0x1d, 0xad, 0xcc, 0x3a, 0x7f, 0xff, 0xb8,
-  0x6d, 0x97, 0xf6, 0x7e, 0x8a, 0xae, 0x7f, 0x6b,
-  0x29, 0xd3, 0xd7, 0xd1, 0x40, 0x9d, 0x14, 0xa2,
-  0x27, 0x99, 0x67, 0xe6, 0xa9, 0x7e, 0xab, 0x73,
-  0xa7, 0xfa, 0xdc, 0xcf, 0xe5, 0xba, 0xe7, 0x42,
-  0x9f, 0x3d, 0x4c, 0x27, 0xec, 0xb8, 0x8e, 0x3c,
-  0xe9, 0xfb, 0xf9, 0x6f, 0xe2, 0x1d, 0x3d, 0xfc,
-  0xae, 0x86, 0x8f, 0x56, 0xe5, 0x51, 0xb2, 0xe0,
-  0x9a, 0x46, 0xcf, 0x49, 0x57, 0x92, 0x44, 0xea,
-  0xd0, 0xc3, 0xbc, 0x22, 0x9b, 0x3b, 0x4f, 0xfd,
-  0xff, 0xe6, 0x81, 0xcb, 0x7f, 0x1a, 0x3a, 0x15,
-  0x77, 0x1b, 0x27, 0x3e, 0xfa, 0x10, 0xd3, 0xef,
-  0xab, 0x3b, 0x63, 0xa7, 0xf6, 0x35, 0x6c, 0xba,
-  0xec, 0x74, 0xff, 0xff, 0xf5, 0xb2, 0xf5, 0xe6,
-  0xb4, 0x7f, 0x29, 0x7e, 0x6b, 0x47, 0xf3, 0x6b,
-  0x79, 0xa3, 0xa6, 0xd7, 0x49, 0xd0, 0x28, 0x9e,
-  0xbc, 0x21, 0x67, 0xec, 0xa3, 0xf9, 0x4d, 0x4e,
-  0x9f, 0xfc, 0x34, 0xbe, 0xb8, 0xca, 0x56, 0xd6,
-  0x53, 0xa5, 0x53, 0xa3, 0x53, 0xda, 0xde, 0x95,
-  0x3f, 0x95, 0x9f, 0xcb, 0x75, 0xce, 0x9f, 0xff,
-  0xf5, 0xfe, 0xa0, 0xa5, 0xf5, 0xd5, 0x6f, 0xfc,
-  0xdb, 0xd8, 0x2d, 0x1d, 0x1e, 0x54, 0xd8, 0xd1,
-  0x3f, 0x43, 0x47, 0xe4, 0xf5, 0x84, 0x46, 0xa4,
-  0xbb, 0xcc, 0x67, 0xcf, 0xf0, 0xe5, 0x27, 0x4f,
-  0xb2, 0xb4, 0x60, 0x4e, 0x8a, 0x4f, 0x3a, 0xc4,
-  0xf3, 0xff, 0xef, 0x51, 0x89, 0xb5, 0xbd, 0x9a,
-  0x74, 0x69, 0xd5, 0x4e, 0x9e, 0x6f, 0xbe, 0x58,
-  0xe9, 0xff, 0xff, 0x9b, 0xe9, 0x7f, 0x53, 0xa3,
-  0xfa, 0xb7, 0xe8, 0xca, 0x5f, 0x9a, 0xfc, 0x15,
-  0x3a, 0x28, 0x45, 0x36, 0x12, 0x4f, 0xff, 0xff,
-  0x96, 0x9a, 0xea, 0xb4, 0xe8, 0xb6, 0x6d, 0xa3,
-  0xf9, 0xae, 0x9d, 0x15, 0x00, 0x3d, 0x73, 0xa7,
-  0xcb, 0xfa, 0x7a, 0x83, 0xa7, 0xff, 0xff, 0xff,
-  0x63, 0x31, 0x16, 0xca, 0xcb, 0xe5, 0x6a, 0xa2,
-  0x2b, 0xfc, 0xa3, 0x35, 0xae, 0xad, 0x7d, 0x58,
-  0x74, 0xff, 0x03, 0x36, 0xfe, 0x5b, 0xae, 0x74,
-  0xfe, 0xa3, 0x55, 0xbb, 0x3d, 0x73, 0xa7, 0xfc,
-  0xba, 0x5b, 0xf5, 0xcf, 0xb5, 0xbd, 0x87, 0x46,
-  0x1f, 0xe5, 0x26, 0xb3, 0xff, 0xd9, 0x7d, 0xb3,
-  0x01, 0x5d, 0x03, 0x5d, 0xaa, 0x74, 0xf5, 0x1e,
-  0xfd, 0xce, 0x85, 0x57, 0xe1, 0x84, 0x7e, 0x8c,
-  0x0c, 0x48, 0xd9, 0x09, 0x1b, 0x14, 0x74, 0x28,
-  0xff, 0x0b, 0x4a, 0x91, 0x6a, 0xa5, 0x3b, 0x6d,
-  0x0d, 0x1d, 0x3f, 0xfd, 0x4b, 0xfe, 0xba, 0x19,
-  0xf5, 0xd3, 0x7f, 0x50, 0x74, 0x61, 0xfb, 0x78,
-  0x82, 0x7e, 0xa1, 0xa7, 0xb7, 0x06, 0x83, 0xa7,
-  0xcc, 0xf6, 0xd9, 0xb1, 0xd2, 0x68, 0xe9, 0x95,
-  0x87, 0x4a, 0xe7, 0x40, 0x9a, 0x5e, 0x15, 0x8d,
-  0x8f, 0x56, 0xc6, 0xd3, 0xd7, 0xaf, 0x52, 0x74,
-  0xcd, 0x71, 0xd3, 0xfa, 0xde, 0x1a, 0x5f, 0xf5,
-  0x3a, 0x37, 0x52, 0x68, 0x0a, 0x69, 0x8f, 0xde,
-  0x23, 0x61, 0x16, 0xa2, 0xd3, 0xfa, 0xbe, 0xa4,
-  0x3d, 0xf0, 0x1d, 0x3f, 0xfe, 0x51, 0x54, 0xc6,
-  0x2a, 0x3f, 0xd5, 0xd5, 0x87, 0x43, 0x48, 0x86,
-  0xdc, 0x34, 0x9d, 0xfe, 0x61, 0xd3, 0x01, 0x4e,
-  0x8f, 0x1b, 0x0f, 0x8d, 0xc9, 0xcd, 0xc7, 0x5a,
-  0x34, 0xb2, 0x81, 0xa8, 0x5d, 0xda, 0x36, 0x1c,
-  0x9d, 0xd2, 0xd3, 0x0b, 0xa4, 0x97, 0xd7, 0x4c,
-  0x75, 0x3e, 0x84, 0xdb, 0x51, 0x81, 0x8c, 0x7d,
-  0x8c, 0x87, 0x55, 0xa7, 0xa3, 0xfa, 0x30, 0x5f,
-  0xcf, 0x01, 0xd6, 0x55, 0x4d, 0xe7, 0x2c, 0x5b,
-  0x46, 0x2b, 0xb9, 0x1b, 0x0e, 0xf8, 0x71, 0xb7,
-  0xab, 0xcf, 0xe7, 0x60, 0xa7, 0x72, 0x1a, 0x29,
-  0xd9, 0xf0, 0xa7, 0x72, 0x1a, 0x2a, 0x39, 0xff,
-  0x73, 0xdd, 0x82, 0x9d, 0xc8, 0x68, 0x9a, 0x24,
-  0xec, 0x3f, 0x66, 0x18, 0x4f, 0xe7, 0x60, 0xa7,
-  0x72, 0x1a, 0x2a, 0xf9, 0xf0, 0xa7, 0x72, 0x1a,
-  0x2b, 0x69, 0xfe, 0x7b, 0xb0, 0x53, 0xb9, 0x0d,
-  0x12, 0x0c, 0x9d, 0x87, 0xe3, 0xc6, 0x13, 0xff,
-  0x3b, 0x9e, 0xec, 0x14, 0xee, 0x43, 0x44, 0x87,
-  0x3e, 0x14, 0xee, 0x43, 0x45, 0x89, 0x3e, 0xc1,
-  0x5f, 0xe9, 0x3a, 0x7f, 0x59, 0x77, 0xee, 0x60,
-  0xa9, 0xd3, 0xff, 0x2e, 0x57, 0x3f, 0xb7, 0x80,
-  0xbf, 0x3a, 0x77, 0xd6, 0x83, 0xa4, 0xff, 0x9e,
-  0xfe, 0xa8, 0x73, 0xb7, 0x3c, 0x03, 0xa7, 0x0a,
-  0xbc, 0xe9, 0xfd, 0x82, 0xf0, 0x66, 0x34, 0x74,
-  0xfb, 0x9f, 0xbe, 0xca, 0x74, 0xfd, 0x5a, 0x8f,
-  0x83, 0xbb, 0x3a, 0x15, 0x11, 0x5e, 0x31, 0xe2,
-  0x89, 0xff, 0xe7, 0xab, 0x15, 0xfb, 0x7d, 0x6d,
-  0xd8, 0x27, 0x4f, 0xe4, 0xfe, 0x36, 0xfe, 0x54,
-  0xe8, 0xa5, 0x10, 0x16, 0x4d, 0x9f, 0xc0, 0x5c,
-  0xbf, 0xbe, 0x12, 0xa3, 0x15, 0x6d, 0xe9, 0x30,
-  0x42, 0x7a, 0x61, 0x29, 0xe2, 0x91, 0x1f, 0xb4,
-  0x29, 0x3a, 0x15, 0xc0, 0x24, 0x9f, 0xfa, 0xde,
-  0x5b, 0xdb, 0xb4, 0xe7, 0xc0, 0x74, 0xff, 0xf6,
-  0x52, 0xfb, 0xeb, 0x43, 0xad, 0xcc, 0xf5, 0x4e,
-  0x9a, 0xce, 0xc4, 0x4c, 0x7d, 0x16, 0x1c, 0x9a,
-  0xa2, 0xc6, 0x4d, 0x3f, 0x9d, 0x82, 0x9d, 0xc8,
-  0x68, 0xb3, 0x67, 0xff, 0x39, 0x9c, 0xf7, 0x60,
-  0xa7, 0x72, 0x1a, 0x28, 0x09, 0xfd, 0xfc, 0xb8,
-  0x37, 0xfd, 0xa3, 0xa6, 0xd1, 0x53, 0xa7, 0x93,
-  0xb9, 0x0d, 0x16, 0xfc, 0xfd, 0xbe, 0xfc, 0x9c,
-  0x27, 0x40, 0x9e, 0xb8, 0x0a, 0xe7, 0xd7, 0x7d,
-  0x77, 0xd4, 0xe9, 0xfc, 0xad, 0xb7, 0xdf, 0xea,
-  0x03, 0xa7, 0xbb, 0xdf, 0xb9, 0xd3, 0xfb, 0x5a,
-  0x6a, 0xa9, 0x8c, 0x3a, 0x7a, 0xda, 0x76, 0x61,
-  0xd3, 0x63, 0xce, 0x8c, 0x37, 0x5f, 0x25, 0x93,
-  0x95, 0x3d, 0x47, 0x9b, 0x63, 0x78, 0x90, 0xd8,
-  0xa8, 0x06, 0xdf, 0x21, 0xbb, 0x6c, 0xff, 0xb9,
-  0xee, 0xc1, 0x4e, 0xe4, 0x34, 0x52, 0x93, 0xfc,
-  0xf7, 0x60, 0xa7, 0x72, 0x1a, 0x24, 0xe9, 0x39,
-  0x88, 0x87, 0xe4, 0x68, 0x57, 0x74, 0xf3, 0x44,
-  0x64, 0x5b, 0x5a, 0xdd, 0xcc, 0x8e, 0xa1, 0x21,
-  0x63, 0xe2, 0x7d, 0xdc, 0x2b, 0x1a, 0x26, 0x64,
-  0xe3, 0xdd, 0x8a, 0x40, 0x77, 0x59, 0x44, 0xcd,
-  0xa1, 0xf9, 0x3e, 0x14, 0xee, 0x43, 0x44, 0x3f,
-  0x3f, 0xee, 0x7b, 0xb0, 0x53, 0xb9, 0x0d, 0x12,
-  0x9c, 0x9d, 0x87, 0xec, 0xc3, 0x09, 0xfc, 0xec,
-  0x14, 0xee, 0x43, 0x44, 0x4f, 0x3f, 0x9d, 0x82,
-  0x9d, 0xc8, 0x68, 0x8c, 0x67, 0xff, 0x39, 0x9c,
-  0xf7, 0x60, 0xa7, 0x72, 0x1a, 0x27, 0x98, 0x54,
-  0x77, 0xd0, 0x4e, 0xf3, 0xbb, 0x1d, 0xcf, 0x85,
-  0x3b, 0x90, 0xd1, 0x10, 0x4f, 0xfb, 0x9e, 0xec,
-  0x14, 0xee, 0x43, 0x44, 0xa9, 0x27, 0x61, 0xfb,
-  0x30, 0xc2, 0x7f, 0x3b, 0x05, 0x3b, 0x90, 0xd1,
-  0x14, 0x4f, 0xe7, 0x60, 0xa7, 0x72, 0x1a, 0x23,
-  0x29, 0xff, 0xce, 0x67, 0x3d, 0xd8, 0x29, 0xdc,
-  0x86, 0x89, 0x96, 0x7f, 0x3b, 0x05, 0x3b, 0x90,
-  0xd1, 0x52, 0x4f, 0xe7, 0x60, 0xa7, 0x72, 0x1a,
-  0x2b, 0xa9, 0xfc, 0xec, 0x14, 0xee, 0x43, 0x45,
-  0x8b, 0x3f, 0xf3, 0x39, 0xee, 0xc1, 0x4e, 0xe4,
-  0x34, 0x4f, 0x53, 0xfc, 0x17, 0x72, 0xfb, 0x73,
-  0xcd, 0xe7, 0x43, 0x91, 0x14, 0xa9, 0x93, 0xf6,
-  0xeb, 0xb2, 0xfe, 0xd6, 0xa7, 0x4f, 0x0b, 0x2f,
-  0x49, 0xd3, 0x93, 0x2c, 0x54, 0xff, 0xfd, 0x6f,
-  0xf6, 0x9f, 0x0a, 0xbd, 0xf9, 0x50, 0x01, 0x4e,
-  0x9f, 0xff, 0x87, 0xcd, 0xfc, 0xc7, 0x28, 0x8f,
-  0x9b, 0xd3, 0x5a, 0x0e, 0x9f, 0x27, 0xad, 0xbd,
-  0x87, 0x4f, 0xfe, 0xea, 0xff, 0x00, 0xeb, 0x79,
-  0x38, 0x4e, 0x9f, 0x5e, 0xca, 0xc4, 0x3a, 0x7f,
-  0xf7, 0xf4, 0x2a, 0xfd, 0x59, 0xa3, 0x45, 0xb7,
-  0x0e, 0x9b, 0xa9, 0x3a, 0x7f, 0x75, 0x7a, 0xda,
-  0xfe, 0x83, 0xa3, 0xe7, 0x95, 0xa8, 0xb4, 0x79,
-  0x50, 0x80, 0xad, 0xb1, 0x82, 0xc5, 0x3f, 0x47,
-  0xb9, 0x33, 0x7c, 0x27, 0x27, 0x7f, 0xae, 0x6a,
-  0x85, 0xa7, 0x7f, 0xd5, 0x3a, 0x41, 0xdd, 0x0f,
-  0x11, 0x4a, 0x27, 0x85, 0xb7, 0x30, 0xe8, 0xc3,
-  0xce, 0xf1, 0x64, 0xff, 0xbd, 0x6e, 0xba, 0xb5,
-  0x5f, 0x30, 0xe9, 0xf7, 0xf4, 0xfb, 0x2a, 0x74,
-  0xff, 0xd8, 0x1e, 0x06, 0x25, 0xb8, 0x15, 0x3a,
-  0x3c, 0x7d, 0x5f, 0x29, 0x9e, 0xfe, 0xda, 0x34,
-  0x9d, 0x3f, 0x65, 0x43, 0xdf, 0xa0, 0xe8, 0xe3,
-  0xd4, 0xf9, 0x3c, 0xfb, 0x5d, 0x35, 0xd9, 0x4e,
-  0x8c, 0x46, 0x17, 0x9d, 0xac, 0x43, 0x3f, 0xff,
-  0xfa, 0xcb, 0xe1, 0x15, 0xdf, 0x7f, 0x7f, 0x57,
-  0xe5, 0x76, 0xd7, 0x85, 0xe7, 0x4f, 0xa8, 0xd8,
-  0x7c, 0x13, 0xa7, 0xed, 0xb8, 0x41, 0xb9, 0x87,
-  0x4f, 0xfb, 0xfe, 0x7d, 0xed, 0x83, 0xea, 0x9d,
-  0x3f, 0xee, 0xc0, 0x2f, 0xfb, 0x6c, 0xd2, 0x74,
-  0x3c, 0xff, 0x00, 0x7d, 0x3f, 0xf9, 0x72, 0x9b,
-  0xd9, 0x6f, 0xf5, 0x05, 0x4e, 0x9d, 0x5b, 0x30,
-  0xe8, 0xb9, 0xf2, 0xea, 0x93, 0x3f, 0x6b, 0x5b,
-  0xd7, 0x2e, 0x74, 0xe0, 0x84, 0x25, 0x4f, 0xfe,
-  0xbf, 0xaf, 0x5b, 0x7b, 0x73, 0x78, 0xab, 0xca,
-  0x71, 0x79, 0x1e, 0x45, 0x46, 0xa9, 0x50, 0xf5,
-  0x58, 0x98, 0xf5, 0xe2, 0x91, 0x85, 0x5f, 0xe1,
-  0x0f, 0x78, 0x65, 0xcd, 0xa7, 0x0e, 0x9f, 0x06,
-  0xeb, 0x48, 0x4e, 0x9f, 0xcb, 0xc3, 0x60, 0xf6,
-  0xc5, 0x4c, 0x10, 0x95, 0x1b, 0x1e, 0x38, 0x4c,
-  0x67, 0xab, 0x7f, 0x6e, 0xca, 0x71, 0xa3, 0x98,
-  0x35, 0x3a, 0x58, 0x74, 0xa9, 0xc3, 0x4b, 0x71,
-  0x69, 0xff, 0xab, 0x5d, 0xbe, 0xbb, 0x59, 0x6f,
-  0x53, 0xa1, 0x4f, 0xb7, 0x52, 0x79, 0xff, 0x5f,
-  0xc3, 0xc0, 0x6f, 0xbe, 0x58, 0xe8, 0x79, 0xf1,
-  0x78, 0x8a, 0x7d, 0x94, 0x67, 0x84, 0xe9, 0xfa,
-  0xea, 0x3b, 0x67, 0xce, 0x9f, 0xdb, 0x59, 0x7e,
-  0x1e, 0xa4, 0xe9, 0xff, 0xbd, 0xb5, 0x95, 0x14,
-  0x1d, 0xf0, 0x1d, 0x3f, 0xff, 0xef, 0x33, 0xbf,
-  0x4b, 0xdc, 0x1c, 0xf3, 0x6c, 0xfe, 0x6d, 0xcf,
-  0x3c, 0x5e, 0xb0, 0xa9, 0x8f, 0xf1, 0x65, 0x4d,
-  0x35, 0x43, 0x9f, 0xfe, 0xcb, 0xd7, 0x1a, 0xb2,
-  0xb6, 0xcb, 0x59, 0x4e, 0x9f, 0xff, 0xff, 0x7b,
-  0x29, 0xaf, 0xb0, 0x3a, 0x32, 0x97, 0xd7, 0xd7,
-  0xaf, 0xa9, 0xdb, 0x6d, 0x68, 0x3a, 0x3e, 0x8d,
-  0xeb, 0xa8, 0x4d, 0xe0, 0x9d, 0x36, 0xf0, 0x1d,
-  0x0d, 0x1a, 0xe0, 0x0b, 0x4e, 0x7f, 0x6c, 0x74,
-  0xc1, 0x09, 0xd1, 0xe3, 0xd4, 0xa9, 0x10, 0x47,
-  0x27, 0x5f, 0x78, 0x0a, 0x71, 0xaf, 0x9f, 0xff,
-  0xfd, 0x75, 0xda, 0xda, 0xf6, 0x96, 0x76, 0xd9,
-  0x9f, 0xd3, 0x5a, 0xe7, 0xc0, 0x74, 0x52, 0x8a,
-  0xbf, 0x17, 0x4f, 0xf6, 0x5e, 0xca, 0x37, 0xc4,
-  0x3a, 0x72, 0x8b, 0x47, 0x46, 0x27, 0xe7, 0xd1,
-  0xbf, 0xfc, 0x93, 0x70, 0xd6, 0x7d, 0xfc, 0xbf,
-  0x37, 0x9d, 0x3f, 0xf6, 0x08, 0xe3, 0x56, 0xca,
-  0xf7, 0xce, 0x9f, 0xdf, 0x51, 0xd5, 0x2c, 0xa7,
-  0x4f, 0xbd, 0xa6, 0xdc, 0xf3, 0xa7, 0xef, 0x2b,
-  0x28, 0xc0, 0x9d, 0x30, 0x42, 0x74, 0x21, 0xf6,
-  0x09, 0x48, 0x4b, 0x67, 0xfb, 0x1a, 0xe6, 0xba,
-  0x97, 0xd4, 0xa7, 0x1a, 0xd9, 0xff, 0xd9, 0xf0,
-  0x65, 0xbd, 0x4d, 0x6d, 0xad, 0x4e, 0x9f, 0xbf,
-  0xc0, 0xdb, 0x3e, 0x74, 0xfc, 0xcf, 0x6e, 0x60,
-  0xe9, 0x3a, 0x70, 0x42, 0x12, 0xa7, 0xfe, 0x51,
-  0xfe, 0xbd, 0xbf, 0x1a, 0x56, 0x1c, 0xe2, 0xf2,
-  0x37, 0x6a, 0x8b, 0x9a, 0x86, 0x55, 0x52, 0xae,
-  0x99, 0xa9, 0x68, 0x53, 0x67, 0x70, 0xd0, 0x79,
-  0x04, 0xa7, 0x9f, 0x94, 0xbc, 0xf2, 0x09, 0x4e,
-  0xaf, 0xb6, 0x3c, 0x82, 0x53, 0x04, 0x27, 0x90,
-  0x4a, 0x11, 0x14, 0x8d, 0x14, 0x5c, 0xbc, 0x25,
-  0x53, 0x75, 0xcb, 0x20, 0x91, 0xc6, 0xf6, 0x7e,
-  0xcb, 0x66, 0x7f, 0x49, 0xd3, 0xbb, 0xe0, 0xf9,
-  0xf0, 0x5c, 0xce, 0x7b, 0x73, 0x3a, 0xc7, 0x4b,
-  0x37, 0x67, 0xac, 0x03, 0x39, 0xfc, 0xd3, 0xf5,
-  0xa2, 0xfe, 0xa0, 0xa9, 0xfd, 0xe7, 0xeb, 0xd5,
-  0xb7, 0x8e, 0x93, 0xca, 0x9d, 0xc3, 0x41, 0x50,
-  0x54, 0x29, 0xb5, 0x41, 0x06, 0x0d, 0xcf, 0x7d,
-  0x40, 0x85, 0x38, 0xd6, 0x42, 0xa3, 0x17, 0x21,
-  0x2b, 0x3d, 0xaf, 0x0b, 0xce, 0x93, 0x0e, 0x9b,
-  0x1f, 0xb1, 0xb1, 0x68, 0x86, 0x7c, 0x1c, 0x6b,
-  0xcc, 0x3a, 0x7e, 0x45, 0x69, 0xea, 0x02, 0xa5,
-  0xe3, 0xa7, 0xfa, 0x8d, 0x5f, 0xb5, 0xb5, 0xef,
-  0x9d, 0x3f, 0x79, 0x59, 0x46, 0x04, 0xe9, 0xf6,
-  0x50, 0xcc, 0x61, 0xd3, 0xab, 0xe1, 0x3a, 0x3e,
-  0x78, 0x57, 0x27, 0x9f, 0xbf, 0xc0, 0x06, 0xb5,
-  0x3a, 0x7e, 0xf6, 0x9d, 0xea, 0xc7, 0x6c, 0x98,
-  0x66, 0x08, 0x09, 0xed, 0x5b, 0xee, 0x45, 0x18,
-  0x9e, 0x8f, 0x8a, 0x3f, 0x19, 0xc4, 0xf7, 0xf2,
-  0x8d, 0x4e, 0x87, 0xab, 0xd7, 0xc2, 0xbb, 0x43,
-  0xf7, 0xea, 0xf5, 0x8f, 0xfe, 0xe6, 0xd3, 0xff,
-  0xea, 0x04, 0x73, 0x6e, 0x65, 0xba, 0xff, 0x56,
-  0x8e, 0x9c, 0x10, 0x84, 0xa9, 0x9e, 0xa5, 0x38,
-  0xbc, 0x85, 0x44, 0xa8, 0xb8, 0xcf, 0xd4, 0x34,
-  0xf6, 0xe0, 0xd0, 0x74, 0xf5, 0xba, 0x90, 0x9d,
-  0x3e, 0xa0, 0x7c, 0xac, 0x3a, 0x7f, 0xf9, 0x77,
-  0xdf, 0xea, 0x0e, 0xb8, 0x37, 0xfd, 0xe7, 0x46,
-  0xea, 0x46, 0x87, 0x8d, 0x38, 0x8a, 0xe4, 0xf3,
-  0x9f, 0xef, 0x9d, 0x3f, 0x5d, 0x5a, 0xfe, 0xb5,
-  0x3a, 0x1e, 0x79, 0x77, 0x1c, 0x9d, 0xae, 0xad,
-  0xd9, 0xd3, 0x73, 0x9b, 0xa3, 0x74, 0x31, 0xba,
-  0xc6, 0xdb, 0xaf, 0xc8, 0x96, 0x51, 0x55, 0x10,
-  0xff, 0x79, 0x0e, 0xd1, 0xb5, 0xe4, 0xaf, 0x3d,
-  0x2c, 0xc8, 0x2f, 0xe8, 0x49, 0x35, 0x19, 0x50,
-  0x91, 0x32, 0x34, 0x5b, 0x4b, 0x0e, 0xe4, 0x5f,
-  0x94, 0xd6, 0x53, 0x7d, 0xe7, 0x74, 0xb5, 0x87,
-  0xc6, 0xe4, 0x3c, 0x77, 0xc2, 0x35, 0xbc, 0x8a,
-  0x7f, 0xf3, 0x99, 0xcf, 0x76, 0x0a, 0x77, 0x21,
-  0xa2, 0x8a, 0x9f, 0xce, 0xc1, 0x4e, 0xe4, 0x34,
-  0x5d, 0x13, 0xff, 0x3b, 0x9e, 0xec, 0x14, 0xee,
-  0x43, 0x44, 0x97, 0x3f, 0x9d, 0x82, 0x9d, 0xc8,
-  0x68, 0xbc, 0xa1, 0x5b, 0xf2, 0xba, 0x09, 0xde,
-  0x77, 0x87, 0x68, 0xa4, 0xd1, 0xdb, 0x0e, 0xed,
-  0x0c, 0x5f, 0xd7, 0x47, 0x55, 0x8e, 0xce, 0xea,
-  0x5a, 0x9d, 0xb6, 0x4c, 0x9f, 0xfc, 0xe6, 0x73,
-  0xdd, 0x82, 0x9d, 0xc8, 0x68, 0x96, 0x67, 0x93,
-  0xb9, 0x0d, 0x11, 0x9c, 0xfd, 0xe5, 0x65, 0x18,
-  0x13, 0xa6, 0xfb, 0xce, 0x93, 0x0e, 0x9f, 0x78,
-  0x6d, 0xce, 0x13, 0xd3, 0x61, 0x6e, 0xf1, 0x69,
-  0xfb, 0x9f, 0xe1, 0xe1, 0x3a, 0x75, 0x56, 0x93,
-  0xa0, 0x53, 0x10, 0x63, 0xf7, 0xd3, 0x2e, 0x55,
-  0x3f, 0xf5, 0xfc, 0x3c, 0x0d, 0x14, 0xbd, 0x58,
-  0x74, 0xfb, 0xea, 0xfa, 0xf1, 0xd1, 0xe3, 0xec,
-  0x6c, 0x8d, 0x3f, 0xff, 0x7b, 0x6d, 0x6f, 0x5a,
-  0x5e, 0xbf, 0x05, 0x74, 0x6b, 0xf3, 0xa7, 0xfe,
-  0xc6, 0x5f, 0xc1, 0xaa, 0xdb, 0xb7, 0x67, 0x4f,
-  0xfa, 0xcb, 0xeb, 0x79, 0x7e, 0xd6, 0xa7, 0x49,
-  0xd8, 0x9d, 0xbb, 0x50, 0xa9, 0xe2, 0x4f, 0xb1,
-  0xd5, 0x1e, 0x7f, 0xf3, 0x99, 0xcf, 0x76, 0x0a,
-  0x77, 0x21, 0xa2, 0x69, 0x9f, 0xfc, 0xe6, 0x73,
-  0xdd, 0x82, 0x9d, 0xc8, 0x68, 0x9c, 0x67, 0xff,
-  0x39, 0x9c, 0xf7, 0x60, 0xa7, 0x72, 0x1a, 0x28,
-  0x19, 0xf0, 0xa7, 0x72, 0x1a, 0x2e, 0x09, 0x97,
-  0xc7, 0x4f, 0xef, 0xbd, 0x7d, 0xb6, 0x30, 0xe9,
-  0x3b, 0x0f, 0xe2, 0xc6, 0x1a, 0x8a, 0xcf, 0xef,
-  0x3b, 0x7a, 0x83, 0x02, 0x74, 0xff, 0x3d, 0xd8,
-  0x29, 0xdc, 0x86, 0x89, 0x26, 0x4e, 0xb1, 0xfa,
-  0xf1, 0xa4, 0x50, 0xbb, 0x5a, 0xf9, 0x63, 0x28,
-  0xaa, 0xd2, 0x90, 0x14, 0xab, 0x0c, 0xab, 0xc2,
-  0xaa, 0x7f, 0xda, 0x79, 0xd8, 0x29, 0xdc, 0x86,
-  0x8b, 0x52, 0x7f, 0xdc, 0xf7, 0x60, 0xa7, 0x72,
-  0x1a, 0x25, 0x58, 0x3a, 0x4e, 0xd2, 0x89, 0x86,
-  0x24, 0x37, 0xa3, 0x4f, 0xe7, 0x60, 0xa7, 0x72,
-  0x1a, 0x22, 0x99, 0xfc, 0xec, 0x14, 0xee, 0x43,
-  0x44, 0x69, 0x3f, 0x9d, 0x82, 0x9d, 0xc8, 0x68,
-  0xa7, 0xe7, 0xff, 0x39, 0x9c, 0xf7, 0x60, 0xa7,
-  0x72, 0x1a, 0x26, 0xa9, 0xfc, 0xec, 0x14, 0xee,
-  0x43, 0x45, 0x77, 0x3c, 0x9d, 0xc8, 0x68, 0xaf,
-  0xa7, 0x04, 0x21, 0x2a, 0x5f, 0x29, 0xc5, 0xe4,
-  0x09, 0xf3, 0x31, 0x1e, 0x73, 0xd6, 0x93, 0xa7,
-  0xfd, 0x96, 0x0f, 0x5e, 0xab, 0x94, 0x1d, 0x2b,
-  0x9d, 0x3f, 0xde, 0x1c, 0xa3, 0xcf, 0xcd, 0x8e,
-  0x81, 0x3c, 0x9e, 0x10, 0x93, 0xb1, 0x1c, 0x6d,
-  0x10, 0xfc, 0x72, 0xb0, 0x86, 0x9f, 0xfc, 0xe6,
-  0x73, 0xdd, 0x82, 0x9d, 0xc8, 0x68, 0x9e, 0xe7,
-  0xf3, 0xb0, 0x53, 0xb9, 0x0d, 0x17, 0x0c, 0xff,
-  0xce, 0xe7, 0xbb, 0x05, 0x3b, 0x90, 0xd1, 0x27,
-  0xc2, 0xab, 0xe3, 0xa0, 0xed, 0xe7, 0x7a, 0x4e,
-  0xd0, 0xed, 0xa5, 0x21, 0x8e, 0x12, 0xc9, 0x15,
-  0x52, 0x6c, 0x77, 0x3f, 0x9d, 0x82, 0x9d, 0xc8,
-  0x68, 0x8a, 0xa7, 0xf3, 0xb0, 0x53, 0xb9, 0x0d,
-  0x14, 0xcc, 0xff, 0xe7, 0x33, 0x9e, 0xec, 0x14,
-  0xee, 0x43, 0x44, 0xcf, 0x3f, 0xf9, 0xcc, 0xe7,
-  0xbb, 0x05, 0x3b, 0x90, 0xd1, 0x46, 0xc5, 0x09,
-  0x8d, 0x6c, 0x77, 0xa4, 0xee, 0xea, 0x53, 0xff,
-  0x3b, 0x9e, 0xec, 0x14, 0xee, 0x43, 0x44, 0x75,
-  0x3f, 0x7b, 0x3f, 0xb6, 0x50, 0x74, 0xf8, 0x53,
-  0xb9, 0x0d, 0x14, 0xd4, 0xff, 0xcf, 0xb7, 0xbf,
-  0x45, 0x75, 0x51, 0x68, 0xe9, 0xfb, 0xca, 0xca,
-  0x30, 0x27, 0x4f, 0xff, 0x65, 0xed, 0x8f, 0x1e,
-  0xfd, 0xed, 0xcf, 0x3a, 0x65, 0x01, 0xd3, 0xfd,
-  0x5e, 0xa5, 0x53, 0xc8, 0xe1, 0x44, 0x7f, 0xcb,
-  0x77, 0xa6, 0xc9, 0xdb, 0x27, 0x25, 0x85, 0xd4,
-  0x98, 0x5e, 0x1a, 0xd3, 0xe1, 0x4e, 0xe4, 0x34,
-  0x55, 0x53, 0xfe, 0xe7, 0xbb, 0x05, 0x3b, 0x90,
-  0xd1, 0x36, 0xc9, 0xd8, 0x7e, 0xcc, 0x30, 0x9f,
-  0xce, 0xc1, 0x4e, 0xe4, 0x34, 0x57, 0xf3, 0xf9,
-  0xd8, 0x29, 0xdc, 0x86, 0x8b, 0x1a, 0x7c, 0x29,
-  0xdc, 0x86, 0x8b, 0x56, 0x7f, 0xdc, 0xf7, 0x60,
-  0xa7, 0x72, 0x1a, 0x28, 0x29, 0x3b, 0x0f, 0xd9,
-  0x86, 0x13, 0xe1, 0x4e, 0xe4, 0x34, 0x5c, 0x53,
-  0xcd, 0xed, 0xfe, 0x43, 0xa7, 0xf2, 0xb3, 0x9b,
-  0x28, 0xb7, 0x9d, 0x27, 0x62, 0x23, 0x38, 0xc2,
-  0xe4, 0xf3, 0xf9, 0xd8, 0x29, 0xdc, 0x86, 0x8b,
-  0xa6, 0x7f, 0xff, 0x2d, 0xbf, 0xaf, 0x6e, 0xf1,
-  0xf6, 0xcd, 0x39, 0xb3, 0x5a, 0x9d, 0x3f, 0xe7,
-  0xe0, 0x8f, 0x3e, 0x8c, 0x09, 0xd3, 0xbf, 0xce,
-  0x14, 0x52, 0xdd, 0xa6, 0x7f, 0xc2, 0xb4, 0xdb,
-  0xab, 0x75, 0x09, 0xd3, 0xf6, 0xe9, 0xfc, 0xb7,
-  0x5c, 0xe9, 0xf8, 0x1c, 0xd3, 0xfd, 0x73, 0xa7,
-  0xff, 0xfd, 0xa5, 0x76, 0xb6, 0x53, 0x7f, 0xf5,
-  0x81, 0xd5, 0xaf, 0x0a, 0x1d, 0x3c, 0x9d, 0xc8,
-  0x68, 0x93, 0x27, 0xf8, 0x72, 0x9b, 0xdf, 0x9f,
-  0x53, 0xa0, 0x4f, 0x8d, 0x85, 0x73, 0xf6, 0xc0,
-  0xdd, 0x2a, 0x0d, 0xc3, 0xa7, 0xff, 0x5b, 0xd7,
-  0xa5, 0x3c, 0x35, 0x69, 0x78, 0xe9, 0xf6, 0x5f,
-  0xcc, 0xe3, 0xa7, 0xff, 0xdc, 0x82, 0xb6, 0xfe,
-  0x5f, 0x1c, 0x10, 0x84, 0xa8, 0x79, 0xfc, 0x5c,
-  0x9a, 0x7f, 0xf6, 0xbf, 0xeb, 0xa8, 0xd6, 0xcb,
-  0xfb, 0x9d, 0x38, 0x21, 0x09, 0x53, 0xf0, 0xf5,
-  0x0c, 0xf5, 0x4a, 0x71, 0x79, 0x3e, 0xc6, 0x0e,
-  0x6e, 0xce, 0x9f, 0x7a, 0xf4, 0x60, 0x4e, 0x9f,
-  0xe5, 0x4b, 0x7f, 0x5b, 0xad, 0x4e, 0x81, 0x3e,
-  0x06, 0x14, 0x4f, 0xf6, 0x70, 0x34, 0x66, 0xdc,
-  0xf3, 0xa7, 0xff, 0x75, 0x16, 0xf2, 0xff, 0x1a,
-  0xf0, 0xf8, 0xe8, 0xc4, 0x52, 0x5c, 0x84, 0x27,
-  0x33, 0xef, 0xe5, 0xba, 0xe7, 0x4f, 0xf9, 0xeb,
-  0xfa, 0x37, 0x8f, 0xf5, 0x79, 0xd1, 0xbb, 0x3e,
-  0x86, 0x89, 0xa7, 0xaf, 0x46, 0x6c, 0x74, 0xff,
-  0x7b, 0x4e, 0xf1, 0x03, 0x3d, 0x53, 0xa1, 0xa3,
-  0xe0, 0xdc, 0x23, 0x9c, 0x10, 0x84, 0xe9, 0xff,
-  0xf6, 0x32, 0xff, 0x50, 0x66, 0xd5, 0xc6, 0x2a,
-  0x14, 0xe2, 0xf2, 0x31, 0x32, 0xbf, 0x42, 0x1e,
-  0xc8, 0x53, 0xf5, 0x97, 0x42, 0x7a, 0x83, 0xa7,
-  0xe1, 0xe1, 0xfa, 0xbc, 0xe8, 0xd8, 0xf6, 0x44,
-  0xbe, 0x67, 0xb9, 0xb8, 0xbd, 0x56, 0xa6, 0x2f,
-  0x2e, 0xc8, 0x68, 0x69, 0x21, 0x43, 0x7a, 0x61,
-  0x84, 0xd1, 0x17, 0x32, 0xfc, 0xf2, 0xb1, 0x96,
-  0xde, 0x3c, 0x2d, 0xf0, 0x8e, 0x9f, 0x63, 0x07,
-  0x37, 0x67, 0x4f, 0xfd, 0x96, 0xfa, 0xd1, 0xbe,
-  0xd6, 0xed, 0xd9, 0xd3, 0xf7, 0x23, 0x82, 0x10,
-  0x9d, 0x27, 0x23, 0x22, 0x70, 0x4c, 0xfa, 0x7b,
-  0xa3, 0xf0, 0xe2, 0xa9, 0x4b, 0x64, 0xa8, 0x7b,
-  0x3a, 0x07, 0x68, 0xf7, 0xa9, 0x86, 0x00, 0x93,
-  0xb0, 0xec, 0x10, 0xb1, 0xac, 0x2c, 0xee, 0x69,
-  0xad, 0x25, 0xf2, 0x7f, 0x3b, 0x05, 0x3b, 0x90,
-  0xd1, 0x1a, 0xcf, 0x85, 0x3b, 0x90, 0xd1, 0x52,
-  0xcd, 0xc8, 0x68, 0x86, 0xa4, 0xec, 0x3d, 0x1e,
-  0x30, 0x9f, 0xf9, 0xdc, 0xf7, 0x60, 0xa7, 0x72,
-  0x1a, 0x23, 0xe9, 0xfc, 0xec, 0x14, 0xee, 0x43,
-  0x45, 0x8f, 0x3f, 0x6e, 0x9f, 0xcb, 0x75, 0xce,
-  0x9f, 0xef, 0xf0, 0x2b, 0xd7, 0xbf, 0x1d, 0x3c,
-  0x06, 0x78, 0x4e, 0x9f, 0xff, 0xe5, 0x1f, 0xe6,
-  0xd9, 0x6b, 0x79, 0x2d, 0xeb, 0xd7, 0xa9, 0x3a,
-  0x3c, 0x88, 0x7b, 0x10, 0xce, 0xee, 0x43, 0x45,
-  0xa1, 0x3f, 0xee, 0x0b, 0x7a, 0x70, 0xd1, 0x81,
-  0x3a, 0x42, 0x87, 0xca, 0x24, 0xd3, 0xf3, 0x6d,
-  0xf7, 0xfa, 0x80, 0xe9, 0xf2, 0xdf, 0x2c, 0xa7,
-  0x4f, 0xff, 0x65, 0xeb, 0x8d, 0x59, 0x5b, 0x65,
-  0xac, 0xa7, 0x45, 0x07, 0xeb, 0xf2, 0x58, 0x54,
-  0x64, 0xe4, 0x29, 0xa7, 0xfe, 0xca, 0xfb, 0x5f,
-  0xbc, 0x57, 0x36, 0x3a, 0x7d, 0x7b, 0x77, 0xf4,
-  0x9d, 0x3f, 0xdf, 0xd6, 0x8d, 0xad, 0x9f, 0x53,
-  0xa6, 0xfe, 0x61, 0xf2, 0x21, 0x4c, 0xfe, 0xcb,
-  0x35, 0xeb, 0x79, 0x87, 0x4f, 0xe7, 0xe0, 0xd7,
-  0xeb, 0x41, 0xd3, 0xdb, 0x65, 0xb8, 0xe9, 0xfe,
-  0xcc, 0x0e, 0x22, 0x60, 0x4e, 0x8c, 0x45, 0xdd,
-  0x26, 0x9c, 0x65, 0x52, 0x19, 0xec, 0xb7, 0x5c,
-  0xe9, 0xfd, 0xa7, 0xdf, 0xd5, 0xf9, 0x53, 0xa4,
-  0xe6, 0xe2, 0xe5, 0x5a, 0x98, 0xed, 0x0b, 0xec,
-  0x84, 0x45, 0xa1, 0xdd, 0xf2, 0x6a, 0xc2, 0xa2,
-  0xf0, 0xe6, 0xdc, 0x3c, 0xde, 0x41, 0x3f, 0x37,
-  0xfb, 0x6f, 0xab, 0x47, 0x4f, 0x65, 0xba, 0xe7,
-  0x4b, 0x74, 0xc3, 0xd2, 0xf9, 0x94, 0xf8, 0x53,
-  0xb9, 0x0d, 0x16, 0xb4, 0xff, 0xb9, 0xee, 0xc1,
-  0x4e, 0xe4, 0x34, 0x50, 0x72, 0x73, 0x71, 0x14,
-  0x58, 0x58, 0xc3, 0x09, 0xff, 0xce, 0x67, 0x3d,
-  0xd8, 0x29, 0xdc, 0x86, 0x8a, 0x2e, 0x7f, 0x3b,
-  0x05, 0x3b, 0x90, 0xd1, 0x75, 0x43, 0xd9, 0x0a,
-  0x69, 0x08, 0xcf, 0x13, 0x31, 0x32, 0xd3, 0x9c,
-  0xc0, 0x8e, 0xa6, 0xa7, 0x37, 0x52, 0x9f, 0x0a,
-  0x77, 0x21, 0xa2, 0x21, 0x9d, 0x6c, 0xd8, 0xe9,
-  0x3b, 0x0f, 0x32, 0x93, 0x09, 0xfc, 0xec, 0x14,
-  0xee, 0x43, 0x44, 0x6d, 0x3f, 0x9d, 0x82, 0x9d,
-  0xc8, 0x68, 0xa6, 0xe7, 0xf3, 0xb0, 0x53, 0xb9,
-  0x0d, 0x15, 0x04, 0xfe, 0x76, 0x0a, 0x77, 0x21,
-  0xa2, 0xa6, 0x9f, 0x0a, 0x77, 0x21, 0xa2, 0xb0,
-  0x9f, 0x78, 0x3b, 0x6a, 0x27, 0x4f, 0xf3, 0xdd,
-  0x82, 0x9d, 0xc8, 0x68, 0x8f, 0xe7, 0x62, 0xd0,
-  0x74, 0x9d, 0x88, 0xb5, 0x43, 0x0e, 0x29, 0xfa,
-  0x0c, 0xff, 0xe7, 0x33, 0x9e, 0xec, 0x14, 0xee,
-  0x43, 0x44, 0xdf, 0x3f, 0xf3, 0x39, 0xee, 0xc1,
-  0x4e, 0xe4, 0x34, 0x4f, 0xd3, 0xf3, 0x75, 0xdd,
-  0x5b, 0xa6, 0xe6, 0x52, 0x74, 0xff, 0xf2, 0xaa,
-  0xaa, 0xaa, 0xaa, 0xad, 0x35, 0x3a, 0x7c, 0x3e,
-  0xa3, 0x98, 0x54, 0xc1, 0x09, 0x51, 0x86, 0xf4,
-  0x24, 0xf2, 0xd4, 0xa7, 0x1a, 0x08, 0x54, 0x63,
-  0xd6, 0x14, 0xd3, 0xf0, 0xf2, 0x5b, 0xc2, 0x74,
-  0xf5, 0x0c, 0xf3, 0xce, 0x9f, 0x57, 0xfa, 0xf3,
-  0xce, 0x9f, 0xd6, 0x56, 0x38, 0x00, 0x53, 0xa4,
-  0x2a, 0x7f, 0xb8, 0x47, 0xe2, 0x89, 0xff, 0x2d,
-  0x3b, 0x6f, 0x5d, 0xdd, 0xb5, 0xa9, 0xd3, 0x81,
-  0x5c, 0x3a, 0x7f, 0xed, 0x96, 0xfd, 0x5c, 0xb5,
-  0xbc, 0xc3, 0xa7, 0x5f, 0xcd, 0x1d, 0x0a, 0x7c,
-  0x35, 0x44, 0x85, 0x4f, 0x93, 0xc4, 0xe3, 0x0a,
-  0x76, 0x19, 0x7d, 0x1e, 0xef, 0x93, 0xdc, 0xd6,
-  0xf6, 0x1d, 0x37, 0x7c, 0xe8, 0x13, 0x72, 0xc2,
-  0x49, 0xc1, 0x08, 0x4e, 0x9e, 0xa3, 0xfe, 0x52,
-  0x9c, 0x5e, 0x4f, 0x53, 0x7f, 0x21, 0xd0, 0xa8,
-  0x8f, 0xb1, 0xe6, 0xa6, 0x33, 0xff, 0x51, 0xa8,
-  0x33, 0xfa, 0xb4, 0xb7, 0xe3, 0xa7, 0x96, 0xf5,
-  0x43, 0x44, 0x1d, 0x3f, 0x75, 0x97, 0x77, 0xab,
-  0xce, 0x81, 0x45, 0x2d, 0xd1, 0xdb, 0x16, 0xcc,
-  0x3b, 0x1d, 0x30, 0x42, 0x74, 0x3c, 0xd6, 0x04,
-  0x5a, 0x7a, 0xab, 0xe6, 0xc5, 0x38, 0xd0, 0xcf,
-  0xab, 0xbf, 0x60, 0x54, 0xe8, 0xf1, 0xef, 0x6f,
-  0x33, 0x9c, 0x10, 0x84, 0xa8, 0x29, 0xc5, 0xe4,
-  0xf7, 0x83, 0xe6, 0x8a, 0x84, 0x37, 0x9e, 0x19,
-  0x8f, 0x26, 0xf1, 0x68, 0x6e, 0x7d, 0xf2, 0x77,
-  0xfd, 0x53, 0xa7, 0xb6, 0xef, 0x80, 0xe9, 0xff,
-  0x97, 0xe0, 0xfa, 0xd2, 0xd2, 0xfc, 0x07, 0x47,
-  0x91, 0x06, 0x01, 0xca, 0x91, 0x4f, 0x97, 0x06,
-  0xde, 0x3a, 0x7b, 0x6c, 0x66, 0xec, 0xe8, 0x68,
-  0xf2, 0xdb, 0x12, 0xcf, 0xd7, 0xc6, 0xbe, 0xac,
-  0x3c, 0x40, 0x53, 0xee, 0xfe, 0xd6, 0x53, 0x44,
-  0x04, 0xe3, 0x75, 0x3f, 0xca, 0x34, 0x68, 0xc6,
-  0xbc, 0xc3, 0xa7, 0xca, 0x0f, 0x53, 0x53, 0xa7,
-  0xf0, 0xb5, 0x5f, 0x7e, 0xfe, 0x3a, 0x7a, 0x90,
-  0x0a, 0x95, 0x30, 0x42, 0x54, 0x29, 0xb7, 0x09,
-  0x0c, 0xfd, 0xc2, 0xf7, 0xff, 0xc5, 0x38, 0xd0,
-  0x42, 0xaa, 0x48, 0xc7, 0xbf, 0x2f, 0xd9, 0x13,
-  0xe7, 0x77, 0x28, 0xd6, 0x11, 0x73, 0xed, 0x6f,
-  0xaf, 0x6f, 0x34, 0x40, 0xf3, 0xfe, 0xb6, 0xb4,
-  0x2e, 0x85, 0xba, 0xec, 0x74, 0xee, 0x1a, 0x0e,
-  0x98, 0x21, 0x3a, 0x7f, 0x0f, 0xb1, 0xb6, 0xf7,
-  0xb9, 0x0d, 0x88, 0x46, 0xe3, 0x64, 0x5f, 0x8b,
-  0x9c, 0xff, 0xdf, 0xcd, 0x36, 0xe7, 0xef, 0xea,
-  0x54, 0xe8, 0x53, 0xea, 0xc2, 0x39, 0xff, 0xd8,
-  0xc6, 0x73, 0xf0, 0x53, 0xb9, 0x0d, 0x10, 0xc4,
-  0x58, 0xfc, 0x7e, 0x41, 0x3f, 0x60, 0xa7, 0x72,
-  0x1a, 0x20, 0xa9, 0xeb, 0xd5, 0x40, 0x54, 0xee,
-  0x1a, 0x0a, 0x9e, 0xd7, 0xfd, 0xa4, 0xa9, 0xfd,
-  0xea, 0x32, 0xf5, 0x50, 0x15, 0x05, 0x4f, 0xd8,
-  0x8b, 0x65, 0x61, 0x53, 0x04, 0x25, 0x4f, 0xdf,
-  0x5f, 0xd1, 0xe1, 0x2a, 0x31, 0x30, 0xa4, 0x21,
-  0x60, 0xdd, 0x89, 0x00, 0x67, 0xf0, 0xa0, 0x95,
-  0x6f, 0x16, 0x9b, 0xc2, 0x53, 0x8f, 0xca, 0x5c,
-  0xf4, 0xf5, 0xed, 0x1d, 0x8c, 0xff, 0x95, 0xfd,
-  0xfc, 0xa8, 0xad, 0x4e, 0x9f, 0xeb, 0xd9, 0x5b,
-  0x6c, 0xa0, 0x53, 0xa7, 0xf9, 0x69, 0x7e, 0xe2,
-  0xa6, 0x30, 0xe8, 0x53, 0xf4, 0xb1, 0xd4, 0xff,
-  0xfc, 0xd7, 0x73, 0xfa, 0xda, 0x32, 0x8d, 0x6f,
-  0xaf, 0x6f, 0x34, 0x5f, 0x73, 0xef, 0x5f, 0xf8,
-  0xf3, 0xa7, 0xfd, 0xff, 0x3e, 0xf6, 0xc1, 0xf5,
-  0x4e, 0x9f, 0xd7, 0x06, 0xff, 0xbe, 0xd8, 0x78,
-  0x80, 0x67, 0x70, 0xbc, 0xf1, 0x00, 0xc6, 0x1f,
-  0x4e, 0xa8, 0x53, 0x73, 0xcf, 0x10, 0x0c, 0xf7,
-  0x7e, 0x97, 0x9e, 0x20, 0x19, 0xfd, 0xe4, 0xb6,
-  0x00, 0x0a, 0x78, 0x80, 0x67, 0x7b, 0xfb, 0x1e,
-  0x20, 0x18, 0xd9, 0x17, 0x2c, 0x22, 0xb1, 0x7b,
-  0x63, 0xe9, 0xc2, 0xb7, 0x3c, 0x40, 0x30, 0x78,
-  0x80, 0x66, 0x56, 0x1e, 0x20, 0x18, 0xd8, 0xdc,
-  0xf8, 0x5e, 0x7b, 0xcc, 0xd9, 0x4f, 0x10, 0x0c,
-  0xeb, 0xf2, 0x1e, 0x20, 0x19, 0xff, 0x7f, 0x9e,
-  0xeb, 0x79, 0x38, 0x4f, 0x10, 0x0c, 0xdd, 0xb1,
-  0xe2, 0x01, 0x9f, 0xdf, 0xe0, 0xd6, 0xaa, 0x03,
-  0xc4, 0x03, 0x3e, 0xf6, 0x9e, 0xf8, 0x0f, 0x10,
-  0x0c, 0xde, 0xa9, 0xe2, 0x01, 0x81, 0x3d, 0x9b,
-  0x9b, 0x4f, 0xaf, 0xf5, 0xa5, 0xe6, 0x88, 0x06,
-  0x60, 0x29, 0xe2, 0x01, 0x71, 0xb5, 0x9f, 0x79,
-  0x59, 0xdb, 0x1e, 0x20, 0x19, 0xed, 0x7b, 0xe8,
-  0x78, 0x80, 0x67, 0x28, 0xa1, 0xe2, 0x01, 0x9f,
-  0xf6, 0x53, 0x5d, 0x97, 0x3e, 0x0a, 0x9e, 0x20,
-  0x19, 0xf6, 0xbc, 0xf7, 0xa9, 0xe2, 0x01, 0x8c,
-  0x44, 0x05, 0x93, 0x26, 0x10, 0x1e, 0x20, 0x18,
-  0x7a, 0xa8, 0xfd, 0x88, 0xf2, 0x13, 0x1e, 0x56,
-  0xb1, 0x90, 0x0d, 0x2a, 0x5d, 0x78, 0x53, 0x6a,
-  0x45, 0x3e, 0xcb, 0xd7, 0xa9, 0x3c, 0x40, 0x33,
-  0xfb, 0x65, 0x46, 0x85, 0x6e, 0x78, 0x80, 0x76,
-  0x36, 0x93, 0x85, 0x42, 0x78, 0x80, 0x61, 0x0f,
-  0xdc, 0x54, 0x27, 0xbd, 0xf7, 0xd4, 0xf1, 0x00,
-  0xcf, 0xdc, 0xd3, 0xf2, 0x97, 0x9e, 0x20, 0x18,
-  0xc4, 0x45, 0x00, 0x83, 0x52, 0xf9, 0xfe, 0xb2,
-  0xd5, 0xd5, 0xd4, 0x40, 0x78, 0x80, 0x65, 0xe3,
-  0xc4, 0x03, 0x37, 0x51, 0xb1, 0xf1, 0xd9, 0x1a,
-  0x61, 0x01, 0xe2, 0x01, 0x9f, 0x75, 0xeb, 0xea,
-  0x4f, 0x10, 0x0c, 0xfd, 0xef, 0xea, 0xfc, 0xa9,
-  0xe2, 0x01, 0x85, 0x44, 0x97, 0xc8, 0xae, 0x6b,
-  0x1b, 0x32, 0x03, 0xb2, 0x1b, 0x6d, 0x20, 0x0b,
-  0x05, 0x88, 0xb8, 0xbc, 0x04, 0xf5, 0x95, 0xb1,
-  0x78, 0xf0, 0x37, 0x21, 0x27, 0xbe, 0x18, 0x33,
-  0xbb, 0x90, 0xd1, 0x00, 0xb9, 0x17, 0x93, 0xda,
-  0x77, 0x5b, 0x66, 0x1d, 0x30, 0x14, 0xa9, 0x69,
-  0x2a, 0x75, 0x96, 0x83, 0xa6, 0x08, 0x4a, 0x8f,
-  0x1e, 0xce, 0xec, 0x55, 0xa1, 0x20, 0x8e, 0x4e,
-  0x67, 0xaa, 0x53, 0x8f, 0x06, 0x7a, 0xf5, 0x6f,
-  0xd4, 0xe8, 0xa1, 0x95, 0xd2, 0xf2, 0x74, 0xa4,
-  0xb8, 0xf8, 0xe0, 0x10, 0xc6, 0xde, 0x5b, 0x3f,
-  0x0b, 0x4f, 0x51, 0xa0, 0xe9, 0xff, 0x3e, 0xba,
-  0x3f, 0x8c, 0x51, 0xd2, 0x74, 0xff, 0xc3, 0x6e,
-  0xc7, 0xa8, 0x83, 0x7b, 0x0e, 0x9f, 0xb7, 0x84,
-  0x7d, 0x96, 0x2a, 0x79, 0xab, 0x73, 0x47, 0x4f,
-  0xb1, 0xa7, 0xad, 0x27, 0x4f, 0x67, 0xd5, 0xe5,
-  0x40, 0x9f, 0x5f, 0xc8, 0xdb, 0xca, 0x21, 0x53,
-  0x7b, 0xc2, 0xdf, 0x20, 0xd9, 0x0f, 0xa1, 0x33,
-  0x3d, 0xef, 0xde, 0xa7, 0x4e, 0xd5, 0xbb, 0xa9,
-  0xd3, 0xff, 0x01, 0x98, 0x96, 0xf6, 0xd6, 0xd7,
-  0x49, 0xd3, 0xff, 0x5e, 0xb9, 0xb2, 0xd3, 0x5c,
-  0xa6, 0xe7, 0x4f, 0xe7, 0xe5, 0x77, 0xd6, 0xf8,
-  0x74, 0x2a, 0x39, 0x3c, 0x45, 0xc9, 0x1a, 0xa3,
-  0x4f, 0xb9, 0xb6, 0xdb, 0x29, 0xd3, 0x56, 0xa7,
-  0x4e, 0x08, 0x42, 0x74, 0xc0, 0xe2, 0x9c, 0x5e,
-  0x40, 0x9e, 0xb5, 0x4c, 0xa7, 0x70, 0x30, 0xa8,
-  0x7a, 0x2e, 0xd9, 0x08, 0x0d, 0xc2, 0x19, 0xfd,
-  0x7f, 0xe5, 0x20, 0xde, 0xf3, 0xa7, 0xfb, 0xf8,
-  0xdb, 0x1c, 0x10, 0x84, 0xa9, 0xcc, 0xeb, 0x9d,
-  0x16, 0x3d, 0x56, 0xc7, 0x50, 0xa8, 0xe7, 0xf1,
-  0xc7, 0x42, 0x2e, 0x7f, 0xf6, 0x6d, 0xcc, 0xca,
-  0x5f, 0x80, 0xcd, 0x8e, 0x9a, 0xdc, 0x74, 0xcd,
-  0x54, 0xe9, 0xf6, 0x36, 0xf7, 0xf6, 0xc3, 0x59,
-  0xbc, 0x56, 0x34, 0x22, 0xe1, 0xce, 0xd3, 0xdb,
-  0x65, 0xb8, 0xe9, 0xff, 0x97, 0x3e, 0xfb, 0x67,
-  0xfe, 0xa1, 0x3a, 0x5e, 0x14, 0x44, 0x7c, 0x96,
-  0xe4, 0x31, 0x43, 0x6d, 0xc0, 0xf8, 0xf4, 0xb6,
-  0x8f, 0xe7, 0x49, 0x7a, 0x42, 0xbf, 0xc4, 0x23,
-  0x4b, 0x57, 0xb4, 0x7c, 0xc0, 0x4d, 0xfc, 0x60,
-  0xd7, 0x8f, 0x79, 0xb4, 0x6e, 0x73, 0xfd, 0x83,
-  0xf5, 0xbb, 0xf2, 0xc7, 0x4f, 0xdf, 0x06, 0x6d,
-  0xcf, 0x3a, 0x7d, 0xbd, 0xa7, 0xae, 0xec, 0xa8,
-  0x54, 0x48, 0xe1, 0xb6, 0xf2, 0xd9, 0xff, 0xc3,
-  0xa7, 0xfa, 0xf6, 0xfc, 0xaf, 0x97, 0xe7, 0x4b,
-  0x79, 0xa2, 0x05, 0x95, 0xcd, 0x40, 0xa4, 0xbd,
-  0x73, 0x78, 0x11, 0xf9, 0xff, 0x7b, 0x72, 0xde,
-  0xde, 0xe0, 0x01, 0x4a, 0x9f, 0xfd, 0x7a, 0xf5,
-  0x3a, 0x18, 0xb9, 0xfb, 0xee, 0x1d, 0x0a, 0x89,
-  0x3f, 0x22, 0x4e, 0xa3, 0xef, 0x3a, 0x15, 0x38,
-  0x26, 0x42, 0x26, 0xd0, 0xba, 0xd4, 0x8a, 0x7f,
-  0x3d, 0xac, 0xff, 0x5b, 0x0e, 0x9f, 0xfc, 0x29,
-  0xfc, 0x6d, 0xfc, 0x51, 0x5a, 0x9d, 0x3f, 0xb9,
-  0xab, 0x63, 0x32, 0xa7, 0x46, 0x1f, 0xcb, 0x64,
-  0x79, 0xfb, 0xda, 0x6f, 0x98, 0xc3, 0xa7, 0xd9,
-  0xb7, 0x86, 0xa7, 0x4f, 0xff, 0x56, 0xf4, 0xa7,
-  0xad, 0xa1, 0xbf, 0x2d, 0xe6, 0x1d, 0x25, 0xa0,
-  0xff, 0x42, 0x4f, 0x1e, 0x47, 0xb5, 0x88, 0xef,
-  0x0a, 0xb9, 0xdb, 0x70, 0x9d, 0x3e, 0x07, 0x7f,
-  0x1b, 0xce, 0x85, 0x3c, 0x4d, 0x46, 0xe7, 0x95,
-  0x94, 0xb4, 0x74, 0x2a, 0xa5, 0xf7, 0xc7, 0x43,
-  0x57, 0x9b, 0x91, 0x4f, 0x03, 0xa9, 0xa9, 0xd3,
-  0x04, 0x27, 0x45, 0x4d, 0xc0, 0x48, 0xa7, 0xea,
-  0xfa, 0xdd, 0x96, 0x29, 0xc6, 0x86, 0x70, 0x42,
-  0x12, 0xa7, 0x9f, 0x7c, 0x42, 0x9c, 0x5e, 0x4f,
-  0xb3, 0x6f, 0x02, 0xa7, 0xd3, 0xfa, 0x5c, 0x27,
-  0xc9, 0xf2, 0xf9, 0xfb, 0xf4, 0xd5, 0xac, 0xb9,
-  0xd3, 0xff, 0xdf, 0xbb, 0x58, 0x39, 0xcc, 0x5b,
-  0x7b, 0x63, 0xa7, 0xd4, 0x6e, 0xfd, 0x94, 0x9d,
-  0x3e, 0xf5, 0x56, 0x86, 0x1f, 0x2f, 0xd9, 0xf2,
-  0xf0, 0x83, 0x53, 0xe5, 0xfb, 0x37, 0x3c, 0xf9,
-  0x7e, 0xcf, 0x6a, 0xfc, 0xa9, 0xf2, 0xfd, 0x8d,
-  0x8f, 0x47, 0xe4, 0x53, 0xe5, 0xca, 0xe7, 0xcf,
-  0x97, 0xec, 0x1f, 0x2f, 0xd9, 0xba, 0xe7, 0xcb,
-  0xf5, 0x85, 0xbc, 0x9f, 0xf3, 0xfa, 0xd5, 0x26,
-  0x7b, 0x37, 0x3c, 0x03, 0xe5, 0xfb, 0x07, 0xcb,
-  0xf6, 0x60, 0x29, 0xf2, 0xfd, 0x9f, 0xec, 0x07,
-  0x0e, 0x36, 0xcd, 0x8f, 0x97, 0xec, 0xfd, 0x96,
-  0xf5, 0x75, 0xa0, 0xf9, 0x7e, 0xc0, 0x11, 0x47,
-  0xf2, 0x2a, 0xa2, 0xcf, 0x0d, 0x0b, 0x73, 0xe5,
-  0xfb, 0x07, 0xcb, 0xf7, 0x0d, 0x74, 0xc1, 0x09,
-  0xf2, 0xfd, 0x87, 0xab, 0x11, 0xd8, 0xd7, 0x21,
-  0x09, 0x4c, 0x27, 0x44, 0xa5, 0x86, 0x35, 0x85,
-  0xd5, 0xd7, 0x82, 0x4d, 0x3d, 0x8f, 0x5d, 0x25,
-  0xcb, 0xf4, 0xe4, 0x47, 0xcf, 0xfb, 0x13, 0x6c,
-  0x10, 0xf5, 0x9a, 0x3a, 0x67, 0xd0, 0x54, 0x50,
-  0x89, 0x6a, 0x50, 0xbe, 0x7b, 0x02, 0xb9, 0x2b,
-  0xd3, 0x8c, 0x73, 0xff, 0xf5, 0x2f, 0x15, 0x6d,
-  0xcd, 0x2e, 0xd6, 0x56, 0x73, 0x47, 0x42, 0xae,
-  0xe1, 0xe1, 0x37, 0x8b, 0xfa, 0x73, 0x93, 0x52,
-  0xc9, 0xff, 0x69, 0x5a, 0x7e, 0xb6, 0xb6, 0xa8,
-  0x74, 0xfd, 0xfe, 0xd3, 0x6e, 0x79, 0xd3, 0x82,
-  0x10, 0x95, 0x3b, 0x7a, 0x80, 0xa7, 0x17, 0x93,
-  0xfe, 0xff, 0x3f, 0x78, 0xe3, 0x6e, 0x13, 0xa7,
-  0xfb, 0xfc, 0x0d, 0x0f, 0x50, 0x52, 0x74, 0x6c,
-  0x99, 0x8b, 0x10, 0x40, 0x95, 0xf2, 0xcb, 0x9f,
-  0xcf, 0xfb, 0xff, 0xf6, 0xad, 0xdd, 0x77, 0x16,
-  0xe7, 0x4e, 0x08, 0x42, 0x58, 0x84, 0x13, 0xe1,
-  0x4e, 0xe4, 0x2c, 0x42, 0x07, 0x1a, 0xa9, 0xc1,
-  0x08, 0x4b, 0x10, 0x7a, 0x0b, 0x10, 0x79, 0xc6,
-  0xaa, 0x65, 0x66, 0x22, 0x4d, 0x1a, 0xe7, 0xd7,
-  0x5b, 0xab, 0x0e, 0x9e, 0xff, 0x97, 0x49, 0xd3,
-  0xb7, 0xa8, 0x0e, 0x8a, 0x0f, 0x01, 0x84, 0x73,
-  0xe4, 0x5b, 0x2b, 0x0a, 0x9f, 0x7f, 0xbf, 0xfc,
-  0x2a, 0x6c, 0x42, 0xa6, 0x08, 0x4a, 0x8c, 0x3f,
-  0x5a, 0x92, 0xdc, 0x98, 0x22, 0x93, 0xfb, 0xfb,
-  0xd4, 0x16, 0xc6, 0xf2, 0x9c, 0x6e, 0xe1, 0x53,
-  0x80, 0xf3, 0x37, 0x43, 0x4e, 0x7f, 0xf5, 0x94,
-  0x15, 0xcc, 0xdb, 0xbf, 0xda, 0x4e, 0x9f, 0xd5,
-  0xde, 0xca, 0x87, 0xa9, 0x3a, 0x15, 0x5d, 0x8e,
-  0x26, 0x7a, 0x30, 0x51, 0x8e, 0xb3, 0x8d, 0x2a,
-  0x95, 0x38, 0x21, 0x09, 0x53, 0xe7, 0x83, 0xbf,
-  0xb1, 0x4e, 0x2f, 0x27, 0xff, 0xbf, 0x4e, 0x8a,
-  0x40, 0xbf, 0x4e, 0xa3, 0xfc, 0x74, 0xff, 0xf6,
-  0x2b, 0xb6, 0xfa, 0xea, 0x99, 0xa7, 0xc2, 0x74,
-  0xf3, 0x7d, 0x80, 0xd8, 0xe8, 0x79, 0xfb, 0xf2,
-  0x84, 0xff, 0xe7, 0xe0, 0x81, 0x9e, 0xae, 0xfa,
-  0xae, 0x1d, 0x3d, 0xed, 0xb1, 0x87, 0x42, 0xa7,
-  0x1c, 0xf3, 0x7e, 0x86, 0x57, 0xc8, 0x75, 0x4a,
-  0x9f, 0xb7, 0x75, 0xf7, 0xe9, 0x79, 0xd3, 0xfe,
-  0xe1, 0xdc, 0xf5, 0xb3, 0xa9, 0x01, 0xd3, 0xfe,
-  0xad, 0x54, 0x6e, 0xae, 0xdb, 0xc7, 0x4f, 0xfb,
-  0xfc, 0xd5, 0xb8, 0x47, 0xdb, 0x1d, 0x18, 0x8e,
-  0xf4, 0x33, 0xf2, 0x03, 0x0f, 0xa7, 0x9f, 0xbf,
-  0x1a, 0x3a, 0x7c, 0x3b, 0x66, 0x7c, 0xe9, 0xff,
-  0xb7, 0x7e, 0xcb, 0x2b, 0x6a, 0xd9, 0x69, 0x3a,
-  0x38, 0xfc, 0x2a, 0x4d, 0x3f, 0xfd, 0x97, 0xae,
-  0x35, 0x65, 0x6d, 0x96, 0xb2, 0x9d, 0x3f, 0xae,
-  0xdd, 0x5a, 0xfb, 0x74, 0xa3, 0x53, 0xa3, 0x64,
-  0x5a, 0x7c, 0x86, 0xea, 0x13, 0xff, 0xde, 0xae,
-  0x6d, 0x7a, 0xfb, 0x4d, 0xbb, 0xfe, 0x3a, 0x7f,
-  0xff, 0x7e, 0xf9, 0x6f, 0x2d, 0xfc, 0x05, 0x7b,
-  0x82, 0x10, 0x95, 0x3d, 0xb6, 0x66, 0x92, 0xa7,
-  0x3f, 0xfa, 0x9a, 0x21, 0x99, 0xc1, 0x08, 0x4a,
-  0x9d, 0x9f, 0x42, 0x9c, 0x5e, 0x4f, 0xfb, 0x28,
-  0xcd, 0xb9, 0xff, 0x5a, 0x0e, 0x80, 0x1f, 0x47,
-  0xca, 0x67, 0xf3, 0xff, 0x97, 0xbe, 0xb4, 0x1d,
-  0x0a, 0x9c, 0x4d, 0x0c, 0x34, 0x91, 0x8c, 0x2b,
-  0xb8, 0x8a, 0x7b, 0xd7, 0xf2, 0x9d, 0x3f, 0xb5,
-  0xc1, 0x00, 0x3d, 0xf3, 0xa7, 0xff, 0xca, 0xff,
-  0x6d, 0x6d, 0xf5, 0xc1, 0x4e, 0xe4, 0x34, 0x41,
-  0x91, 0x64, 0x4a, 0x5c, 0xce, 0x7d, 0x51, 0xf0,
-  0x77, 0x67, 0x4f, 0xed, 0xcc, 0xae, 0xe6, 0x0a,
-  0x9d, 0x0f, 0x4c, 0xe7, 0xd0, 0xb5, 0xa9, 0x1d,
-  0xca, 0xe7, 0xff, 0x97, 0xf4, 0x68, 0x6b, 0xdf,
-  0xcd, 0xb3, 0xfa, 0x4e, 0x9c, 0xa2, 0xd1, 0xd0,
-  0xab, 0xb9, 0x9b, 0x1d, 0xe4, 0x69, 0x08, 0x63,
-  0xe8, 0xf7, 0x3a, 0x38, 0x8d, 0x50, 0xf7, 0x15,
-  0xa7, 0xff, 0x91, 0x6b, 0x55, 0x66, 0x5f, 0xd5,
-  0xb7, 0x1d, 0x3f, 0xbf, 0xf5, 0x7b, 0x17, 0xc7,
-  0x4f, 0xeb, 0xf9, 0xb7, 0xae, 0xf5, 0x2a, 0x4c,
-  0x3a, 0x7e, 0xcf, 0xe9, 0x15, 0x77, 0x8f, 0x17,
-  0x79, 0xac, 0x62, 0x61, 0x7e, 0x4d, 0xab, 0xbc,
-  0xf0, 0xeb, 0x4b, 0xce, 0x9f, 0xdf, 0x7f, 0xf1,
-  0x8a, 0x87, 0x4e, 0x66, 0xd8, 0x74, 0x29, 0xf8,
-  0x61, 0x1f, 0x18, 0xce, 0xbf, 0xa8, 0x3a, 0x7f,
-  0xda, 0xde, 0xbb, 0xc4, 0x0c, 0xf5, 0x4e, 0x9f,
-  0xf9, 0x7f, 0xd6, 0x50, 0x38, 0x6b, 0x52, 0xa3,
-  0x64, 0x42, 0x31, 0x0a, 0x7d, 0x6f, 0x7a, 0x9a,
-  0x9d, 0x05, 0x4f, 0xd5, 0xde, 0xa2, 0xac, 0x2a,
-  0x0a, 0x82, 0xa0, 0xa8, 0x2a, 0x1e, 0x7b, 0xfe,
-  0x0a, 0x01, 0x6e, 0xa1, 0x5b, 0x81, 0x4d, 0xe1,
-  0x53, 0x5b, 0x0a, 0x9f, 0xbb, 0xae, 0xd2, 0xb0,
-  0xad, 0x05, 0xac, 0x9b, 0xb2, 0xa0, 0xa8, 0x2a,
-  0x1e, 0x5a, 0x78, 0x2a, 0x0a, 0x82, 0xa0, 0xa8,
-  0x2a, 0x0a, 0x82, 0xa2, 0x83, 0x79, 0xb0, 0x57,
-  0x82, 0x80, 0x15, 0x50, 0xa6, 0xc1, 0x50, 0x54,
-  0x15, 0x0f, 0x2d, 0x2a, 0x15, 0x05, 0x41, 0x50,
-  0x54, 0x15, 0x0f, 0x35, 0x00, 0x0a, 0xb8, 0x53,
-  0x78, 0x54, 0x15, 0x05, 0x41, 0x50, 0x54, 0x50,
-  0x6a, 0x34, 0x85, 0x08, 0x55, 0x82, 0xa5, 0xa4,
-  0xa8, 0x2a, 0x0a, 0x82, 0xa0, 0xa8, 0xd8, 0xd4,
-  0x52, 0x14, 0x00, 0xad, 0x42, 0xa0, 0xa8, 0x2a,
-  0x0a, 0x9f, 0x59, 0x41, 0x5c, 0x2a, 0x0a, 0x87,
-  0x9e, 0x72, 0x05, 0x58, 0x2b, 0x82, 0x80, 0x4d,
-  0x24, 0x2a, 0x0a, 0x82, 0xa0, 0xa8, 0x2a, 0x1e,
-  0x6a, 0x29, 0x0a, 0xf0, 0x53, 0x60, 0xa8, 0x2a,
-  0x0a, 0x82, 0xa0, 0xa8, 0x79, 0xa8, 0xd8, 0x2a,
-  0xc1, 0x5f, 0x0a, 0x95, 0x8a, 0x82, 0xa0, 0xa9,
-  0x3c, 0xa8, 0x2a, 0x92, 0xc2, 0x0a, 0x82, 0xa0,
-  0xa8, 0x2a, 0x28, 0x3e, 0x67, 0x85, 0x69, 0x1a,
-  0x41, 0xa6, 0x82, 0x80, 0x15, 0x70, 0xa9, 0x61,
-  0x50, 0x54, 0x15, 0x27, 0x95, 0x05, 0x52, 0x58,
-  0x41, 0x50, 0x54, 0x29, 0xe9, 0x3c, 0x2b, 0xc3,
-  0x42, 0x34, 0xc0, 0xa8, 0x2a, 0x0a, 0x82, 0xa0,
-  0xa8, 0x2a, 0x14, 0xd9, 0x52, 0x14, 0x21, 0x4c,
-  0x0a, 0xf8, 0x54, 0x15, 0x05, 0x41, 0x50, 0x25,
-  0xf5, 0x42, 0xae, 0x15, 0x05, 0x41, 0x50, 0x54,
-  0x30, 0xbe, 0xf8, 0x55, 0xc2, 0xa4, 0xc2, 0xa0,
-  0xa8, 0x2a, 0x00, 0x5a, 0x6a, 0x15, 0x05, 0x41,
-  0x50, 0x54, 0x15, 0x0a, 0x6a, 0x1a, 0x0a, 0xb0,
-  0x56, 0xa1, 0x50, 0xab, 0xf5, 0xb4, 0x39, 0x3c,
-  0xf7, 0x62, 0x9c, 0x5c, 0x46, 0xda, 0x52, 0x3c,
-  0xcd, 0xbb, 0x3d, 0x68, 0xe8, 0x61, 0x18, 0xc4,
-  0x7b, 0x1b, 0xf3, 0x30, 0x0f, 0x3e, 0xed, 0x56,
-  0x6b, 0xb0, 0xea, 0xf2, 0xd9, 0x94, 0x29, 0x5b,
-  0x85, 0xbb, 0xc9, 0x1b, 0xd2, 0x67, 0xcf, 0xfa,
-  0xe5, 0x4a, 0x72, 0x6a, 0xf3, 0xbc, 0xac, 0x2a,
-  0x7b, 0xc9, 0xc2, 0x74, 0xef, 0x6d, 0x87, 0x4e,
-  0x5d, 0xee, 0xa5, 0x11, 0xe2, 0x73, 0x61, 0xbb,
-  0x8f, 0xcf, 0xeb, 0x78, 0x3b, 0x0a, 0xd0, 0x74,
-  0x52, 0x88, 0x46, 0x94, 0x26, 0x02, 0x9d, 0x3f,
-  0x0f, 0x7f, 0x7a, 0x80, 0xe9, 0xb8, 0x4e, 0x97,
-  0x8e, 0x42, 0xd2, 0x48, 0x74, 0x98, 0x74, 0xec,
-  0xdc, 0x77, 0x91, 0x26, 0x22, 0xb6, 0x41, 0xe1,
-  0xed, 0xe1, 0xf3, 0xff, 0xed, 0x57, 0x47, 0x08,
-  0xf0, 0x15, 0xc1, 0x08, 0x4e, 0x87, 0xb3, 0x66,
-  0xf6, 0x85, 0x02, 0x16, 0x7a, 0x14, 0x2d, 0x12,
-  0x75, 0x2a, 0x7f, 0xf0, 0xb8, 0xba, 0xf4, 0xfe,
-  0x5f, 0xdf, 0xbf, 0xae, 0x1d, 0x3f, 0x3f, 0xfe,
-  0x7d, 0xb0, 0xe9, 0xf5, 0x1e, 0x15, 0x79, 0xd0,
-  0x27, 0xa9, 0xf2, 0xd9, 0xff, 0x59, 0x44, 0x1f,
-  0xc0, 0xf0, 0x0e, 0x9d, 0x98, 0xd1, 0xd2, 0xcb,
-  0x1e, 0xb8, 0x0f, 0x27, 0x98, 0xb9, 0x41, 0xd3,
-  0xec, 0x6d, 0xf5, 0xa4, 0xe8, 0xf1, 0xe5, 0x54,
-  0x86, 0x79, 0x7f, 0x74, 0x3a, 0x4b, 0x89, 0x95,
-  0xfd, 0xe2, 0xee, 0x3b, 0x84, 0x53, 0xda, 0xf0,
-  0xbc, 0xe9, 0xe5, 0xd5, 0xbb, 0xa9, 0x53, 0xe7,
-  0xb8, 0x21, 0x09, 0xd1, 0xf3, 0xcf, 0xd4, 0x9e,
-  0x36, 0x44, 0x9e, 0x38, 0x43, 0x15, 0x56, 0x02,
-  0x3b, 0x1d, 0x61, 0xb1, 0x3f, 0x0e, 0xa0, 0xcf,
-  0xa1, 0xd3, 0xfd, 0x47, 0xf1, 0xf6, 0xc0, 0x54,
-  0xe9, 0xed, 0xb6, 0x56, 0xc7, 0x4f, 0xff, 0x96,
-  0xca, 0xc4, 0x5b, 0xe0, 0xa7, 0x72, 0x1a, 0x2f,
-  0x89, 0xfc, 0x1e, 0xbd, 0x57, 0x28, 0x3a, 0x7f,
-  0xfe, 0xcb, 0xef, 0x7a, 0xb6, 0xf7, 0xc0, 0x3e,
-  0x56, 0x61, 0x53, 0x5f, 0x0e, 0x9f, 0x0f, 0xa8,
-  0xe6, 0x1a, 0x61, 0x39, 0xeb, 0xea, 0xbc, 0x69,
-  0x84, 0xe6, 0x02, 0x9a, 0x81, 0x39, 0xfd, 0xfe,
-  0xd3, 0x75, 0x10, 0x1a, 0x81, 0x39, 0xfd, 0x5c,
-  0xb7, 0xab, 0xad, 0x06, 0x98, 0x4e, 0x6c, 0xd8,
-  0xd3, 0x09, 0xcc, 0x10, 0x9e, 0x61, 0x38, 0xc4,
-  0xd3, 0x29, 0x34, 0xf1, 0x73, 0x08, 0xaa, 0x80,
-  0xd9, 0x08, 0x24, 0x72, 0xb9, 0x66, 0x13, 0x38,
-  0xf9, 0xe5, 0xea, 0x53, 0xf7, 0x0c, 0x79, 0x11,
-  0x55, 0x50, 0xb7, 0x94, 0xa9, 0x0a, 0xae, 0x73,
-  0x63, 0x94, 0x25, 0xb2, 0xdd, 0xe5, 0x5b, 0xcf,
-  0xb6, 0xc1, 0xf6, 0x93, 0xa7, 0xdf, 0xcd, 0xf8,
-  0xd1, 0xd3, 0xfd, 0x6e, 0x65, 0xbc, 0xb4, 0xbc,
-  0xe9, 0xfb, 0x7f, 0xdf, 0xb9, 0xd4, 0x1d, 0x1e,
-  0x3e, 0xc0, 0x1c, 0xc7, 0xd1, 0x6f, 0x78, 0x4a,
-  0xc2, 0xae, 0x91, 0x64, 0xbc, 0x8f, 0x29, 0x74,
-  0x38, 0x27, 0xff, 0x32, 0xf5, 0xf7, 0xe9, 0x7d,
-  0xfd, 0x5f, 0x1d, 0x3f, 0xff, 0xbf, 0x94, 0xe5,
-  0x7b, 0xf6, 0xf2, 0xde, 0xda, 0xf3, 0x0e, 0x9f,
-  0xbf, 0xab, 0x3d, 0x65, 0x3a, 0x7f, 0xfd, 0xdf,
-  0xbf, 0x75, 0xbe, 0xb7, 0xa8, 0x72, 0xc7, 0x4e,
-  0x1a, 0xd4, 0xf1, 0x01, 0xcf, 0xff, 0x6f, 0x15,
-  0xb2, 0xe8, 0xc1, 0x4e, 0xe4, 0x34, 0x40, 0x6e,
-  0x35, 0x10, 0x04, 0x72, 0xdd, 0xee, 0x31, 0x33,
-  0x6f, 0x46, 0x27, 0x3f, 0xff, 0xb9, 0xf9, 0x5f,
-  0x08, 0xf9, 0x9b, 0xef, 0x6c, 0x0d, 0xce, 0x9f,
-  0xff, 0xee, 0x7e, 0x7d, 0xa7, 0xe5, 0x2f, 0xde,
-  0xa0, 0x70, 0x42, 0x12, 0xa2, 0xc8, 0xcb, 0xfb,
-  0x0c, 0xfe, 0x5c, 0x14, 0xee, 0x43, 0x44, 0x13,
-  0x3f, 0xcb, 0x7c, 0x14, 0xee, 0x43, 0x45, 0xf3,
-  0x3e, 0xf3, 0x6f, 0xe5, 0x76, 0x3f, 0xa4, 0x3a,
-  0x9f, 0xf5, 0x1d, 0x4e, 0xe6, 0x5f, 0xfc, 0xd8,
-  0xe9, 0xc1, 0x08, 0x4a, 0x9f, 0xaf, 0x6c, 0x4e,
-  0x12, 0x9c, 0x5e, 0x45, 0x08, 0x99, 0xfb, 0x04,
-  0xff, 0xd4, 0x31, 0x69, 0xaf, 0xf2, 0x8d, 0xef,
-  0x3a, 0x7f, 0xfb, 0x7d, 0x3f, 0xd0, 0x96, 0xf0,
-  0x00, 0xa2, 0xf3, 0xa7, 0x04, 0x21, 0x2a, 0x7f,
-  0x6f, 0x02, 0xff, 0x29, 0xb9, 0x4e, 0x2f, 0x27,
-  0xff, 0xe6, 0xef, 0x42, 0x5b, 0xdb, 0x6d, 0x81,
-  0xd1, 0x7a, 0xe5, 0x07, 0x4b, 0xac, 0x8a, 0xbd,
-  0x51, 0x21, 0xea, 0xa2, 0xfd, 0x0d, 0xa1, 0x24,
-  0x62, 0x4d, 0xe3, 0x1b, 0x9f, 0x5b, 0x2e, 0xd3,
-  0xce, 0x9f, 0xf6, 0x5d, 0x46, 0xb6, 0x5f, 0xdc,
-  0xf1, 0x04, 0x4f, 0xe5, 0xc1, 0x4e, 0xe4, 0x34,
-  0x41, 0x0e, 0x3c, 0x99, 0xfb, 0xac, 0x23, 0xe0,
-  0x9d, 0x3f, 0x6e, 0xf6, 0x0f, 0x7d, 0xe7, 0x47,
-  0xcf, 0x77, 0x52, 0xb8, 0xb2, 0x67, 0x80, 0x71,
-  0xfc, 0x2a, 0x27, 0xf9, 0x7f, 0x7d, 0xf9, 0x6e,
-  0xa4, 0xe9, 0xff, 0xee, 0x0d, 0xf2, 0xcb, 0xeb,
-  0xff, 0x2d, 0xe3, 0xa1, 0xe8, 0x88, 0xf9, 0xd4,
-  0xfe, 0xbe, 0xf6, 0x54, 0x3d, 0x49, 0xd3, 0xde,
-  0x6b, 0xc1, 0x3a, 0x7f, 0xfd, 0xad, 0x1f, 0x5c,
-  0xb3, 0x96, 0xf9, 0x6d, 0x44, 0xe9, 0xf6, 0x5e,
-  0xbb, 0xeb, 0xb1, 0xfc, 0xef, 0x23, 0x9f, 0x92,
-  0xde, 0xdc, 0xf6, 0x93, 0xa7, 0xe6, 0x2e, 0xee,
-  0xd9, 0x41, 0xd3, 0xff, 0xff, 0xde, 0xbf, 0x33,
-  0xbe, 0x07, 0xfa, 0xba, 0xb2, 0xde, 0x5b, 0xdb,
-  0x5e, 0x61, 0xd1, 0xb2, 0x38, 0xfc, 0x65, 0xc6,
-  0x33, 0x87, 0x7d, 0x4e, 0x9f, 0xf7, 0x7d, 0x30,
-  0x53, 0xb9, 0x0d, 0x10, 0x8c, 0x29, 0xf1, 0x6a,
-  0x3b, 0x3f, 0xf9, 0x72, 0x9d, 0xf7, 0xf7, 0xf5,
-  0x7e, 0x54, 0xe9, 0xff, 0xee, 0xea, 0x37, 0xe5,
-  0xb9, 0x8e, 0x08, 0x42, 0x74, 0xb3, 0x64, 0x4f,
-  0x34, 0x9b, 0x38, 0x21, 0x09, 0x53, 0xfd, 0x80,
-  0xe1, 0xc6, 0xd9, 0xb1, 0x4e, 0x2f, 0x26, 0x08,
-  0x4a, 0x9c, 0x10, 0x84, 0xa9, 0xfb, 0xa8, 0xda,
-  0xcb, 0x52, 0x9c, 0x5e, 0x47, 0xd1, 0x6c, 0x14,
-  0x7d, 0xc3, 0x29, 0xf2, 0x7b, 0x6d, 0xec, 0x29,
-  0xc6, 0xce, 0x70, 0x42, 0x12, 0xa7, 0x55, 0x44,
-  0xa7, 0x17, 0x92, 0x07, 0x8f, 0xfe, 0xea, 0xd3,
-  0xf6, 0xdf, 0x57, 0xf2, 0x1d, 0x3f, 0xb7, 0x8e,
-  0xde, 0x6c, 0xbb, 0x1d, 0x3f, 0xaf, 0x6c, 0x6d,
-  0x97, 0xa9, 0xd0, 0x28, 0x98, 0xb1, 0x67, 0xce,
-  0x21, 0x51, 0xdf, 0x90, 0xc0, 0x9d, 0x4e, 0xeb,
-  0x9b, 0xa9, 0xd3, 0xff, 0xb3, 0x77, 0xdf, 0x06,
-  0x22, 0xd9, 0x58, 0x74, 0xfc, 0x9e, 0xad, 0xbc,
-  0xd1, 0x53, 0xfb, 0xf9, 0x4b, 0xeb, 0xed, 0x27,
-  0x4f, 0x77, 0x0e, 0x93, 0xa3, 0x41, 0xeb, 0xd0,
-  0x6d, 0x3c, 0xbc, 0xc6, 0xc5, 0x4e, 0x08, 0x42,
-  0x54, 0xff, 0xf6, 0xf5, 0x06, 0x67, 0xef, 0x6f,
-  0x2f, 0xe8, 0x29, 0xc5, 0xe4, 0xb1, 0x11, 0x3c,
-  0xc3, 0xe8, 0x54, 0xf9, 0x1e, 0x57, 0x4a, 0x57,
-  0xa1, 0x0b, 0x68, 0x61, 0xcf, 0xff, 0x99, 0x88,
-  0xbf, 0xeb, 0xd7, 0x6d, 0x78, 0x5e, 0x74, 0xf9,
-  0x6f, 0x56, 0xd8, 0x74, 0x29, 0xfe, 0x5d, 0x52,
-  0x7f, 0xfb, 0xcd, 0xb3, 0xfb, 0x7f, 0x83, 0x9f,
-  0xed, 0x27, 0x4f, 0xff, 0xf6, 0xd6, 0xf0, 0x71,
-  0xbf, 0xcc, 0xeb, 0xd7, 0x57, 0xe5, 0x37, 0x3a,
-  0x31, 0x18, 0x1c, 0xa7, 0x0a, 0xd9, 0x0a, 0xd0,
-  0x9a, 0xf8, 0xe5, 0xf6, 0x87, 0xa6, 0x4b, 0x28,
-  0xf4, 0x72, 0x4d, 0x42, 0xf8, 0x48, 0xd9, 0x0a,
-  0xfb, 0x46, 0x4e, 0x08, 0x49, 0x7e, 0x18, 0x15,
-  0x95, 0x3b, 0x79, 0x41, 0x5a, 0xc3, 0x44, 0x30,
-  0xe1, 0x9c, 0xd9, 0x7e, 0x74, 0xff, 0xf6, 0x7d,
-  0xd7, 0xd3, 0xea, 0x6b, 0x6c, 0x07, 0x1d, 0x2a,
-  0x5e, 0x7d, 0xfb, 0x0e, 0xcf, 0xd6, 0x6b, 0xd6,
-  0xf3, 0x0e, 0x9f, 0xf7, 0xd6, 0xf6, 0xe0, 0x75,
-  0x35, 0x3a, 0x73, 0x5a, 0x89, 0xd3, 0xfe, 0xef,
-  0x0e, 0x52, 0xe0, 0x84, 0x27, 0x47, 0x1e, 0xdd,
-  0x47, 0x67, 0xff, 0xbe, 0xaf, 0xd1, 0xbe, 0xfe,
-  0xfe, 0xaf, 0xca, 0x9d, 0x18, 0x99, 0xf2, 0x17,
-  0xda, 0x13, 0x20, 0x21, 0x9f, 0xcb, 0xf7, 0xff,
-  0x30, 0x07, 0x4f, 0xe7, 0xe0, 0xd7, 0xeb, 0x41,
-  0xd3, 0xff, 0xca, 0xd9, 0x45, 0xdb, 0xef, 0xfc,
-  0xa3, 0xc2, 0x7b, 0xbd, 0xe7, 0xff, 0xb2, 0xeb,
-  0xf4, 0xcb, 0xdb, 0xc2, 0x04, 0x3a, 0x7d, 0xd5,
-  0xcf, 0xdc, 0xe9, 0xd7, 0xed, 0xd9, 0xd3, 0xfa,
-  0xf6, 0xf3, 0x81, 0xde, 0x3a, 0x28, 0x4c, 0x8f,
-  0x65, 0xff, 0xa6, 0x5c, 0x9b, 0x51, 0xf9, 0xfd,
-  0xa8, 0x16, 0xde, 0xe7, 0x9d, 0x3f, 0xff, 0x7f,
-  0x2b, 0xae, 0x8c, 0xb7, 0x7f, 0x1a, 0x7a, 0xd2,
-  0x74, 0xff, 0xb2, 0xba, 0xe0, 0xa7, 0x72, 0x1a,
-  0x20, 0x69, 0xf6, 0x5e, 0xdc, 0xfd, 0x08, 0xa5,
-  0xfa, 0xf4, 0xff, 0xff, 0xfd, 0x97, 0xb7, 0x7f,
-  0x4e, 0x8a, 0x8f, 0x75, 0xdb, 0x66, 0xda, 0x31,
-  0x9d, 0xfa, 0x5e, 0x78, 0x82, 0xe7, 0xfd, 0xdd,
-  0xa5, 0x3b, 0x6d, 0x1a, 0x42, 0x78, 0x82, 0xe7,
-  0xfe, 0xb7, 0xad, 0xe5, 0xfd, 0xf4, 0x69, 0x09,
-  0xe2, 0x0b, 0x9f, 0xcb, 0xef, 0xdf, 0x46, 0x90,
-  0x9e, 0x20, 0xb9, 0xf9, 0x99, 0xb6, 0x8d, 0x21,
-  0x3c, 0x41, 0x73, 0xff, 0xfd, 0xdf, 0xff, 0x99,
-  0xa2, 0xa9, 0x6f, 0x0f, 0xb4, 0xd1, 0x81, 0x3c,
-  0x41, 0x73, 0x53, 0xa3, 0x64, 0xe8, 0x51, 0x40,
-  0x55, 0xb9, 0x13, 0xe7, 0xf1, 0x65, 0x52, 0xdf,
-  0x94, 0x7d, 0x3d, 0xc2, 0x0e, 0x3a, 0x7f, 0xeb,
-  0x7a, 0xde, 0x5f, 0xdf, 0x46, 0x90, 0x9e, 0x20,
-  0xb9, 0xfe, 0x6a, 0xa9, 0xea, 0x34, 0x69, 0x09,
-  0xe2, 0x0b, 0x9f, 0x5e, 0xaa, 0xcd, 0x08, 0x8a,
-  0x2d, 0xea, 0xd3, 0xff, 0xb4, 0x25, 0xbc, 0x8b,
-  0x7a, 0xe8, 0xd2, 0x13, 0xc4, 0x17, 0x3f, 0xff,
-  0xf7, 0xff, 0xe6, 0x68, 0xd7, 0x34, 0x55, 0x2d,
-  0xe1, 0xf6, 0x9a, 0x30, 0x27, 0x88, 0x2e, 0x31,
-  0x32, 0x6a, 0x50, 0xf9, 0x72, 0x7f, 0xad, 0xe1,
-  0xf6, 0x9a, 0x30, 0x27, 0x88, 0x2e, 0x7f, 0xfb,
-  0xba, 0x97, 0xd6, 0xde, 0xdb, 0x65, 0x15, 0x2a,
-  0x7f, 0xd8, 0xf7, 0xeb, 0x51, 0xfd, 0x1b, 0x87,
-  0x88, 0x2e, 0x11, 0x1d, 0x02, 0x91, 0x55, 0x09,
-  0xff, 0x27, 0x86, 0xfc, 0x0a, 0xe8, 0x09, 0xe2,
-  0x0b, 0x9f, 0xad, 0xeb, 0x5b, 0xc0, 0x34, 0x01,
-  0x73, 0xec, 0x06, 0x8d, 0x21, 0x3c, 0x41, 0x73,
-  0x65, 0xd0, 0xfc, 0xec, 0x77, 0x14, 0xa3, 0xae,
-  0xb0, 0xbf, 0x9f, 0x99, 0x9b, 0x68, 0xd2, 0x13,
-  0xc4, 0x17, 0x3f, 0xe4, 0xb7, 0x87, 0xda, 0x68,
-  0xc0, 0x9e, 0x20, 0xb9, 0xb3, 0x47, 0x22, 0x32,
-  0xa7, 0xf3, 0xfb, 0x5f, 0x33, 0xbf, 0x4b, 0xcf,
-  0x10, 0x5c, 0xff, 0xb3, 0xcd, 0xb3, 0xf9, 0xb7,
-  0x3c, 0xf1, 0x05, 0xb0, 0xf0, 0xa3, 0x65, 0xdc,
-  0x70, 0x16, 0x7e, 0x3e, 0x7a, 0xc6, 0x31, 0x78,
-  0xc6, 0x75, 0x85, 0xa8, 0x5c, 0x67, 0xc0, 0xa8,
-  0x00, 0xa6, 0x88, 0x2d, 0xc8, 0x80, 0x9f, 0xf6,
-  0x3e, 0xdc, 0xf6, 0xf6, 0xfd, 0x68, 0x3a, 0x7f,
-  0x0f, 0xf3, 0x6b, 0x6a, 0x13, 0xa7, 0xd4, 0xdf,
-  0x84, 0x07, 0x4f, 0xd9, 0x47, 0x59, 0x77, 0x67,
-  0x47, 0x91, 0x17, 0xc6, 0x9f, 0x27, 0x9d, 0xc3,
-  0x41, 0xd3, 0x01, 0x4e, 0x9e, 0xf2, 0xb3, 0x0e,
-  0x83, 0xa7, 0xee, 0xd3, 0x75, 0x10, 0x1d, 0x1b,
-  0x1b, 0x7f, 0x85, 0x4f, 0xff, 0xe5, 0xf6, 0xdf,
-  0x5d, 0x52, 0xf8, 0x9b, 0x2a, 0x6f, 0x61, 0xd3,
-  0x01, 0x4e, 0x99, 0x74, 0x9d, 0x3f, 0xd9, 0x7a,
-  0xab, 0x37, 0xe3, 0x47, 0x4f, 0xea, 0xe5, 0xbd,
-  0x5d, 0x68, 0x3a, 0x60, 0x84, 0xa9, 0xfe, 0xfe,
-  0x36, 0xe7, 0xd7, 0xdb, 0x1d, 0x08, 0x9f, 0xbf,
-  0x86, 0xc4, 0x55, 0x8a, 0xf6, 0x22, 0x03, 0x13,
-  0x76, 0x2b, 0xf1, 0x7a, 0x9d, 0x04, 0xd7, 0x78,
-  0xb4, 0xe0, 0x84, 0x25, 0x49, 0x85, 0x38, 0xbc,
-  0x9f, 0x73, 0x5d, 0xc2, 0x53, 0x91, 0xb3, 0xbe,
-  0x17, 0x53, 0xfa, 0x9b, 0xae, 0x5b, 0x28, 0x3a,
-  0x15, 0xb2, 0x07, 0xc8, 0xda, 0x34, 0xa0, 0xd2,
-  0x63, 0xe8, 0xd5, 0x45, 0x3a, 0xd0, 0xd8, 0xea,
-  0x48, 0xf7, 0xd1, 0xab, 0x0d, 0x1d, 0x65, 0x7f,
-  0xb6, 0x4b, 0x9e, 0xc4, 0x5b, 0x9d, 0x3d, 0x8c,
-  0xcb, 0x9d, 0x3d, 0xd4, 0x6f, 0x79, 0xd0, 0xa7,
-  0xc7, 0x48, 0xfb, 0x79, 0x04, 0xfd, 0xfd, 0x76,
-  0x67, 0x3c, 0xe9, 0xff, 0xea, 0x5f, 0xf5, 0xd0,
-  0xcf, 0xae, 0x9b, 0xfa, 0x83, 0xa7, 0xf5, 0x6e,
-  0xdb, 0x3f, 0x9b, 0x1d, 0x0a, 0x8b, 0xaf, 0x17,
-  0xf2, 0xb4, 0xee, 0xd1, 0xbc, 0xe9, 0xff, 0xef,
-  0xbf, 0x46, 0x6d, 0xea, 0xd3, 0x7d, 0x7a, 0xa7,
-  0x46, 0x83, 0xf4, 0xc1, 0xf9, 0xfa, 0x86, 0x9e,
-  0xdc, 0x1a, 0x0e, 0x99, 0xf4, 0x1d, 0x3e, 0xb6,
-  0x79, 0xf5, 0x3a, 0x7f, 0xfa, 0xcb, 0xbd, 0xd7,
-  0xff, 0x02, 0xb5, 0x50, 0x15, 0x3f, 0x81, 0x82,
-  0x9d, 0xc8, 0x78, 0x81, 0x21, 0xe8, 0xb3, 0xd8,
-  0x9c, 0x54, 0x66, 0x6f, 0x79, 0xd3, 0xd7, 0xa3,
-  0xbe, 0x74, 0xf5, 0x35, 0xeb, 0x9d, 0x14, 0x1e,
-  0xee, 0x0c, 0xd8, 0x8a, 0x7f, 0x7f, 0x83, 0x5a,
-  0xa8, 0x0e, 0x9c, 0x10, 0x84, 0xf8, 0x7d, 0x4e,
-  0xef, 0xec, 0x5c, 0x3e, 0x8e, 0x35, 0x31, 0xb2,
-  0x25, 0x40, 0xb7, 0x3f, 0xfe, 0xcf, 0xfb, 0x4b,
-  0xab, 0x7b, 0x6b, 0xcf, 0x7a, 0x9d, 0x14, 0x1f,
-  0xe6, 0x92, 0x48, 0xdd, 0x4a, 0xbc, 0x1e, 0x69,
-  0x90, 0xca, 0xf4, 0x23, 0x7a, 0x34, 0x09, 0xf7,
-  0xae, 0xb7, 0xa9, 0x53, 0xc8, 0xb7, 0xa9, 0x53,
-  0x04, 0x25, 0x43, 0xcf, 0x77, 0x09, 0xc2, 0x41,
-  0x36, 0x04, 0xa7, 0x1a, 0xe9, 0xff, 0xf6, 0x5d,
-  0x53, 0x33, 0xf7, 0xb7, 0x97, 0xf4, 0x1d, 0x00,
-  0x3f, 0x80, 0x92, 0xcf, 0xff, 0xe5, 0x6d, 0xef,
-  0x83, 0x45, 0xeb, 0x89, 0x6e, 0xfd, 0xea, 0x74,
-  0xfe, 0x6a, 0x97, 0xdb, 0x55, 0x13, 0xa7, 0x3f,
-  0x84, 0xe9, 0xf3, 0xf2, 0xf9, 0xb1, 0x52, 0xf3,
-  0x47, 0x83, 0x71, 0xa9, 0x80, 0xa7, 0x4c, 0x05,
-  0x3a, 0x7e, 0xfe, 0xaf, 0xcf, 0xbb, 0xc6, 0xa8,
-  0x02, 0xb3, 0xff, 0x5e, 0xd8, 0xcd, 0xea, 0x0c,
-  0xa6, 0xe7, 0x4f, 0xea, 0x53, 0xc3, 0xbd, 0x76,
-  0x3a, 0x78, 0x0c, 0xe7, 0xd4, 0xfe, 0xee, 0x8d,
-  0x3b, 0x73, 0x29, 0x3a, 0x14, 0xf6, 0x38, 0xe6,
-  0x7a, 0xba, 0xd3, 0x73, 0xa7, 0x04, 0x21, 0x2a,
-  0x7d, 0x9a, 0x7f, 0xad, 0x4a, 0x71, 0x79, 0x3e,
-  0xc7, 0x04, 0x21, 0x3a, 0x14, 0xf8, 0x2e, 0x73,
-  0x3c, 0x1e, 0xfb, 0xce, 0x99, 0x2c, 0x74, 0xe0,
-  0x84, 0x25, 0x4f, 0xde, 0xed, 0x36, 0xf5, 0xca,
-  0x71, 0x79, 0x3e, 0xc0, 0x66, 0x34, 0x74, 0xab,
-  0xa1, 0x12, 0xa2, 0x63, 0xf3, 0xe9, 0xef, 0x7f,
-  0x57, 0xec, 0x8e, 0xdc, 0x85, 0xb4, 0x2a, 0xe3,
-  0xb3, 0xc8, 0xb1, 0x93, 0x4b, 0xb0, 0xa9, 0xda,
-  0x31, 0x8e, 0x20, 0xac, 0x28, 0x2f, 0x18, 0x74,
-  0xfc, 0xac, 0x11, 0xeb, 0x9d, 0x3f, 0xfd, 0xe6,
-  0x52, 0xfa, 0xe8, 0xcf, 0xff, 0x3c, 0x03, 0xa2,
-  0xc7, 0xfb, 0x72, 0xa9, 0x39, 0xba, 0x42, 0x19,
-  0xe5, 0x65, 0x76, 0xd1, 0x19, 0x1b, 0xe5, 0x26,
-  0xed, 0x2c, 0x07, 0x2b, 0x74, 0xad, 0x31, 0xb8,
-  0xa4, 0x76, 0x54, 0xca, 0xa7, 0xf4, 0x27, 0x5a,
-  0x9e, 0x7f, 0x19, 0xd3, 0x56, 0x4a, 0x0b, 0xb4,
-  0xf8, 0x57, 0x53, 0xcb, 0x41, 0x2c, 0xe7, 0xf3,
-  0xac, 0x15, 0xac, 0x97, 0xaf, 0x59, 0xcf, 0xeb,
-  0x19, 0xab, 0x68, 0x76, 0x06, 0x14, 0x5b, 0x92,
-  0xc4, 0xf7, 0xce, 0xec, 0xb7, 0xc6, 0x1b, 0x0e,
-  0x84, 0x47, 0x03, 0xf1, 0x0d, 0x8b, 0x3f, 0x9d,
-  0x82, 0x9d, 0xc8, 0x68, 0xb8, 0xe7, 0xf3, 0xb0,
-  0x53, 0xb9, 0x0d, 0x17, 0x5c, 0xff, 0xce, 0xe7,
-  0xbb, 0x05, 0x3b, 0x90, 0xd1, 0x28, 0xc2, 0xc2,
-  0x30, 0xd5, 0xe5, 0x1b, 0x1d, 0xe9, 0x3b, 0x43,
-  0xbf, 0x43, 0xc3, 0x76, 0x81, 0xd8, 0x89, 0x32,
-  0xa9, 0xc5, 0xce, 0xdb, 0xce, 0xe7, 0xff, 0x39,
-  0x9c, 0xf7, 0x60, 0xa7, 0x72, 0x1a, 0x25, 0xa9,
-  0xf0, 0xa7, 0x72, 0x1a, 0x23, 0x79, 0xff, 0x73,
-  0xdd, 0x82, 0x9d, 0xc8, 0x68, 0x97, 0xe4, 0xec,
-  0x3f, 0x66, 0x18, 0x4f, 0xe7, 0x60, 0xa7, 0x72,
-  0x1a, 0x2a, 0xb9, 0xfe, 0xd3, 0x9f, 0xca, 0x6f,
-  0xcc, 0x3a, 0x6d, 0xbc, 0x74, 0xfd, 0x82, 0x9d,
-  0xc8, 0x68, 0x90, 0x23, 0x41, 0xe6, 0x38, 0x5e,
-  0x7d, 0x5e, 0xff, 0x52, 0x74, 0x3c, 0xf2, 0xe9,
-  0x24, 0x8d, 0x28, 0xf4, 0xe8, 0x68, 0xcf, 0xfd,
-  0xfc, 0xa1, 0xdb, 0x8b, 0xff, 0xe5, 0xce, 0x87,
-  0x1f, 0x80, 0x94, 0xcf, 0xe7, 0x60, 0xa7, 0x72,
-  0x1a, 0x2c, 0x89, 0xfc, 0xec, 0x14, 0xee, 0x43,
-  0x45, 0xaf, 0x3f, 0x9d, 0x82, 0x9d, 0xc8, 0x68,
-  0xb9, 0x27, 0xc2, 0x9d, 0xc8, 0x68, 0xbb, 0x27,
-  0xfd, 0xcf, 0x76, 0x0a, 0x77, 0x21, 0xa2, 0x8e,
-  0x93, 0xb0, 0xfd, 0x98, 0x61, 0x3e, 0x14, 0xee,
-  0x43, 0x45, 0x2b, 0x3f, 0xff, 0xfd, 0x65, 0xa1,
-  0x6d, 0xe6, 0xdd, 0xb5, 0xbc, 0xe4, 0xb7, 0x9a,
-  0xb2, 0xd1, 0x87, 0x4f, 0x9c, 0xce, 0x7b, 0xb1,
-  0x16, 0x4d, 0x18, 0x45, 0x0b, 0x9d, 0xef, 0x86,
-  0x45, 0x24, 0xfe, 0x8e, 0x7d, 0x84, 0x20, 0x3b,
-  0xa9, 0xdd, 0xe1, 0x62, 0xda, 0x1b, 0x33, 0xfc,
-  0xf7, 0x60, 0xa7, 0x72, 0x1a, 0x23, 0x89, 0xfe,
-  0xf3, 0xb0, 0x53, 0xb9, 0x0d, 0x15, 0xac, 0x9d,
-  0xc8, 0x82, 0xba, 0x0c, 0xff, 0xe7, 0x33, 0x9e,
-  0xec, 0x14, 0xee, 0x43, 0x44, 0xb7, 0x36, 0x52,
-  0x74, 0xfe, 0xdb, 0x18, 0xc5, 0xf5, 0x4e, 0x8a,
-  0x4f, 0x27, 0xc2, 0xd3, 0xad, 0xb3, 0xce, 0x9c,
-  0xf6, 0x21, 0xd3, 0xff, 0xf5, 0xba, 0x90, 0x6d,
-  0x6e, 0x7e, 0x57, 0xfa, 0xf6, 0xf3, 0xa0, 0xd1,
-  0x0d, 0xcf, 0xfb, 0x9e, 0xec, 0x14, 0xee, 0x43,
-  0x44, 0xc1, 0x38, 0x75, 0x01, 0x53, 0xfb, 0xf9,
-  0x7b, 0xa8, 0xd4, 0xe9, 0x39, 0x53, 0x64, 0xa0,
-  0x8f, 0x61, 0xdc, 0x1b, 0x45, 0xf6, 0x0b, 0xdd,
-  0x1b, 0x78, 0xe4, 0xe6, 0x6a, 0x25, 0x4f, 0xfb,
-  0x9e, 0xec, 0x14, 0xee, 0x43, 0x44, 0xc7, 0x27,
-  0x78, 0xf8, 0x98, 0x39, 0x3f, 0x2d, 0x74, 0x5f,
-  0x2c, 0x74, 0xff, 0xff, 0xf3, 0xeb, 0x6c, 0xd4,
-  0x35, 0xb6, 0x26, 0x57, 0x46, 0x52, 0xfa, 0xfb,
-  0xfe, 0x3a, 0x79, 0x3b, 0x90, 0xd1, 0x58, 0xcf,
-  0xfb, 0x73, 0x2f, 0xfc, 0xd5, 0x7f, 0x73, 0xa3,
-  0x4a, 0x63, 0x74, 0x97, 0x0c, 0x20, 0x6e, 0x57,
-  0x3f, 0xf9, 0x7f, 0x7d, 0x3a, 0xaf, 0xf1, 0x14,
-  0x4e, 0x9f, 0xf6, 0x6d, 0x6c, 0xad, 0x2f, 0x5b,
-  0x1d, 0x3f, 0xec, 0xd8, 0x7d, 0xad, 0x00, 0xab,
-  0xce, 0x9f, 0xff, 0xfb, 0xfa, 0xd1, 0x89, 0xa3,
-  0xfa, 0xb7, 0xe8, 0xca, 0x5f, 0x9a, 0xfc, 0x15,
-  0x3a, 0x7f, 0x6e, 0xaa, 0x1a, 0x7b, 0x70, 0x68,
-  0x3a, 0x75, 0xbc, 0xec, 0x4f, 0x31, 0x11, 0x6c,
-  0x93, 0xf3, 0xfb, 0xa0, 0xee, 0x3f, 0x4d, 0xab,
-  0x47, 0x4f, 0xbb, 0xf4, 0x6b, 0x53, 0xa3, 0xe7,
-  0x83, 0x51, 0x89, 0xe5, 0x1e, 0xf9, 0xd3, 0xd5,
-  0xaa, 0x80, 0xe8, 0xb1, 0xe0, 0x04, 0x7e, 0x7c,
-  0xaf, 0x06, 0xaf, 0x3a, 0x72, 0xfd, 0xe7, 0x43,
-  0x47, 0x87, 0x72, 0x89, 0xf9, 0x59, 0x9f, 0xf6,
-  0x93, 0xa5, 0x53, 0xa3, 0xc6, 0xfb, 0x8b, 0xa6,
-  0x02, 0x95, 0x30, 0x42, 0x54, 0x78, 0xd5, 0x84,
-  0x56, 0x7f, 0x73, 0xff, 0x97, 0xb7, 0x8a, 0x71,
-  0xa1, 0x9e, 0xdb, 0xa9, 0xa9, 0xd3, 0x97, 0xed,
-  0x1d, 0x37, 0xd4, 0xe8, 0x68, 0xd8, 0x88, 0xe4,
-  0xf0, 0x83, 0x1b, 0xce, 0x9d, 0xbc, 0x74, 0x9d,
-  0x0a, 0x8b, 0x7c, 0x54, 0xf1, 0x0d, 0x88, 0xe6,
-  0xb5, 0xce, 0x9c, 0x10, 0x84, 0xa9, 0xff, 0xb1,
-  0x36, 0x5a, 0x37, 0xe5, 0xba, 0x92, 0x9c, 0x5e,
-  0x4f, 0x78, 0x5b, 0xf6, 0x3a, 0x42, 0x74, 0xf9,
-  0x9e, 0xb8, 0x38, 0xe8, 0xa0, 0xf6, 0xf7, 0x64,
-  0xba, 0x87, 0xcf, 0xe4, 0xf5, 0x7f, 0x8d, 0xb8,
-  0xe9, 0xb2, 0xe7, 0x45, 0x27, 0x91, 0x63, 0x39,
-  0xeb, 0xff, 0x1e, 0x74, 0xff, 0xef, 0x56, 0xd9,
-  0xb7, 0xf1, 0xb7, 0xf2, 0xa7, 0x40, 0x9f, 0x6d,
-  0xc8, 0x64, 0xe5, 0x5c, 0xd8, 0xd9, 0x8b, 0x19,
-  0x45, 0x85, 0x8d, 0x96, 0x87, 0xcf, 0x1d, 0xfc,
-  0xca, 0xb0, 0xb0, 0xbb, 0xee, 0xf8, 0x48, 0x4f,
-  0x85, 0x3b, 0x90, 0xd1, 0x5b, 0xcf, 0xfb, 0x9e,
-  0xec, 0x14, 0xee, 0x43, 0x44, 0xe1, 0x27, 0x61,
-  0xfb, 0x30, 0xc2, 0x7c, 0x29, 0xdc, 0x86, 0x8b,
-  0x46, 0x7b, 0x1a, 0xf6, 0x93, 0xa4, 0xec, 0x3d,
-  0x4b, 0x18, 0x4f, 0x27, 0x72, 0x1a, 0x2d, 0xa9,
-  0xfa, 0xca, 0xc5, 0xf6, 0xc7, 0x4c, 0xec, 0x13,
-  0xd8, 0xb9, 0x5c, 0xfe, 0x76, 0x0a, 0x77, 0x21,
-  0xa2, 0xe5, 0x9f, 0xce, 0xc1, 0x4e, 0xe4, 0x34,
-  0x5d, 0xb0, 0xac, 0xe5, 0x6a, 0x0a, 0x1f, 0x1f,
-  0xfe, 0xd0, 0xdb, 0xd3, 0x2c, 0x3f, 0xd3, 0xb0,
-  0x9b, 0xb8, 0xc9, 0x6c, 0xf7, 0xf7, 0xfa, 0x96,
-  0x5c, 0xee, 0x7f, 0x3b, 0x05, 0x3b, 0x90, 0xd1,
-  0x53, 0xcf, 0x27, 0x72, 0x1a, 0x2b, 0x99, 0xfc,
-  0xec, 0x14, 0xee, 0x43, 0x45, 0x9d, 0x02, 0x7c,
-  0xd6, 0x2b, 0x9f, 0x0a, 0x77, 0x21, 0xa2, 0x42,
-  0x9f, 0xef, 0x53, 0x5b, 0xfd, 0x59, 0x53, 0xa6,
-  0x7b, 0xb0, 0xfa, 0x80, 0x61, 0x3c, 0xdd, 0x2c,
-  0xac, 0x3a, 0x7f, 0x65, 0xab, 0x5c, 0x1a, 0x0e,
-  0x93, 0xb1, 0x31, 0x1e, 0x84, 0x5d, 0x4b, 0x6e,
-  0x4f, 0x3f, 0xf9, 0xcc, 0xe7, 0xbb, 0x05, 0x3b,
-  0x90, 0xd1, 0x3e, 0x42, 0x2a, 0x4b, 0xdd, 0xc7,
-  0x65, 0x64, 0x79, 0xf0, 0xa7, 0x72, 0x1a, 0x2b,
-  0x29, 0xff, 0x73, 0xdd, 0x82, 0x9d, 0xc8, 0x68,
-  0x9b, 0xa6, 0xf3, 0xb0, 0xfd, 0x98, 0x61, 0x3e,
-  0x14, 0xee, 0x43, 0x44, 0xad, 0x3f, 0xda, 0x6d,
-  0xed, 0x1a, 0xa6, 0x54, 0xe9, 0xf3, 0x99, 0xcf,
-  0x76, 0x1f, 0x6f, 0x18, 0x4f, 0x85, 0x3b, 0x90,
-  0xd1, 0x2e, 0x4f, 0xf7, 0xb9, 0xf7, 0xfa, 0xb2,
-  0xa7, 0x4f, 0x36, 0xf7, 0xd4, 0xe9, 0xf3, 0x99,
-  0xcf, 0x76, 0x22, 0x2e, 0xc6, 0x1c, 0x71, 0x3f,
-  0xf3, 0xb9, 0xee, 0xc1, 0x4e, 0xe4, 0x34, 0x47,
-  0x73, 0xfd, 0x7b, 0x63, 0xdd, 0xdf, 0xa9, 0xd3,
-  0xf3, 0x73, 0xea, 0x99, 0xf3, 0xa7, 0xed, 0xd3,
-  0xf9, 0x6e, 0xb9, 0xd3, 0xe1, 0x4e, 0xe4, 0x34,
-  0x54, 0x33, 0xec, 0xb5, 0xf2, 0x83, 0xa7, 0xff,
-  0xfb, 0x5e, 0xdd, 0xfa, 0x8b, 0x77, 0xae, 0xb6,
-  0xf5, 0xeb, 0x9b, 0x1d, 0x27, 0x6e, 0x89, 0x92,
-  0x37, 0x0b, 0xf0, 0xc6, 0xe6, 0x1b, 0x84, 0xf3,
-  0xe1, 0x4e, 0xe4, 0x34, 0x55, 0x13, 0xfe, 0xe7,
-  0xbb, 0x05, 0x3b, 0x90, 0xd1, 0x35, 0xc9, 0xd8,
-  0x7e, 0xcc, 0x30, 0x9f, 0xce, 0xc1, 0x4e, 0xe4,
-  0x34, 0x55, 0x93, 0xff, 0x3b, 0x9e, 0xec, 0x14,
-  0xee, 0x43, 0x44, 0x89, 0x3e, 0x14, 0xee, 0x43,
-  0x45, 0xa5, 0x3f, 0xee, 0x7b, 0xb0, 0x53, 0xb9,
-  0x0d, 0x13, 0xec, 0x9d, 0x87, 0xec, 0xc3, 0x09,
-  0xff, 0xce, 0x67, 0x3d, 0xd8, 0x29, 0xdc, 0x86,
-  0x8a, 0x12, 0x7d, 0x6f, 0x50, 0xa2, 0x74, 0xf8,
-  0x53, 0xb9, 0x0d, 0x14, 0x7c, 0xff, 0xfd, 0x9b,
-  0x59, 0x77, 0xba, 0xff, 0xe0, 0x56, 0xaa, 0x02,
-  0xa7, 0xce, 0x67, 0x3d, 0xca, 0x8b, 0x4c, 0x27,
-  0xdc, 0x30, 0x85, 0x5e, 0x2c, 0xa2, 0x19, 0x0f,
-  0x4b, 0xc4, 0xcd, 0x31, 0xae, 0x24, 0x34, 0xa9,
-  0x27, 0x68, 0xee, 0xd0, 0xc2, 0x01, 0x3d, 0xe3,
-  0x06, 0x9f, 0xce, 0xc1, 0x4e, 0xe4, 0x34, 0x44,
-  0x53, 0xf6, 0x0a, 0x77, 0x21, 0xa2, 0x2b, 0x9f,
-  0xed, 0xdb, 0xb0, 0x53, 0xb9, 0x0d, 0x15, 0xc4,
-  0x38, 0xfe, 0xb8, 0xd6, 0x7b, 0x2d, 0xd7, 0x3a,
-  0x7f, 0x67, 0x84, 0x00, 0xd6, 0xa7, 0x4b, 0x74,
-  0xf9, 0xe9, 0xd4, 0x82, 0x7f, 0xee, 0xf3, 0xfd,
-  0xfb, 0xeb, 0x61, 0xc3, 0xa7, 0xd9, 0xed, 0x87,
-  0x0e, 0x9d, 0x7a, 0xfa, 0xc7, 0xd5, 0x74, 0x49,
-  0xf0, 0xa7, 0x72, 0x1a, 0x29, 0xe8, 0x6e, 0x23,
-  0xed, 0x61, 0x2f, 0x86, 0x93, 0xff, 0xb9, 0xee,
-  0xdb, 0xfc, 0x1a, 0xd5, 0x40, 0x74, 0x39, 0x10,
-  0x3b, 0x1b, 0xce, 0x76, 0xd8, 0x74, 0xf9, 0x5e,
-  0x0d, 0x5e, 0x74, 0xf2, 0x77, 0x21, 0xa2, 0xb3,
-  0x86, 0x8f, 0x4c, 0x4a, 0x27, 0xea, 0x18, 0xbf,
-  0x7d, 0x4e, 0x9c, 0xb4, 0x78, 0xe9, 0xf5, 0xc1,
-  0xbf, 0xef, 0x3a, 0x76, 0xbd, 0x53, 0xa7, 0xd8,
-  0xd5, 0x1a, 0x80, 0xe9, 0x3b, 0x11, 0xb8, 0x24,
-  0x56, 0x2e, 0xe1, 0xcf, 0x95, 0x6f, 0x1c, 0x9f,
-  0xf9, 0xdc, 0xf7, 0x60, 0xa7, 0x72, 0x1a, 0x24,
-  0x59, 0xfc, 0xec, 0x14, 0xee, 0x43, 0x45, 0x93,
-  0x3f, 0x9d, 0x82, 0x9d, 0xc8, 0x68, 0xb6, 0x27,
-  0x65, 0x70, 0xe9, 0xf0, 0xa7, 0x72, 0x1a, 0x2d,
-  0xb9, 0x39, 0xe7, 0x95, 0x83, 0x53, 0xfe, 0x6e,
-  0x37, 0x37, 0x5a, 0xf6, 0xcf, 0xa8, 0x0e, 0x9f,
-  0x97, 0xef, 0xdb, 0x56, 0x1d, 0x3e, 0x14, 0xee,
-  0x43, 0x45, 0xe1, 0x3d, 0x7d, 0xcc, 0xb1, 0xd3,
-  0xff, 0x2e, 0xf6, 0x52, 0xfb, 0xe7, 0xef, 0x53,
-  0xa7, 0xd9, 0xf0, 0x37, 0xa9, 0xd3, 0xe5, 0xdf,
-  0xaf, 0x54, 0xe9, 0xd7, 0x50, 0x1d, 0x27, 0x6e,
-  0xbc, 0x9c, 0x25, 0x09, 0xb8, 0x5f, 0x49, 0x85,
-  0x89, 0x00, 0x8f, 0xf2, 0x9b, 0x94, 0xce, 0xf6,
-  0x52, 0x74, 0xf8, 0x53, 0xb9, 0x0d, 0x17, 0xa4,
-  0xff, 0xbf, 0xd7, 0x7a, 0xe9, 0xbf, 0xa8, 0x3a,
-  0x7d, 0x8c, 0xb7, 0x6c, 0x74, 0x9d, 0xb2, 0x2d,
-  0x30, 0x73, 0x79, 0x83, 0x7a, 0x0c, 0x2b, 0x22,
-  0x96, 0x88, 0x5a, 0xe4, 0x7e, 0x08, 0x49, 0xe8,
-  0xd2, 0xc5, 0x71, 0x89, 0x80, 0x3b, 0xfc, 0x21,
-  0x75, 0x8e, 0xac, 0x31, 0x9b, 0x4f, 0x65, 0xba,
-  0xe7, 0x4f, 0xec, 0xf0, 0x80, 0x1a, 0xd4, 0xe9,
-  0x6e, 0x9f, 0x3d, 0x3a, 0x90, 0x4f, 0x85, 0x3b,
-  0x90, 0xd1, 0x11, 0xcf, 0xff, 0x5b, 0x5a, 0xd7,
-  0x19, 0xfc, 0x6d, 0xa1, 0x5b, 0xa9, 0xd3, 0xfe,
-  0x7a, 0xd0, 0x39, 0x7b, 0xfa, 0xe7, 0x4f, 0xff,
-  0xf2, 0xdb, 0xbd, 0x75, 0xb7, 0xf2, 0xf6, 0xf5,
-  0xb3, 0xc1, 0x3a, 0x6a, 0x18, 0x54, 0xc1, 0x09,
-  0x53, 0xff, 0x3d, 0xc9, 0x6f, 0x35, 0x65, 0xa1,
-  0xc0, 0x35, 0xa1, 0x17, 0x9f, 0xd9, 0xbb, 0xfe,
-  0x5b, 0xae, 0x74, 0xff, 0xfc, 0x8e, 0x1e, 0xff,
-  0xae, 0xe1, 0x5b, 0xff, 0x80, 0x74, 0x37, 0x15,
-  0x38, 0xe1, 0x6a, 0x18, 0x52, 0xb4, 0x27, 0xdd,
-  0x09, 0x2b, 0xae, 0xb6, 0x35, 0x9f, 0x0a, 0x77,
-  0x21, 0xa2, 0x2e, 0x9f, 0x5c, 0x1b, 0xfe, 0xf2,
-  0xd9, 0xec, 0x93, 0xb0, 0xfa, 0x38, 0xc2, 0x1c,
-  0x98, 0x4b, 0xe1, 0xc7, 0x3f, 0xf3, 0x39, 0xee,
-  0xc1, 0x4e, 0xe4, 0x34, 0x4c, 0xd3, 0xa9, 0x5a,
-  0x9d, 0x39, 0x3c, 0xc3, 0xa7, 0x6e, 0xad, 0xcd,
-  0xd4, 0x74, 0xf9, 0x3a, 0xde, 0x68, 0xe9, 0xff,
-  0x9b, 0xfd, 0x7f, 0x27, 0xb6, 0xbe, 0x21, 0xd3,
-  0xff, 0xfd, 0xaf, 0x7d, 0x3f, 0x9b, 0x5b, 0x5d,
-  0x16, 0x57, 0x8a, 0xd0, 0x74, 0x62, 0x2c, 0x6c,
-  0x8f, 0x3f, 0xfe, 0xdb, 0xdf, 0xa3, 0x2b, 0xee,
-  0xb3, 0x82, 0x10, 0x95, 0x3c, 0x9d, 0xc8, 0x68,
-  0xb3, 0xe7, 0xfd, 0xeb, 0x2b, 0xfd, 0x75, 0xbd,
-  0x4e, 0x9f, 0xfe, 0xf0, 0xdb, 0xb4, 0x63, 0x6f,
-  0xe5, 0x73, 0xe7, 0x4e, 0x08, 0x42, 0x54, 0xff,
-  0xb9, 0xf5, 0xfe, 0x26, 0xd8, 0x25, 0x38, 0xbc,
-  0x9f, 0xe5, 0xb7, 0xb6, 0xff, 0x73, 0x47, 0x4f,
-  0xf7, 0xbf, 0xb6, 0xfd, 0xb5, 0xbd, 0x4e, 0x84,
-  0x4f, 0xc4, 0x56, 0x18, 0x57, 0x63, 0xe0, 0x36,
-  0xdd, 0x2d, 0xb1, 0xcc, 0xff, 0xff, 0xfd, 0x98,
-  0x0a, 0xe6, 0x7f, 0x4e, 0xf1, 0xfa, 0xe5, 0x9d,
-  0x5f, 0xe5, 0x0c, 0xc6, 0x1d, 0x3a, 0xab, 0x41,
-  0xd3, 0xb7, 0x32, 0xc7, 0x43, 0xd1, 0x89, 0x58,
-  0x45, 0x5c, 0x72, 0x7a, 0x90, 0x6a, 0x87, 0x4f,
-  0xad, 0xf5, 0xc1, 0x32, 0x7f, 0xde, 0x17, 0xe0,
-  0xd1, 0xaf, 0x6c, 0x68, 0x83, 0x5c, 0x69, 0x67,
-  0xdc, 0x9e, 0x62, 0x9d, 0x3f, 0x3e, 0xdf, 0xea,
-  0x6e, 0x74, 0xb1, 0x0f, 0x4f, 0xe4, 0xb3, 0xff,
-  0xfe, 0xe0, 0xdf, 0x2d, 0x75, 0xcf, 0xd3, 0x7c,
-  0x1f, 0x51, 0xcc, 0x3a, 0x1e, 0x9a, 0x06, 0x42,
-  0xbf, 0xe4, 0xd3, 0xf0, 0xe6, 0xd5, 0xb2, 0x9d,
-  0x3f, 0xff, 0xb5, 0xff, 0x69, 0xd1, 0xbf, 0xfd,
-  0x7a, 0xfa, 0x9b, 0x78, 0x27, 0x4f, 0xff, 0xf5,
-  0x6a, 0xa3, 0x75, 0x73, 0x32, 0xf5, 0xdf, 0x5e,
-  0x7e, 0x1d, 0x3d, 0x6c, 0xf3, 0x63, 0xa3, 0xc8,
-  0x89, 0xb3, 0x34, 0xcc, 0xdd, 0x0d, 0x17, 0xe4,
-  0xff, 0xcf, 0xbe, 0xaf, 0x7b, 0x2f, 0x75, 0x61,
-  0xd3, 0xff, 0x7b, 0x3f, 0x99, 0x5d, 0x0f, 0xab,
-  0x0e, 0x8a, 0x51, 0x17, 0x54, 0x69, 0xef, 0xfd,
-  0x50, 0xe8, 0x54, 0xc6, 0xb6, 0x23, 0xc8, 0x59,
-  0xf1, 0x24, 0xff, 0xff, 0xcd, 0xeb, 0x6f, 0x31,
-  0xcd, 0x3f, 0x87, 0x7d, 0xbd, 0x4d, 0x53, 0xd4,
-  0x1d, 0x3f, 0xee, 0x7b, 0x39, 0xf7, 0xaa, 0xe9,
-  0x3a, 0x7b, 0x2b, 0xef, 0x9d, 0x1f, 0x3e, 0x0d,
-  0x4f, 0xe7, 0xb7, 0xeb, 0xd5, 0x3a, 0x7f, 0xd7,
-  0xa8, 0x3d, 0x4d, 0x2f, 0xcb, 0x9d, 0x0a, 0x7c,
-  0xb8, 0x49, 0x33, 0x5a, 0x9d, 0x26, 0x1d, 0x14,
-  0x9a, 0x86, 0xec, 0x62, 0x7f, 0xff, 0xd6, 0xf5,
-  0x37, 0xca, 0x6e, 0x22, 0xb7, 0x06, 0xff, 0xbe,
-  0xd8, 0x74, 0xe0, 0x84, 0x25, 0x4f, 0x6d, 0xb7,
-  0x7c, 0xa7, 0x17, 0x93, 0xfe, 0xeb, 0x27, 0xbb,
-  0x45, 0x7a, 0xc7, 0x42, 0xa6, 0x44, 0x84, 0xfe,
-  0x84, 0x5d, 0x8c, 0xa7, 0xfe, 0xcf, 0xd3, 0x7c,
-  0x1f, 0x51, 0xcc, 0x3a, 0x7d, 0x97, 0x7b, 0x2c,
-  0x74, 0x29, 0xf5, 0xd5, 0x12, 0x60, 0x58, 0xe9,
-  0xfa, 0x86, 0x9e, 0xdc, 0x1a, 0x0e, 0x9f, 0xda,
-  0x6d, 0x97, 0xb7, 0xae, 0x74, 0xde, 0x13, 0xa3,
-  0x75, 0x1f, 0xf7, 0x8d, 0x2c, 0x6b, 0x3f, 0xf6,
-  0xcb, 0xb0, 0xad, 0xfc, 0x9e, 0xd8, 0xe9, 0xfa,
-  0xda, 0xd0, 0xd5, 0xbc, 0x74, 0x6c, 0x7e, 0xd6,
-  0x45, 0x93, 0x9b, 0xa3, 0x37, 0x77, 0x75, 0x87,
-  0x14, 0x6e, 0x82, 0xbd, 0xa1, 0xb1, 0x92, 0x84,
-  0xe9, 0x8c, 0xa7, 0xc6, 0xad, 0x47, 0x10, 0x26,
-  0xac, 0x2c, 0xb4, 0xa0, 0xde, 0x41, 0x04, 0x36,
-  0xbf, 0x08, 0x8a, 0xc6, 0xd5, 0x78, 0x56, 0x04,
-  0x87, 0x72, 0x12, 0x9b, 0xe1, 0x57, 0x0e, 0x67,
-  0xc8, 0x5a, 0x9c, 0x53, 0x3f, 0xf9, 0xcc, 0xe7,
-  0xbb, 0x05, 0x3b, 0x90, 0xd1, 0x36, 0x4f, 0xe7,
-  0x60, 0xa7, 0x72, 0x1a, 0x2a, 0xd9, 0xfc, 0xf7,
-  0xeb, 0x7f, 0xab, 0xce, 0x9e, 0xcb, 0x75, 0xce,
-  0x96, 0xe9, 0x87, 0xa9, 0xf3, 0x49, 0xf0, 0xa7,
-  0x72, 0x1a, 0x2b, 0x49, 0xff, 0xe4, 0x51, 0xc0,
-  0x73, 0x39, 0xeb, 0xe4, 0x3a, 0x7f, 0xf9, 0xf5,
-  0xcf, 0xab, 0x3b, 0x2f, 0x75, 0x61, 0xd3, 0x5e,
-  0xea, 0x89, 0x7e, 0x4a, 0x9f, 0xca, 0xdb, 0x7d,
-  0xfe, 0xa0, 0x3a, 0x7e, 0xa3, 0x2d, 0xec, 0x61,
-  0xd3, 0xfd, 0x8d, 0xff, 0x50, 0xd2, 0xfa, 0x9d,
-  0x3f, 0x9f, 0x97, 0xef, 0x83, 0x53, 0xa4, 0xe6,
-  0xe2, 0x7e, 0x58, 0x59, 0xe8, 0x63, 0xd8, 0xb7,
-  0x8d, 0xbe, 0x5b, 0x73, 0xc9, 0xfc, 0xec, 0x14,
-  0xee, 0x43, 0x45, 0x81, 0x3e, 0x14, 0xee, 0x43,
-  0x44, 0xeb, 0x3f, 0xff, 0xac, 0xb4, 0x6d, 0x8c,
-  0x75, 0x6b, 0x96, 0xf5, 0x75, 0xa0, 0xe9, 0xf3,
-  0x99, 0xcf, 0x76, 0x22, 0x55, 0xa3, 0x09, 0xf0,
-  0xa7, 0x72, 0x1a, 0x2d, 0x99, 0xff, 0x01, 0x6a,
-  0xeb, 0x79, 0x38, 0x4e, 0x93, 0xb0, 0xfb, 0x38,
-  0xc2, 0x79, 0x3b, 0x90, 0xd1, 0x73, 0x49, 0x87,
-  0x4c, 0xec, 0x13, 0x76, 0x12, 0xb9, 0xfc, 0xec,
-  0x14, 0xee, 0x43, 0x45, 0xdf, 0x3c, 0xed, 0x3b,
-  0x00, 0xe8, 0x56, 0xd6, 0x5b, 0x29, 0xf7, 0x28,
-  0x61, 0x4a, 0x97, 0xa5, 0x40, 0x8b, 0x93, 0x21,
-  0xa0, 0x08, 0x56, 0x55, 0x86, 0xe5, 0x7b, 0xce,
-  0xe7, 0xfd, 0xfe, 0x72, 0xd6, 0xac, 0xe7, 0x9d,
-  0x3f, 0xbf, 0x46, 0x37, 0xdd, 0x74, 0x9d, 0x3e,
-  0x14, 0xee, 0x43, 0x44, 0xaf, 0x3f, 0xef, 0xf0,
-  0x76, 0xb2, 0xd1, 0x81, 0x3a, 0x7b, 0x5e, 0x17,
-  0x9d, 0x3f, 0xff, 0xbd, 0x7e, 0x67, 0x7c, 0x16,
-  0x0f, 0x7e, 0x84, 0xf5, 0x07, 0x46, 0xc8, 0x83,
-  0xe2, 0x18, 0xd9, 0x1c, 0xb6, 0x86, 0x14, 0xee,
-  0x7b, 0x95, 0x37, 0x6c, 0x38, 0xac, 0x62, 0xb3,
-  0xae, 0xbb, 0x15, 0x3f, 0xfa, 0xdd, 0xeb, 0xab,
-  0xfc, 0x34, 0x6a, 0x02, 0xa7, 0xf7, 0x23, 0xb6,
-  0x16, 0xed, 0xca, 0x7c, 0xf5, 0x1c, 0x93, 0x91,
-  0x55, 0x73, 0x23, 0xb3, 0x6d, 0x0a, 0xd9, 0xff,
-  0xce, 0x67, 0x3d, 0xd8, 0x29, 0xdc, 0x86, 0x89,
-  0x86, 0x7f, 0xfe, 0xc7, 0x6f, 0x1e, 0x03, 0xb4,
-  0xdd, 0xe1, 0x5a, 0xbc, 0xe9, 0xff, 0xb7, 0x4c,
-  0xa5, 0xfa, 0xf5, 0xfe, 0xaf, 0x3a, 0x7f, 0x2f,
-  0x51, 0x7d, 0x3c, 0x27, 0x4f, 0xb8, 0x5f, 0xcc,
-  0x3a, 0x3e, 0x7b, 0x1a, 0x99, 0xcf, 0xcc, 0x5c,
-  0xfd, 0xf7, 0x0e, 0x9f, 0x2e, 0x7e, 0xfb, 0x87,
-  0x4f, 0xd6, 0xf5, 0xeb, 0xd4, 0xe8, 0x3d, 0x86,
-  0x17, 0xcf, 0xff, 0xfb, 0xf8, 0x16, 0xfb, 0xe5,
-  0xb4, 0x7f, 0x28, 0xf6, 0x7e, 0x97, 0xd4, 0xe9,
-  0xf9, 0xb6, 0xfb, 0xfd, 0x40, 0x74, 0xff, 0xe5,
-  0xb8, 0x15, 0xf9, 0x4d, 0xe8, 0xd4, 0x27, 0x42,
-  0x9f, 0xef, 0x8c, 0x67, 0xea, 0xfb, 0x4b, 0x3a,
-  0xe7, 0x4f, 0xff, 0xf8, 0x71, 0xb2, 0xfe, 0xfa,
-  0x37, 0xfd, 0x6d, 0xde, 0xba, 0xde, 0xa7, 0x4b,
-  0x29, 0x44, 0xf8, 0x97, 0xcf, 0x7d, 0x41, 0xbc,
-  0xe9, 0xee, 0xdf, 0xb6, 0x1d, 0x27, 0x37, 0x15,
-  0xc1, 0xed, 0x0a, 0x24, 0x7b, 0x69, 0x22, 0xd0,
-  0xf0, 0xfc, 0x30, 0x2e, 0x51, 0xa9, 0x1c, 0xf8,
-  0x53, 0xb9, 0x0d, 0x15, 0x74, 0xff, 0x3d, 0xd8,
-  0x29, 0xdc, 0x86, 0x88, 0xf2, 0x4e, 0xc3, 0xf1,
-  0xe3, 0x09, 0xfc, 0xec, 0x14, 0xee, 0x43, 0x45,
-  0x83, 0x3f, 0x9d, 0x82, 0x9d, 0xc8, 0x68, 0xb2,
-  0xa7, 0xf3, 0xb0, 0x53, 0xb9, 0x0d, 0x16, 0x9c,
-  0xf2, 0x77, 0x21, 0xa2, 0xdc, 0x9f, 0xf9, 0x70,
-  0x73, 0xfa, 0x2d, 0x94, 0x84, 0xe8, 0x13, 0xef,
-  0xa9, 0x5c, 0xff, 0x2f, 0xf5, 0x62, 0xd6, 0xfe,
-  0x3a, 0x7f, 0xdc, 0xf7, 0x60, 0xa7, 0x72, 0x1a,
-  0x28, 0x79, 0xfa, 0xbd, 0x4d, 0x6f, 0xe3, 0xa7,
-  0xef, 0xb7, 0x30, 0x56, 0xa7, 0x4f, 0xff, 0xd9,
-  0xb5, 0x97, 0x7b, 0xaf, 0xfe, 0x05, 0x6a, 0xa0,
-  0x2a, 0x4e, 0xc4, 0xd6, 0xbc, 0x42, 0xc3, 0x9b,
-  0xa3, 0x6a, 0x5d, 0xb8, 0x5f, 0x3f, 0x9d, 0x82,
-  0x9d, 0xc8, 0x68, 0xbc, 0xe1, 0x59, 0x16, 0x4f,
-  0x44, 0xd9, 0x4b, 0x25, 0xf0, 0xd3, 0x0f, 0xf1,
-  0x26, 0x61, 0xdd, 0x8e, 0xff, 0x28, 0x11, 0xb3,
-  0x0c, 0xfe, 0x76, 0x0a, 0x77, 0x21, 0xa2, 0x96,
-  0x9f, 0xce, 0xc1, 0x4e, 0xe4, 0x34, 0x58, 0x53,
-  0xf9, 0xd8, 0x29, 0xdc, 0x86, 0x8b, 0x2e, 0x79,
-  0xda, 0x77, 0x5f, 0x37, 0x53, 0xa7, 0x3b, 0x7b,
-  0x0e, 0x9e, 0x47, 0x2d, 0x50, 0xf4, 0xb5, 0x34,
-  0x9f, 0xfc, 0xe6, 0x73, 0xdd, 0x82, 0x9d, 0xc8,
-  0x68, 0xa3, 0x27, 0xf3, 0x95, 0xb2, 0x8a, 0x80,
-  0xe8, 0x7a, 0x77, 0xe2, 0x76, 0xc3, 0xbe, 0x84,
-  0x6d, 0x4e, 0x2e, 0xa5, 0x3f, 0xf3, 0xb9, 0xee,
-  0xc1, 0x4e, 0xe4, 0x34, 0x47, 0x33, 0xff, 0x9c,
-  0xce, 0x7b, 0xb0, 0x53, 0xb9, 0x0d, 0x13, 0x94,
-  0xfe, 0x76, 0x0a, 0x77, 0x21, 0xa2, 0xcc, 0x9f,
-  0xf9, 0xca, 0x01, 0x5b, 0xdb, 0xa9, 0x79, 0xd3,
-  0xf9, 0xd8, 0x29, 0xdc, 0x86, 0x8b, 0x76, 0x7f,
-  0xf3, 0x99, 0xcf, 0x76, 0x0a, 0x77, 0x21, 0xa2,
-  0x90, 0x9f, 0xf9, 0xdc, 0xf7, 0x60, 0xa7, 0x72,
-  0x1a, 0x25, 0x28, 0xa1, 0x3f, 0x56, 0x93, 0x18,
-  0xa4, 0x03, 0xbf, 0xa1, 0xdc, 0xed, 0xbd, 0x4a,
-  0x7f, 0xdc, 0xf7, 0x60, 0xa7, 0x72, 0x1a, 0x27,
-  0x69, 0xff, 0xf7, 0xb6, 0xd5, 0x8a, 0xdf, 0xdb,
-  0x7d, 0x7f, 0x88, 0x74, 0x9c, 0xc4, 0x4f, 0xf2,
-  0x34, 0xff, 0xdc, 0xcb, 0x62, 0x75, 0x97, 0x7b,
-  0xce, 0x9f, 0xfb, 0xf9, 0x6e, 0xa3, 0x2b, 0xfe,
-  0xa4, 0xe9, 0xb7, 0x1d, 0xb2, 0x21, 0xea, 0x87,
-  0x0c, 0x47, 0x16, 0xe4, 0x2b, 0xe7, 0xc2, 0x9d,
-  0xc8, 0x68, 0x8b, 0x27, 0xfd, 0xcf, 0x76, 0x0a,
-  0x77, 0x21, 0xa2, 0x5d, 0x9f, 0xff, 0xb3, 0x6b,
-  0x2e, 0xf7, 0x5f, 0xfc, 0x0a, 0xd5, 0x40, 0x54,
-  0x9d, 0x88, 0xd3, 0x61, 0x86, 0xe2, 0x34, 0xff,
-  0xe7, 0x33, 0x9e, 0xec, 0x14, 0xee, 0x43, 0x44,
-  0xc5, 0x3f, 0x60, 0xa7, 0x72, 0x1a, 0x2a, 0x99,
-  0xff, 0xff, 0xc3, 0xd6, 0xa5, 0xf9, 0x77, 0x5b,
-  0xaa, 0x3e, 0x0d, 0xed, 0xe1, 0x79, 0xd0, 0xe4,
-  0x56, 0x71, 0xac, 0xff, 0xe7, 0x33, 0x9e, 0xec,
-  0x14, 0xee, 0x43, 0x44, 0xe9, 0x3f, 0xbd, 0xc2,
-  0xaf, 0xe6, 0xc7, 0x4f, 0x9a, 0x56, 0x96, 0xa7,
-  0x4f, 0xc1, 0xcf, 0x36, 0xcf, 0x9d, 0x3d, 0xeb,
-  0x2b, 0xbc, 0x7a, 0xd5, 0x28, 0x9f, 0xfb, 0x5a,
-  0xdd, 0x69, 0x76, 0xad, 0x79, 0x87, 0x43, 0x11,
-  0x05, 0x63, 0x99, 0xff, 0x73, 0xdd, 0x82, 0x9d,
-  0xc8, 0x68, 0x9d, 0xe7, 0xd7, 0xd7, 0x99, 0xe2,
-  0xa4, 0xed, 0x93, 0x9b, 0xc8, 0xc2, 0x98, 0x47,
-  0xc8, 0xd3, 0xff, 0x9c, 0xce, 0x7b, 0xb0, 0x53,
-  0xb9, 0x0d, 0x14, 0x2c, 0xff, 0xe7, 0x33, 0x9e,
-  0xec, 0x14, 0xee, 0x43, 0x45, 0x25, 0x3f, 0xff,
-  0xb2, 0xae, 0xdf, 0x8d, 0x5b, 0x99, 0x7b, 0x2d,
-  0xf5, 0x61, 0xd1, 0x42, 0xe4, 0xb3, 0xce, 0x12,
-  0x1f, 0xc2, 0x44, 0xc8, 0xfb, 0x40, 0x93, 0xaa,
-  0x96, 0xe2, 0x94, 0xfe, 0x76, 0x0a, 0x77, 0x21,
-  0xa2, 0x24, 0x9f, 0xfc, 0xe6, 0x73, 0xdd, 0x82,
-  0x9d, 0xc8, 0x68, 0x97, 0xa7, 0xc2, 0x9d, 0xc8,
-  0x68, 0xa5, 0xe7, 0xff, 0x63, 0xd4, 0x15, 0x15,
-  0xa5, 0xfe, 0x61, 0xd3, 0xe6, 0xff, 0x31, 0x6a,
-  0x74, 0xfb, 0x9b, 0x60, 0xd4, 0xe9, 0x2e, 0xc7,
-  0xa2, 0xc2, 0xa9, 0x3b, 0x11, 0xe4, 0xd1, 0x85,
-  0xe1, 0x35, 0x3f, 0x9d, 0x82, 0x9d, 0xc8, 0x68,
-  0xa7, 0x27, 0xfd, 0xe1, 0xea, 0xdb, 0x33, 0xe8,
-  0x74, 0xff, 0xb2, 0xca, 0x38, 0xe0, 0x84, 0x25,
-  0x4d, 0xe0, 0x9d, 0x35, 0x0e, 0xd9, 0x11, 0xbb,
-  0x87, 0x6d, 0xe7, 0x93, 0xe1, 0x4e, 0xe4, 0x34,
-  0x57, 0x93, 0xff, 0xf6, 0x6d, 0x65, 0xde, 0xeb,
-  0xff, 0x81, 0x5a, 0xa8, 0x0a, 0x93, 0xb1, 0x11,
-  0xbb, 0x86, 0x13, 0xff, 0x3b, 0x9e, 0xec, 0x14,
-  0xee, 0x43, 0x44, 0x8f, 0x3b, 0xc0, 0x53, 0xa7,
-  0x26, 0x30, 0xa7, 0x17, 0x73, 0xe1, 0x4e, 0xe4,
-  0x34, 0x49, 0x13, 0xce, 0xe7, 0xb9, 0x4f, 0x67,
-  0x0a, 0x67, 0xfe, 0x77, 0x3d, 0xd8, 0x29, 0xdc,
-  0x86, 0x89, 0x2a, 0x7c, 0x29, 0xdc, 0x86, 0x8b,
-  0xc6, 0x7e, 0xd7, 0xf4, 0xf5, 0x35, 0x3a, 0x7d,
-  0x5a, 0xdf, 0x10, 0xe9, 0xfe, 0x7b, 0xb0, 0x53,
-  0xb9, 0x0d, 0x12, 0x6c, 0x9d, 0x88, 0xc7, 0xa4,
-  0xc0, 0x4c, 0x38, 0x9a, 0x15, 0x77, 0x26, 0x83,
-  0xb7, 0xc6, 0x89, 0xb1, 0xdf, 0xa1, 0x90, 0xd4,
-  0x34, 0x58, 0x57, 0x68, 0x60, 0x5c, 0xdf, 0x58,
-  0xc4, 0xe1, 0x63, 0x76, 0xd5, 0xa2, 0x3a, 0xe7,
-  0xc7, 0x93, 0xb4, 0xa1, 0xac, 0xb7, 0x5a, 0xda,
-  0x65, 0x2c, 0x25, 0x7f, 0xbd, 0x4c, 0xf3, 0xdf,
-  0xa7, 0x3d, 0x37, 0x71, 0xd8, 0x35, 0x4e, 0xc3,
-  0x1a, 0x47, 0xab, 0x31, 0x1a, 0x11, 0x69, 0xda,
-  0x8e, 0xa7, 0xb9, 0x02, 0x58, 0x73, 0x77, 0x0b,
-  0x1f, 0xcf, 0x63, 0x56, 0x92, 0xbb, 0x7a, 0xe8,
-  0x7f, 0x5a, 0x60, 0xb3, 0x69, 0x4c, 0x41, 0x94,
-  0xa1, 0xb9, 0x1f, 0x5e, 0xf9, 0xd9, 0x46, 0xf9,
-  0xe4, 0xb8,
+  0x47, 0xb0, 0xe3, 0x27, 0x73, 0xf9, 0xd6, 0x29,
+  0xba, 0x86, 0x88, 0x7a, 0x7c, 0x29, 0xba, 0x86,
+  0x88, 0x9a, 0x6c, 0xb0, 0xe9, 0xff, 0xd7, 0x8e,
+  0xb4, 0x55, 0x7d, 0x4e, 0x55, 0x87, 0x45, 0x27,
+  0xc7, 0x81, 0x69, 0xec, 0xf7, 0xbd, 0x4d, 0x10,
+  0xbc, 0x9d, 0x68, 0xe7, 0xac, 0x24, 0xfb, 0x23,
+  0x9b, 0xbc, 0x1d, 0x3d, 0x9c, 0x7b, 0x27, 0x4f,
+  0xfe, 0xf3, 0x4f, 0xba, 0x5f, 0xc1, 0x9b, 0xbf,
+  0x3a, 0x6d, 0x6f, 0x3a, 0x4d, 0xd5, 0xa2, 0x1f,
+  0x04, 0x5a, 0x9b, 0x3e, 0xc6, 0xe7, 0x5e, 0x74,
+  0xf7, 0xab, 0xe0, 0x1d, 0x38, 0x21, 0x09, 0x53,
+  0xed, 0xfe, 0x71, 0x65, 0x38, 0xbc, 0x9f, 0x6e,
+  0x5a, 0xbc, 0x9d, 0x1c, 0xa2, 0x68, 0x07, 0xdf,
+  0x35, 0x9f, 0xf8, 0x1e, 0x6b, 0x86, 0x17, 0xc3,
+  0xdf, 0x1c, 0xe9, 0xff, 0x7b, 0xa2, 0xfd, 0x6a,
+  0xbe, 0x61, 0xd3, 0xf5, 0xb6, 0xed, 0xf7, 0x53,
+  0xa7, 0xaf, 0x9b, 0xa0, 0xe8, 0xb4, 0xf3, 0x7d,
+  0x0c, 0x06, 0x8c, 0x70, 0x99, 0xf3, 0xfc, 0x97,
+  0xcf, 0xd6, 0x15, 0xbe, 0x7c, 0x74, 0xff, 0xff,
+  0xef, 0xfe, 0x95, 0xe9, 0xfb, 0xe7, 0x1e, 0x6b,
+  0x85, 0x6e, 0x97, 0x8d, 0x84, 0xe9, 0xf7, 0xb3,
+  0xda, 0xd0, 0x74, 0xfe, 0xa5, 0xf5, 0xe9, 0xda,
+  0xd2, 0x74, 0xfe, 0xd0, 0xf6, 0xd2, 0xe7, 0x4e,
+  0x8f, 0x1f, 0x5f, 0xce, 0x21, 0x53, 0x35, 0xb7,
+  0xf1, 0x84, 0xa4, 0xdd, 0xbc, 0xe9, 0xdb, 0x9a,
+  0x9d, 0x37, 0x74, 0x1d, 0x3c, 0xbf, 0xcb, 0x4f,
+  0x36, 0x62, 0x37, 0x3f, 0xfe, 0xed, 0x73, 0xc3,
+  0xfd, 0xb7, 0xf0, 0xbc, 0xf1, 0x5e, 0x4e, 0x9f,
+  0xfb, 0x0b, 0xd3, 0x86, 0x7f, 0xb9, 0x5c, 0x9d,
+  0x3f, 0xb8, 0x52, 0xff, 0x63, 0xb6, 0x1d, 0x00,
+  0x3f, 0xff, 0xa3, 0xcf, 0xf8, 0x5a, 0xe1, 0x55,
+  0xf5, 0x1b, 0x93, 0xa1, 0x4f, 0x8f, 0xb2, 0x29,
+  0xff, 0xff, 0xee, 0xff, 0x51, 0xfa, 0xb5, 0xc3,
+  0xae, 0x7c, 0xfb, 0xa7, 0x36, 0xdb, 0xf7, 0x53,
+  0xa4, 0xa7, 0x4f, 0xe7, 0xe8, 0xfa, 0xab, 0x49,
+  0xd3, 0xff, 0xff, 0xfb, 0xc0, 0xaf, 0xef, 0x69,
+  0xe1, 0xce, 0x3b, 0xe1, 0xfb, 0xa5, 0xf7, 0xdd,
+  0x1f, 0xbd, 0xa4, 0xe9, 0xdb, 0xa8, 0x68, 0xa6,
+  0x22, 0xd1, 0x7e, 0x90, 0x99, 0x9f, 0xf5, 0xfe,
+  0x97, 0xd7, 0x2a, 0x2d, 0x1d, 0x3e, 0xa7, 0xf6,
+  0xda, 0xce, 0x8f, 0x1f, 0x46, 0x9f, 0xcf, 0xf6,
+  0xb3, 0x9c, 0x2d, 0x16, 0x13, 0xa7, 0xff, 0xf7,
+  0xed, 0x33, 0x95, 0xcd, 0x5a, 0xfd, 0x87, 0x82,
+  0xb7, 0x63, 0xa7, 0xfc, 0x8a, 0xcc, 0x5d, 0x6f,
+  0xdf, 0x3a, 0x15, 0x14, 0x98, 0x68, 0x9f, 0x0a,
+  0xb6, 0x51, 0x3a, 0x7e, 0xdf, 0xf0, 0xe5, 0x7e,
+  0x74, 0x59, 0xfb, 0xf8, 0x8b, 0xb2, 0x68, 0xa1,
+  0x76, 0x7f, 0x94, 0xae, 0x87, 0x09, 0x1a, 0x1d,
+  0x24, 0x5e, 0x84, 0x33, 0x41, 0xe3, 0x0f, 0x16,
+  0x42, 0x3b, 0xe4, 0x39, 0x8d, 0x52, 0x7f, 0xdd,
+  0x07, 0x43, 0xc3, 0x79, 0xda, 0x0e, 0x9e, 0xbf,
+  0xf4, 0xe3, 0x9d, 0x3f, 0xff, 0xfe, 0xc7, 0xb3,
+  0x8b, 0x15, 0x6d, 0xc1, 0x9d, 0xb7, 0xf0, 0xba,
+  0x5f, 0x7d, 0xfc, 0x15, 0x3a, 0x59, 0xf2, 0x2d,
+  0xaa, 0x4f, 0x3f, 0xfe, 0xbb, 0xc7, 0x93, 0x17,
+  0xc2, 0xbd, 0xe1, 0x78, 0xe7, 0x4f, 0xff, 0x67,
+  0x16, 0x0e, 0x0c, 0x5b, 0xcf, 0x37, 0xf3, 0xa7,
+  0xfa, 0x9e, 0x0c, 0x5b, 0xfe, 0x78, 0x8e, 0x95,
+  0x6d, 0x11, 0xfa, 0xa3, 0x2f, 0x7d, 0x31, 0x0c,
+  0xc3, 0xa6, 0x7c, 0xf5, 0xa5, 0xf5, 0x3a, 0x7f,
+  0xff, 0xff, 0xd7, 0xfe, 0x9c, 0x3d, 0x8e, 0xdc,
+  0xd7, 0xb2, 0xac, 0xfe, 0xf4, 0xc7, 0x9d, 0x78,
+  0xa4, 0x0b, 0xc9, 0x53, 0xff, 0xff, 0x27, 0x83,
+  0xcf, 0x63, 0xc3, 0xb5, 0xa2, 0xa9, 0x8e, 0xf1,
+  0x4e, 0x84, 0xe9, 0xbb, 0xa2, 0x94, 0xd1, 0xbc,
+  0x51, 0x58, 0x52, 0xc2, 0xaa, 0xf3, 0xc4, 0x67,
+  0x3f, 0x8d, 0xd6, 0x7f, 0xf3, 0x13, 0x86, 0x35,
+  0xf6, 0xcd, 0xf8, 0x0e, 0x9f, 0xff, 0x7b, 0xf9,
+  0xc5, 0xb7, 0xe5, 0xab, 0xe3, 0xef, 0xc0, 0x74,
+  0xff, 0xcb, 0xfa, 0x3f, 0x6d, 0xab, 0xda, 0xd2,
+  0x74, 0x55, 0x14, 0xbd, 0xae, 0xcf, 0x5e, 0x6d,
+  0xb9, 0x3a, 0x77, 0x15, 0xe0, 0xe9, 0xaf, 0x93,
+  0xa2, 0x84, 0xdb, 0x1f, 0x0e, 0xfa, 0x92, 0x64,
+  0x95, 0xb0, 0xf4, 0xfd, 0xca, 0xff, 0x1a, 0xf3,
+  0xa7, 0x2f, 0x2a, 0x74, 0xfe, 0x69, 0xf7, 0x9a,
+  0xeb, 0x5c, 0x0f, 0x21, 0x85, 0xb3, 0xf3, 0x7e,
+  0x37, 0x8e, 0xa0, 0x3a, 0x7f, 0x0b, 0x5f, 0xbc,
+  0x6e, 0x4e, 0x8b, 0x3e, 0x5f, 0x19, 0xcf, 0xca,
+  0x0b, 0xcf, 0x5a, 0x0e, 0x87, 0x9e, 0x87, 0xc8,
+  0x67, 0xff, 0xfd, 0x9f, 0xe8, 0x2b, 0x45, 0xfb,
+  0xf9, 0xfd, 0xb6, 0xe1, 0x50, 0xfc, 0xe9, 0xff,
+  0x7a, 0xda, 0xe1, 0x55, 0xc6, 0xf1, 0xce, 0x9f,
+  0xdb, 0x4d, 0x71, 0x7a, 0x27, 0x47, 0x27, 0xeb,
+  0x94, 0x49, 0x30, 0xe9, 0xdf, 0xbe, 0x4e, 0x85,
+  0x35, 0x94, 0x88, 0x4f, 0xd4, 0xd6, 0xef, 0xfd,
+  0x0e, 0x9e, 0x67, 0x55, 0x01, 0xd1, 0x67, 0xa5,
+  0xe2, 0xf8, 0x54, 0xf2, 0xae, 0x1c, 0xfe, 0x4f,
+  0x17, 0x39, 0xfd, 0x9f, 0x51, 0x78, 0xef, 0x27,
+  0x4f, 0x5d, 0x2a, 0xd1, 0xd3, 0xf6, 0x35, 0xec,
+  0x1f, 0x1d, 0x3e, 0xf0, 0x06, 0xe9, 0x3a, 0x3a,
+  0x22, 0xab, 0xc6, 0xa0, 0x22, 0xec, 0xb2, 0x7f,
+  0xfe, 0x17, 0xe2, 0xda, 0xc2, 0xff, 0xa7, 0xef,
+  0x38, 0xec, 0xe9, 0xff, 0xfd, 0xeb, 0xa5, 0xf5,
+  0xce, 0x15, 0x8b, 0xee, 0x78, 0x2b, 0x76, 0x3a,
+  0x7f, 0xff, 0xfd, 0xdf, 0xf8, 0x07, 0x69, 0x78,
+  0xe8, 0x38, 0x57, 0xb5, 0xa7, 0x17, 0xef, 0xdf,
+  0x43, 0xa7, 0xff, 0xdd, 0x88, 0xde, 0x6b, 0x8f,
+  0x5f, 0x0c, 0x01, 0x4e, 0x8b, 0x47, 0x16, 0x21,
+  0x19, 0x3f, 0xfc, 0xf6, 0xfc, 0x5a, 0xfd, 0xaf,
+  0xde, 0x6b, 0xa7, 0x4f, 0xff, 0xb9, 0xb6, 0x70,
+  0x6f, 0xca, 0xd5, 0xa7, 0xe8, 0xd0, 0x74, 0xff,
+  0x5f, 0xe8, 0xe0, 0x0d, 0xd6, 0x8e, 0x9f, 0xf5,
+  0x7b, 0xff, 0x0a, 0xf7, 0xc5, 0xd8, 0x9d, 0x3f,
+  0xfa, 0x8e, 0x15, 0xc7, 0x7c, 0x33, 0x5a, 0xa8,
+  0x9d, 0x3f, 0xff, 0xeb, 0xa6, 0xbe, 0xb0, 0xf0,
+  0xc5, 0xe6, 0xb7, 0x47, 0x0b, 0xf7, 0x27, 0x45,
+  0xa3, 0x0b, 0xca, 0x11, 0x42, 0xb8, 0x74, 0x8d,
+  0x32, 0x92, 0x7f, 0x29, 0x31, 0x72, 0xa7, 0x79,
+  0x8c, 0x26, 0x7f, 0xda, 0x38, 0xbc, 0xaf, 0xfc,
+  0x03, 0xa7, 0xfa, 0xc3, 0x4b, 0xeb, 0xc3, 0x3e,
+  0x3a, 0x7f, 0xff, 0xca, 0x8a, 0xce, 0x0d, 0x63,
+  0xdf, 0xe7, 0x87, 0x54, 0xfd, 0xe2, 0xce, 0x84,
+  0x47, 0x57, 0xcf, 0x1b, 0xcf, 0x27, 0xbd, 0x9f,
+  0x29, 0xd3, 0xff, 0xff, 0xf6, 0x55, 0x9f, 0xf7,
+  0x4c, 0x6b, 0x5c, 0x3f, 0xdb, 0x7f, 0x0b, 0xa5,
+  0xf7, 0xdf, 0xc1, 0x53, 0xa1, 0xe8, 0xb8, 0xf1,
+  0x0c, 0x2a, 0xf2, 0x7d, 0xcb, 0xe5, 0xf4, 0x6b,
+  0xbb, 0x0e, 0xa9, 0xec, 0xd7, 0x40, 0x74, 0xff,
+  0xd8, 0xf7, 0x0f, 0x0f, 0x74, 0x68, 0xa1, 0xd3,
+  0xde, 0xc6, 0xd0, 0x74, 0xfd, 0x9d, 0x1f, 0xd3,
+  0xe3, 0xa2, 0xd1, 0x6d, 0xd0, 0x85, 0x11, 0xb2,
+  0x45, 0x3d, 0xd7, 0xbd, 0xa9, 0xd3, 0xff, 0xf7,
+  0x87, 0x85, 0xfa, 0xff, 0xd3, 0x1e, 0xb6, 0x5a,
+  0x1d, 0x3f, 0xff, 0xde, 0xa0, 0x55, 0x95, 0xed,
+  0x78, 0x28, 0xaf, 0x38, 0x56, 0x1d, 0x16, 0x8c,
+  0x41, 0x5c, 0x9f, 0xff, 0xfc, 0x23, 0xea, 0x38,
+  0x62, 0xf3, 0xf5, 0x6b, 0x17, 0x42, 0xd3, 0x9e,
+  0xd0, 0xe9, 0xff, 0xff, 0x97, 0xa6, 0x17, 0x87,
+  0xef, 0xbe, 0x9c, 0x29, 0x7d, 0x7d, 0xfe, 0xab,
+  0x41, 0xd3, 0xea, 0x6b, 0xeb, 0xf9, 0xd1, 0x68,
+  0xa7, 0xed, 0xfe, 0x3c, 0x9a, 0x36, 0x23, 0x23,
+  0x9f, 0xf9, 0xf5, 0xf7, 0x4c, 0x2f, 0xa8, 0x5e,
+  0x87, 0x4f, 0xf7, 0xfb, 0x6b, 0xf7, 0x8d, 0xc9,
+  0xd3, 0xfd, 0xce, 0x14, 0x3c, 0xe3, 0x58, 0x74,
+  0xff, 0xff, 0x68, 0xe2, 0xf3, 0xeb, 0xfd, 0x15,
+  0x5b, 0xff, 0x38, 0x53, 0xa7, 0xb3, 0xc2, 0x81,
+  0x3a, 0x29, 0x44, 0x4e, 0xb2, 0xcf, 0xcd, 0x52,
+  0xfe, 0xd7, 0x27, 0x4f, 0xf6, 0x35, 0x9f, 0xbc,
+  0x6e, 0x4e, 0x9e, 0xb1, 0x00, 0x4e, 0x85, 0x44,
+  0x3d, 0x4c, 0x32, 0x6f, 0x3f, 0x5e, 0x44, 0x6d,
+  0xe7, 0x4f, 0xdf, 0xbc, 0x7e, 0xd0, 0xe9, 0xef,
+  0xdd, 0x78, 0x34, 0x7a, 0xb9, 0x2a, 0x8e, 0x57,
+  0x10, 0x52, 0x36, 0x7a, 0x4a, 0xbc, 0x92, 0x27,
+  0x58, 0x86, 0x1e, 0x61, 0x54, 0xda, 0x10, 0x93,
+  0xff, 0x7f, 0xf7, 0xc0, 0x6f, 0x1f, 0xb6, 0x8e,
+  0x85, 0x5d, 0xf9, 0xb9, 0xd2, 0x9d, 0x84, 0x5c,
+  0xfb, 0xea, 0xcd, 0xe4, 0xe9, 0xfd, 0x6d, 0x62,
+  0xf2, 0xbc, 0x9d, 0x3f, 0xff, 0xfd, 0x8b, 0xcd,
+  0x75, 0xae, 0x1f, 0xba, 0x5f, 0x7d, 0xd1, 0xfb,
+  0xe7, 0x1e, 0x68, 0xe9, 0xbb, 0xe8, 0x74, 0x0a,
+  0x27, 0xb3, 0x08, 0x59, 0xfa, 0xe8, 0xfd, 0xd3,
+  0x53, 0xa7, 0xff, 0x0d, 0x2f, 0xad, 0xb2, 0x95,
+  0xc6, 0x14, 0xe9, 0x54, 0xe8, 0xec, 0xf6, 0xba,
+  0xa5, 0x4f, 0xe5, 0x67, 0xef, 0x1b, 0x93, 0xa7,
+  0xff, 0xfd, 0x9f, 0xa8, 0x29, 0x7d, 0x7b, 0x5c,
+  0xfe, 0xf9, 0xf5, 0x8b, 0x47, 0x47, 0x95, 0x36,
+  0x34, 0x4f, 0xb0, 0xd1, 0xf9, 0x3d, 0x61, 0x11,
+  0xd9, 0x2f, 0x53, 0x19, 0xf3, 0xfc, 0x37, 0x49,
+  0xd3, 0xeb, 0xad, 0x16, 0x13, 0xa2, 0x93, 0xce,
+  0xc1, 0x3c, 0xff, 0xfb, 0xd4, 0x5a, 0x73, 0x8f,
+  0x5f, 0x4e, 0x1d, 0x3b, 0x53, 0xa7, 0x9b, 0xf3,
+  0x78, 0x3a, 0x7f, 0xff, 0xe6, 0xfa, 0x5f, 0xb4,
+  0xf0, 0xff, 0x6d, 0xfc, 0x2e, 0x97, 0xdf, 0x7f,
+  0x05, 0x4e, 0x8a, 0x11, 0x4d, 0x64, 0x93, 0xff,
+  0xff, 0xe5, 0xa6, 0xbd, 0xad, 0x3c, 0x31, 0x7c,
+  0xf0, 0xfd, 0xf7, 0xd3, 0x85, 0x40, 0x0f, 0x64,
+  0xe9, 0xf2, 0xfe, 0x9d, 0xa0, 0xe9, 0xff, 0xff,
+  0xff, 0xd6, 0xcb, 0x45, 0xc2, 0xb3, 0x37, 0x5a,
+  0xa8, 0x8a, 0xfe, 0xe8, 0xbe, 0xeb, 0xdb, 0x5f,
+  0x56, 0x1d, 0x3f, 0xc0, 0xbe, 0x7f, 0x78, 0xdc,
+  0x9d, 0x3f, 0xa8, 0xed, 0x72, 0xcf, 0x64, 0xe9,
+  0xff, 0x2f, 0x46, 0xfe, 0xef, 0xed, 0x75, 0x61,
+  0xd1, 0x67, 0xf9, 0x49, 0xac, 0xff, 0xf5, 0xe7,
+  0x9b, 0xb0, 0x57, 0x80, 0xd7, 0x9a, 0x9d, 0x3d,
+  0x47, 0xbf, 0x93, 0xa1, 0x55, 0xf8, 0x59, 0x1f,
+  0xa3, 0x03, 0x12, 0x36, 0x42, 0x47, 0x05, 0x1b,
+  0x0a, 0x3f, 0xc2, 0xd2, 0xa4, 0x5d, 0xa9, 0x4e,
+  0xe7, 0x83, 0x47, 0x4f, 0xff, 0x52, 0xff, 0xaf,
+  0x06, 0x7d, 0x7a, 0x67, 0xd4, 0x1d, 0x16, 0x7e,
+  0xde, 0x20, 0x9f, 0xa8, 0x69, 0xfc, 0x68, 0xd0,
+  0x74, 0xf9, 0x9e, 0xe6, 0xf9, 0x3a, 0x4d, 0x1d,
+  0x32, 0xb0, 0xe9, 0x64, 0xe8, 0x13, 0x4b, 0xa2,
+  0xb1, 0xc9, 0xea, 0xe0, 0xda, 0x7b, 0x35, 0xda,
+  0x4e, 0x99, 0xad, 0x3a, 0x7f, 0x63, 0xc3, 0x4b,
+  0xfe, 0xa7, 0x43, 0x77, 0x4d, 0x05, 0x4d, 0x6d,
+  0xfb, 0xc4, 0x6c, 0x22, 0xec, 0x5a, 0x7f, 0x57,
+  0xd4, 0x87, 0x7e, 0x03, 0xa7, 0xff, 0xca, 0x2a,
+  0x96, 0xc5, 0x47, 0xfa, 0xbd, 0xb0, 0xe8, 0x69,
+  0x10, 0xdc, 0x46, 0x93, 0xbf, 0xac, 0x3a, 0x60,
+  0x29, 0xd1, 0xe3, 0x61, 0xf1, 0xb9, 0x3b, 0x8c,
+  0x75, 0xbd, 0x9c, 0x6c, 0x27, 0x96, 0x50, 0x35,
+  0x0b, 0xbc, 0xc6, 0xc3, 0x73, 0xba, 0x5d, 0x21,
+  0x74, 0x92, 0xfa, 0xe9, 0x8e, 0xa7, 0xd0, 0x9b,
+  0x6a, 0x30, 0x31, 0x8f, 0xb1, 0x90, 0xea, 0xc4,
+  0xf4, 0x7e, 0xc6, 0x0b, 0xf9, 0xe3, 0x6a, 0xca,
+  0xa9, 0xcc, 0xe5, 0x8b, 0x68, 0xc5, 0x78, 0xa3,
+  0x62, 0xeb, 0x0e, 0x36, 0xf5, 0x79, 0xfc, 0xeb,
+  0x14, 0xdd, 0x43, 0x45, 0x3b, 0x3e, 0x14, 0xdd,
+  0x43, 0x45, 0x47, 0x3f, 0xed, 0x7b, 0xac, 0x53,
+  0x75, 0x0d, 0x13, 0x44, 0x9d, 0x67, 0xec, 0xc3,
+  0x09, 0xfc, 0xeb, 0x14, 0xdd, 0x43, 0x45, 0x5f,
+  0x3e, 0x14, 0xdd, 0x43, 0x45, 0x6d, 0x3f, 0xcf,
+  0x75, 0x8a, 0x6e, 0xa1, 0xa2, 0x41, 0x93, 0xac,
+  0xfc, 0x74, 0xc2, 0x7f, 0xe7, 0x6b, 0xdd, 0x62,
+  0x9b, 0xa8, 0x68, 0x90, 0xe7, 0xc2, 0x9b, 0xa8,
+  0x68, 0xb1, 0x27, 0xd6, 0x2b, 0xfe, 0x87, 0x4f,
+  0xec, 0x2f, 0x5e, 0x2b, 0x15, 0x3a, 0x7f, 0xe5,
+  0xba, 0xdf, 0xf9, 0xf0, 0x17, 0xe7, 0x4e, 0xfa,
+  0xd0, 0x74, 0x9f, 0xf3, 0xdf, 0xed, 0x0e, 0x77,
+  0x17, 0x80, 0x74, 0xfb, 0xcd, 0xbb, 0xda, 0x9d,
+  0x38, 0x55, 0xe7, 0x4f, 0xeb, 0x17, 0x82, 0xed,
+  0xa3, 0xa7, 0xda, 0xfe, 0xb8, 0x53, 0xa7, 0xea,
+  0xd4, 0x7c, 0x1e, 0x39, 0xd0, 0xa8, 0x8a, 0xf1,
+  0x8e, 0x94, 0x4f, 0xff, 0x3d, 0x58, 0xaf, 0xe7,
+  0xeb, 0x8d, 0xb1, 0x3a, 0x7f, 0x27, 0xed, 0xb7,
+  0xee, 0xa7, 0x45, 0x28, 0x80, 0xc2, 0x6c, 0xfe,
+  0x02, 0xde, 0x7d, 0xf0, 0x95, 0x16, 0xac, 0x17,
+  0xa1, 0x82, 0x13, 0xd3, 0x09, 0x4f, 0x14, 0xb4,
+  0x3e, 0x25, 0x58, 0x85, 0x26, 0xc2, 0xb8, 0x04,
+  0x93, 0xff, 0x63, 0xcb, 0x9c, 0x6f, 0x4b, 0xf8,
+  0x0e, 0x9f, 0xfe, 0xba, 0x5f, 0x9e, 0xe8, 0x76,
+  0x35, 0x9e, 0xa9, 0xd3, 0x61, 0xd6, 0x89, 0x8f,
+  0xa2, 0xc3, 0x93, 0x62, 0x58, 0xcd, 0x27, 0xf3,
+  0xac, 0x53, 0x75, 0x0d, 0x16, 0x6c, 0xff, 0xe7,
+  0x33, 0x5e, 0xeb, 0x14, 0xdd, 0x43, 0x45, 0x01,
+  0x37, 0x78, 0x3a, 0x7f, 0x7e, 0xf2, 0x0e, 0xbf,
+  0x68, 0xe9, 0xb8, 0x54, 0xe9, 0xe4, 0xdd, 0x43,
+  0x45, 0xbf, 0x3f, 0x75, 0xce, 0xa6, 0x89, 0xd0,
+  0x27, 0xae, 0x02, 0xb9, 0xf6, 0x5f, 0x5e, 0xb5,
+  0x3a, 0x7f, 0x2b, 0x6e, 0xb9, 0xfa, 0x80, 0xe9,
+  0xed, 0xf7, 0xf2, 0x74, 0xfe, 0xee, 0x9a, 0xaa,
+  0x5b, 0x0e, 0x9e, 0xc7, 0x4e, 0x58, 0x74, 0xd6,
+  0xf3, 0xa2, 0xcd, 0xd7, 0xc9, 0x64, 0xee, 0x31,
+  0x3e, 0xb5, 0x17, 0x79, 0xb5, 0xb7, 0x89, 0x0e,
+  0x0a, 0x80, 0x6d, 0xf2, 0x1c, 0xb6, 0xcf, 0xfb,
+  0x5e, 0xeb, 0x14, 0xdd, 0x43, 0x45, 0x29, 0x3f,
+  0xcf, 0x75, 0x8a, 0x6e, 0xa1, 0xa2, 0x4e, 0x93,
+  0x98, 0x88, 0x7d, 0x46, 0x85, 0x77, 0x67, 0xb4,
+  0x46, 0x45, 0xcd, 0xae, 0x27, 0xb8, 0xf0, 0x12,
+  0x16, 0x3e, 0x27, 0xe3, 0xc2, 0xb1, 0xa2, 0x66,
+  0x4e, 0x59, 0xe0, 0xa4, 0x07, 0x75, 0x94, 0x7a,
+  0xda, 0x30, 0xe9, 0xf0, 0xa6, 0xea, 0x1a, 0x21,
+  0xf9, 0xff, 0x6b, 0xdd, 0x62, 0x9b, 0xa8, 0x68,
+  0x94, 0xe4, 0xeb, 0x3f, 0x66, 0x18, 0x4f, 0xe7,
+  0x58, 0xa6, 0xea, 0x1a, 0x22, 0x79, 0xfc, 0xeb,
+  0x14, 0xdd, 0x43, 0x44, 0x63, 0x3f, 0xf9, 0xcc,
+  0xd7, 0xba, 0xc5, 0x37, 0x50, 0xd1, 0x3c, 0xc2,
+  0xa3, 0xbe, 0x82, 0x77, 0x9d, 0xe0, 0xee, 0x7c,
+  0x29, 0xba, 0x86, 0x88, 0x82, 0x7f, 0xda, 0xf7,
+  0x58, 0xa6, 0xea, 0x1a, 0x25, 0x49, 0x3a, 0xcf,
+  0xd9, 0x86, 0x13, 0xf9, 0xd6, 0x29, 0xba, 0x86,
+  0x88, 0xa2, 0x7f, 0x3a, 0xc5, 0x37, 0x50, 0xd1,
+  0x19, 0x4f, 0xfe, 0x73, 0x35, 0xee, 0xb1, 0x4d,
+  0xd4, 0x34, 0x4c, 0xb3, 0xf9, 0xd6, 0x29, 0xba,
+  0x86, 0x8a, 0x92, 0x7f, 0x3a, 0xc5, 0x37, 0x50,
+  0xd1, 0x5d, 0x4f, 0xe7, 0x58, 0xa6, 0xea, 0x1a,
+  0x2c, 0x59, 0xff, 0x99, 0xaf, 0x75, 0x8a, 0x6e,
+  0xa1, 0xa2, 0x7a, 0x9f, 0xe0, 0xbb, 0x57, 0xdc,
+  0x5e, 0x6f, 0x3a, 0x1c, 0x88, 0xa5, 0x4c, 0x9f,
+  0x9b, 0x8a, 0xf3, 0xee, 0xea, 0x74, 0xf0, 0xb3,
+  0x34, 0x9d, 0x39, 0x2f, 0x05, 0x4f, 0xff, 0xd8,
+  0xfe, 0xf4, 0xf0, 0xab, 0xdf, 0x75, 0x00, 0x14,
+  0xe9, 0xff, 0xf8, 0x7c, 0xdf, 0xac, 0x72, 0x88,
+  0xf9, 0xbd, 0x3b, 0xa0, 0xe9, 0xf2, 0x7b, 0x1d,
+  0x58, 0x74, 0xff, 0xed, 0xaf, 0xec, 0x0e, 0xc7,
+  0x93, 0x44, 0xe9, 0xf6, 0x70, 0xac, 0x43, 0xa7,
+  0xff, 0x7f, 0x82, 0xaf, 0xd5, 0x9c, 0x38, 0x63,
+  0x88, 0xe9, 0xb6, 0x93, 0xa7, 0xf6, 0xd7, 0x71,
+  0xdf, 0xe8, 0x3a, 0x3e, 0x79, 0x5d, 0x8b, 0x47,
+  0x95, 0x08, 0x0a, 0xdb, 0x18, 0x30, 0x53, 0xf4,
+  0x7c, 0x93, 0x37, 0xc2, 0x72, 0x77, 0xf7, 0x26,
+  0xa8, 0x5a, 0x77, 0xfd, 0x53, 0xa4, 0x16, 0xe8,
+  0xf1, 0x14, 0xa2, 0x78, 0x5b, 0x6b, 0x0e, 0x8b,
+  0x3c, 0xef, 0x16, 0x4f, 0xfb, 0xd8, 0xdc, 0xab,
+  0x55, 0xf3, 0x0e, 0x9f, 0x7f, 0xa7, 0xae, 0xa7,
+  0x4f, 0xfd, 0x61, 0xd0, 0x5a, 0x63, 0x41, 0x53,
+  0xa3, 0xc7, 0xd5, 0xf2, 0x99, 0xef, 0xf3, 0xc3,
+  0xa1, 0xd3, 0xf5, 0xd4, 0x3b, 0xfa, 0x0e, 0x8d,
+  0x3d, 0x4f, 0x93, 0xcf, 0xbb, 0xe9, 0x5e, 0x54,
+  0xe8, 0xb4, 0x61, 0x79, 0xdb, 0x04, 0x33, 0xff,
+  0xff, 0xb0, 0xbe, 0x11, 0x5e, 0xb9, 0xf7, 0xfb,
+  0x7d, 0xd7, 0x9e, 0xf4, 0x5e, 0x74, 0xfa, 0x8e,
+  0x47, 0xc1, 0x3a, 0x7e, 0xe7, 0x44, 0x1c, 0x56,
+  0x74, 0xff, 0xbf, 0xe7, 0xe7, 0x16, 0x3e, 0xa9,
+  0xd3, 0xfe, 0xdb, 0x02, 0xff, 0x79, 0xbe, 0x87,
+  0x43, 0xcf, 0xf0, 0x07, 0xd3, 0xff, 0x96, 0xe9,
+  0xce, 0x17, 0x3f, 0x50, 0x54, 0xe9, 0xd5, 0xc3,
+  0x0e, 0x8c, 0x9f, 0x2f, 0x69, 0x33, 0xf7, 0x75,
+  0xcd, 0x6f, 0x27, 0x4e, 0x08, 0x42, 0x54, 0xff,
+  0xec, 0xfb, 0x35, 0xc7, 0xb8, 0xba, 0x8a, 0xbc,
+  0xa7, 0x17, 0x91, 0xe4, 0x54, 0x76, 0x95, 0x0f,
+  0x55, 0x89, 0x6f, 0x5e, 0x29, 0x18, 0x55, 0xfe,
+  0x10, 0xf9, 0x86, 0x5c, 0xdd, 0x2c, 0xe9, 0xf0,
+  0x72, 0xb4, 0x84, 0xe9, 0xfc, 0xba, 0x38, 0x0e,
+  0xf2, 0x54, 0xc1, 0x09, 0x51, 0xc9, 0xe3, 0x84,
+  0xc6, 0x7a, 0xb9, 0xf7, 0x1c, 0xa7, 0x1a, 0x39,
+  0x83, 0x53, 0xa5, 0x67, 0x4a, 0x9b, 0x34, 0xb9,
+  0x16, 0x9f, 0xfa, 0xb5, 0xe7, 0xeb, 0xce, 0x17,
+  0x35, 0x3a, 0x14, 0xfb, 0x7b, 0x27, 0x9f, 0xf6,
+  0x7c, 0x3a, 0x06, 0xfc, 0xde, 0x0e, 0x87, 0x9f,
+  0x17, 0x88, 0xa7, 0xa8, 0xbf, 0x09, 0xd3, 0xfe,
+  0x5a, 0x70, 0xac, 0x4c, 0x79, 0xa3, 0xa2, 0xcf,
+  0x80, 0x48, 0x67, 0xec, 0xa8, 0xf3, 0x7f, 0x3a,
+  0x7f, 0x73, 0x85, 0xf8, 0x76, 0x93, 0xa7, 0xfe,
+  0xf7, 0x38, 0x54, 0x50, 0x6f, 0xc0, 0x74, 0xff,
+  0xff, 0xbc, 0xcd, 0xfd, 0x2f, 0x70, 0x6f, 0xcd,
+  0xaf, 0xf7, 0xce, 0xbc, 0xf1, 0x7a, 0xc2, 0xa6,
+  0x3f, 0xa5, 0x95, 0x34, 0xed, 0x0e, 0x7f, 0xfa,
+  0xf3, 0x5b, 0x6b, 0x0a, 0xda, 0xf1, 0x85, 0x3a,
+  0x7f, 0xff, 0xfd, 0xeb, 0xa6, 0xbe, 0xb0, 0xf0,
+  0xba, 0x5f, 0x5f, 0x66, 0xbe, 0xa7, 0x9e, 0x7b,
+  0xa0, 0xe8, 0xfa, 0x37, 0xb2, 0xa1, 0x37, 0x82,
+  0x74, 0xdd, 0x40, 0x74, 0x34, 0x6b, 0x80, 0x2d,
+  0x39, 0xfb, 0xc9, 0xd3, 0x04, 0x27, 0x47, 0x8f,
+  0x52, 0xa4, 0x41, 0x1c, 0x9d, 0x9e, 0xa0, 0x29,
+  0xc6, 0xbe, 0x7f, 0xff, 0xf6, 0x57, 0x9c, 0x77,
+  0xbd, 0x19, 0xbc, 0xdd, 0xff, 0xa5, 0x6b, 0x7f,
+  0x01, 0xd1, 0x4a, 0x2a, 0xfc, 0x5d, 0x3f, 0xd7,
+  0x9c, 0x28, 0xe6, 0xd0, 0xe9, 0xca, 0x2d, 0x1d,
+  0x16, 0x9f, 0x9e, 0xc6, 0xff, 0xf2, 0x4e, 0x23,
+  0x59, 0xf7, 0xef, 0x3a, 0xde, 0x74, 0xff, 0xd6,
+  0x23, 0x6d, 0x62, 0xeb, 0xbf, 0x3a, 0x7f, 0x7d,
+  0x47, 0xb4, 0xc2, 0x9d, 0x3e, 0xf7, 0x4c, 0x6b,
+  0xce, 0x9f, 0xbc, 0xac, 0xa2, 0xc2, 0x74, 0xc1,
+  0x09, 0xd0, 0x87, 0xd8, 0x25, 0x21, 0x2d, 0x9f,
+  0xeb, 0x6b, 0x5a, 0xda, 0x5f, 0x52, 0x9c, 0x6b,
+  0x67, 0xff, 0x5f, 0xc1, 0x78, 0xf5, 0x35, 0xc7,
+  0x75, 0x3a, 0x7e, 0xfe, 0x83, 0x9b, 0xf9, 0xd3,
+  0xf3, 0x3d, 0xc5, 0x63, 0xd0, 0xe9, 0xc1, 0x08,
+  0x4a, 0x9f, 0xf9, 0x47, 0xfd, 0xef, 0x5b, 0x69,
+  0x58, 0x73, 0x8b, 0xc8, 0xe3, 0xaa, 0x2e, 0x6a,
+  0x19, 0x55, 0x4a, 0xca, 0x67, 0x65, 0xa1, 0x4d,
+  0x9d, 0xa3, 0x41, 0xe4, 0x12, 0x9e, 0x7d, 0xd2,
+  0xf3, 0xc8, 0x25, 0x3a, 0xbe, 0xe4, 0xf2, 0x09,
+  0x4c, 0x10, 0x9e, 0x41, 0x28, 0x44, 0x52, 0x34,
+  0x51, 0x92, 0xf0, 0x95, 0x4d, 0xb9, 0x2c, 0x82,
+  0x47, 0x1b, 0xd9, 0xfa, 0xf1, 0x77, 0xfe, 0x87,
+  0x4e, 0xdf, 0x83, 0xe7, 0xc1, 0x93, 0x39, 0xee,
+  0x2b, 0xdc, 0x1d, 0x2b, 0xe3, 0x9e, 0xb0, 0x0c,
+  0xe7, 0xf3, 0x4f, 0xee, 0x8c, 0xfa, 0x82, 0xa7,
+  0xf7, 0x9f, 0xde, 0xd7, 0x1e, 0x3a, 0x4f, 0x2a,
+  0x76, 0x8d, 0x05, 0x41, 0x50, 0xa6, 0xd5, 0x04,
+  0x18, 0x37, 0x3d, 0xf5, 0x02, 0x14, 0xe3, 0x59,
+  0x0a, 0x8c, 0x5b, 0x84, 0xac, 0xf7, 0x7a, 0x2f,
+  0x3a, 0x4c, 0x3a, 0x6b, 0x7f, 0x26, 0xc5, 0xa2,
+  0x19, 0xf0, 0x6d, 0xaf, 0x30, 0xe9, 0xf9, 0x15,
+  0xa7, 0xa8, 0x0a, 0x97, 0x8e, 0x9f, 0xea, 0x3b,
+  0x7f, 0x38, 0xef, 0x7e, 0x74, 0xfd, 0xe5, 0x65,
+  0x16, 0x13, 0xa7, 0xd7, 0x43, 0x2d, 0x87, 0x4e,
+  0xaf, 0x84, 0xe8, 0xf9, 0xe1, 0x64, 0x9e, 0x7e,
+  0xfe, 0x80, 0x1d, 0xd4, 0xe9, 0xfb, 0xdd, 0x3a,
+  0xab, 0x1d, 0xca, 0x61, 0x96, 0x20, 0x27, 0xb5,
+  0x6f, 0xc9, 0x14, 0x5a, 0x7a, 0x3e, 0x28, 0xfc,
+  0x67, 0x13, 0xdf, 0xba, 0x3b, 0x3a, 0x1e, 0xaf,
+  0x5e, 0xca, 0xf1, 0x0f, 0xdf, 0xab, 0xd6, 0x3f,
+  0xfc, 0x9b, 0x4f, 0xff, 0xa8, 0x11, 0xbe, 0x75,
+  0x98, 0xdc, 0xfd, 0x5a, 0x3a, 0x70, 0x42, 0x12,
+  0xa6, 0x7a, 0x94, 0xe2, 0xf2, 0x15, 0x12, 0xa2,
+  0xe3, 0x3f, 0x50, 0xd3, 0xf8, 0xd1, 0xa0, 0xe9,
+  0xec, 0x6d, 0x21, 0x3a, 0x7d, 0x40, 0xf9, 0x58,
+  0x74, 0xff, 0xf2, 0xf5, 0xcf, 0xd4, 0x1b, 0x90,
+  0x75, 0xfb, 0xce, 0x86, 0xee, 0x8d, 0x1f, 0x1a,
+  0xe9, 0x16, 0x49, 0xe7, 0x3f, 0xdf, 0x3a, 0x7e,
+  0xca, 0xb5, 0xfe, 0xea, 0x74, 0x3c, 0xf2, 0xf2,
+  0x39, 0x3b, 0xbe, 0xdb, 0x93, 0xa6, 0xd7, 0x71,
+  0x8d, 0xd3, 0x93, 0x70, 0x35, 0x6e, 0x30, 0x89,
+  0x65, 0x15, 0x51, 0x0f, 0xf7, 0x90, 0xf3, 0x1b,
+  0x5d, 0xca, 0xf3, 0xe8, 0xcc, 0x82, 0xfe, 0x84,
+  0x93, 0x51, 0x95, 0x0c, 0x20, 0x99, 0x19, 0xfe,
+  0x25, 0x87, 0x6a, 0x2f, 0xca, 0x6b, 0x29, 0xbf,
+  0x33, 0xba, 0x5d, 0xc3, 0xe3, 0x8a, 0x1e, 0x5d,
+  0x61, 0x1a, 0xde, 0x45, 0x3f, 0xf9, 0xcc, 0xd7,
+  0xba, 0xc5, 0x37, 0x50, 0xd1, 0x45, 0x4f, 0xe7,
+  0x58, 0xa6, 0xea, 0x1a, 0x2e, 0x89, 0xff, 0x9d,
+  0xaf, 0x75, 0x8a, 0x6e, 0xa1, 0xa2, 0x4b, 0x9f,
+  0xce, 0xb1, 0x4d, 0xd4, 0x34, 0x5e, 0x50, 0xad,
+  0xfc, 0x3d, 0x04, 0xef, 0x3b, 0xb3, 0xb4, 0x52,
+  0x68, 0xed, 0x87, 0x78, 0x86, 0x2f, 0xeb, 0xa9,
+  0x4a, 0xc7, 0x6b, 0x95, 0x2e, 0xce, 0xdb, 0x26,
+  0x4f, 0xfe, 0x73, 0x35, 0xee, 0xb1, 0x4d, 0xd4,
+  0x34, 0x4b, 0x33, 0x77, 0x83, 0xa7, 0x93, 0x75,
+  0x0d, 0x11, 0x9c, 0xfd, 0xe5, 0x65, 0x16, 0x13,
+  0xa6, 0xfb, 0xce, 0x93, 0x0e, 0x9f, 0x78, 0x71,
+  0xae, 0x13, 0xd3, 0x61, 0x6f, 0x51, 0x69, 0xfb,
+  0x5f, 0xe1, 0xd1, 0x3a, 0x75, 0x56, 0x93, 0xa0,
+  0x53, 0x10, 0x63, 0xf7, 0xd3, 0x32, 0x55, 0x3f,
+  0xf6, 0x7c, 0x3a, 0x0e, 0x14, 0xbd, 0x58, 0x74,
+  0xfb, 0xea, 0xfa, 0xe9, 0xd1, 0xe3, 0xec, 0x6c,
+  0x8d, 0x3b, 0x7a, 0xbc, 0xe9, 0xff, 0xfb, 0xdc,
+  0xf7, 0x9a, 0xd2, 0xf5, 0xf8, 0x2b, 0xc3, 0xbf,
+  0x9d, 0x3f, 0xf5, 0xb3, 0x3e, 0x0d, 0x57, 0x1b,
+  0xc7, 0x3a, 0x7f, 0xd8, 0x5f, 0x63, 0xcb, 0xf6,
+  0xbb, 0x3a, 0x4e, 0xe3, 0x15, 0x7d, 0xdc, 0x64,
+  0xed, 0x42, 0xa7, 0x04, 0x9a, 0x3b, 0xf6, 0x3a,
+  0xa3, 0xcf, 0xfe, 0x73, 0x35, 0xee, 0xb1, 0x4d,
+  0xd4, 0x34, 0x4d, 0x33, 0xff, 0x9c, 0xcd, 0x7b,
+  0xac, 0x53, 0x75, 0x0d, 0x13, 0x8c, 0xff, 0xe7,
+  0x33, 0x5e, 0xeb, 0x14, 0xdd, 0x43, 0x45, 0x03,
+  0x3e, 0x14, 0xdd, 0x43, 0x45, 0xc1, 0x32, 0xf8,
+  0xe9, 0xfd, 0xf7, 0xaf, 0xb9, 0xb6, 0x1d, 0x27,
+  0x59, 0xfc, 0x60, 0xc3, 0xb1, 0x59, 0xfd, 0xe7,
+  0x75, 0x50, 0x58, 0x4e, 0x9f, 0xe7, 0xba, 0xc5,
+  0x37, 0x50, 0xd1, 0x24, 0xc9, 0xd8, 0x3f, 0x5d,
+  0x34, 0x8a, 0x17, 0x81, 0xdf, 0x2d, 0x35, 0x1e,
+  0xda, 0x52, 0x02, 0x95, 0x61, 0x95, 0x98, 0x55,
+  0x4f, 0xfb, 0xa6, 0xba, 0xc5, 0x37, 0x50, 0xd1,
+  0x6a, 0x4f, 0xfb, 0x5e, 0xeb, 0x14, 0xdd, 0x43,
+  0x44, 0xab, 0x07, 0x49, 0xdd, 0x11, 0x30, 0xc4,
+  0x86, 0xf4, 0x69, 0xfc, 0xeb, 0x14, 0xdd, 0x43,
+  0x44, 0x53, 0x3f, 0x9d, 0x62, 0x9b, 0xa8, 0x68,
+  0x8d, 0x26, 0xef, 0x07, 0x4f, 0x85, 0x37, 0x50,
+  0xd1, 0x4f, 0xc9, 0xdc, 0x61, 0xe3, 0xd8, 0xbc,
+  0xff, 0xe7, 0x33, 0x5e, 0xeb, 0x14, 0xdd, 0x43,
+  0x44, 0xd5, 0x3f, 0x9d, 0x62, 0x9b, 0xa8, 0x68,
+  0xae, 0xe7, 0x93, 0x75, 0x0d, 0x15, 0xf4, 0xe0,
+  0x84, 0x25, 0x4b, 0xe5, 0x38, 0xbc, 0x81, 0x3e,
+  0x66, 0x23, 0xce, 0x7a, 0xd2, 0x74, 0xff, 0xaf,
+  0x01, 0xdc, 0xd5, 0x6e, 0x83, 0xa5, 0x93, 0xa7,
+  0xfb, 0xc3, 0x74, 0x79, 0xf7, 0xc9, 0xd0, 0x27,
+  0x93, 0xa2, 0x12, 0x75, 0xa3, 0x8d, 0xa2, 0x1f,
+  0x8e, 0x56, 0x10, 0xd3, 0xff, 0x9c, 0xcd, 0x7b,
+  0xac, 0x53, 0x75, 0x0d, 0x13, 0xdc, 0xfe, 0x75,
+  0x8a, 0x6e, 0xa1, 0xa2, 0xe1, 0x9f, 0xf9, 0xda,
+  0xf7, 0x58, 0xa6, 0xea, 0x1a, 0x24, 0xf8, 0x55,
+  0xc1, 0xba, 0x0e, 0xde, 0x77, 0xd2, 0x10, 0x48,
+  0x58, 0xd2, 0x90, 0xc7, 0x09, 0x84, 0x8a, 0xa9,
+  0x36, 0x3b, 0x9f, 0xce, 0xb1, 0x4d, 0xd4, 0x34,
+  0x45, 0x53, 0xf9, 0xd6, 0x29, 0xba, 0x86, 0x8a,
+  0x66, 0x7f, 0xf3, 0x99, 0xaf, 0x75, 0x8a, 0x6e,
+  0xa1, 0xa2, 0x67, 0x9f, 0xfc, 0xe6, 0x6b, 0xdd,
+  0x62, 0x9b, 0xa8, 0x68, 0xa3, 0x62, 0x84, 0xc6,
+  0xb9, 0x3b, 0xe8, 0x77, 0x95, 0x29, 0xff, 0x9d,
+  0xaf, 0x75, 0x8a, 0x6e, 0xa1, 0xa2, 0x3a, 0x9b,
+  0xbc, 0x1d, 0x3f, 0x7a, 0xff, 0xcd, 0xd0, 0x74,
+  0xf8, 0x53, 0x75, 0x0d, 0x14, 0xd4, 0xff, 0xcf,
+  0xc7, 0xbf, 0x45, 0x7b, 0x51, 0x68, 0xe9, 0xfb,
+  0xca, 0xca, 0x2c, 0x27, 0x4f, 0xff, 0x5e, 0x71,
+  0x6f, 0x1d, 0xfe, 0x71, 0xaf, 0x3a, 0x65, 0x01,
+  0xd3, 0xfd, 0x5d, 0xa5, 0x53, 0xc8, 0xe1, 0x44,
+  0x7f, 0xcb, 0x7a, 0xa6, 0xc9, 0xdc, 0x62, 0x75,
+  0x3c, 0x8b, 0xd9, 0x75, 0x26, 0x19, 0x86, 0xb4,
+  0xf8, 0x53, 0x75, 0x0d, 0x15, 0x54, 0xff, 0xb5,
+  0xee, 0xb1, 0x4d, 0xd4, 0x34, 0x4d, 0xb2, 0x75,
+  0x9f, 0xb3, 0x0c, 0x27, 0xf3, 0xac, 0x53, 0x75,
+  0x0d, 0x15, 0xfc, 0xfe, 0x75, 0x8a, 0x6e, 0xa1,
+  0xa2, 0xc6, 0x9f, 0x0a, 0x6e, 0xa1, 0xa2, 0xd5,
+  0x9f, 0xf6, 0xbd, 0xd6, 0x29, 0xba, 0x86, 0x8a,
+  0x0a, 0x4e, 0xb3, 0xf6, 0x61, 0x84, 0xf8, 0x53,
+  0x75, 0x0d, 0x17, 0x14, 0xf3, 0x7b, 0x7f, 0x90,
+  0xe9, 0xfc, 0xac, 0xd6, 0xca, 0x2d, 0xe7, 0x49,
+  0xd6, 0x88, 0xcd, 0x30, 0xc9, 0x3c, 0xfe, 0x75,
+  0x8a, 0x6e, 0xa1, 0xa2, 0xe9, 0x9f, 0xff, 0xcb,
+  0x8f, 0xf7, 0xbc, 0x7b, 0x7e, 0x2f, 0xa5, 0xf2,
+  0xd7, 0x67, 0x4f, 0xf9, 0xf6, 0x23, 0xaf, 0xa2,
+  0xc2, 0x74, 0xef, 0xeb, 0x85, 0x14, 0xb9, 0x69,
+  0x9f, 0xf0, 0xad, 0x38, 0xda, 0xe5, 0x42, 0x74,
+  0xdd, 0xe0, 0xe9, 0xf9, 0xba, 0xfd, 0xe3, 0x72,
+  0x74, 0xfc, 0x0d, 0x69, 0xfe, 0xc9, 0xd3, 0xff,
+  0xfe, 0xe8, 0xbc, 0xe2, 0xe9, 0xcf, 0xf7, 0x00,
+  0xda, 0xd7, 0x45, 0x0e, 0x9e, 0x4d, 0xd4, 0x34,
+  0x49, 0x93, 0xfc, 0x37, 0x4e, 0x73, 0xaf, 0xa9,
+  0xd0, 0x27, 0xc6, 0xc2, 0xb9, 0xfb, 0x90, 0x37,
+  0x55, 0x07, 0x11, 0xd3, 0xff, 0xb1, 0xec, 0xd2,
+  0x9e, 0x1a, 0xb4, 0xba, 0x74, 0xfa, 0xf3, 0xe6,
+  0x69, 0xd3, 0xff, 0xed, 0x41, 0x5c, 0x7e, 0xf3,
+  0x6e, 0x08, 0x42, 0x54, 0x3c, 0xfe, 0x32, 0x4d,
+  0x3f, 0x22, 0x76, 0x9f, 0x53, 0xa7, 0xff, 0x77,
+  0xfd, 0xca, 0x8d, 0x70, 0xbf, 0xc9, 0xd3, 0x82,
+  0x10, 0x95, 0x3f, 0x0e, 0xd0, 0xcf, 0x54, 0xa7,
+  0x17, 0x93, 0xeb, 0x60, 0xdf, 0x1c, 0xe9, 0xf7,
+  0xb3, 0x45, 0x84, 0xe9, 0xfe, 0x54, 0xc7, 0xfb,
+  0xca, 0xd4, 0xe8, 0x13, 0xe0, 0x61, 0x44, 0xff,
+  0x5e, 0x83, 0x85, 0xf3, 0xaf, 0x3a, 0x7f, 0xf6,
+  0xd1, 0x8f, 0x2f, 0xed, 0xaf, 0x0f, 0x8e, 0x8b,
+  0x45, 0x26, 0x48, 0x42, 0x73, 0x3e, 0xfd, 0xe3,
+  0x72, 0x74, 0xff, 0x9e, 0xbf, 0xa3, 0xa8, 0xff,
+  0xb7, 0x9d, 0x1c, 0x73, 0xe8, 0x68, 0x9a, 0x7b,
+  0x34, 0x5f, 0x27, 0x4f, 0xf7, 0xba, 0x75, 0x10,
+  0x33, 0xd5, 0x3a, 0x1a, 0x3e, 0x0e, 0x22, 0x39,
+  0xc1, 0x08, 0x4e, 0x9f, 0xff, 0x5b, 0x33, 0xf5,
+  0x05, 0xf3, 0x5b, 0x62, 0xa1, 0x4e, 0x2f, 0x22,
+  0xd3, 0x2b, 0xf4, 0x21, 0xf0, 0x85, 0x3f, 0x61,
+  0x78, 0x27, 0xa8, 0x3a, 0x7e, 0x1d, 0x1f, 0xab,
+  0xce, 0x8e, 0x4f, 0x64, 0x4b, 0xe6, 0x7b, 0xb8,
+  0xc5, 0xee, 0xde, 0x34, 0x5d, 0x4c, 0x5e, 0x5d,
+  0x70, 0xd0, 0xe8, 0x42, 0x86, 0xf4, 0xc3, 0x0b,
+  0xc4, 0x4d, 0x15, 0xeb, 0x2f, 0xcf, 0x2b, 0x19,
+  0x6e, 0x63, 0xc2, 0xeb, 0x08, 0xe9, 0xff, 0xc3,
+  0x61, 0xe7, 0x16, 0xd7, 0xec, 0x5e, 0x74, 0xe1,
+  0xbe, 0x39, 0xd2, 0xb1, 0x3e, 0x76, 0x24, 0xcf,
+  0xfd, 0x78, 0xfa, 0xd1, 0xd7, 0x18, 0xde, 0x39,
+  0xd3, 0xf6, 0xa3, 0x82, 0x10, 0x9d, 0x27, 0x23,
+  0x25, 0x88, 0x4c, 0xf6, 0x7c, 0xab, 0xf1, 0xb4,
+  0xd4, 0x99, 0xb2, 0x54, 0x3d, 0x9e, 0xe3, 0xcc,
+  0x7e, 0xb4, 0xc3, 0x48, 0x49, 0xd8, 0x76, 0x08,
+  0x58, 0xd6, 0x16, 0x79, 0x34, 0xee, 0x94, 0x85,
+  0x3f, 0x9d, 0x62, 0x9b, 0xa8, 0x68, 0x8d, 0x67,
+  0xc2, 0x9b, 0xa8, 0x68, 0xa9, 0x66, 0xd4, 0x34,
+  0x43, 0x52, 0x75, 0x9e, 0x8e, 0x98, 0x4f, 0xfc,
+  0xed, 0x7b, 0xac, 0x53, 0x75, 0x0d, 0x11, 0xf4,
+  0xfe, 0x75, 0x8a, 0x6e, 0xa1, 0xa2, 0xc7, 0x9c,
+  0xdc, 0x76, 0x74, 0x3a, 0x7e, 0x6e, 0xbf, 0x78,
+  0xdc, 0x9d, 0x3f, 0xdf, 0xd0, 0x57, 0x73, 0x9d,
+  0x3a, 0x78, 0x0c, 0xf0, 0x9d, 0x3f, 0xff, 0xca,
+  0x3f, 0xbe, 0x6f, 0x18, 0xf2, 0x63, 0xd9, 0xae,
+  0xd2, 0x74, 0x79, 0x10, 0xf8, 0x21, 0x9d, 0xba,
+  0x86, 0x8b, 0x42, 0x7f, 0xda, 0x16, 0xf4, 0xd1,
+  0xa2, 0xc2, 0x74, 0x85, 0x0f, 0x94, 0x49, 0xa7,
+  0xe6, 0xdd, 0x73, 0xf5, 0x01, 0xd3, 0xe5, 0xcd,
+  0xe1, 0x4e, 0x9f, 0xfe, 0xbc, 0xd6, 0xda, 0xc2,
+  0xb6, 0xbc, 0x61, 0x4e, 0x8a, 0x0f, 0xd7, 0xe4,
+  0xb0, 0xa8, 0xc9, 0xb8, 0x53, 0x4f, 0xf8, 0x0a,
+  0x98, 0xf3, 0x5b, 0xb4, 0x1d, 0x3f, 0xf5, 0xd7,
+  0xdd, 0xfd, 0xe2, 0xb7, 0xc9, 0xd3, 0xec, 0xe3,
+  0x7f, 0xd0, 0xe9, 0xfe, 0xff, 0x74, 0x73, 0x8b,
+  0xfa, 0x9d, 0x37, 0xee, 0xcf, 0x91, 0x0a, 0x67,
+  0xf5, 0xe1, 0xaf, 0x63, 0xcc, 0x3a, 0x7f, 0x3e,
+  0xc6, 0xbf, 0x5a, 0x0e, 0x9d, 0x78, 0xd3, 0xa7,
+  0xcd, 0x73, 0xdf, 0x7f, 0x3a, 0x39, 0x3c, 0x6d,
+  0x1a, 0x9f, 0xeb, 0xb0, 0xda, 0x25, 0x84, 0xe8,
+  0xb4, 0xc0, 0xa9, 0x34, 0xd7, 0x8a, 0x91, 0x4f,
+  0x5e, 0x37, 0x27, 0x4f, 0xee, 0x9e, 0xff, 0x6f,
+  0xba, 0x9d, 0x27, 0x71, 0x8b, 0xaa, 0xfc, 0x69,
+  0x32, 0x98, 0xf3, 0x0b, 0xeb, 0x84, 0x46, 0x21,
+  0xdc, 0x02, 0x6f, 0x9f, 0x56, 0x15, 0x19, 0x8c,
+  0xb7, 0x88, 0xf7, 0xa9, 0x04, 0xfc, 0xdf, 0xee,
+  0x7e, 0xad, 0x1d, 0x3d, 0x78, 0xdc, 0x9d, 0x26,
+  0xea, 0xcf, 0x4b, 0xe6, 0x53, 0xe1, 0x4d, 0xd4,
+  0x34, 0x5a, 0xd3, 0xfe, 0xd7, 0xba, 0xc5, 0x37,
+  0x50, 0xd1, 0x41, 0xc9, 0xdc, 0x6a, 0x28, 0xac,
+  0xb1, 0x86, 0x13, 0xff, 0x9c, 0xcd, 0x7b, 0xac,
+  0x53, 0x75, 0x0d, 0x14, 0x5c, 0xfe, 0x75, 0x8a,
+  0x6e, 0xa1, 0xa2, 0xea, 0x87, 0xb2, 0x48, 0x52,
+  0x11, 0x9e, 0x26, 0x62, 0x66, 0x27, 0x64, 0x81,
+  0x1e, 0x55, 0x4e, 0xb2, 0xa5, 0x3e, 0x14, 0xdd,
+  0x43, 0x44, 0x43, 0x3b, 0x17, 0xc9, 0xd2, 0x75,
+  0x9e, 0x65, 0x26, 0x13, 0xf9, 0xd6, 0x29, 0xba,
+  0x86, 0x88, 0xda, 0x7f, 0x3a, 0xc5, 0x37, 0x50,
+  0xd1, 0x4d, 0xcf, 0xe7, 0x58, 0xa6, 0xea, 0x1a,
+  0x2a, 0x09, 0xfc, 0xeb, 0x14, 0xdd, 0x43, 0x45,
+  0x4d, 0x3e, 0x14, 0xdd, 0x43, 0x45, 0x61, 0x3e,
+  0xf0, 0x79, 0xec, 0x4e, 0x9f, 0xe7, 0xba, 0xc5,
+  0x37, 0x50, 0xd1, 0x1f, 0xce, 0xb5, 0xa0, 0xe9,
+  0x3a, 0xd1, 0x6a, 0x86, 0x1a, 0x53, 0xf4, 0x19,
+  0xff, 0xce, 0x66, 0xbd, 0xd6, 0x29, 0xba, 0x86,
+  0x89, 0xbe, 0x7f, 0xe6, 0x6b, 0xdd, 0x62, 0x9b,
+  0xa8, 0x68, 0x9f, 0xa7, 0xcd, 0xdd, 0xba, 0xe2,
+  0xba, 0x4e, 0x96, 0x0e, 0x86, 0xec, 0x78, 0xdd,
+  0x9b, 0x4f, 0xff, 0x2a, 0xaa, 0xaa, 0xaa, 0xaa,
+  0xd3, 0x53, 0xa7, 0xc3, 0xea, 0x35, 0x85, 0x4c,
+  0x10, 0x95, 0x16, 0x6f, 0x42, 0x4f, 0x2e, 0xca,
+  0x71, 0xa0, 0x85, 0x46, 0x3d, 0x61, 0x4d, 0x3f,
+  0x0e, 0xa6, 0x3c, 0x27, 0x4f, 0x50, 0xcf, 0x3c,
+  0xe9, 0xf5, 0x7f, 0xde, 0xbc, 0xe9, 0xfd, 0x85,
+  0x63, 0x80, 0x05, 0x3a, 0x42, 0xa7, 0xfb, 0x64,
+  0x7e, 0x28, 0x9f, 0xf2, 0xd3, 0xcf, 0x55, 0xe3,
+  0xe3, 0xba, 0x9d, 0x38, 0x15, 0xb3, 0xa7, 0xfe,
+  0xe5, 0x73, 0xb5, 0xbc, 0x63, 0xcc, 0x3a, 0x76,
+  0x7c, 0xd1, 0xd0, 0xa7, 0xc3, 0x54, 0x48, 0x54,
+  0xf9, 0x3c, 0x4e, 0x30, 0xa7, 0x61, 0x97, 0xd1,
+  0xf2, 0xf9, 0x3d, 0xad, 0x75, 0x61, 0xd3, 0x6f,
+  0xce, 0x81, 0x37, 0x2c, 0x24, 0x9c, 0x10, 0x84,
+  0xe9, 0xea, 0x3f, 0xe5, 0x29, 0xc5, 0xe4, 0xf5,
+  0x39, 0xf2, 0x1d, 0x0a, 0x88, 0xfc, 0x1e, 0x76,
+  0x63, 0x3f, 0xf5, 0x1d, 0x82, 0xff, 0xdb, 0x4b,
+  0x9d, 0x3a, 0x79, 0x73, 0x54, 0x34, 0x41, 0xd3,
+  0xf6, 0xe1, 0x78, 0xfd, 0xbc, 0xe8, 0x14, 0x52,
+  0xe5, 0x1d, 0xb1, 0x6c, 0xc3, 0xc9, 0xd3, 0x04,
+  0x27, 0x43, 0xcd, 0x60, 0x45, 0xa7, 0xaa, 0xbe,
+  0x6c, 0x53, 0x8d, 0x0c, 0xfa, 0xbd, 0x79, 0x05,
+  0x4e, 0x8f, 0x1e, 0xf7, 0x53, 0x39, 0xc1, 0x08,
+  0x4a, 0x82, 0x9c, 0x5e, 0x4f, 0x78, 0x3e, 0x68,
+  0xa8, 0x43, 0x79, 0xe1, 0x98, 0xf2, 0x6f, 0x18,
+  0x86, 0xe7, 0xdf, 0x27, 0x7f, 0xd5, 0x3a, 0x7b,
+  0x9d, 0xf8, 0x0e, 0x9f, 0xf9, 0x7e, 0x0f, 0xad,
+  0x2d, 0x2f, 0xc0, 0x74, 0x79, 0x10, 0x60, 0x1c,
+  0xa9, 0x14, 0xf9, 0x6c, 0x71, 0xe3, 0xa7, 0xb9,
+  0xb6, 0x71, 0xce, 0x86, 0x8f, 0x2d, 0xb1, 0x2c,
+  0xfd, 0x9b, 0x6b, 0xea, 0xc3, 0xc4, 0x05, 0x3e,
+  0xdf, 0xf3, 0x85, 0x34, 0x40, 0x4e, 0x37, 0x53,
+  0xfc, 0xa3, 0x47, 0x0b, 0x6b, 0xcc, 0x3a, 0x7c,
+  0xa0, 0xf5, 0x35, 0x3a, 0x7f, 0x0b, 0x55, 0xf7,
+  0xf3, 0xe3, 0xa7, 0xa9, 0x00, 0xa9, 0x53, 0x04,
+  0x25, 0x42, 0x9b, 0x70, 0x90, 0xcf, 0xda, 0x2f,
+  0x7f, 0xfc, 0x53, 0x8d, 0x04, 0x2a, 0xa4, 0x8b,
+  0x7b, 0xf2, 0xfe, 0x11, 0x3e, 0x77, 0x92, 0x8e,
+  0xe1, 0x17, 0x3e, 0xef, 0x3d, 0xef, 0x53, 0x44,
+  0x0f, 0x3f, 0xec, 0x77, 0x42, 0xf0, 0x5c, 0xaf,
+  0x27, 0x4e, 0xd1, 0xa0, 0xe9, 0x82, 0x13, 0xa7,
+  0xf0, 0xfa, 0xdb, 0x75, 0x7b, 0x90, 0xd8, 0x84,
+  0x6e, 0x39, 0x45, 0xf8, 0xb9, 0xcf, 0xfd, 0xfb,
+  0xe9, 0x8d, 0x7f, 0x5d, 0xa5, 0x4e, 0x85, 0x3e,
+  0xab, 0x23, 0x9f, 0xfd, 0x6c, 0x66, 0xbe, 0xc5,
+  0x37, 0x50, 0xd1, 0x0c, 0x46, 0x0f, 0xc7, 0xe4,
+  0x13, 0xf5, 0x8a, 0x6e, 0xa1, 0xa2, 0x0a, 0x9e,
+  0xcd, 0x54, 0x05, 0x4e, 0xd1, 0xa0, 0xa9, 0xee,
+  0xff, 0xbd, 0x0a, 0x9f, 0xde, 0xa2, 0xf3, 0x55,
+  0x01, 0x50, 0x54, 0xfd, 0x68, 0xb8, 0x56, 0x15,
+  0x30, 0x42, 0x54, 0xfd, 0xf5, 0xfd, 0x1e, 0x12,
+  0xa2, 0xd3, 0x0a, 0x42, 0x16, 0x0d, 0xe0, 0x90,
+  0x06, 0x7f, 0x0a, 0x09, 0x57, 0x51, 0x69, 0xbc,
+  0x25, 0x38, 0xfc, 0xa5, 0xaf, 0x4f, 0x5f, 0x11,
+  0xd8, 0xcf, 0xf9, 0x5f, 0xbf, 0xba, 0x8a, 0xd4,
+  0xe9, 0xfe, 0xce, 0x15, 0xb7, 0x2a, 0x05, 0x3a,
+  0x7f, 0x96, 0x97, 0xf1, 0x2a, 0x5b, 0x0e, 0x85,
+  0x3f, 0x4c, 0x1d, 0x4f, 0xff, 0xcd, 0x6e, 0xbf,
+  0x71, 0xc2, 0xe8, 0xef, 0x3d, 0xef, 0x53, 0x45,
+  0xf7, 0x3e, 0xf6, 0x7f, 0x6f, 0x3a, 0x7f, 0xdf,
+  0xf3, 0xf3, 0x8b, 0x1f, 0x54, 0xe9, 0xfd, 0x90,
+  0x75, 0xfb, 0xf1, 0x67, 0x88, 0x06, 0x76, 0x8b,
+  0xcf, 0x10, 0x0c, 0x59, 0xf4, 0xf6, 0x85, 0x36,
+  0xbc, 0xf1, 0x00, 0xcf, 0x6f, 0xe9, 0x79, 0xe2,
+  0x01, 0x9f, 0xde, 0x4c, 0x58, 0x00, 0xa7, 0x88,
+  0x06, 0x77, 0xbf, 0xc9, 0xe2, 0x01, 0x8e, 0x51,
+  0x72, 0xc2, 0x2c, 0x17, 0xb6, 0x3e, 0x9c, 0x2b,
+  0x93, 0xc4, 0x03, 0x07, 0x88, 0x06, 0x65, 0x61,
+  0xe2, 0x01, 0x8e, 0x4d, 0xcf, 0x85, 0xe7, 0xbc,
+  0xce, 0x54, 0xf1, 0x00, 0xce, 0xce, 0xa1, 0xe2,
+  0x01, 0x9f, 0xf7, 0xf5, 0xee, 0xc7, 0x93, 0x44,
+  0xf1, 0x00, 0xcd, 0xbc, 0x9e, 0x20, 0x19, 0xfd,
+  0xfd, 0x0d, 0x6a, 0xa0, 0x3c, 0x40, 0x33, 0xef,
+  0x74, 0xdf, 0x80, 0xf1, 0x00, 0xcd, 0xea, 0x9e,
+  0x20, 0x18, 0x13, 0xd9, 0xc9, 0xb4, 0xfb, 0x3f,
+  0x5a, 0x5e, 0x68, 0x80, 0x66, 0x02, 0x9e, 0x20,
+  0x17, 0x1b, 0x59, 0xf7, 0x95, 0x9b, 0xc9, 0xe2,
+  0x01, 0x9e, 0xef, 0x7e, 0x87, 0x88, 0x06, 0x72,
+  0x8a, 0x1e, 0x20, 0x19, 0xff, 0x5d, 0x35, 0xe5,
+  0x6f, 0xe0, 0xa9, 0xe2, 0x01, 0x9f, 0x77, 0xaf,
+  0x7a, 0x9e, 0x20, 0x18, 0xb4, 0x40, 0x61, 0x32,
+  0x61, 0x01, 0xe2, 0x01, 0x87, 0xaa, 0x8f, 0xe4,
+  0x8e, 0xe1, 0x31, 0xe5, 0x6c, 0x19, 0x00, 0xd2,
+  0xa5, 0xd9, 0x85, 0x37, 0x64, 0x53, 0xeb, 0xcd,
+  0x76, 0x93, 0xc4, 0x03, 0x3f, 0xb9, 0x54, 0x68,
+  0x57, 0x27, 0x88, 0x07, 0x93, 0x69, 0x38, 0x54,
+  0x27, 0x88, 0x06, 0x10, 0xfd, 0xc5, 0x42, 0x7b,
+  0xdf, 0x7d, 0x4f, 0x10, 0x0c, 0xfd, 0xad, 0x3e,
+  0xe9, 0x79, 0xe2, 0x01, 0x8b, 0x44, 0x50, 0x08,
+  0x3b, 0x2f, 0x9f, 0xec, 0x2d, 0x5d, 0x5e, 0xc4,
+  0x07, 0x88, 0x06, 0x5e, 0x3c, 0x40, 0x33, 0x6d,
+  0x1c, 0x9f, 0x1e, 0x11, 0xa6, 0x10, 0x1e, 0x20,
+  0x19, 0xf6, 0xe6, 0xbe, 0xa4, 0xf1, 0x00, 0xcf,
+  0xde, 0xff, 0x6f, 0xba, 0x9e, 0x20, 0x18, 0x54,
+  0x49, 0x7c, 0x8b, 0x26, 0xb1, 0xcb, 0x20, 0x3a,
+  0xe1, 0xb6, 0xd2, 0x00, 0xb0, 0x60, 0x8b, 0x4b,
+  0xc0, 0x4f, 0x59, 0x5b, 0x19, 0x8f, 0x03, 0x8a,
+  0x12, 0x7d, 0x61, 0x83, 0x3b, 0x75, 0x0d, 0x10,
+  0x0b, 0x91, 0x79, 0x3d, 0xd1, 0xb8, 0x72, 0xc3,
+  0xa6, 0x02, 0x95, 0x2e, 0x85, 0x4e, 0xc2, 0xd0,
+  0x74, 0xc1, 0x09, 0x51, 0xe3, 0xd9, 0xe3, 0x8a,
+  0xb4, 0x24, 0x11, 0xc9, 0xcc, 0xf5, 0x4a, 0x71,
+  0xe0, 0xcf, 0x66, 0xad, 0xfd, 0x9d, 0x14, 0x32,
+  0xba, 0x1e, 0x4e, 0x94, 0x97, 0x1f, 0x1c, 0x02,
+  0x18, 0xbd, 0x4b, 0x67, 0xe1, 0x69, 0xea, 0x34,
+  0x1d, 0x3f, 0xe7, 0xd7, 0x87, 0xed, 0x8a, 0x3d,
+  0x0e, 0x9f, 0xf8, 0x71, 0xb6, 0xf5, 0x10, 0x75,
+  0x61, 0xd3, 0xf7, 0x50, 0x8f, 0xaf, 0x05, 0x4f,
+  0x35, 0x8d, 0x68, 0xe9, 0xf5, 0xb4, 0xf5, 0xa4,
+  0xe9, 0xeb, 0xfa, 0xbc, 0xa8, 0x13, 0xeb, 0xf9,
+  0x1b, 0x79, 0x44, 0x2a, 0x6f, 0x76, 0x5b, 0xe4,
+  0x1c, 0x21, 0xec, 0x26, 0x67, 0xbd, 0xfc, 0xd4,
+  0xe9, 0xdd, 0xb7, 0x35, 0x3a, 0x7f, 0xe0, 0x32,
+  0xd3, 0x1e, 0xe7, 0x1d, 0xf4, 0x3a, 0x7f, 0xec,
+  0xd6, 0xf9, 0x5a, 0x6b, 0x74, 0xe4, 0xe9, 0xfc,
+  0xfb, 0xaf, 0x5a, 0xe6, 0xce, 0x85, 0x47, 0x27,
+  0x88, 0xb5, 0x23, 0xb4, 0x69, 0xf6, 0xb6, 0xe7,
+  0x95, 0x3a, 0x6a, 0xd4, 0xe9, 0xc1, 0x08, 0x4e,
+  0x98, 0x1a, 0x53, 0x8b, 0xc8, 0x13, 0xd6, 0xa9,
+  0x94, 0xed, 0x05, 0x95, 0x0f, 0x45, 0xdb, 0x21,
+  0x01, 0xc4, 0x43, 0x3f, 0xb3, 0xfb, 0xa4, 0x1d,
+  0x5e, 0x74, 0xff, 0x7e, 0xdb, 0x5b, 0x82, 0x10,
+  0x95, 0x39, 0x9b, 0x93, 0xa3, 0x07, 0xaa, 0xd8,
+  0xea, 0x7d, 0x6d, 0x3d, 0x5e, 0x74, 0x2a, 0x61,
+  0xde, 0x38, 0xd8, 0x45, 0xe4, 0x92, 0x7f, 0xf5,
+  0xf3, 0xac, 0xba, 0x5f, 0x60, 0xbe, 0x4e, 0x9b,
+  0x1a, 0x74, 0xcd, 0x54, 0xe9, 0xf5, 0xb6, 0xf7,
+  0xf9, 0xb3, 0x59, 0xd4, 0x56, 0x38, 0x22, 0xe1,
+  0xce, 0xd3, 0xdc, 0xde, 0x34, 0xe9, 0xff, 0x96,
+  0xfe, 0xfc, 0x5f, 0xfe, 0xa1, 0x3a, 0x5e, 0x14,
+  0x44, 0x7c, 0x97, 0x24, 0x31, 0x43, 0x6e, 0x28,
+  0xf8, 0xf4, 0xb9, 0x8f, 0xe7, 0xa1, 0x7a, 0x42,
+  0xbf, 0xc4, 0x23, 0x4b, 0x56, 0xc4, 0x7c, 0xc0,
+  0x4d, 0xfc, 0x60, 0xd9, 0x94, 0x0a, 0xda, 0x38,
+  0x19, 0xfe, 0xb1, 0xfa, 0xe5, 0xf7, 0x83, 0xa7,
+  0xef, 0x82, 0xf9, 0xd7, 0x9d, 0x3e, 0xea, 0xd3,
+  0xd7, 0x8e, 0x54, 0x2a, 0x24, 0x6c, 0xdb, 0xa9,
+  0x6c, 0xff, 0xe1, 0xe9, 0xfe, 0xf7, 0xad, 0xd7,
+  0xcb, 0xf3, 0xa5, 0xd4, 0xd1, 0x02, 0xcb, 0x26,
+  0xa0, 0x52, 0x5e, 0xc9, 0xbc, 0x08, 0xfc, 0xff,
+  0xbd, 0xc5, 0x8f, 0x75, 0x70, 0x00, 0xa5, 0x4f,
+  0xfe, 0xcd, 0x76, 0x9e, 0x0c, 0x5b, 0xfe, 0x78,
+  0x8e, 0x85, 0x44, 0x9f, 0x91, 0x27, 0xff, 0xf8,
+  0x68, 0xbf, 0x35, 0xba, 0xfa, 0xab, 0x39, 0xc2,
+  0xfd, 0x0e, 0x9d, 0x47, 0xde, 0x74, 0x2a, 0x7d,
+  0x0c, 0x84, 0x4e, 0x21, 0x75, 0xa4, 0x5d, 0xb3,
+  0x4f, 0xe7, 0xb5, 0x7f, 0xdc, 0x59, 0xd3, 0xff,
+  0x85, 0x3f, 0x6d, 0xbf, 0x6a, 0x2b, 0x53, 0xa7,
+  0xf6, 0xb5, 0x8b, 0x65, 0xd4, 0xe8, 0xb3, 0xf9,
+  0x6c, 0x8f, 0x3f, 0x7b, 0xa6, 0x6e, 0xd8, 0x74,
+  0xfa, 0xf9, 0xf0, 0xd4, 0xe9, 0xff, 0xea, 0xe6,
+  0x94, 0xf6, 0x38, 0x37, 0xde, 0x3c, 0xc3, 0xa4,
+  0xb4, 0x1f, 0xe8, 0x49, 0xe3, 0xc8, 0xf6, 0xc1,
+  0x1e, 0x61, 0x57, 0x3f, 0xef, 0xfb, 0xad, 0x36,
+  0xda, 0x95, 0xea, 0x74, 0xee, 0x74, 0x4e, 0x9f,
+  0x03, 0x7f, 0x6d, 0xe7, 0x42, 0x9e, 0x27, 0x63,
+  0x73, 0xca, 0xca, 0x5a, 0x3a, 0x15, 0x55, 0x2b,
+  0xe3, 0xa1, 0xb3, 0x5a, 0xc2, 0x2b, 0x24, 0x53,
+  0xe5, 0xa1, 0x5b, 0xd4, 0xe9, 0xfb, 0xbe, 0xb8,
+  0xba, 0x6a, 0x74, 0xf0, 0x36, 0x9a, 0x9d, 0x30,
+  0x42, 0x74, 0x54, 0xdc, 0x04, 0x8a, 0x7d, 0xec,
+  0x6d, 0xe0, 0xa7, 0x1a, 0x18, 0xc2, 0x3a, 0x5b,
+  0x92, 0x9a, 0xc2, 0x2a, 0x70, 0x42, 0x12, 0xa7,
+  0x9f, 0x9b, 0x42, 0x9c, 0x5e, 0x4f, 0xaf, 0x9f,
+  0x02, 0xa7, 0xd3, 0xfa, 0x5a, 0x27, 0xc9, 0xf2,
+  0xf9, 0xfb, 0xf4, 0xd5, 0xab, 0xc9, 0xd3, 0xff,
+  0xdf, 0xcb, 0x56, 0x37, 0xac, 0x5c, 0x7b, 0x93,
+  0xa7, 0xd4, 0x71, 0xfd, 0x74, 0x9d, 0x3e, 0xf5,
+  0x56, 0x86, 0x1f, 0x2f, 0xd9, 0xf2, 0xe8, 0x83,
+  0xb3, 0xe5, 0xfb, 0x36, 0xbc, 0xf9, 0x7e, 0xcf,
+  0x76, 0xfb, 0xa9, 0xf2, 0xfd, 0x8e, 0x4f, 0x47,
+  0xe4, 0x53, 0xe5, 0xba, 0xdf, 0xcf, 0x97, 0xec,
+  0x1f, 0x2f, 0xd9, 0xb7, 0x27, 0xcb, 0xf5, 0x85,
+  0xbc, 0x9f, 0xf3, 0xfa, 0xed, 0x26, 0x7a, 0xf8,
+  0xbc, 0x03, 0xe5, 0xfb, 0x07, 0xcb, 0xf6, 0x60,
+  0x29, 0xf2, 0xfd, 0x9f, 0xeb, 0x06, 0x8d, 0xb6,
+  0xbe, 0x4f, 0x97, 0xec, 0xfd, 0x78, 0xf5, 0x7b,
+  0xa0, 0xf9, 0x7e, 0xc0, 0x11, 0x47, 0xf2, 0x2a,
+  0xa2, 0xcf, 0x0d, 0x0b, 0x93, 0xe5, 0xfb, 0x07,
+  0xcb, 0xf6, 0xcd, 0x74, 0xc1, 0x09, 0xf2, 0xfd,
+  0x87, 0xab, 0x11, 0xe4, 0xd6, 0xe1, 0x09, 0x4c,
+  0x27, 0x44, 0xa5, 0x86, 0x35, 0x85, 0xd6, 0x57,
+  0x82, 0x4d, 0x3d, 0x6f, 0x5e, 0x85, 0xcb, 0xf4,
+  0xe4, 0x47, 0xcf, 0xfa, 0xd3, 0x9b, 0x10, 0xee,
+  0x1a, 0x3a, 0x67, 0xd0, 0x54, 0x50, 0x89, 0x6a,
+  0x50, 0xbe, 0x7b, 0x02, 0xb9, 0x2b, 0xb3, 0x8c,
+  0x73, 0xff, 0xf5, 0x2f, 0x15, 0x6d, 0xad, 0x2f,
+  0x38, 0x56, 0x6b, 0x47, 0x42, 0xae, 0xe1, 0xd9,
+  0x37, 0x8b, 0xf6, 0x73, 0x93, 0xb2, 0xc9, 0xff,
+  0x74, 0x5a, 0x7e, 0xb8, 0xc7, 0x68, 0x74, 0xfd,
+  0xfd, 0xe9, 0x8d, 0x79, 0xd3, 0x82, 0x10, 0x95,
+  0x3b, 0xaa, 0x80, 0xa7, 0x17, 0x93, 0xfe, 0xfe,
+  0xbf, 0xa8, 0xdb, 0x6d, 0x13, 0xa7, 0xfb, 0xfa,
+  0x0e, 0x0f, 0x50, 0x52, 0x74, 0x72, 0x99, 0x8b,
+  0x10, 0x40, 0x95, 0xf2, 0xcc, 0x9f, 0xcf, 0xfb,
+  0xff, 0xf7, 0x6d, 0xcd, 0x78, 0x97, 0x27, 0x4e,
+  0x08, 0x42, 0x58, 0x84, 0x13, 0xe1, 0x4d, 0xd4,
+  0x2c, 0x42, 0x07, 0x1a, 0xa9, 0xc1, 0x08, 0x4b,
+  0x10, 0x7a, 0x0b, 0x10, 0x79, 0xc6, 0xaa, 0x65,
+  0x65, 0xa2, 0x4d, 0x1a, 0xe7, 0xd9, 0x5c, 0xab,
+  0x0e, 0x9e, 0xff, 0x97, 0xa1, 0xd3, 0xba, 0xa8,
+  0x0e, 0x8a, 0x0f, 0x01, 0x84, 0x73, 0xe4, 0x5c,
+  0x2b, 0x0a, 0x9f, 0x7f, 0x7f, 0xfb, 0x2a, 0x6b,
+  0x42, 0xa6, 0x08, 0x4a, 0x8b, 0x3f, 0x5a, 0x92,
+  0xe4, 0x98, 0x22, 0x93, 0xfb, 0xfd, 0x54, 0x18,
+  0xb6, 0xf2, 0x9c, 0x6e, 0xe1, 0x53, 0x80, 0xf3,
+  0x36, 0xc3, 0x4e, 0x7f, 0xf6, 0x14, 0x15, 0xbb,
+  0xe7, 0x7f, 0xbd, 0x0e, 0x9f, 0xd5, 0xea, 0xca,
+  0x87, 0x69, 0x3a, 0x15, 0x5d, 0x8d, 0xa6, 0x7a,
+  0x30, 0x51, 0x8e, 0xb3, 0x4d, 0x2a, 0x95, 0x38,
+  0x21, 0x09, 0x53, 0xe7, 0x83, 0x7f, 0xc9, 0x4e,
+  0x2f, 0x27, 0xff, 0xbf, 0x4f, 0x0a, 0x40, 0xbf,
+  0x4d, 0xa3, 0xfa, 0x74, 0xff, 0xf5, 0xab, 0xb9,
+  0xfa, 0xf6, 0x97, 0xd3, 0xc2, 0x74, 0xf3, 0x7e,
+  0x00, 0xd8, 0xe8, 0x79, 0xfb, 0xea, 0x84, 0xff,
+  0xe7, 0xd8, 0x81, 0x9e, 0xaf, 0x5a, 0xad, 0x9d,
+  0x3d, 0xee, 0x6d, 0x87, 0x42, 0xa7, 0x1c, 0xf3,
+  0x7d, 0x86, 0x57, 0xc8, 0x7b, 0x4a, 0x9f, 0xb8,
+  0xf5, 0xf7, 0xe9, 0x79, 0xd3, 0xfe, 0xd1, 0xe2,
+  0xf6, 0x2f, 0x69, 0x01, 0xd3, 0xfe, 0xad, 0x54,
+  0x72, 0xae, 0xe7, 0xc7, 0x4f, 0xfb, 0xfa, 0xd6,
+  0x34, 0x47, 0xdc, 0x9d, 0x16, 0x8e, 0xf4, 0x33,
+  0xf2, 0x03, 0x0f, 0xa7, 0x9f, 0xd6, 0xda, 0x3a,
+  0x7c, 0x3c, 0xdd, 0xfc, 0xe9, 0xff, 0xb8, 0xfe,
+  0xbc, 0x2b, 0x6a, 0xe1, 0x69, 0x3a, 0x34, 0xfc,
+  0x2a, 0x4d, 0x3f, 0xfd, 0x79, 0xad, 0xb5, 0x85,
+  0x6d, 0x78, 0xc2, 0x9d, 0x3f, 0xb2, 0xdd, 0x9a,
+  0xff, 0x19, 0x47, 0x67, 0x47, 0x28, 0xb3, 0xf9,
+  0x0e, 0x54, 0x27, 0xff, 0xbd, 0x5b, 0xe7, 0x35,
+  0xf7, 0x4c, 0x6f, 0xfc, 0x74, 0xff, 0xfe, 0xfe,
+  0x6f, 0x1e, 0x5c, 0xf8, 0x0a, 0xf7, 0x04, 0x21,
+  0x2a, 0x7b, 0x9b, 0xbe, 0x85, 0x4f, 0x68, 0x37,
+  0x27, 0x4e, 0x7f, 0xfb, 0x34, 0x43, 0x33, 0x82,
+  0x10, 0x95, 0x3a, 0xfe, 0x85, 0x38, 0xbc, 0x9f,
+  0xf5, 0xd1, 0x7c, 0xeb, 0xfe, 0xb4, 0x1d, 0x00,
+  0x3e, 0x8f, 0x94, 0xcf, 0xe7, 0xfe, 0xf3, 0x9e,
+  0xe8, 0x3a, 0x15, 0x3a, 0x9a, 0x18, 0x79, 0x23,
+  0xa4, 0x80, 0x61, 0x5d, 0xa4, 0x53, 0xde, 0xcf,
+  0x94, 0xe9, 0xfd, 0xdd, 0x88, 0x01, 0xef, 0x9d,
+  0x3f, 0xfe, 0x57, 0xfb, 0x9c, 0x75, 0xad, 0x8a,
+  0x6e, 0xa1, 0xa2, 0x0c, 0x8c, 0x22, 0x53, 0x26,
+  0x73, 0xea, 0x8f, 0x83, 0xc7, 0x3a, 0x7f, 0x71,
+  0x5d, 0x78, 0xac, 0x54, 0xe8, 0x7a, 0x67, 0x3e,
+  0x85, 0xad, 0x48, 0xf2, 0x57, 0x3f, 0xfc, 0xbf,
+  0xa3, 0x83, 0x5e, 0xfd, 0xf3, 0x7f, 0xe8, 0x74,
+  0xe5, 0x16, 0x8e, 0x85, 0x5d, 0xf9, 0xe4, 0xee,
+  0xe3, 0x47, 0x43, 0x1f, 0x47, 0xf9, 0xb1, 0xcb,
+  0x76, 0x87, 0xc4, 0xad, 0x3e, 0xd6, 0x6d, 0xd4,
+  0xe9, 0xff, 0xe4, 0x5a, 0xd5, 0x59, 0x79, 0xf5,
+  0x71, 0xa7, 0x4f, 0xef, 0xfd, 0x5e, 0xc5, 0xf1,
+  0xd3, 0xfb, 0x3e, 0x6d, 0xec, 0xbd, 0x4a, 0x93,
+  0x0e, 0x9f, 0xaf, 0xfd, 0x05, 0x5d, 0xe3, 0xc5,
+  0xea, 0x6b, 0x16, 0x98, 0x5f, 0x93, 0x6a, 0xef,
+  0x3c, 0x3d, 0xd2, 0xf3, 0xa7, 0xf7, 0xdf, 0xfb,
+  0x62, 0xa1, 0xd3, 0x99, 0xcd, 0x9d, 0x0a, 0x7e,
+  0x16, 0x47, 0xa6, 0x33, 0xb3, 0xea, 0x0e, 0x9f,
+  0xf7, 0x79, 0xaf, 0x51, 0x03, 0x3d, 0x53, 0xa7,
+  0xfe, 0x5f, 0xee, 0x14, 0x0e, 0x1a, 0xd4, 0xa8,
+  0xe5, 0x10, 0x8c, 0x42, 0x9f, 0x63, 0xde, 0xa6,
+  0xa7, 0x41, 0x53, 0xf5, 0x7a, 0xa8, 0xab, 0x0a,
+  0x82, 0xa0, 0xa8, 0x2a, 0x0a, 0x87, 0x9e, 0xff,
+  0x82, 0x80, 0x5b, 0xd8, 0x57, 0x10, 0x53, 0x78,
+  0x54, 0xd8, 0xb2, 0xa7, 0xed, 0xdc, 0xb4, 0xac,
+  0x2b, 0x81, 0x6b, 0x26, 0xe4, 0xa8, 0x2a, 0x0a,
+  0x87, 0x96, 0x9e, 0x0a, 0x82, 0xa0, 0xa8, 0x2a,
+  0x0a, 0x82, 0xa0, 0xa8, 0xa0, 0xde, 0x72, 0x15,
+  0xe0, 0xa0, 0x05, 0x54, 0x29, 0xb0, 0x54, 0x15,
+  0x05, 0x43, 0xcb, 0x4a, 0x85, 0x41, 0x50, 0x54,
+  0x15, 0x05, 0x43, 0xcd, 0x40, 0x02, 0xb2, 0x14,
+  0xde, 0x15, 0x05, 0x41, 0x50, 0x54, 0x15, 0x14,
+  0x1a, 0x8e, 0x81, 0x42, 0x15, 0x80, 0xa9, 0x74,
+  0x2a, 0x0a, 0x82, 0xa0, 0xa8, 0x2a, 0x39, 0x35,
+  0x14, 0x85, 0x00, 0x2b, 0xb0, 0xa8, 0x2a, 0x0a,
+  0x82, 0xa7, 0xd8, 0x50, 0x56, 0xca, 0x82, 0xa1,
+  0xe7, 0x9c, 0x81, 0x58, 0x0a, 0xd0, 0xa0, 0x13,
+  0x49, 0x0a, 0x82, 0xa0, 0xa8, 0x2a, 0x0a, 0x87,
+  0x9a, 0x8a, 0x42, 0xbc, 0x14, 0xd8, 0x2a, 0x0a,
+  0x82, 0xa0, 0xa8, 0x2a, 0x1e, 0x6a, 0x39, 0x0a,
+  0xc0, 0x57, 0xc2, 0xa5, 0x82, 0xa0, 0xa8, 0x2a,
+  0x4f, 0x2a, 0x0a, 0xa4, 0xb0, 0x82, 0xa0, 0xa8,
+  0x2a, 0x0a, 0x8a, 0x0f, 0x99, 0xe1, 0x5d, 0x06,
+  0x90, 0x69, 0xa0, 0xa0, 0x05, 0x64, 0x2a, 0x56,
+  0x54, 0x15, 0x05, 0x49, 0xe5, 0x41, 0x54, 0x96,
+  0x10, 0x54, 0x15, 0x0a, 0x7a, 0x4f, 0x0a, 0xf0,
+  0xd0, 0x8d, 0x30, 0x2a, 0x0a, 0x82, 0xa0, 0xa8,
+  0x2a, 0x0a, 0x85, 0x36, 0x54, 0x85, 0x08, 0x53,
+  0x02, 0xbe, 0x15, 0x05, 0x41, 0x50, 0x54, 0x09,
+  0x7d, 0x50, 0xac, 0x85, 0x41, 0x50, 0x54, 0x15,
+  0x0c, 0x2f, 0xbe, 0x15, 0x90, 0xa9, 0x30, 0xa8,
+  0x2a, 0x0a, 0x80, 0x16, 0x9d, 0x85, 0x41, 0x50,
+  0x54, 0x15, 0x05, 0x42, 0x9a, 0x86, 0x82, 0xb0,
+  0x15, 0xd8, 0x54, 0x2a, 0xfd, 0x6d, 0x0e, 0x4f,
+  0x3d, 0xe4, 0xa6, 0xd7, 0x11, 0xb6, 0x94, 0x8f,
+  0x33, 0x71, 0xcf, 0x5a, 0x3a, 0x18, 0x46, 0x31,
+  0x1f, 0x06, 0xfa, 0xcc, 0x03, 0xcf, 0xbb, 0x55,
+  0x9b, 0x2c, 0x3d, 0xbc, 0xb6, 0x65, 0x0a, 0x57,
+  0x11, 0x6f, 0x52, 0x46, 0xf4, 0x99, 0xf3, 0xfe,
+  0xb7, 0x52, 0x9c, 0x9a, 0xbc, 0xef, 0x2b, 0x0a,
+  0x9e, 0xf2, 0x68, 0x9d, 0x3b, 0xdc, 0xd9, 0xd3,
+  0x97, 0xab, 0xa9, 0x44, 0x78, 0x9c, 0xe0, 0x6f,
+  0x23, 0xf3, 0xfb, 0x1e, 0x0f, 0x22, 0xb4, 0x1d,
+  0x14, 0xa2, 0x11, 0xa5, 0x09, 0x80, 0xa7, 0x4f,
+  0xc3, 0xbf, 0xea, 0xa0, 0x3a, 0x6d, 0x13, 0xa5,
+  0xe3, 0x90, 0xb4, 0x92, 0x1d, 0x26, 0x1d, 0x3a,
+  0xf8, 0x9d, 0xe4, 0x49, 0x88, 0xae, 0x10, 0x74,
+  0x7b, 0xa8, 0x7c, 0xff, 0xfb, 0xb5, 0xe1, 0xa2,
+  0x3a, 0x05, 0x70, 0x42, 0x13, 0xa2, 0x86, 0x76,
+  0x5b, 0xe3, 0x30, 0xe6, 0x14, 0x08, 0x59, 0xe8,
+  0x50, 0xb4, 0x49, 0xb4, 0xa9, 0xff, 0xc2, 0xe3,
+  0x2b, 0xd3, 0xf9, 0x7f, 0x9d, 0xff, 0x76, 0x74,
+  0xfc, 0xff, 0xf9, 0xf8, 0xb3, 0xa7, 0xd4, 0x78,
+  0x55, 0xe7, 0x40, 0x9e, 0xa7, 0xcb, 0x67, 0xfd,
+  0x85, 0x10, 0x7e, 0xc3, 0xa0, 0x3a, 0x75, 0xdb,
+  0x47, 0x4a, 0xf0, 0x7a, 0xe0, 0x3c, 0x9e, 0x62,
+  0xdd, 0x07, 0x4f, 0xad, 0xb7, 0xd6, 0x93, 0xa3,
+  0xc7, 0x95, 0x52, 0x19, 0xe5, 0xfe, 0x50, 0xe9,
+  0x2d, 0xa6, 0x57, 0xf7, 0x8c, 0xb8, 0xf1, 0x11,
+  0x4f, 0x77, 0xa2, 0xf3, 0xa7, 0x97, 0xb6, 0xe6,
+  0xa5, 0x4f, 0x9e, 0xe0, 0x84, 0x27, 0x47, 0xcf,
+  0x3f, 0xb2, 0x78, 0xe5, 0x12, 0x76, 0xe1, 0x0c,
+  0x55, 0x58, 0x08, 0xec, 0x7b, 0x86, 0xc4, 0xfc,
+  0x3d, 0x82, 0xfe, 0x87, 0x4f, 0xf5, 0x1f, 0xb7,
+  0xe2, 0xc1, 0x53, 0xa7, 0xb9, 0xe5, 0x5b, 0x1d,
+  0x3f, 0xfe, 0x5c, 0x2b, 0x11, 0x73, 0x62, 0x9b,
+  0xa8, 0x68, 0xbe, 0x27, 0xf0, 0x77, 0x35, 0x5b,
+  0xa0, 0xe9, 0xff, 0xfa, 0xf3, 0xd5, 0xea, 0xdb,
+  0xdf, 0x00, 0xf9, 0x59, 0x65, 0x4d, 0x9b, 0x3a,
+  0x7c, 0x3e, 0xa3, 0x58, 0x69, 0x84, 0xe7, 0xb3,
+  0xda, 0xe9, 0xa6, 0x13, 0x98, 0x0a, 0x6a, 0x04,
+  0xe7, 0xf7, 0xf7, 0xa6, 0x54, 0x40, 0x6a, 0x04,
+  0xe7, 0xf5, 0x6f, 0x1e, 0xaf, 0x74, 0x1a, 0x61,
+  0x39, 0xaf, 0x93, 0x4c, 0x27, 0x30, 0x42, 0x79,
+  0x84, 0xe2, 0xd3, 0x4c, 0xa4, 0xd3, 0xc5, 0xcc,
+  0x22, 0xaa, 0x03, 0x64, 0x20, 0x91, 0xcb, 0x25,
+  0x98, 0x4c, 0xe3, 0xe7, 0x97, 0xa9, 0x4f, 0xdc,
+  0x31, 0xe4, 0x45, 0x55, 0x42, 0xe6, 0x52, 0xa4,
+  0xff, 0xf7, 0xee, 0xa2, 0xbd, 0xe7, 0xfe, 0x6d,
+  0xd5, 0x87, 0x42, 0xab, 0xf0, 0xe4, 0xe5, 0x09,
+  0x70, 0xb7, 0x99, 0x56, 0xed, 0x8b, 0x27, 0xdc,
+  0xd8, 0xfb, 0xa1, 0xd3, 0xef, 0xdf, 0x5b, 0x68,
+  0xe9, 0xfe, 0xc6, 0xb3, 0x1e, 0x5a, 0x5e, 0x74,
+  0xfd, 0xd7, 0xef, 0xe2, 0xda, 0x0e, 0x8f, 0x1f,
+  0x60, 0x0e, 0x63, 0xe8, 0xb7, 0xcc, 0x25, 0x61,
+  0x57, 0x61, 0x6e, 0x70, 0x73, 0xcc, 0x3b, 0x0e,
+  0x09, 0xff, 0xcc, 0xcd, 0x7d, 0xfa, 0x5f, 0x9f,
+  0x57, 0xc7, 0x4f, 0xff, 0xef, 0xdd, 0x37, 0x5d,
+  0xfe, 0x3c, 0xb9, 0xc7, 0x7a, 0xc3, 0xa7, 0xef,
+  0xf6, 0xcf, 0x61, 0x4e, 0x9f, 0xff, 0x6f, 0xf3,
+  0xbb, 0x8f, 0xae, 0x6a, 0x1b, 0xc1, 0xd3, 0x86,
+  0xb5, 0x3c, 0x40, 0x73, 0xff, 0xdd, 0x45, 0x70,
+  0xbc, 0x2c, 0x53, 0x75, 0x0d, 0x10, 0x1b, 0x8d,
+  0x44, 0x01, 0x1c, 0xb9, 0x7b, 0x8b, 0x4c, 0xdb,
+  0xd1, 0x89, 0xcf, 0xff, 0xed, 0x7d, 0xd7, 0xc2,
+  0x3e, 0x67, 0x5c, 0xe2, 0xc3, 0x93, 0xa7, 0xff,
+  0xfb, 0x5f, 0x7f, 0x69, 0xf7, 0x4b, 0xfa, 0xa8,
+  0x1c, 0x10, 0x84, 0xa8, 0xc2, 0x32, 0xfe, 0xc3,
+  0x3f, 0x96, 0xc5, 0x37, 0x50, 0xd1, 0x04, 0xcf,
+  0xf2, 0xe6, 0xc5, 0x37, 0x50, 0xd1, 0x7c, 0xcf,
+  0xbc, 0xdb, 0xf7, 0x5e, 0x4f, 0xe9, 0x0e, 0xa7,
+  0xfd, 0x46, 0xd3, 0xc5, 0x79, 0xfe, 0xb6, 0x3a,
+  0x70, 0x42, 0x12, 0xa7, 0xec, 0xe2, 0xd3, 0x44,
+  0xa7, 0x17, 0x91, 0x42, 0x26, 0x7e, 0xc1, 0x3f,
+  0xf5, 0x0c, 0x5a, 0x6b, 0xfb, 0xa3, 0xab, 0xce,
+  0x9f, 0xfe, 0xeb, 0x4f, 0xf8, 0x26, 0x3c, 0x00,
+  0x28, 0xbc, 0xe9, 0xc1, 0x08, 0x4a, 0x9f, 0xdd,
+  0x40, 0xbf, 0xba, 0x72, 0x53, 0x8b, 0xc9, 0xff,
+  0xf9, 0xb9, 0xe0, 0x98, 0xf7, 0x3c, 0xd8, 0x78,
+  0x66, 0xb7, 0x41, 0xd2, 0xdc, 0x22, 0xaf, 0xb4,
+  0x48, 0x7a, 0xa8, 0xbf, 0x43, 0x68, 0x49, 0x18,
+  0x93, 0x98, 0xc6, 0xe7, 0xd8, 0xbc, 0xb4, 0xf3,
+  0xa7, 0xfd, 0x79, 0x51, 0xae, 0x17, 0xf9, 0x3c,
+  0x41, 0x13, 0xf9, 0x6c, 0x53, 0x75, 0x0d, 0x10,
+  0x43, 0x8f, 0x26, 0x7e, 0xdc, 0x08, 0xf8, 0x27,
+  0x4f, 0xdc, 0x7e, 0x43, 0xbf, 0x79, 0xd1, 0xf3,
+  0xdd, 0xec, 0xae, 0x30, 0x99, 0xe0, 0x1c, 0x7f,
+  0x0a, 0x89, 0xfe, 0x5f, 0xe7, 0xad, 0xe3, 0x69,
+  0x3a, 0x7f, 0xfb, 0x43, 0x9b, 0xc2, 0xfb, 0x3f,
+  0xbc, 0x78, 0xe8, 0x7a, 0x22, 0x3e, 0x75, 0x3f,
+  0xb3, 0xd5, 0x95, 0x0e, 0xd2, 0x74, 0xf7, 0x9a,
+  0xf0, 0x4e, 0x9f, 0xff, 0x77, 0x47, 0xd6, 0xf0,
+  0xe5, 0xcd, 0xe3, 0xb1, 0x3a, 0x7d, 0x79, 0xaf,
+  0x5a, 0xf2, 0x7f, 0x3d, 0x48, 0xe7, 0xe4, 0xc7,
+  0xb8, 0xbd, 0xd0, 0xe9, 0xf9, 0x8b, 0xc7, 0xc5,
+  0xd0, 0x74, 0xff, 0xff, 0xf7, 0xb3, 0xac, 0xdf,
+  0x81, 0xfe, 0xaf, 0x6c, 0xc7, 0x97, 0x38, 0xef,
+  0x58, 0x74, 0x72, 0x8e, 0x3f, 0x19, 0x69, 0x8c,
+  0xe1, 0xeb, 0x53, 0xa7, 0xfd, 0xbf, 0x4b, 0x14,
+  0xdd, 0x43, 0x44, 0x23, 0x0a, 0x7c, 0x5d, 0x8e,
+  0xcf, 0xfe, 0x5b, 0xa7, 0xae, 0x7d, 0xfe, 0xdf,
+  0x75, 0x3a, 0x7f, 0xfb, 0x76, 0x8e, 0xb7, 0x8d,
+  0x63, 0x82, 0x10, 0x9d, 0x2b, 0xe5, 0x13, 0xcd,
+  0x26, 0xce, 0x08, 0x42, 0x54, 0xff, 0x58, 0x34,
+  0x6d, 0xb5, 0xf2, 0x53, 0x8b, 0xc9, 0x82, 0x12,
+  0xa7, 0x04, 0x21, 0x2a, 0x7e, 0xda, 0x39, 0xc2,
+  0xd4, 0xa7, 0x17, 0x91, 0xf4, 0x5b, 0x05, 0x1f,
+  0x88, 0xca, 0x7c, 0x9e, 0xe7, 0xab, 0x0a, 0x71,
+  0xb3, 0x9c, 0x10, 0x84, 0xa9, 0xd5, 0x51, 0x29,
+  0xc5, 0xe4, 0x81, 0xe3, 0xff, 0xca, 0xb4, 0xfd,
+  0xcf, 0xd5, 0xfa, 0x87, 0x4f, 0xee, 0xa3, 0xcf,
+  0x9b, 0x2f, 0x27, 0x4f, 0xec, 0xe2, 0xdb, 0x5e,
+  0x6a, 0x74, 0x0a, 0x26, 0x30, 0x59, 0xf3, 0x88,
+  0x54, 0x77, 0xdc, 0x30, 0x27, 0x52, 0xdc, 0x4d,
+  0xd8, 0xe9, 0xff, 0xd7, 0xc7, 0xdf, 0x82, 0xd1,
+  0x70, 0xac, 0x3a, 0x7e, 0x4f, 0x57, 0x1e, 0x68,
+  0xa9, 0xfd, 0xfb, 0xa5, 0xf5, 0xf7, 0x43, 0xa7,
+  0xb7, 0x47, 0xa1, 0xd1, 0xc0, 0xf5, 0xe8, 0x36,
+  0x9e, 0x5d, 0x63, 0x62, 0xa7, 0x04, 0x21, 0x2a,
+  0x7f, 0xfb, 0xaa, 0x82, 0xef, 0xf9, 0xc7, 0x97,
+  0xf4, 0x14, 0xe2, 0xf2, 0x56, 0x88, 0x9e, 0x61,
+  0xf4, 0x2a, 0x7c, 0x6f, 0x2a, 0xa5, 0x2b, 0xd0,
+  0x85, 0xc4, 0x30, 0xe7, 0xff, 0xcc, 0xb4, 0x5f,
+  0xee, 0x6b, 0xcf, 0x7a, 0x2f, 0x3a, 0x7c, 0xb9,
+  0xab, 0x6b, 0x3a, 0x14, 0xff, 0x32, 0xa9, 0x3f,
+  0xfd, 0xe6, 0xd7, 0xfe, 0x7f, 0xa1, 0xbf, 0xef,
+  0x43, 0xa7, 0xff, 0xfb, 0x9c, 0x78, 0x36, 0xdf,
+  0xe6, 0x6e, 0x6b, 0xdb, 0xee, 0x9c, 0x9d, 0x16,
+  0x8c, 0x0d, 0x53, 0x85, 0x6c, 0x85, 0x28, 0x4d,
+  0x7c, 0x72, 0xfc, 0xc3, 0xd2, 0xe5, 0x94, 0x7a,
+  0x39, 0x26, 0xa1, 0x7c, 0x24, 0x6c, 0x85, 0x7e,
+  0x23, 0x27, 0x04, 0x24, 0xbf, 0x0c, 0x0a, 0xca,
+  0x9d, 0xcc, 0xa0, 0x9e, 0xe1, 0xa2, 0x18, 0x70,
+  0xce, 0x6c, 0xbf, 0x3a, 0x7f, 0xfa, 0xfe, 0xec,
+  0xf4, 0xf5, 0x35, 0xc5, 0x83, 0x4e, 0x95, 0x2f,
+  0x3e, 0xfe, 0x47, 0x67, 0xec, 0x35, 0xec, 0x79,
+  0x87, 0x4f, 0xfb, 0xeb, 0x9c, 0x68, 0x36, 0x9a,
+  0x9d, 0x39, 0xae, 0xc4, 0xe9, 0xff, 0x6f, 0x86,
+  0xe9, 0x70, 0x42, 0x13, 0xa3, 0x4f, 0x6e, 0xa3,
+  0xb3, 0xff, 0xdf, 0x57, 0xf0, 0xeb, 0x9f, 0x7f,
+  0xb7, 0xdd, 0x4e, 0x8b, 0x4c, 0xf9, 0x0b, 0xf1,
+  0x09, 0x90, 0x10, 0xcf, 0xe5, 0xfb, 0xff, 0x76,
+  0x03, 0xa7, 0xf3, 0xec, 0x6b, 0xf5, 0xa0, 0xe9,
+  0xff, 0xe5, 0x6c, 0xa2, 0xee, 0xb9, 0xfd, 0xd1,
+  0xe1, 0x3d, 0xde, 0xf3, 0xff, 0xd7, 0x95, 0xfa,
+  0x5e, 0x71, 0xe1, 0x02, 0x1d, 0x3e, 0xda, 0xdf,
+  0xf2, 0x74, 0xec, 0xef, 0x1c, 0xe9, 0xfd, 0x9c,
+  0x79, 0xc0, 0xdf, 0x1d, 0x14, 0x26, 0x47, 0xca,
+  0xff, 0xd3, 0x32, 0x4d, 0xd8, 0xfc, 0xfe, 0xec,
+  0x0b, 0x8f, 0x6b, 0xce, 0x9f, 0xff, 0xbf, 0x75,
+  0xef, 0x85, 0xe3, 0x7f, 0x6d, 0x3d, 0x69, 0x3a,
+  0x7f, 0xd7, 0x5e, 0xec, 0x53, 0x75, 0x0d, 0x10,
+  0x34, 0xfa, 0xf3, 0x8d, 0x7f, 0x04, 0x52, 0xfd,
+  0x7a, 0x7f, 0xff, 0xfe, 0xbc, 0xe3, 0x7f, 0xd3,
+  0x85, 0x47, 0x77, 0x2d, 0xaf, 0x9e, 0x16, 0xcd,
+  0xfd, 0x2f, 0x3c, 0x41, 0x73, 0xfe, 0xdd, 0xe8,
+  0x9b, 0xcf, 0x0e, 0x81, 0x3c, 0x41, 0x73, 0xff,
+  0x63, 0xd8, 0xf2, 0xff, 0x3c, 0x3a, 0x04, 0xf1,
+  0x05, 0xcf, 0xe5, 0xf7, 0xf3, 0xc3, 0xa0, 0x4f,
+  0x10, 0x5c, 0xfc, 0xcb, 0xe7, 0x87, 0x40, 0x9e,
+  0x20, 0xb9, 0xff, 0xfe, 0xdf, 0xff, 0xcc, 0xe1,
+  0x54, 0xc7, 0x87, 0xdd, 0x28, 0xb0, 0x9e, 0x20,
+  0xb9, 0xa9, 0xe1, 0xca, 0x74, 0x28, 0xa0, 0x2a,
+  0xda, 0x89, 0xf3, 0xf8, 0xc2, 0xa9, 0x6f, 0xca,
+  0x3e, 0x9e, 0xd1, 0x06, 0x9d, 0x3f, 0xf6, 0x3d,
+  0x8f, 0x2f, 0xf3, 0xc3, 0xa0, 0x4f, 0x10, 0x5c,
+  0xff, 0x35, 0x54, 0xf5, 0x1c, 0x3a, 0x04, 0xf1,
+  0x05, 0xcf, 0xb3, 0x55, 0x67, 0x04, 0x45, 0x17,
+  0x55, 0x69, 0xff, 0xdc, 0x13, 0x1e, 0x45, 0xcd,
+  0x78, 0x74, 0x09, 0xe2, 0x0b, 0x9f, 0xff, 0xfb,
+  0xff, 0xf3, 0x38, 0x77, 0x7c, 0x2a, 0x98, 0xf0,
+  0xfb, 0xa5, 0x16, 0x13, 0xc4, 0x17, 0x16, 0x99,
+  0x35, 0x28, 0x7a, 0xb9, 0x3f, 0xd8, 0xf0, 0xfb,
+  0xa5, 0x16, 0x13, 0xc4, 0x17, 0x3f, 0xfd, 0xbb,
+  0x4b, 0xeb, 0x8f, 0x73, 0xca, 0x8a, 0x95, 0x3f,
+  0xeb, 0x7b, 0xfb, 0xa8, 0xfe, 0x8e, 0x23, 0xc4,
+  0x17, 0x08, 0x8e, 0x81, 0x48, 0xaa, 0x84, 0xff,
+  0x93, 0xc3, 0x9d, 0x05, 0x78, 0x04, 0xf1, 0x05,
+  0xcf, 0xd8, 0xf6, 0x31, 0xe0, 0x1a, 0x00, 0xb9,
+  0xf5, 0x83, 0x87, 0x40, 0x9e, 0x20, 0xb9, 0xaf,
+  0x28, 0x7e, 0x78, 0x3b, 0x8a, 0x51, 0xd7, 0x58,
+  0x5f, 0xcf, 0xcc, 0xbe, 0x78, 0x74, 0x09, 0xe2,
+  0x0b, 0x9f, 0xf2, 0x63, 0xc3, 0xee, 0x94, 0x58,
+  0x4f, 0x10, 0x5c, 0xd7, 0xc3, 0x51, 0x19, 0x53,
+  0xf9, 0xfd, 0xdf, 0x99, 0xbf, 0xa5, 0xe7, 0x88,
+  0x2e, 0x7f, 0xd7, 0xe6, 0xd7, 0xfb, 0xe7, 0x5e,
+  0x78, 0x82, 0xd8, 0x78, 0x51, 0xca, 0xee, 0x38,
+  0x0b, 0x3f, 0x1f, 0x3d, 0x63, 0x18, 0xcc, 0x63,
+  0x3d, 0xc2, 0xd4, 0x2e, 0x33, 0xe0, 0x54, 0x00,
+  0x53, 0x44, 0x16, 0xe4, 0x40, 0x4f, 0xfa, 0xdf,
+  0x8d, 0x7b, 0x7b, 0x7f, 0x74, 0x1d, 0x3f, 0x87,
+  0xf7, 0xce, 0x3b, 0x09, 0xd3, 0xea, 0x73, 0xa2,
+  0x03, 0xa7, 0xeb, 0xa3, 0x70, 0xbc, 0x73, 0xa3,
+  0xc8, 0x8b, 0xd3, 0x4f, 0x93, 0xce, 0xd1, 0xa0,
+  0xe9, 0x80, 0xa7, 0x4f, 0x79, 0x59, 0x67, 0x41,
+  0xd3, 0xf6, 0xf4, 0xca, 0x88, 0x0e, 0x8e, 0x4d,
+  0xbf, 0xc2, 0xa7, 0xff, 0xf2, 0xfb, 0x9f, 0xaf,
+  0x69, 0x9b, 0x4e, 0x55, 0x3a, 0xb0, 0xe9, 0x80,
+  0xa7, 0x4c, 0xbd, 0x0e, 0x9f, 0xeb, 0xcd, 0x55,
+  0x9d, 0x6d, 0xa3, 0xa7, 0xf5, 0x6f, 0x1e, 0xaf,
+  0x74, 0x1d, 0x30, 0x42, 0x54, 0xff, 0x7e, 0xdb,
+  0x6b, 0xeb, 0xee, 0x4e, 0x84, 0x4f, 0xdf, 0xc3,
+  0x62, 0x2a, 0xc5, 0x7c, 0x11, 0x01, 0x89, 0xb9,
+  0x15, 0xf8, 0xbd, 0x4e, 0x82, 0x6b, 0xd4, 0x5a,
+  0x70, 0x42, 0x12, 0xa4, 0xc2, 0x9c, 0x5e, 0x4f,
+  0xb5, 0xad, 0xd1, 0x29, 0xc8, 0xd9, 0xeb, 0x0b,
+  0xa9, 0xfd, 0x4e, 0x56, 0xf1, 0x74, 0x1d, 0x0a,
+  0xd9, 0x03, 0xdc, 0x6d, 0x1d, 0x10, 0x69, 0x31,
+  0xf4, 0x6a, 0xa2, 0x9d, 0x88, 0x6c, 0x6d, 0x24,
+  0x7b, 0xe8, 0xd5, 0x86, 0x8f, 0x72, 0xbf, 0xdb,
+  0x25, 0xcf, 0x5a, 0x2e, 0x4e, 0x9e, 0xb6, 0x5e,
+  0x4e, 0x9e, 0xda, 0x3a, 0xbc, 0xe8, 0x53, 0xe3,
+  0xa4, 0x7d, 0xbc, 0x82, 0x7e, 0xff, 0x7c, 0xb3,
+  0x5e, 0x74, 0xff, 0xf5, 0x2f, 0xfa, 0xf0, 0x67,
+  0xd7, 0xa6, 0x7d, 0x41, 0xd3, 0xfa, 0xb9, 0x6d,
+  0x7f, 0xbe, 0x4e, 0x85, 0x45, 0xd7, 0x8b, 0xf5,
+  0x5a, 0x76, 0xf0, 0xea, 0x74, 0xff, 0xf7, 0xdf,
+  0xc2, 0xf9, 0xf5, 0x69, 0xcf, 0x7b, 0x53, 0xa3,
+  0x81, 0xfa, 0x58, 0xfc, 0xfd, 0x43, 0x4f, 0xe3,
+  0x46, 0x83, 0xa6, 0x7d, 0x07, 0x4f, 0xb1, 0x7e,
+  0x7d, 0x4e, 0x9f, 0xfe, 0xc2, 0xf5, 0x76, 0x7f,
+  0xa0, 0xad, 0x54, 0x05, 0x4f, 0xe0, 0x58, 0xa6,
+  0xea, 0x1e, 0x20, 0x48, 0x7a, 0x2c, 0xf9, 0x27,
+  0x15, 0x19, 0x9b, 0xde, 0x74, 0xf6, 0x68, 0xdf,
+  0x9d, 0x3d, 0x4d, 0x77, 0x27, 0x45, 0x07, 0xbb,
+  0x63, 0x38, 0x22, 0x9f, 0xdf, 0xd0, 0xd6, 0xaa,
+  0x03, 0xa7, 0x04, 0x21, 0x3e, 0x1f, 0x53, 0xb7,
+  0xfc, 0x97, 0x0f, 0xa3, 0x8d, 0x4c, 0x72, 0x89,
+  0x50, 0x2d, 0xcf, 0xff, 0xaf, 0xfe, 0xe8, 0xea,
+  0xe7, 0x1d, 0xeb, 0xde, 0xa7, 0x45, 0x07, 0xf9,
+  0xd0, 0x92, 0x1b, 0xba, 0xaf, 0x17, 0x9a, 0xdc,
+  0x32, 0xbd, 0x08, 0xdd, 0x8d, 0x02, 0x7d, 0xec,
+  0xae, 0x6a, 0x54, 0xf2, 0x2e, 0x6a, 0x54, 0xc1,
+  0x09, 0x50, 0xf3, 0xdd, 0xb2, 0x70, 0x90, 0x4d,
+  0x61, 0x29, 0xc6, 0xba, 0x7f, 0xfd, 0x79, 0x54,
+  0xbb, 0xfe, 0x71, 0xe5, 0xfd, 0x07, 0x40, 0x0f,
+  0xe0, 0x24, 0xb3, 0xff, 0xf9, 0x5b, 0x7b, 0xe0,
+  0xe1, 0x9a, 0xda, 0x63, 0x7f, 0x9a, 0x9d, 0x3f,
+  0x9a, 0xa5, 0xf8, 0xed, 0x44, 0xe9, 0xcf, 0xd1,
+  0x3a, 0x7c, 0xfb, 0xcd, 0xf2, 0x54, 0xbc, 0xd1,
+  0xe0, 0xe4, 0x6a, 0x7b, 0x3d, 0x2f, 0x07, 0x4c,
+  0x05, 0x3a, 0x60, 0x29, 0xd3, 0xee, 0xdf, 0x7f,
+  0x77, 0x8d, 0x50, 0x05, 0x61, 0x51, 0x19, 0xf4,
+  0xd9, 0xff, 0xb3, 0x8b, 0x67, 0x55, 0x05, 0xd3,
+  0x93, 0xa7, 0xf5, 0x29, 0xe1, 0xea, 0xbc, 0x9d,
+  0x3c, 0x06, 0x6b, 0xea, 0x7f, 0x79, 0x46, 0x9d,
+  0xc5, 0x74, 0x9d, 0x0a, 0x7b, 0x1a, 0x73, 0x3d,
+  0x5e, 0xe9, 0xc9, 0xd3, 0x82, 0x10, 0x95, 0x3e,
+  0xbe, 0x9f, 0xee, 0xa5, 0x38, 0xbc, 0x9f, 0x5b,
+  0x82, 0x10, 0x9d, 0x0a, 0x7c, 0x19, 0x39, 0x9e,
+  0x0e, 0xfd, 0xe7, 0x4c, 0x98, 0x3a, 0x70, 0x42,
+  0x12, 0xa7, 0xef, 0x6f, 0x4c, 0x7b, 0x25, 0x38,
+  0xbc, 0x9f, 0x58, 0x2e, 0xda, 0x3a, 0x55, 0xe0,
+  0x89, 0x51, 0x31, 0xf9, 0xf4, 0xf7, 0xbf, 0xdb,
+  0xf9, 0x47, 0x6d, 0xc2, 0xda, 0x15, 0x72, 0xd5,
+  0xe4, 0x56, 0xc9, 0xd1, 0xd8, 0x61, 0x6b, 0x88,
+  0x7a, 0xe9, 0x05, 0x61, 0x41, 0x98, 0xc3, 0xa7,
+  0xe5, 0x60, 0x8e, 0xe4, 0xe9, 0xff, 0xef, 0x32,
+  0x97, 0xd7, 0x85, 0xff, 0xf7, 0xe0, 0x1d, 0x18,
+  0x3f, 0xdc, 0x95, 0x49, 0xdc, 0x64, 0x22, 0x3e,
+  0x56, 0x56, 0xa5, 0x11, 0x91, 0xbe, 0x52, 0x6f,
+  0x32, 0xc0, 0x6e, 0xb7, 0x7e, 0xe9, 0x1b, 0x92,
+  0x4a, 0x18, 0xa6, 0x57, 0xcf, 0xa3, 0x3e, 0x6a,
+  0x79, 0xf4, 0x67, 0x4d, 0x59, 0x28, 0x2f, 0x13,
+  0xe6, 0xfb, 0x4f, 0x52, 0x04, 0xb4, 0xdf, 0xce,
+  0xe1, 0xd6, 0xb2, 0x5e, 0xcd, 0x67, 0x3f, 0xdc,
+  0x66, 0xad, 0xa1, 0xd8, 0x18, 0x51, 0x71, 0x4b,
+  0x14, 0xeb, 0x3c, 0x30, 0xdf, 0x18, 0x8c, 0x3a,
+  0x11, 0x74, 0xef, 0xc4, 0x4c, 0x5c, 0xfe, 0x75,
+  0x8a, 0x6e, 0xa1, 0xa2, 0xe3, 0x9f, 0xce, 0xb1,
+  0x4d, 0xd4, 0x34, 0x5d, 0x73, 0xff, 0x3b, 0x5e,
+  0xeb, 0x14, 0xdd, 0x43, 0x44, 0xa3, 0x0b, 0x08,
+  0xef, 0xc7, 0x94, 0x72, 0x77, 0xd0, 0xed, 0x0e,
+  0xfd, 0x0f, 0x0e, 0x3a, 0x06, 0xe2, 0x2f, 0xe6,
+  0xa7, 0x19, 0x3b, 0x6f, 0x3b, 0x9f, 0xfc, 0xe6,
+  0x6b, 0xdd, 0x62, 0x9b, 0xa8, 0x68, 0x96, 0xa7,
+  0xc2, 0x9b, 0xa8, 0x68, 0x8d, 0xe7, 0xfd, 0xaf,
+  0x75, 0x8a, 0x6e, 0xa1, 0xa2, 0x5f, 0x93, 0xac,
+  0xfd, 0x98, 0x61, 0x3f, 0x9d, 0x62, 0x9b, 0xa8,
+  0x68, 0xaa, 0xe7, 0xfb, 0xa5, 0xfe, 0xe9, 0xce,
+  0xb0, 0xe9, 0xb9, 0xf1, 0xd3, 0xf5, 0x8a, 0x6e,
+  0xa1, 0xa2, 0x40, 0x8e, 0x07, 0x98, 0xe1, 0x79,
+  0xf5, 0x77, 0xfb, 0x49, 0xd0, 0xf3, 0xcb, 0xa4,
+  0x92, 0x3a, 0x23, 0xd3, 0x61, 0xa3, 0x3f, 0xf7,
+  0xee, 0x87, 0x71, 0x2f, 0xff, 0x79, 0x3a, 0x1c,
+  0x7e, 0x02, 0x53, 0x3f, 0x9d, 0x62, 0x9b, 0xa8,
+  0x68, 0xb2, 0x27, 0xf3, 0xac, 0x53, 0x75, 0x0d,
+  0x16, 0xbc, 0xfe, 0x75, 0x8a, 0x6e, 0xa1, 0xa2,
+  0xe4, 0x9f, 0x0a, 0x6e, 0xa1, 0xa2, 0xec, 0x9f,
+  0xf6, 0xbd, 0xd6, 0x29, 0xba, 0x86, 0x8a, 0x3a,
+  0x4e, 0xb3, 0xf6, 0x61, 0x84, 0xf8, 0x53, 0x75,
+  0x0d, 0x14, 0xac, 0xff, 0xff, 0xf6, 0x16, 0x85,
+  0xc7, 0x9b, 0x6f, 0x38, 0xf3, 0x93, 0x1e, 0x6b,
+  0x0b, 0x45, 0x9d, 0x3e, 0x73, 0x35, 0xee, 0xb4,
+  0x59, 0x34, 0x61, 0x14, 0x2e, 0x77, 0xbe, 0x19,
+  0x14, 0x93, 0xfa, 0x39, 0xf6, 0x10, 0x80, 0xee,
+  0xa7, 0x79, 0x85, 0x8b, 0x68, 0x6c, 0xcf, 0xf3,
+  0xdd, 0x62, 0x9b, 0xa8, 0x68, 0x8e, 0x27, 0xfb,
+  0xce, 0xb1, 0x4d, 0xd4, 0x34, 0x56, 0xb2, 0x76,
+  0xa2, 0x0b, 0x28, 0x33, 0xff, 0x9c, 0xcd, 0x7b,
+  0xac, 0x53, 0x75, 0x0d, 0x12, 0xdc, 0xd7, 0x49,
+  0xd3, 0xfb, 0x9b, 0x63, 0x17, 0xd5, 0x3a, 0x29,
+  0x3c, 0x9f, 0x0b, 0x4e, 0xc7, 0x2f, 0x3a, 0x73,
+  0xd8, 0x87, 0x4f, 0xff, 0xd8, 0xda, 0x41, 0xce,
+  0x35, 0xf7, 0x5f, 0xf7, 0xbd, 0x4e, 0x83, 0x44,
+  0x37, 0x3f, 0xed, 0x7b, 0xac, 0x53, 0x75, 0x0d,
+  0x13, 0x04, 0xe1, 0xec, 0x05, 0x4f, 0xef, 0xde,
+  0x72, 0xa3, 0x53, 0xa4, 0xe5, 0x4d, 0x92, 0x82,
+  0x3e, 0x47, 0x6c, 0x6d, 0x17, 0xd8, 0x2f, 0x94,
+  0x6e, 0xa3, 0x93, 0x99, 0xd8, 0x95, 0x3f, 0xed,
+  0x7b, 0xac, 0x53, 0x75, 0x0d, 0x13, 0x1c, 0x9d,
+  0xe3, 0xe2, 0x60, 0xe4, 0xfc, 0xb5, 0xe1, 0x9b,
+  0xc1, 0xd3, 0xff, 0xff, 0xcf, 0xae, 0x2f, 0xb0,
+  0xd7, 0x16, 0x97, 0x5e, 0x17, 0x4b, 0xeb, 0xef,
+  0xf8, 0xe9, 0xe4, 0xdd, 0x43, 0x45, 0x63, 0x3f,
+  0xee, 0x2b, 0xcf, 0xef, 0xb5, 0xfe, 0x4e, 0x8e,
+  0x89, 0x8d, 0xd2, 0x5c, 0x30, 0x81, 0xc9, 0x5c,
+  0xff, 0xe5, 0xfe, 0x7a, 0x76, 0xbf, 0xb4, 0x51,
+  0x3a, 0x7f, 0xd7, 0xce, 0x2e, 0xb4, 0xbd, 0x70,
+  0x74, 0xff, 0xaf, 0x91, 0xf7, 0x74, 0x02, 0xaf,
+  0x3a, 0x7f, 0xff, 0xef, 0xf7, 0x45, 0xa7, 0x0f,
+  0xf6, 0xdf, 0xc2, 0xe9, 0x7d, 0xf7, 0xf0, 0x54,
+  0xe9, 0xfc, 0xdd, 0xe8, 0x69, 0xfc, 0x68, 0xd0,
+  0x74, 0xec, 0x79, 0xd6, 0x9e, 0x6a, 0x22, 0xe1,
+  0x27, 0xe7, 0xf9, 0x41, 0xe2, 0x7e, 0x9b, 0xb6,
+  0x8e, 0x9f, 0x6f, 0xe8, 0xee, 0xa7, 0x47, 0xcf,
+  0x06, 0xa3, 0x13, 0xe6, 0x5f, 0xd5, 0xe7, 0x4f,
+  0x28, 0xef, 0xce, 0x9e, 0xad, 0x54, 0x07, 0x42,
+  0x9f, 0x36, 0x09, 0x82, 0x3f, 0x3e, 0x57, 0x83,
+  0xb7, 0x9d, 0x39, 0x7e, 0xf3, 0xa1, 0xa3, 0xc3,
+  0xc9, 0x44, 0xfc, 0xac, 0xbf, 0xfb, 0xa1, 0xd2,
+  0xa9, 0xd1, 0xe3, 0x7d, 0xa5, 0xd3, 0x01, 0x4a,
+  0x98, 0x21, 0x2a, 0x3c, 0x6a, 0xc2, 0x2b, 0x3f,
+  0xb5, 0xff, 0xbc, 0xe3, 0xc5, 0x38, 0xd0, 0xcf,
+  0x73, 0xb4, 0xd4, 0xe9, 0xcb, 0xf6, 0x8e, 0x9b,
+  0xea, 0x74, 0x34, 0x6c, 0x44, 0x72, 0x78, 0x41,
+  0x6d, 0xe7, 0x4b, 0xa1, 0xd3, 0x0f, 0x43, 0xa3,
+  0xc6, 0xa7, 0xa8, 0x94, 0x2a, 0x39, 0x2d, 0x53,
+  0xc4, 0x38, 0x4c, 0x9b, 0x19, 0x3a, 0x7e, 0x02,
+  0xe2, 0xdb, 0x69, 0xd3, 0x82, 0x10, 0x95, 0x3f,
+  0xf5, 0xa7, 0x2b, 0x47, 0x5b, 0xc6, 0xd2, 0x53,
+  0x8b, 0xc9, 0xef, 0x0b, 0x7f, 0x27, 0x48, 0x4e,
+  0x9f, 0x33, 0xd9, 0x06, 0x9d, 0x14, 0x1e, 0xdf,
+  0x1c, 0x97, 0xb0, 0xf9, 0xfc, 0x9e, 0xaf, 0xed,
+  0xb6, 0x9d, 0x35, 0xe4, 0xe8, 0xa4, 0xf2, 0x30,
+  0x67, 0x3d, 0x9f, 0xdb, 0xce, 0x9f, 0xfd, 0xea,
+  0xe2, 0xf9, 0xfd, 0xb6, 0xfd, 0xd4, 0xe8, 0x13,
+  0xed, 0xc9, 0x0c, 0x9c, 0xab, 0xac, 0x9c, 0xc2,
+  0x22, 0xdc, 0x45, 0x85, 0x8d, 0x98, 0x8c, 0x9b,
+  0x4e, 0xc0, 0x2d, 0xf4, 0x9a, 0xc2, 0xc3, 0x2f,
+  0xbd, 0x61, 0x21, 0x3e, 0x14, 0xdd, 0x43, 0x45,
+  0x6f, 0x3f, 0xed, 0x7b, 0xac, 0x53, 0x75, 0x0d,
+  0x13, 0x84, 0x9d, 0x67, 0xec, 0xc3, 0x09, 0xbb,
+  0xc1, 0xd3, 0xe1, 0x4d, 0xd4, 0x34, 0x5a, 0x33,
+  0x7b, 0xa1, 0xd3, 0xff, 0x61, 0x69, 0xde, 0x3e,
+  0x3f, 0xbc, 0x7a, 0x0e, 0x95, 0xb4, 0x7c, 0xb5,
+  0x18, 0x93, 0xb8, 0xc4, 0x6a, 0x58, 0xbe, 0x21,
+  0x2b, 0x3c, 0x9b, 0xa8, 0x68, 0xb6, 0xa7, 0xec,
+  0x2b, 0x17, 0xdc, 0x9d, 0x33, 0xac, 0x4f, 0x63,
+  0x25, 0x73, 0xf9, 0xd6, 0x29, 0xba, 0x86, 0x8b,
+  0x96, 0x7f, 0x3a, 0xc5, 0x37, 0x50, 0xd1, 0x76,
+  0xc2, 0xb3, 0xe3, 0xa8, 0x28, 0x7c, 0x7f, 0xfc,
+  0xc3, 0x6f, 0xa4, 0xb1, 0x0f, 0x4f, 0x08, 0x71,
+  0xe3, 0x38, 0xc4, 0x3e, 0xff, 0x09, 0x7a, 0x96,
+  0x64, 0xee, 0x7f, 0x3a, 0xc5, 0x37, 0x50, 0xd1,
+  0x53, 0xcf, 0x26, 0xea, 0x1a, 0x2b, 0x99, 0xfc,
+  0xeb, 0x14, 0xdd, 0x43, 0x45, 0x9d, 0x02, 0x7c,
+  0xd8, 0x2b, 0x9f, 0x0a, 0x6e, 0xa1, 0xa2, 0x42,
+  0x9f, 0xef, 0x53, 0x5c, 0xfd, 0x59, 0x53, 0xa6,
+  0x7b, 0xac, 0xfa, 0x80, 0x61, 0x3d, 0xc6, 0x61,
+  0x58, 0x74, 0xfe, 0xbc, 0x56, 0xb6, 0x34, 0x1d,
+  0x27, 0x5a, 0x62, 0x1b, 0x08, 0xba, 0x96, 0xe4,
+  0x9a, 0x7f, 0xf3, 0x99, 0xaf, 0x75, 0x8a, 0x6e,
+  0xa1, 0xa2, 0x7c, 0x84, 0x54, 0x95, 0xc7, 0x8e,
+  0xc7, 0x08, 0xf3, 0xe1, 0x4d, 0xd4, 0x34, 0x56,
+  0x53, 0xfe, 0xd7, 0xba, 0xc5, 0x37, 0x50, 0xd1,
+  0x37, 0x4d, 0xe7, 0x59, 0xfb, 0x30, 0xc2, 0x7c,
+  0x29, 0xba, 0x86, 0x89, 0x5a, 0x7f, 0xba, 0x63,
+  0xdc, 0x3b, 0x4b, 0xa9, 0xd3, 0xe7, 0x33, 0x5e,
+  0xeb, 0x3e, 0xdd, 0x30, 0x9f, 0x0a, 0x6e, 0xa1,
+  0xa2, 0x5c, 0x9f, 0xef, 0x6b, 0xf3, 0xf5, 0x65,
+  0x4e, 0x9e, 0x6d, 0xef, 0xa9, 0xd3, 0xe7, 0x33,
+  0x5e, 0xeb, 0x44, 0x5e, 0x0c, 0x34, 0xe2, 0x7f,
+  0xe7, 0x6b, 0xdd, 0x62, 0x9b, 0xa8, 0x68, 0x8e,
+  0xe7, 0xfb, 0x38, 0xb7, 0xbb, 0x7f, 0x53, 0xa7,
+  0xee, 0x37, 0xea, 0x97, 0xf3, 0xa6, 0xef, 0x07,
+  0x4f, 0xcd, 0xd7, 0xef, 0x1b, 0x93, 0xa7, 0xc2,
+  0x9b, 0xa8, 0x68, 0xa8, 0x67, 0xd7, 0x8c, 0xdd,
+  0x07, 0x4f, 0xff, 0xf7, 0x7b, 0xc7, 0xf5, 0x18,
+  0xdf, 0x65, 0x71, 0xec, 0xd6, 0xf9, 0x3a, 0x4e,
+  0x6e, 0x93, 0x3c, 0xe3, 0x0c, 0x38, 0xd1, 0x7b,
+  0x31, 0xc9, 0x87, 0x11, 0x3c, 0xf8, 0x53, 0x75,
+  0x0d, 0x15, 0x44, 0xff, 0xb5, 0xee, 0xb1, 0x4d,
+  0xd4, 0x34, 0x4d, 0x72, 0x75, 0x9f, 0xb3, 0x0c,
+  0x27, 0xf3, 0xac, 0x53, 0x75, 0x0d, 0x15, 0x64,
+  0xff, 0xce, 0xd7, 0xba, 0xc5, 0x37, 0x50, 0xd1,
+  0x22, 0x4f, 0x85, 0x37, 0x50, 0xd1, 0x69, 0x4f,
+  0xfb, 0x5e, 0xeb, 0x14, 0xdd, 0x43, 0x44, 0xfb,
+  0x27, 0x59, 0xfb, 0x30, 0xc2, 0x7f, 0xf3, 0x99,
+  0xaf, 0x75, 0x8a, 0x6e, 0xa1, 0xa2, 0x84, 0x9f,
+  0x63, 0xd4, 0x28, 0x9d, 0x3e, 0x14, 0xdd, 0x43,
+  0x45, 0x1f, 0x3f, 0xff, 0x5f, 0x38, 0x5e, 0xae,
+  0xcf, 0xf4, 0x15, 0xaa, 0x80, 0xa9, 0xf3, 0x99,
+  0xaf, 0x72, 0xa2, 0xd2, 0xc9, 0xf8, 0x8c, 0x21,
+  0x57, 0x95, 0xe8, 0x86, 0x43, 0xd2, 0xed, 0x33,
+  0xa4, 0x6e, 0x89, 0x0e, 0x5a, 0x49, 0xda, 0x3b,
+  0xc4, 0x30, 0x80, 0x4f, 0x98, 0xc1, 0xa7, 0xf3,
+  0xac, 0x53, 0x75, 0x0d, 0x11, 0x14, 0xfd, 0x62,
+  0x9b, 0xa8, 0x68, 0x8a, 0xe7, 0xfb, 0x8e, 0xeb,
+  0x14, 0xdd, 0x43, 0x45, 0x71, 0x0e, 0x3f, 0xad,
+  0x35, 0x9e, 0xbc, 0x6e, 0x4e, 0x9f, 0xd7, 0xe1,
+  0x00, 0x3b, 0xa9, 0xd2, 0x6e, 0xbe, 0x7a, 0x75,
+  0x20, 0x9f, 0xfb, 0x7c, 0xff, 0x7f, 0x3d, 0xe0,
+  0x6c, 0xe9, 0xf5, 0xfb, 0x91, 0xb3, 0xa7, 0x66,
+  0xbe, 0xc1, 0xf5, 0x65, 0x12, 0x7c, 0x29, 0xba,
+  0x86, 0x8a, 0x7a, 0x38, 0xd4, 0x7d, 0xac, 0x25,
+  0xec, 0xd2, 0x7f, 0xf6, 0xbd, 0xdc, 0xff, 0x43,
+  0x5a, 0xa8, 0x0e, 0x87, 0x22, 0x0b, 0x93, 0x89,
+  0xce, 0xe6, 0xce, 0x9f, 0x2b, 0xc1, 0xdb, 0xce,
+  0x9e, 0x4d, 0xd4, 0x34, 0x56, 0x70, 0xd1, 0xe9,
+  0x89, 0x44, 0xfd, 0x43, 0x17, 0xef, 0xa9, 0xd3,
+  0x96, 0x8f, 0x1d, 0x3e, 0xc8, 0x3a, 0xfd, 0xe7,
+  0x4e, 0xef, 0x6a, 0x74, 0xfa, 0xda, 0xa3, 0xb0,
+  0x1d, 0x27, 0x5a, 0x37, 0x04, 0x8b, 0x05, 0xda,
+  0x39, 0xf2, 0xae, 0xa3, 0x93, 0xff, 0x3b, 0x5e,
+  0xeb, 0x14, 0xdd, 0x43, 0x44, 0x8b, 0x3f, 0x9d,
+  0x62, 0x9b, 0xa8, 0x68, 0xb2, 0x67, 0xf3, 0xac,
+  0x53, 0x75, 0x0d, 0x16, 0xc4, 0xeb, 0xad, 0x9d,
+  0x3e, 0x14, 0xdd, 0x43, 0x45, 0xb7, 0x27, 0x3c,
+  0xf2, 0xac, 0x6a, 0x7f, 0xdc, 0x6f, 0x1a, 0xdc,
+  0x33, 0x8b, 0xfa, 0x80, 0xe9, 0xf9, 0x7e, 0xfe,
+  0x7b, 0x61, 0xd3, 0xe1, 0x4d, 0xd4, 0x34, 0x5e,
+  0x13, 0xd9, 0xe2, 0xbc, 0x1d, 0x3f, 0xf2, 0xf5,
+  0x65, 0x2f, 0xcd, 0xff, 0x35, 0x3a, 0x7d, 0x7f,
+  0x03, 0x7a, 0x9d, 0x3e, 0x5e, 0xbd, 0xed, 0x4e,
+  0x9d, 0x95, 0x01, 0xd2, 0x73, 0x71, 0xa9, 0xc2,
+  0xd0, 0x9d, 0x65, 0xf4, 0x98, 0x60, 0x90, 0x08,
+  0xff, 0x29, 0xc9, 0x4c, 0xef, 0x5d, 0x27, 0x4f,
+  0x85, 0x37, 0x50, 0xd1, 0x7a, 0x4f, 0xfb, 0xfb,
+  0x97, 0xaf, 0x4c, 0xfa, 0x83, 0xa7, 0xd6, 0xcc,
+  0x6f, 0x27, 0x49, 0xdc, 0xa2, 0xd2, 0xc7, 0x3a,
+  0x98, 0x37, 0xa0, 0xc2, 0xb2, 0x29, 0xe8, 0x85,
+  0xad, 0xc7, 0xe2, 0x84, 0x9e, 0x8d, 0x2c, 0x57,
+  0x18, 0x98, 0x03, 0xbf, 0xc2, 0x17, 0xb8, 0xeb,
+  0x03, 0x19, 0xb4, 0xdd, 0xe0, 0xe9, 0xeb, 0xc6,
+  0xe4, 0xe9, 0xfd, 0x7e, 0x10, 0x03, 0xba, 0x9d,
+  0x26, 0xeb, 0xe7, 0xa7, 0x52, 0x09, 0xf0, 0xa6,
+  0xea, 0x1a, 0x22, 0x39, 0xff, 0xec, 0x77, 0x5a,
+  0xdb, 0x3f, 0x6d, 0xb8, 0x2b, 0x76, 0x3a, 0x7f,
+  0xcf, 0x5a, 0x06, 0xf3, 0x9f, 0x64, 0xe9, 0xff,
+  0xfe, 0x5c, 0x6f, 0xb2, 0xb8, 0xfd, 0xe7, 0x1e,
+  0xc5, 0xf8, 0x27, 0x4d, 0x43, 0x0a, 0x98, 0x21,
+  0x2a, 0x7f, 0xe7, 0xb9, 0x31, 0xe6, 0xb0, 0xb4,
+  0x38, 0x06, 0xb4, 0x22, 0xf3, 0xfa, 0xf8, 0xff,
+  0xbc, 0x6e, 0x4e, 0x9f, 0xff, 0x91, 0xc3, 0xbf,
+  0xf6, 0x5c, 0x2b, 0x9f, 0xe8, 0x0e, 0x8e, 0x31,
+  0x56, 0xdf, 0x1a, 0xd5, 0x65, 0xa8, 0x61, 0x4a,
+  0xd0, 0x9f, 0x6c, 0x24, 0xb2, 0xba, 0xd8, 0xd6,
+  0x7c, 0x29, 0xba, 0x86, 0x88, 0xba, 0x7d, 0x90,
+  0x75, 0xfb, 0xcb, 0x67, 0xb2, 0x4e, 0xb3, 0xe8,
+  0xd3, 0x08, 0x72, 0x63, 0x8f, 0x87, 0xb4, 0xff,
+  0xcc, 0xd7, 0xba, 0xc5, 0x37, 0x50, 0xd1, 0x33,
+  0x4e, 0xa5, 0x6a, 0x74, 0xe4, 0xf3, 0x0e, 0x9b,
+  0x89, 0xbb, 0x9d, 0x3f, 0x66, 0xe8, 0xb0, 0x34,
+  0x74, 0x37, 0x73, 0xcd, 0x68, 0x7e, 0x7c, 0x9b,
+  0x8f, 0x34, 0x74, 0xff, 0xcd, 0xfe, 0xcf, 0x93,
+  0xdc, 0xe6, 0xd0, 0xe9, 0xff, 0xfe, 0xef, 0x7e,
+  0x9f, 0xbe, 0x71, 0xdf, 0x0c, 0x2b, 0xc5, 0x68,
+  0x3a, 0x2d, 0x16, 0x38, 0x47, 0x9f, 0xff, 0x73,
+  0xef, 0xd1, 0x75, 0xf6, 0xe1, 0xc1, 0x08, 0x4a,
+  0x9e, 0x4d, 0xd4, 0x34, 0x59, 0xf3, 0xfe, 0xf6,
+  0x15, 0xfe, 0xca, 0xe6, 0xa7, 0x4f, 0xff, 0x78,
+  0x71, 0xbc, 0x2d, 0xb7, 0xee, 0xb7, 0xf3, 0xa7,
+  0x04, 0x21, 0x2a, 0x7f, 0xda, 0xfa, 0xfe, 0xd3,
+  0x9b, 0x12, 0x9c, 0x5e, 0x4f, 0xf2, 0xe3, 0xdc,
+  0xff, 0x75, 0xa3, 0xa7, 0xfb, 0xdf, 0xe7, 0xaf,
+  0x3d, 0xe6, 0xa7, 0x42, 0x27, 0xe2, 0x2b, 0x0c,
+  0x2b, 0xc1, 0xf0, 0x1b, 0x72, 0x96, 0xd8, 0xe6,
+  0x7f, 0x87, 0x43, 0x8f, 0x28, 0xa9, 0xd3, 0xff,
+  0xff, 0xf5, 0xd8, 0x2b, 0x77, 0xfe, 0x9d, 0x47,
+  0xeb, 0x78, 0x75, 0x7f, 0x74, 0x32, 0xd8, 0x74,
+  0xea, 0xad, 0x07, 0x4e, 0xe2, 0xbc, 0x1d, 0x0f,
+  0x46, 0x25, 0x61, 0x15, 0x91, 0xc9, 0xea, 0x41,
+  0xda, 0x1d, 0x3e, 0xc7, 0xd6, 0xc4, 0xc9, 0xff,
+  0x78, 0x5f, 0x63, 0x47, 0x7b, 0xc9, 0xa2, 0x0d,
+  0x71, 0xa5, 0x9f, 0x6a, 0x79, 0x8a, 0x74, 0xfc,
+  0xfc, 0x7f, 0x69, 0xc9, 0xd2, 0xb4, 0x3d, 0x3f,
+  0x92, 0xcf, 0xff, 0xfb, 0x43, 0x9b, 0xc6, 0x56,
+  0xff, 0x4e, 0x6c, 0x7d, 0x46, 0xb0, 0xe8, 0x7a,
+  0x68, 0x17, 0x0a, 0xff, 0x93, 0x4f, 0xc3, 0x7c,
+  0xd7, 0x0a, 0x74, 0xff, 0xfe, 0xef, 0xfb, 0xd3,
+  0x87, 0x5f, 0xee, 0x6b, 0xea, 0x71, 0xe0, 0x9d,
+  0x3f, 0xff, 0xd5, 0xaa, 0x8e, 0x55, 0xcc, 0xbc,
+  0xd7, 0xad, 0x75, 0xf6, 0x74, 0xf6, 0x2f, 0xcd,
+  0x8e, 0x8f, 0x22, 0x27, 0x0c, 0xd3, 0x31, 0xba,
+  0x34, 0x5f, 0x93, 0xff, 0x3f, 0x3d, 0xbd, 0xec,
+  0xce, 0x55, 0x87, 0x4f, 0xfd, 0xeb, 0xfd, 0xdd,
+  0x78, 0x3e, 0xac, 0x3a, 0x29, 0x44, 0x5d, 0x51,
+  0xa6, 0xf3, 0x47, 0x4e, 0xcf, 0xa8, 0x3a, 0x77,
+  0xd5, 0x0e, 0x8e, 0x07, 0x9c, 0xc1, 0x7f, 0x8e,
+  0xc2, 0xa6, 0xf3, 0xc9, 0x1d, 0xc2, 0xcf, 0x5c,
+  0xa7, 0xff, 0xfe, 0x6f, 0x5c, 0x79, 0x8e, 0x69,
+  0xfa, 0x3d, 0x71, 0xea, 0x6a, 0x9e, 0xa0, 0xe9,
+  0xe0, 0xed, 0xd4, 0xe9, 0xfe, 0x7b, 0x35, 0xf9,
+  0xaa, 0xf4, 0x3a, 0x14, 0xf6, 0xb4, 0x82, 0x7a,
+  0xeb, 0xef, 0x9d, 0x1f, 0x3c, 0x1e, 0xc8, 0x27,
+  0xba, 0xf7, 0xb5, 0x3a, 0x7f, 0xd9, 0xa8, 0x3d,
+  0x4d, 0x2f, 0xbc, 0x9d, 0x0a, 0x7c, 0xb6, 0x49,
+  0x33, 0x5d, 0x9d, 0x26, 0x1d, 0x14, 0x9a, 0x86,
+  0xe4, 0x62, 0x7f, 0xff, 0xd8, 0xf5, 0x39, 0xba,
+  0x72, 0x22, 0xb9, 0x07, 0x5f, 0xbf, 0x16, 0x74,
+  0xe0, 0x84, 0x25, 0x4f, 0x73, 0xce, 0xfc, 0xa7,
+  0x17, 0x93, 0xfe, 0xdc, 0x27, 0xb7, 0x85, 0x77,
+  0x07, 0x42, 0xa6, 0x44, 0x84, 0xfe, 0x84, 0x5e,
+  0x0c, 0xa7, 0xfe, 0xbf, 0xd3, 0x9b, 0x1f, 0x51,
+  0xac, 0x3a, 0x7d, 0x79, 0x7b, 0x30, 0x74, 0x29,
+  0xf5, 0xd5, 0x12, 0x60, 0x60, 0xe9, 0xfa, 0x86,
+  0x9f, 0xc6, 0x8d, 0x07, 0x4f, 0xee, 0x98, 0xbc,
+  0xe3, 0xd9, 0x3a, 0x6f, 0x09, 0xd0, 0xdd, 0xcf,
+  0xff, 0xc6, 0xb8, 0x35, 0x9f, 0xfb, 0x95, 0xe4,
+  0x57, 0x3e, 0x4f, 0x72, 0x74, 0xfd, 0x8e, 0xe8,
+  0x6b, 0x1e, 0x3a, 0x39, 0x3f, 0x6c, 0x22, 0xc9,
+  0xdc, 0x63, 0x3b, 0xe1, 0xb8, 0x0e, 0x2b, 0x45,
+  0x05, 0x3c, 0xc3, 0x62, 0xe5, 0x09, 0xf4, 0x65,
+  0xa6, 0x1f, 0x3e, 0x35, 0x6a, 0x38, 0x81, 0x35,
+  0x61, 0x66, 0x25, 0x36, 0x6a, 0x08, 0x23, 0x15,
+  0xfc, 0x22, 0x2b, 0x1b, 0x56, 0x61, 0x58, 0x12,
+  0x1e, 0x28, 0x4a, 0xf5, 0x85, 0x5c, 0x39, 0xb0,
+  0xb8, 0xc5, 0x3d, 0x12, 0x7f, 0xf3, 0x99, 0xaf,
+  0x75, 0x8a, 0x6e, 0xa1, 0xa2, 0x6c, 0x9f, 0xce,
+  0xb1, 0x4d, 0xd4, 0x34, 0x55, 0xb3, 0xf9, 0xef,
+  0xef, 0x3f, 0x57, 0x9d, 0x3d, 0x78, 0xdc, 0x9d,
+  0x26, 0xea, 0xcf, 0x53, 0xe6, 0x93, 0xe1, 0x4d,
+  0xd4, 0x34, 0x56, 0x93, 0xff, 0xc8, 0xa3, 0x60,
+  0xd6, 0x6b, 0xd7, 0xc8, 0x74, 0xff, 0xf3, 0xeb,
+  0x7f, 0x56, 0x6d, 0xe7, 0x2a, 0xc3, 0xa6, 0xce,
+  0x55, 0x12, 0xfa, 0x95, 0x3f, 0x95, 0xb7, 0x5c,
+  0xfd, 0x40, 0x74, 0xfd, 0x45, 0xe3, 0xd6, 0xc3,
+  0xa7, 0xfa, 0xdb, 0xfe, 0xa1, 0xa5, 0xf5, 0x3a,
+  0x7f, 0x3e, 0xf3, 0xbf, 0x07, 0x67, 0x49, 0xdc,
+  0x6a, 0x7e, 0x56, 0x59, 0xe8, 0x63, 0xe0, 0xb7,
+  0x4d, 0xbe, 0x5b, 0x93, 0xc9, 0xfc, 0xeb, 0x14,
+  0xdd, 0x43, 0x45, 0x81, 0x3e, 0x14, 0xdd, 0x43,
+  0x44, 0xeb, 0x3f, 0xff, 0xb0, 0xb4, 0x73, 0x6c,
+  0x75, 0x6b, 0x78, 0xf5, 0x7b, 0xa0, 0xe9, 0xf3,
+  0x99, 0xaf, 0x75, 0xa2, 0x55, 0xa3, 0x09, 0xf0,
+  0xa6, 0xea, 0x1a, 0x2d, 0x99, 0xff, 0x01, 0x6a,
+  0xec, 0x79, 0x34, 0x4e, 0x93, 0xac, 0xfb, 0x34,
+  0xc2, 0x79, 0x37, 0x50, 0xd1, 0x73, 0x49, 0x87,
+  0x4c, 0xeb, 0x13, 0x76, 0x12, 0xb9, 0xfc, 0xeb,
+  0x14, 0xdd, 0x43, 0x45, 0xdf, 0x3c, 0xee, 0x9c,
+  0x80, 0xe8, 0x56, 0xdb, 0x02, 0xeb, 0x0e, 0x14,
+  0x31, 0xa5, 0x4b, 0xd2, 0xa0, 0x45, 0xcd, 0x90,
+  0xd0, 0x04, 0x2b, 0x2a, 0xc3, 0x92, 0xbe, 0xa7,
+  0x73, 0xfe, 0xfe, 0xb9, 0x6b, 0x56, 0x6b, 0xce,
+  0x9f, 0xdf, 0xa2, 0xdb, 0xf2, 0xbd, 0x0e, 0x9f,
+  0x0a, 0x6e, 0xa1, 0xa2, 0x57, 0x9f, 0xf7, 0xf4,
+  0x3c, 0xe1, 0x68, 0xb0, 0x9d, 0x3d, 0xde, 0x8b,
+  0xce, 0x9f, 0xff, 0xde, 0xce, 0xb3, 0x7e, 0x0c,
+  0x07, 0x7f, 0x42, 0x7a, 0x83, 0xa3, 0x94, 0x41,
+  0xe9, 0x0c, 0x72, 0x8e, 0x5c, 0x43, 0x0a, 0x76,
+  0xbd, 0xca, 0x9b, 0xb5, 0x9c, 0x56, 0x31, 0x59,
+  0xd9, 0x5e, 0x4a, 0x9f, 0xfd, 0x8d, 0xf6, 0x55,
+  0xfe, 0x1a, 0x3b, 0x01, 0x53, 0xfb, 0x51, 0xdc,
+  0x8b, 0x72, 0xe5, 0x3e, 0x7a, 0x8e, 0x49, 0xc8,
+  0xaa, 0xb9, 0x91, 0xd9, 0xb6, 0x85, 0x6c, 0xff,
+  0xe7, 0x33, 0x5e, 0xeb, 0x14, 0xdd, 0x43, 0x44,
+  0xc3, 0x3f, 0xff, 0x5b, 0xba, 0x8e, 0x81, 0xdd,
+  0x32, 0xf0, 0xad, 0x5e, 0x74, 0xff, 0xcd, 0xd5,
+  0xd2, 0xfe, 0xf7, 0x3f, 0x57, 0x9d, 0x3f, 0x97,
+  0x68, 0xcf, 0x4d, 0x13, 0xa7, 0xda, 0x2f, 0xd6,
+  0x1d, 0x1f, 0x3d, 0x8e, 0xcc, 0xe7, 0xe6, 0x2d,
+  0xff, 0x3c, 0x47, 0x4f, 0x96, 0xff, 0x9e, 0x23,
+  0xa7, 0xec, 0x7b, 0x35, 0xda, 0x78, 0x1e, 0xc3,
+  0x0b, 0xe7, 0xff, 0xfd, 0xfb, 0x0b, 0x7e, 0x6f,
+  0x1c, 0x3f, 0x74, 0x7a, 0xff, 0x4b, 0xea, 0x74,
+  0xfc, 0xdb, 0xae, 0x7e, 0xa0, 0x3a, 0x7f, 0xf2,
+  0xe4, 0x0a, 0xfb, 0xa7, 0x34, 0x76, 0x13, 0xa1,
+  0x4f, 0xf7, 0xc6, 0x33, 0xf5, 0x7d, 0xd1, 0x9b,
+  0x93, 0xa7, 0xff, 0xfc, 0x36, 0xd9, 0x7f, 0x9e,
+  0x1d, 0x7e, 0xb8, 0xdf, 0x65, 0x73, 0x53, 0xa5,
+  0x74, 0xa2, 0x7c, 0x4b, 0xe7, 0xbe, 0xa0, 0xea,
+  0x74, 0xf6, 0xf5, 0xe6, 0xce, 0x93, 0xb8, 0xd5,
+  0x70, 0x7c, 0xc2, 0x89, 0x1e, 0xda, 0x48, 0xc4,
+  0x3c, 0x3f, 0x0c, 0x0c, 0x94, 0x76, 0x47, 0x3e,
+  0x14, 0xdd, 0x43, 0x45, 0x5d, 0x3f, 0xcf, 0x75,
+  0x8a, 0x6e, 0xa1, 0xa2, 0x3c, 0x93, 0xac, 0xfc,
+  0x74, 0xc2, 0x7f, 0x3a, 0xc5, 0x37, 0x50, 0xd1,
+  0x60, 0xcf, 0xe7, 0x58, 0xa6, 0xea, 0x1a, 0x2c,
+  0xa9, 0xfc, 0xeb, 0x14, 0xdd, 0x43, 0x45, 0xa7,
+  0x3c, 0x9b, 0xa8, 0x68, 0xb7, 0x27, 0xfe, 0x5b,
+  0x1b, 0xff, 0x0c, 0x5d, 0x21, 0x3a, 0x04, 0xfb,
+  0xea, 0x57, 0x3f, 0xcb, 0xfe, 0xd8, 0xb5, 0xcf,
+  0x8e, 0x9f, 0xf6, 0xbd, 0xd6, 0x29, 0xba, 0x86,
+  0x8a, 0x1e, 0x7f, 0xe6, 0x6f, 0x2b, 0xce, 0x3d,
+  0xff, 0x30, 0xe9, 0xfa, 0xbb, 0x4d, 0x73, 0xe3,
+  0xa7, 0xef, 0xf1, 0xb6, 0x2b, 0x53, 0xa7, 0xff,
+  0xeb, 0xe7, 0x0b, 0xd5, 0xd9, 0xfe, 0x82, 0xb5,
+  0x50, 0x15, 0x27, 0x5a, 0x74, 0x3e, 0x21, 0x61,
+  0xce, 0xa3, 0x65, 0x1b, 0xb2, 0xee, 0x23, 0x09,
+  0xfc, 0xeb, 0x14, 0xdd, 0x43, 0x45, 0xe7, 0x0a,
+  0xc9, 0x06, 0x7a, 0x27, 0x2a, 0x57, 0x2f, 0x86,
+  0x98, 0xc0, 0x04, 0x99, 0x87, 0x78, 0x3b, 0xfc,
+  0xa4, 0xb6, 0xcd, 0xb3, 0xf9, 0xd6, 0x29, 0xba,
+  0x86, 0x8a, 0x5a, 0x7f, 0x3a, 0xc5, 0x37, 0x50,
+  0xd1, 0x61, 0x4f, 0xe7, 0x58, 0xa6, 0xea, 0x1a,
+  0x2c, 0xb9, 0xe7, 0x74, 0x6e, 0x3b, 0x76, 0x3a,
+  0x73, 0xba, 0xb0, 0xe9, 0xe4, 0x72, 0xd5, 0x0f,
+  0x43, 0xb3, 0x29, 0xff, 0xce, 0x66, 0xbd, 0xd6,
+  0x29, 0xba, 0x86, 0x8a, 0x32, 0x7f, 0x39, 0x5b,
+  0x28, 0xa8, 0x0e, 0x87, 0xa7, 0x7a, 0x27, 0x6c,
+  0x3b, 0xd8, 0x45, 0xd4, 0xe3, 0x2a, 0x53, 0xff,
+  0x3b, 0x5e, 0xeb, 0x14, 0xdd, 0x43, 0x44, 0x73,
+  0x3f, 0xf9, 0xcc, 0xd7, 0xba, 0xc5, 0x37, 0x50,
+  0xd1, 0x39, 0x4f, 0xe7, 0x58, 0xa6, 0xea, 0x1a,
+  0x2c, 0xc9, 0xff, 0x9c, 0xa0, 0x15, 0xce, 0x36,
+  0x97, 0x9d, 0x3f, 0x9d, 0x62, 0x9b, 0xa8, 0x68,
+  0xb7, 0x67, 0xff, 0x39, 0x9a, 0xf7, 0x58, 0xa6,
+  0xea, 0x1a, 0x29, 0x09, 0xff, 0x9d, 0xaf, 0x75,
+  0x8a, 0x6e, 0xa1, 0xa2, 0x52, 0x8a, 0x13, 0xf5,
+  0x69, 0x31, 0x8a, 0x40, 0x3b, 0xfa, 0x1e, 0x4e,
+  0xdb, 0xd4, 0xa7, 0xfd, 0xaf, 0x75, 0x8a, 0x6e,
+  0xa1, 0xa2, 0x76, 0x9f, 0xff, 0x7b, 0x9e, 0xd8,
+  0xad, 0xfb, 0xcf, 0xd7, 0xf6, 0x87, 0x49, 0xcc,
+  0x44, 0xfe, 0xa3, 0x4f, 0xfd, 0xac, 0xc5, 0xa6,
+  0xe1, 0x7a, 0xbc, 0xe9, 0xff, 0xbf, 0x78, 0xda,
+  0x2e, 0xbf, 0xda, 0x4e, 0x9b, 0x89, 0xdc, 0xa2,
+  0x1e, 0xa8, 0x70, 0xc4, 0x71, 0x71, 0x42, 0xbe,
+  0x7c, 0x29, 0xba, 0x86, 0x88, 0xb2, 0x7f, 0xda,
+  0xf7, 0x58, 0xa6, 0xea, 0x1a, 0x25, 0xd9, 0xff,
+  0xfa, 0xf9, 0xc2, 0xf5, 0x76, 0x7f, 0xa0, 0xad,
+  0x54, 0x05, 0x49, 0xd6, 0x8d, 0x36, 0x18, 0x71,
+  0x23, 0x4f, 0xfe, 0x73, 0x35, 0xee, 0xb1, 0x4d,
+  0xd4, 0x34, 0x4c, 0x53, 0xf5, 0x8a, 0x6e, 0xa1,
+  0xa2, 0xa9, 0x9f, 0xff, 0xfc, 0x3b, 0x8a, 0x5f,
+  0x79, 0x76, 0x36, 0xa3, 0xe0, 0xe7, 0x1e, 0x17,
+  0x9d, 0x0e, 0x45, 0x66, 0x9a, 0xcf, 0xfe, 0x73,
+  0x35, 0xee, 0xb1, 0x4d, 0xd4, 0x34, 0x4e, 0x93,
+  0xfb, 0xda, 0x2a, 0xfd, 0x6c, 0x74, 0xf9, 0xa5,
+  0x69, 0x6a, 0x74, 0xfc, 0x1b, 0xf3, 0x6b, 0xf9,
+  0xd3, 0xde, 0xc2, 0xbb, 0xc7, 0xad, 0x52, 0x89,
+  0xff, 0xbb, 0xae, 0x56, 0x97, 0x76, 0xd7, 0x98,
+  0x74, 0x31, 0x10, 0x58, 0x39, 0x9f, 0xf6, 0xbd,
+  0xd6, 0x29, 0xba, 0x86, 0x89, 0xde, 0x7d, 0x9e,
+  0xf5, 0x9e, 0x2a, 0x4e, 0xe5, 0x39, 0xbb, 0x8c,
+  0x29, 0x84, 0x7a, 0x8d, 0x3f, 0xf9, 0xcc, 0xd7,
+  0xba, 0xc5, 0x37, 0x50, 0xd1, 0x42, 0xcf, 0xfe,
+  0x73, 0x35, 0xee, 0xb1, 0x4d, 0xd4, 0x34, 0x52,
+  0x53, 0xff, 0xfa, 0xea, 0xee, 0xb6, 0xd6, 0x35,
+  0x99, 0xc2, 0xe7, 0xb6, 0x1d, 0x14, 0x2e, 0x4b,
+  0x3c, 0xe1, 0x21, 0xfc, 0x24, 0x4c, 0x8f, 0xb4,
+  0x09, 0x3d, 0xa9, 0x71, 0x29, 0x4f, 0xe7, 0x58,
+  0xa6, 0xea, 0x1a, 0x22, 0x49, 0xff, 0xce, 0x66,
+  0xbd, 0xd6, 0x29, 0xba, 0x86, 0x89, 0x7a, 0x7f,
+  0xf0, 0xeb, 0x55, 0x56, 0xdb, 0x85, 0xa5, 0xa3,
+  0xa7, 0xfb, 0xdb, 0xfe, 0xf2, 0xd2, 0xf4, 0x3a,
+  0x7c, 0x29, 0xba, 0x86, 0x8a, 0x5e, 0x7f, 0xf5,
+  0xbd, 0x41, 0x51, 0x5a, 0x5f, 0xe6, 0x1d, 0x3e,
+  0x6f, 0xf3, 0x16, 0xa7, 0x4f, 0xb5, 0xb5, 0x8d,
+  0x4e, 0x92, 0xf2, 0x7a, 0x2c, 0x2a, 0x93, 0x95,
+  0x37, 0xae, 0x53, 0x2c, 0xf1, 0xa3, 0x0c, 0xc2,
+  0x6a, 0x7f, 0x3a, 0xc5, 0x37, 0x50, 0xd1, 0x4e,
+  0x4f, 0xfb, 0xc3, 0xb5, 0xc5, 0xdf, 0xd0, 0xe9,
+  0xff, 0x5e, 0x14, 0x6d, 0xc1, 0x08, 0x4a, 0x9b,
+  0xc1, 0x3a, 0x6a, 0x1d, 0xca, 0x23, 0x78, 0x8e,
+  0xdb, 0xcf, 0x27, 0xc2, 0x9b, 0xa8, 0x68, 0xaf,
+  0x27, 0xff, 0xeb, 0xe7, 0x0b, 0xd5, 0xd9, 0xfe,
+  0x82, 0xb5, 0x50, 0x15, 0x27, 0x5a, 0x23, 0x78,
+  0x8c, 0x27, 0xfe, 0x76, 0xbd, 0xd6, 0x29, 0xba,
+  0x86, 0x89, 0x1e, 0x77, 0x80, 0xa7, 0x4e, 0x4b,
+  0x61, 0x4e, 0x2e, 0xe7, 0xc2, 0x9b, 0xa8, 0x68,
+  0x92, 0x27, 0x9d, 0xaf, 0x72, 0x9e, 0xcd, 0x94,
+  0xcf, 0xfc, 0xed, 0x7b, 0xac, 0x53, 0x75, 0x0d,
+  0x12, 0x54, 0xf8, 0x53, 0x75, 0x0d, 0x17, 0x8c,
+  0xfd, 0xdf, 0xe9, 0xda, 0x6a, 0x74, 0xfa, 0xb5,
+  0xcd, 0xa1, 0xd3, 0xfc, 0xf7, 0x58, 0xa6, 0xea,
+  0x1a, 0x24, 0xd9, 0x3a, 0xd1, 0x8f, 0x49, 0x80,
+  0x98, 0x69, 0x34, 0x2a, 0xf3, 0x65, 0x07, 0x6f,
+  0x8f, 0x33, 0x95, 0x6f, 0x43, 0x21, 0xa8, 0x68,
+  0xb0, 0xaf, 0x10, 0xc0, 0xc9, 0xbf, 0x71, 0x89,
+  0xc2, 0xc7, 0x01, 0x99, 0x44, 0x75, 0xcf, 0x8f,
+  0x27, 0x99, 0x43, 0x57, 0x6e, 0xe6, 0xba, 0x4a,
+  0x59, 0x4b, 0x40, 0x75, 0x4c, 0xf6, 0xaf, 0xa7,
+  0x4b, 0x38, 0xf1, 0xdb, 0x35, 0x4f, 0xb3, 0x1a,
+  0x4e, 0x1b, 0x31, 0x1f, 0x9f, 0x89, 0xda, 0x8d,
+  0xac, 0x2a, 0x81, 0x2c, 0x5d, 0xb9, 0x85, 0x8f,
+  0xe7, 0xbc, 0x6b, 0x49, 0x5f, 0xcd, 0x76, 0xe7,
+  0xdd, 0x31, 0xad, 0xb4, 0xa6, 0x10, 0xca, 0x50,
+  0xe2, 0x8f, 0xaf, 0xac, 0xec, 0xa3, 0x7c, 0xf7,
+  0x74, 0x00,
 };
 
-static const unsigned kPreloadedHSTSBits = 97871;
+static const unsigned kPreloadedHSTSBits = 100424;
 
-static const unsigned kHSTSRootPosition = 97293;
+static const unsigned kHSTSRootPosition = 99844;
 
 #endif // NET_HTTP_TRANSPORT_SECURITY_STATE_STATIC_H_
diff --git a/net/http/transport_security_state_static.json b/net/http/transport_security_state_static.json
index 59eb9f7..cc830c0 100644
--- a/net/http/transport_security_state_static.json
+++ b/net/http/transport_security_state_static.json
@@ -1524,7 +1524,47 @@
     { "name": "webandwords.com.au", "include_subdomains": true, "mode": "force-https" },
     { "name": "webtiles.co.uk", "include_subdomains": true, "mode": "force-https" },
     { "name": "yoursecondphone.co", "include_subdomains": true, "mode": "force-https" },
-    { "name": "zlavomat.sk", "include_subdomains": true, "mode": "force-https" }
+    { "name": "zlavomat.sk", "include_subdomains": true, "mode": "force-https" },
+    { "name": "alainwolf.net", "include_subdomains": true, "mode": "force-https" },
+    { "name": "arguggi.co.uk", "include_subdomains": true, "mode": "force-https" },
+    { "name": "azabani.com", "include_subdomains": true, "mode": "force-https" },
+    { "name": "bitmon.net", "include_subdomains": true, "mode": "force-https" },
+    { "name": "bjornjohansen.no", "include_subdomains": true, "mode": "force-https" },
+    { "name": "bookingapp.nl", "include_subdomains": true, "mode": "force-https" },
+    { "name": "cackette.com", "include_subdomains": true, "mode": "force-https" },
+    { "name": "caremad.io", "include_subdomains": true, "mode": "force-https" },
+    { "name": "clerkendweller.uk", "include_subdomains": true, "mode": "force-https" },
+    { "name": "cyon.ch", "include_subdomains": true, "mode": "force-https" },
+    { "name": "fakturoid.cz", "include_subdomains": true, "mode": "force-https" },
+    { "name": "finn.io", "include_subdomains": true, "mode": "force-https" },
+    { "name": "fm83.nl", "include_subdomains": true, "mode": "force-https" },
+    { "name": "grandmascookieblog.com", "include_subdomains": true, "mode": "force-https" },
+    { "name": "khanovaskola.cz", "include_subdomains": true, "mode": "force-https" },
+    { "name": "ki-on.net", "include_subdomains": true, "mode": "force-https" },
+    { "name": "kingmanhall.org", "include_subdomains": true, "mode": "force-https" },
+    { "name": "kpebetka.net", "include_subdomains": true, "mode": "force-https" },
+    { "name": "mirindadomo.ru", "include_subdomains": true, "mode": "force-https" },
+    { "name": "myvirtualserver.com", "include_subdomains": true, "mode": "force-https" },
+    { "name": "neftaly.com", "include_subdomains": true, "mode": "force-https" },
+    { "name": "nu3.at", "include_subdomains": true, "mode": "force-https" },
+    { "name": "nu3.ch", "include_subdomains": true, "mode": "force-https" },
+    { "name": "nu3.co.uk", "include_subdomains": true, "mode": "force-https" },
+    { "name": "nu3.com", "include_subdomains": true, "mode": "force-https" },
+    { "name": "nu3.de", "include_subdomains": true, "mode": "force-https" },
+    { "name": "nu3.dk", "include_subdomains": true, "mode": "force-https" },
+    { "name": "nu3.fi", "include_subdomains": true, "mode": "force-https" },
+    { "name": "nu3.fr", "include_subdomains": true, "mode": "force-https" },
+    { "name": "nu3.no", "include_subdomains": true, "mode": "force-https" },
+    { "name": "nu3.se", "include_subdomains": true, "mode": "force-https" },
+    { "name": "ovenapp.io", "include_subdomains": true, "mode": "force-https" },
+    { "name": "ruudkoot.nl", "include_subdomains": true, "mode": "force-https" },
+    { "name": "seomobo.com", "include_subdomains": true, "mode": "force-https" },
+    { "name": "seowarp.net", "include_subdomains": true, "mode": "force-https" },
+    { "name": "shenyuqi.com", "include_subdomains": true, "mode": "force-https" },
+    { "name": "souvik.me", "include_subdomains": true, "mode": "force-https" },
+    { "name": "topodin.com", "include_subdomains": true, "mode": "force-https" },
+    { "name": "wpletter.de", "include_subdomains": true, "mode": "force-https" },
+    { "name": "yahvehyireh.com", "include_subdomains": true, "mode": "force-https" }
   ],
 
   // |ReportUMAOnPinFailure| uses these to report which domain was associated
diff --git a/net/net.gyp b/net/net.gyp
index da91a92..5ddf430 100644
--- a/net/net.gyp
+++ b/net/net.gyp
@@ -1570,6 +1570,7 @@
             '../base/base.gyp:base',
             'cert_verify_status_android_java',
             'certificate_mime_types_java',
+            'network_change_notifier_types_java',
             'net_errors_java',
             'private_key_types_java',
             'remote_android_keystore_aidl',
@@ -1640,6 +1641,14 @@
           'includes': [ '../build/android/java_cpp_enum.gypi' ],
         },
         {
+          'target_name': 'network_change_notifier_types_java',
+          'type': 'none',
+          'variables': {
+            'source_file': 'base/network_change_notifier.h',
+          },
+          'includes': [ '../build/android/java_cpp_enum.gypi' ],
+        },
+        {
           'target_name': 'private_key_types_java',
           'type': 'none',
           'variables': {
diff --git a/net/net.gypi b/net/net.gypi
index cc9ff35..89a0503 100644
--- a/net/net.gypi
+++ b/net/net.gypi
@@ -64,6 +64,8 @@
       'cert/cert_database.cc',
       'cert/cert_database.h',
       'cert/cert_database_openssl.cc',
+      'cert/cert_policy_enforcer.cc',
+      'cert/cert_policy_enforcer.h',
       'cert/cert_status_flags.cc',
       'cert/cert_status_flags.h',
       'cert/cert_verifier.cc',
@@ -1297,6 +1299,7 @@
       'base/upload_bytes_element_reader_unittest.cc',
       'base/upload_file_element_reader_unittest.cc',
       'base/url_util_unittest.cc',
+      'cert/cert_policy_enforcer_unittest.cc',
       'cert/cert_verify_proc_unittest.cc',
       'cert/crl_set_unittest.cc',
       'cert/ct_log_response_parser_unittest.cc',
diff --git a/net/net_unittests.isolate b/net/net_unittests.isolate
index e57f957..e062a7d 100644
--- a/net/net_unittests.isolate
+++ b/net/net_unittests.isolate
@@ -26,7 +26,7 @@
           '../third_party/pywebsocket/',
           '../third_party/tlslite/',
           '<(PRODUCT_DIR)/net_unittests<(EXECUTABLE_SUFFIX)',
-          '<(PRODUCT_DIR)/pyproto/',
+          '<(PRODUCT_DIR)/pyproto/google/',
           'tools/testserver/',
         ],
         'read_only': 1,
diff --git a/net/proxy/dhcp_proxy_script_fetcher_win_unittest.cc b/net/proxy/dhcp_proxy_script_fetcher_win_unittest.cc
index c3368ac..d9c4356 100644
--- a/net/proxy/dhcp_proxy_script_fetcher_win_unittest.cc
+++ b/net/proxy/dhcp_proxy_script_fetcher_win_unittest.cc
@@ -36,11 +36,7 @@
        it != adapter_names.end();
        ++it) {
     const std::string& adapter_name = *it;
-    std::string pac_url =
-        DhcpProxyScriptAdapterFetcher::GetPacURLFromDhcp(adapter_name);
-    printf("Adapter '%s' has PAC URL '%s' configured in DHCP.\n",
-           adapter_name.c_str(),
-           pac_url.c_str());
+    DhcpProxyScriptAdapterFetcher::GetPacURLFromDhcp(adapter_name);
   }
 }
 
@@ -84,11 +80,9 @@
       FAIL() << "Received completion for test in which this is error.";
     }
     finished_ = true;
-    printf("Result code %d PAC data length %d\n", result, pac_text_.size());
   }
 
   void OnTimeout() {
-    printf("Timeout!");
     OnCompletion(0);
   }
 
@@ -134,8 +128,7 @@
   fetcher.RunTest();
 
   fetcher.WaitUntilDone();
-  printf("PAC URL was %s\n",
-      fetcher.fetcher_->GetPacURL().possibly_invalid_spec().c_str());
+  fetcher.fetcher_->GetPacURL().possibly_invalid_spec();
 
   fetcher.FinishTestAllowCleanup();
 }
diff --git a/net/proxy/proxy_resolver_v8_tracing.cc b/net/proxy/proxy_resolver_v8_tracing.cc
index 17145d1..c498f74 100644
--- a/net/proxy/proxy_resolver_v8_tracing.cc
+++ b/net/proxy/proxy_resolver_v8_tracing.cc
@@ -6,6 +6,7 @@
 
 #include "base/bind.h"
 #include "base/message_loop/message_loop_proxy.h"
+#include "base/profiler/scoped_tracker.h"
 #include "base/strings/stringprintf.h"
 #include "base/synchronization/cancellation_flag.h"
 #include "base/synchronization/waitable_event.h"
@@ -717,6 +718,11 @@
 }
 
 void ProxyResolverV8Tracing::Job::OnDnsOperationComplete(int result) {
+  // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+  tracked_objects::ScopedTracker tracking_profile(
+      FROM_HERE_WITH_EXPLICIT_FUNCTION(
+          "436634 ProxyResolverV8Tracing::Job::OnDnsOperationComplete"));
+
   CheckIsOnOriginThread();
 
   DCHECK(!cancelled_.IsSet());
diff --git a/net/quic/congestion_control/cube_root.cc b/net/quic/congestion_control/cube_root.cc
index c563ad9..191cccc 100644
--- a/net/quic/congestion_control/cube_root.cc
+++ b/net/quic/congestion_control/cube_root.cc
@@ -64,7 +64,7 @@
 
   if (msb < 7) {
     // MSB in our table.
-    return ((cube_root_table[static_cast<uint32>(a)]) + 31) >> 6;
+    return ((cube_root_table[a]) + 31) >> 6;
   }
   // MSB          7,  8,  9, 10, 11, 12, 13, 14, 15, 16, ...
   // cubic_shift  1,  1,  1,  2,  2,  2,  3,  3,  3,  4, ...
@@ -72,9 +72,8 @@
   cubic_shift = ((cubic_shift * 342) >> 10);  // Div by 3, biased high.
 
   // 4 to 6 bits accuracy depending on MSB.
-  uint32 down_shifted_to_6bit = (a >> (cubic_shift * 3));
-  uint64 root = ((cube_root_table[down_shifted_to_6bit] + 10) << cubic_shift)
-      >> 6;
+  uint64 root =
+      ((cube_root_table[a >> (cubic_shift * 3)] + 10) << cubic_shift) >> 6;
 
   // Make one Newton-Raphson iteration.
   // Since x has an error (inaccuracy due to the use of fix point) we get a
diff --git a/net/quic/congestion_control/cubic.cc b/net/quic/congestion_control/cubic.cc
index eaec621..55ce803 100644
--- a/net/quic/congestion_control/cubic.cc
+++ b/net/quic/congestion_control/cubic.cc
@@ -161,8 +161,8 @@
   // suddenly, leading to more than one iteration through the following loop.
   while (true) {
     // Update estimated TCP congestion_window.
-    uint32 required_ack_count =
-        estimated_tcp_congestion_window_ / Alpha();
+    QuicPacketCount required_ack_count = static_cast<QuicPacketCount>(
+        estimated_tcp_congestion_window_ / Alpha());
     if (acked_packets_count_ < required_ack_count) {
       break;
     }
diff --git a/net/quic/congestion_control/cubic.h b/net/quic/congestion_control/cubic.h
index fd53533..76faf56 100644
--- a/net/quic/congestion_control/cubic.h
+++ b/net/quic/congestion_control/cubic.h
@@ -71,7 +71,7 @@
   QuicPacketCount last_max_congestion_window_;
 
   // Number of acked packets since the cycle started (epoch).
-  uint32 acked_packets_count_;
+  QuicPacketCount acked_packets_count_;
 
   // TCP Reno equivalent congestion window in packets.
   QuicPacketCount estimated_tcp_congestion_window_;
diff --git a/net/quic/congestion_control/cubic_test.cc b/net/quic/congestion_control/cubic_test.cc
index 915274a..0b99b0a 100644
--- a/net/quic/congestion_control/cubic_test.cc
+++ b/net/quic/congestion_control/cubic_test.cc
@@ -35,8 +35,8 @@
 TEST_F(CubicTest, AboveOrigin) {
   // Convex growth.
   const QuicTime::Delta rtt_min = hundred_ms_;
-  uint32 current_cwnd = 10;
-  uint32 expected_cwnd = current_cwnd + 1;
+  QuicPacketCount current_cwnd = 10;
+  QuicPacketCount expected_cwnd = current_cwnd + 1;
   // Initialize the state.
   clock_.AdvanceTime(one_ms_);
   EXPECT_EQ(expected_cwnd,
@@ -44,7 +44,7 @@
   current_cwnd = expected_cwnd;
   // Normal TCP phase.
   for (int i = 0; i < 48; ++i) {
-    for (uint32 n = 1; n < current_cwnd / kNConnectionAlpha; ++n) {
+    for (QuicPacketCount n = 1; n < current_cwnd / kNConnectionAlpha; ++n) {
       // Call once per ACK.
       EXPECT_NEAR(current_cwnd,
                   cubic_.CongestionWindowAfterAck(current_cwnd, rtt_min), 1);
@@ -56,7 +56,7 @@
   }
   // Cubic phase.
   for (int i = 0; i < 52; ++i) {
-    for (uint32 n = 1; n < current_cwnd; ++n) {
+    for (QuicPacketCount n = 1; n < current_cwnd; ++n) {
       // Call once per ACK.
       EXPECT_EQ(current_cwnd,
                 cubic_.CongestionWindowAfterAck(current_cwnd, rtt_min));
@@ -74,15 +74,15 @@
 
 TEST_F(CubicTest, CwndIncreaseStatsDuringConvexRegion) {
   const QuicTime::Delta rtt_min = hundred_ms_;
-  uint32 current_cwnd = 10;
-  uint32 expected_cwnd = current_cwnd + 1;
+  QuicPacketCount current_cwnd = 10;
+  QuicPacketCount expected_cwnd = current_cwnd + 1;
   // Initialize controller state.
   clock_.AdvanceTime(one_ms_);
   expected_cwnd = cubic_.CongestionWindowAfterAck(current_cwnd, rtt_min);
   current_cwnd = expected_cwnd;
   // Testing Reno mode increase.
   for (int i = 0; i < 48; ++i) {
-    for (uint32 n = 1; n < current_cwnd / kNConnectionAlpha; ++n) {
+    for (QuicPacketCount n = 1; n < current_cwnd / kNConnectionAlpha; ++n) {
       // Call once per ACK, causing cwnd growth in Reno mode.
       cubic_.CongestionWindowAfterAck(current_cwnd, rtt_min);
     }
@@ -94,13 +94,13 @@
     EXPECT_NEAR(1u, stats_.cwnd_increase_cubic_mode, 1);
     expected_cwnd++;
   }
-  uint32 old_cwnd = current_cwnd;
+  QuicPacketCount old_cwnd = current_cwnd;
   stats_.cwnd_increase_cubic_mode = 0;
   stats_.cwnd_increase_congestion_avoidance = 0;
 
   // Testing Cubic mode increase.
   for (int i = 0; i < 52; ++i) {
-    for (uint32 n = 1; n < current_cwnd; ++n) {
+    for (QuicPacketCount n = 1; n < current_cwnd; ++n) {
       // Call once per ACK.
       cubic_.CongestionWindowAfterAck(current_cwnd, rtt_min);
     }
@@ -120,16 +120,16 @@
 
 TEST_F(CubicTest, LossEvents) {
   const QuicTime::Delta rtt_min = hundred_ms_;
-  uint32 current_cwnd = 422;
-  uint32 expected_cwnd = current_cwnd + 1;
+  QuicPacketCount current_cwnd = 422;
+  QuicPacketCount expected_cwnd = current_cwnd + 1;
   // Initialize the state.
   clock_.AdvanceTime(one_ms_);
   EXPECT_EQ(expected_cwnd,
             cubic_.CongestionWindowAfterAck(current_cwnd, rtt_min));
-  expected_cwnd = static_cast<int>(current_cwnd * kNConnectionBeta);
+  expected_cwnd = static_cast<QuicPacketCount>(current_cwnd * kNConnectionBeta);
   EXPECT_EQ(expected_cwnd,
             cubic_.CongestionWindowAfterPacketLoss(current_cwnd));
-  expected_cwnd = static_cast<int>(current_cwnd * kNConnectionBeta);
+  expected_cwnd = static_cast<QuicPacketCount>(current_cwnd * kNConnectionBeta);
   EXPECT_EQ(expected_cwnd,
             cubic_.CongestionWindowAfterPacketLoss(current_cwnd));
 }
@@ -137,19 +137,19 @@
 TEST_F(CubicTest, BelowOrigin) {
   // Concave growth.
   const QuicTime::Delta rtt_min = hundred_ms_;
-  uint32 current_cwnd = 422;
-  uint32 expected_cwnd = current_cwnd + 1;
+  QuicPacketCount current_cwnd = 422;
+  QuicPacketCount expected_cwnd = current_cwnd + 1;
   // Initialize the state.
   clock_.AdvanceTime(one_ms_);
   EXPECT_EQ(expected_cwnd,
             cubic_.CongestionWindowAfterAck(current_cwnd, rtt_min));
-  expected_cwnd = static_cast<int>(current_cwnd * kNConnectionBeta);
+  expected_cwnd = static_cast<QuicPacketCount>(current_cwnd * kNConnectionBeta);
   EXPECT_EQ(expected_cwnd,
             cubic_.CongestionWindowAfterPacketLoss(current_cwnd));
   current_cwnd = expected_cwnd;
   // First update after loss to initialize the epoch.
   current_cwnd = cubic_.CongestionWindowAfterAck(current_cwnd, rtt_min);
-  uint32 old_cwnd =  current_cwnd;
+  QuicPacketCount old_cwnd = current_cwnd;
   // Cubic phase.
   stats_.cwnd_increase_cubic_mode = 0;
   stats_.cwnd_increase_congestion_avoidance = 0;
diff --git a/net/quic/congestion_control/pacing_sender.cc b/net/quic/congestion_control/pacing_sender.cc
index 7e9f81a..447890b 100644
--- a/net/quic/congestion_control/pacing_sender.cc
+++ b/net/quic/congestion_control/pacing_sender.cc
@@ -27,9 +27,9 @@
   sender_->SetFromConfig(config, is_server, using_pacing);
 }
 
-void PacingSender::ResumeConnectionState(
+bool PacingSender::ResumeConnectionState(
     const CachedNetworkParameters& cached_network_params) {
-  sender_->ResumeConnectionState(cached_network_params);
+  return sender_->ResumeConnectionState(cached_network_params);
 }
 
 void PacingSender::SetNumEmulatedConnections(int num_connections) {
diff --git a/net/quic/congestion_control/pacing_sender.h b/net/quic/congestion_control/pacing_sender.h
index d7d3b2d..854b052 100644
--- a/net/quic/congestion_control/pacing_sender.h
+++ b/net/quic/congestion_control/pacing_sender.h
@@ -39,7 +39,7 @@
   void SetFromConfig(const QuicConfig& config,
                      bool is_server,
                      bool using_pacing) override;
-  void ResumeConnectionState(
+  bool ResumeConnectionState(
       const CachedNetworkParameters& cached_network_params) override;
   void SetNumEmulatedConnections(int num_connections) override;
   void OnCongestionEvent(bool rtt_updated,
diff --git a/net/quic/congestion_control/rtt_stats.cc b/net/quic/congestion_control/rtt_stats.cc
index 32e3b58..6c2687d 100644
--- a/net/quic/congestion_control/rtt_stats.cc
+++ b/net/quic/congestion_control/rtt_stats.cc
@@ -79,9 +79,9 @@
     mean_deviation_ = QuicTime::Delta::FromMicroseconds(
         rtt_sample.ToMicroseconds() / 2);
   } else {
-    mean_deviation_ = QuicTime::Delta::FromMicroseconds(
+    mean_deviation_ = QuicTime::Delta::FromMicroseconds(static_cast<int64>(
         kOneMinusBeta * mean_deviation_.ToMicroseconds() +
-        kBeta * std::abs(smoothed_rtt_.Subtract(rtt_sample).ToMicroseconds()));
+        kBeta * std::abs(smoothed_rtt_.Subtract(rtt_sample).ToMicroseconds())));
     smoothed_rtt_ = smoothed_rtt_.Multiply(kOneMinusAlpha).Add(
         rtt_sample.Multiply(kAlpha));
     DVLOG(1) << " smoothed_rtt(us):" << smoothed_rtt_.ToMicroseconds()
diff --git a/net/quic/congestion_control/send_algorithm_interface.h b/net/quic/congestion_control/send_algorithm_interface.h
index 322ff1d..c50f6a6 100644
--- a/net/quic/congestion_control/send_algorithm_interface.h
+++ b/net/quic/congestion_control/send_algorithm_interface.h
@@ -116,7 +116,8 @@
   virtual CongestionControlType GetCongestionControlType() const = 0;
 
   // Called by the Session when we get a bandwidth estimate from the client.
-  virtual void ResumeConnectionState(
+  // Returns true if initial connection state is changed as a result.
+  virtual bool ResumeConnectionState(
       const CachedNetworkParameters& cached_network_params) = 0;
 };
 
diff --git a/net/quic/congestion_control/send_algorithm_simulator.cc b/net/quic/congestion_control/send_algorithm_simulator.cc
index f08acff..7653943 100644
--- a/net/quic/congestion_control/send_algorithm_simulator.cc
+++ b/net/quic/congestion_control/send_algorithm_simulator.cc
@@ -26,8 +26,14 @@
 
 SendAlgorithmSimulator::Sender::Sender(SendAlgorithmInterface* send_algorithm,
                                        RttStats* rtt_stats)
+    : Sender(send_algorithm, rtt_stats, QuicTime::Delta::Zero()) {}
+
+SendAlgorithmSimulator::Sender::Sender(SendAlgorithmInterface* send_algorithm,
+                                       RttStats* rtt_stats,
+                                       QuicTime::Delta additional_rtt)
     : send_algorithm(send_algorithm),
       rtt_stats(rtt_stats),
+      additional_rtt(additional_rtt),
       last_sent(0),
       last_acked(0),
       next_acked(1),
@@ -38,6 +44,18 @@
       last_transfer_bandwidth(QuicBandwidth::Zero()),
       last_transfer_loss_rate(0) {}
 
+SendAlgorithmSimulator::Transfer::Transfer(Sender* sender,
+                                           QuicByteCount num_bytes,
+                                           QuicTime start_time,
+                                           string name)
+    : sender(sender),
+      num_bytes(num_bytes),
+      bytes_acked(0),
+      bytes_lost(0),
+      bytes_in_flight(0),
+      start_time(start_time),
+      name(name) {}
+
 SendAlgorithmSimulator::SendAlgorithmSimulator(
     MockClock* clock,
     QuicBandwidth bandwidth,
@@ -59,12 +77,13 @@
 SendAlgorithmSimulator::~SendAlgorithmSimulator() {}
 
 void SendAlgorithmSimulator::AddTransfer(Sender* sender, size_t num_bytes) {
-  AddTransfer(sender, num_bytes, clock_->Now());
+  AddTransfer(sender, num_bytes, clock_->Now(),
+              StringPrintf("#%zu", pending_transfers_.size()));
 }
 
 void SendAlgorithmSimulator::AddTransfer(
-    Sender* sender, size_t num_bytes, QuicTime start_time) {
-  pending_transfers_.push_back(Transfer(sender, num_bytes, start_time));
+    Sender* sender, size_t num_bytes, QuicTime start_time, string name) {
+  pending_transfers_.push_back(Transfer(sender, num_bytes, start_time, name));
   // Record initial stats from when the transfer begins.
   pending_transfers_.back().sender->RecordStats();
 }
@@ -102,8 +121,9 @@
       clock_->AdvanceTime(ack_event.time_delta);
       HandlePendingAck(ack_event.transfer);
     } else {
-      DVLOG(1) << "Sending, advancing time:"
-               << send_event.time_delta.ToMicroseconds() << "us";
+      DVLOG(1) << "Sending transfer '" << send_event.transfer->name
+               << "', advancing time:" << send_event.time_delta.ToMicroseconds()
+               << "us";
       clock_->AdvanceTime(send_event.time_delta);
       SendDataNow(send_event.transfer);
       bytes_sent += kPacketSize;
@@ -133,7 +153,8 @@
     }
   }
   DVLOG(1) << "NextSendTime returning delta(ms):"
-           << next_send_time.ToMilliseconds();
+           << next_send_time.ToMilliseconds() << ", transfer '"
+           << transfer->name;
   return PacketEvent(next_send_time, transfer);
 }
 
@@ -213,10 +234,9 @@
     ack_delay = ack_delay.Add(delayed_ack_timer_);
   }
 
-  DVLOG(1) << "FindNextAcked found next_acked_:"
-           << transfer->sender->next_acked
+  DVLOG(1) << "FindNextAck found next_acked_:" << transfer->sender->next_acked
            << " last_acked:" << transfer->sender->last_acked
-           << " ack_delay(ms):" << ack_delay.ToMilliseconds();
+           << " ack_time(ms):" << ack_delay.ToMilliseconds();
   return ack_delay;
 }
 
@@ -248,9 +268,9 @@
   SendAlgorithmInterface::CongestionVector acked_packets;
   SendAlgorithmInterface::CongestionVector lost_packets;
   DVLOG(1) << "Acking packets from:" << sender->last_acked
-             << " to " << sender->next_acked
-             << " bytes_in_flight:" << transfer->bytes_in_flight
-             << " Now():" << (clock_->Now().ToDebuggingValue() / 1000) << "ms";
+           << " to " << sender->next_acked
+           << " bytes_in_flight:" << transfer->bytes_in_flight
+           << " Now():" << (clock_->Now().ToDebuggingValue() / 1000) << "ms";
   // Some entries may be missing from the sent_packets_ array, if they were
   // dropped due to buffer overruns.
   SentPacket largest_observed;
@@ -282,7 +302,7 @@
     sent_packets_.erase(it++);
   }
 
-  DCHECK(largest_observed.ack_time.IsInitialized());
+  DCHECK(!largest_observed.lost);
   DVLOG(1) << "Updating RTT from send_time:"
            << largest_observed.send_time.ToDebuggingValue() << " to ack_time:"
            << largest_observed.ack_time.ToDebuggingValue();
@@ -327,7 +347,9 @@
   Sender* sender  = transfer->sender;
   ++sender->last_sent;
   DVLOG(1) << "Sending packet:" << sender->last_sent
+           << " name:" << transfer->name
            << " bytes_in_flight:" << transfer->bytes_in_flight
+           << " cwnd:" << sender->send_algorithm->GetCongestionWindow()
            << " Now():" << (clock_->Now().ToDebuggingValue() / 1000) << "ms";
   sender->send_algorithm->OnPacketSent(
       clock_->Now(), transfer->bytes_in_flight,
@@ -344,12 +366,12 @@
       packet_lost = true;
     }
     DVLOG(1) << "losing packet:" << sender->last_sent
-             << " due to random loss.";
+             << " name:" << transfer->name << " due to random loss.";
 
     // If the number of bytes in flight are less than the bdp, there's
     // no buffering delay.  Bytes lost from the buffer are not counted.
     QuicByteCount bdp = bandwidth_.ToBytesPerPeriod(rtt_);
-    QuicTime ack_time = clock_->Now().Add(rtt_);
+    QuicTime ack_time = clock_->Now().Add(rtt_).Add(sender->additional_rtt);
     if (kPacketSize > bdp) {
       ack_time = ack_time.Add(bandwidth_.TransferTime(kPacketSize - bdp));
     }
@@ -360,7 +382,7 @@
         sender->last_sent, clock_->Now(), ack_time, packet_lost, transfer));
   } else {
     DVLOG(1) << "losing packet:" << sender->last_sent
-             << " because the buffer was full.";
+             << " name:" << transfer->name << " because the buffer was full.";
   }
   transfer->bytes_in_flight += kPacketSize;
 }
diff --git a/net/quic/congestion_control/send_algorithm_simulator.h b/net/quic/congestion_control/send_algorithm_simulator.h
index 3e61d88..7f52d8f 100644
--- a/net/quic/congestion_control/send_algorithm_simulator.h
+++ b/net/quic/congestion_control/send_algorithm_simulator.h
@@ -27,7 +27,11 @@
 class SendAlgorithmSimulator {
  public:
   struct Sender {
-    Sender(SendAlgorithmInterface* send_algorithm, RttStats* rtt_stats);
+    Sender(SendAlgorithmInterface* send_algorithm,
+           RttStats* rtt_stats);
+    Sender(SendAlgorithmInterface* send_algorithm,
+           RttStats* rtt_stats,
+           QuicTime::Delta additional_rtt);
 
     void RecordStats() {
       QuicByteCount cwnd = send_algorithm->GetCongestionWindow();
@@ -53,6 +57,7 @@
 
     SendAlgorithmInterface* send_algorithm;
     RttStats* rtt_stats;
+    QuicTime::Delta additional_rtt;
 
     // Last sequence number the sender sent.
     QuicPacketSequenceNumber last_sent;
@@ -72,13 +77,10 @@
   };
 
   struct Transfer {
-    Transfer(Sender* sender, QuicByteCount num_bytes, QuicTime start_time)
-        : sender(sender),
-          num_bytes(num_bytes),
-          bytes_acked(0),
-          bytes_lost(0),
-          bytes_in_flight(0),
-          start_time(start_time) {}
+    Transfer(Sender* sender,
+             QuicByteCount num_bytes,
+             QuicTime start_time,
+             string name);
 
     Sender* sender;
     QuicByteCount num_bytes;
@@ -86,6 +88,7 @@
     QuicByteCount bytes_lost;
     QuicByteCount bytes_in_flight;
     QuicTime start_time;
+    string name;
   };
 
   struct SentPacket {
@@ -154,7 +157,8 @@
   void AddTransfer(Sender* sender, size_t num_bytes);
 
   // Adds a pending sending to start at the specified time.
-  void AddTransfer(Sender* sender, size_t num_bytes, QuicTime start_time);
+  void AddTransfer(
+      Sender* sender, size_t num_bytes, QuicTime start_time, string name);
 
   // Convenience method to transfer all bytes.
   void TransferBytes();
diff --git a/net/quic/congestion_control/tcp_cubic_sender.cc b/net/quic/congestion_control/tcp_cubic_sender.cc
index 5fa1559..2378eeb 100644
--- a/net/quic/congestion_control/tcp_cubic_sender.cc
+++ b/net/quic/congestion_control/tcp_cubic_sender.cc
@@ -72,24 +72,30 @@
   }
 }
 
-void TcpCubicSender::ResumeConnectionState(
+bool TcpCubicSender::ResumeConnectionState(
     const CachedNetworkParameters& cached_network_params) {
   // If the previous bandwidth estimate is less than an hour old, store in
   // preparation for doing bandwidth resumption.
   int64 seconds_since_estimate =
       clock_->WallNow().ToUNIXSeconds() - cached_network_params.timestamp();
   if (seconds_since_estimate > kNumSecondsPerHour) {
-    return;
+    return false;
   }
 
   QuicBandwidth bandwidth = QuicBandwidth::FromBytesPerSecond(
       cached_network_params.bandwidth_estimate_bytes_per_second());
   QuicTime::Delta rtt_ms =
       QuicTime::Delta::FromMilliseconds(cached_network_params.min_rtt_ms());
-  congestion_window_ = bandwidth.ToBytesPerPeriod(rtt_ms) / kMaxPacketSize;
+
+  // Make sure CWND is in appropriate range (in case of bad data).
+  QuicPacketCount new_congestion_window =
+      bandwidth.ToBytesPerPeriod(rtt_ms) / kMaxPacketSize;
+  congestion_window_ = max(min(new_congestion_window, kMaxTcpCongestionWindow),
+                           kMinCongestionWindowForBandwidthResumption);
 
   // TODO(rjshade): Set appropriate CWND when previous connection was in slow
   // start at time of estimate.
+  return true;
 }
 
 void TcpCubicSender::SetNumEmulatedConnections(int num_connections) {
diff --git a/net/quic/congestion_control/tcp_cubic_sender.h b/net/quic/congestion_control/tcp_cubic_sender.h
index eeb9331..e07e480 100644
--- a/net/quic/congestion_control/tcp_cubic_sender.h
+++ b/net/quic/congestion_control/tcp_cubic_sender.h
@@ -44,7 +44,7 @@
   void SetFromConfig(const QuicConfig& config,
                      bool is_server,
                      bool using_pacing) override;
-  void ResumeConnectionState(
+  bool ResumeConnectionState(
       const CachedNetworkParameters& cached_network_params) override;
   void SetNumEmulatedConnections(int num_connections) override;
   void OnCongestionEvent(bool rtt_updated,
@@ -118,7 +118,7 @@
   QuicPacketCount congestion_window_;
 
   // Congestion window before the last loss event or RTO.
-  QuicByteCount previous_congestion_window_;
+  QuicPacketCount previous_congestion_window_;
 
   // Slow start congestion window in packets, aka ssthresh.
   QuicPacketCount slowstart_threshold_;
diff --git a/net/quic/congestion_control/tcp_cubic_sender_test.cc b/net/quic/congestion_control/tcp_cubic_sender_test.cc
index e4737eb..ebea8ae 100644
--- a/net/quic/congestion_control/tcp_cubic_sender_test.cc
+++ b/net/quic/congestion_control/tcp_cubic_sender_test.cc
@@ -718,14 +718,26 @@
   // Ensure that an old estimate is not used for bandwidth resumption.
   cached_network_params.set_timestamp(clock_.WallNow().ToUNIXSeconds() -
                                       (kNumSecondsPerHour + 1));
-  sender_->ResumeConnectionState(cached_network_params);
+  EXPECT_FALSE(sender_->ResumeConnectionState(cached_network_params));
   EXPECT_EQ(10u, sender_->congestion_window());
 
   // If the estimate is new enough, make sure it is used.
   cached_network_params.set_timestamp(clock_.WallNow().ToUNIXSeconds() -
                                       (kNumSecondsPerHour - 1));
-  sender_->ResumeConnectionState(cached_network_params);
+  EXPECT_TRUE(sender_->ResumeConnectionState(cached_network_params));
   EXPECT_EQ(kNumberOfPackets, sender_->congestion_window());
+
+  // Resumed CWND is limited to be in a sensible range.
+  cached_network_params.set_bandwidth_estimate_bytes_per_second(
+      (kMaxTcpCongestionWindow + 1) * kMaxPacketSize);
+  EXPECT_TRUE(sender_->ResumeConnectionState(cached_network_params));
+  EXPECT_EQ(kMaxTcpCongestionWindow, sender_->congestion_window());
+
+  cached_network_params.set_bandwidth_estimate_bytes_per_second(
+      (kMinCongestionWindowForBandwidthResumption - 1) * kMaxPacketSize);
+  EXPECT_TRUE(sender_->ResumeConnectionState(cached_network_params));
+  EXPECT_EQ(kMinCongestionWindowForBandwidthResumption,
+            sender_->congestion_window());
 }
 
 }  // namespace test
diff --git a/net/quic/congestion_control/tcp_loss_algorithm.h b/net/quic/congestion_control/tcp_loss_algorithm.h
index 03047cf..a5f245e 100644
--- a/net/quic/congestion_control/tcp_loss_algorithm.h
+++ b/net/quic/congestion_control/tcp_loss_algorithm.h
@@ -21,7 +21,7 @@
 class NET_EXPORT_PRIVATE TCPLossAlgorithm : public LossDetectionInterface {
  public:
   // TCP retransmits after 3 nacks.
-  static const size_t kNumberOfNacksBeforeRetransmission = 3;
+  static const QuicPacketCount kNumberOfNacksBeforeRetransmission = 3;
 
   TCPLossAlgorithm();
   ~TCPLossAlgorithm() override {}
diff --git a/net/quic/crypto/cert_compressor.cc b/net/quic/crypto/cert_compressor.cc
index ba42152..95bb553 100644
--- a/net/quic/crypto/cert_compressor.cc
+++ b/net/quic/crypto/cert_compressor.cc
@@ -260,7 +260,7 @@
 void SerializeCertEntries(uint8* out, const vector<CertEntry>& entries) {
   for (vector<CertEntry>::const_iterator i = entries.begin();
        i != entries.end(); ++i) {
-    *out++ = i->type;
+    *out++ = static_cast<uint8>(i->type);
     switch (i->type) {
       case CertEntry::COMPRESSED:
         break;
diff --git a/net/quic/crypto/crypto_framer.cc b/net/quic/crypto/crypto_framer.cc
index 029ec53..79e17ed 100644
--- a/net/quic/crypto/crypto_framer.cc
+++ b/net/quic/crypto/crypto_framer.cc
@@ -112,7 +112,7 @@
     DCHECK(false) << "Failed to write message tag.";
     return nullptr;
   }
-  if (!writer.WriteUInt16(num_entries)) {
+  if (!writer.WriteUInt16(static_cast<uint16>(num_entries))) {
     DCHECK(false) << "Failed to write size.";
     return nullptr;
   }
diff --git a/net/quic/crypto/crypto_utils.cc b/net/quic/crypto/crypto_utils.cc
index 67af2e9..c595775 100644
--- a/net/quic/crypto/crypto_utils.cc
+++ b/net/quic/crypto/crypto_utils.cc
@@ -28,19 +28,21 @@
   // a 4-byte timestamp + 28 random bytes.
   nonce->reserve(kNonceSize);
   nonce->resize(kNonceSize);
-  uint32 gmt_unix_time = now.ToUNIXSeconds();
+
+  uint32 gmt_unix_time = static_cast<uint32>(now.ToUNIXSeconds());
   // The time in the nonce must be encoded in big-endian because the
   // strike-register depends on the nonces being ordered by time.
   (*nonce)[0] = static_cast<char>(gmt_unix_time >> 24);
   (*nonce)[1] = static_cast<char>(gmt_unix_time >> 16);
   (*nonce)[2] = static_cast<char>(gmt_unix_time >> 8);
   (*nonce)[3] = static_cast<char>(gmt_unix_time);
+  size_t bytes_written = 4;
 
-  size_t bytes_written = sizeof(gmt_unix_time);
   if (orbit.size() == 8) {
     memcpy(&(*nonce)[bytes_written], orbit.data(), orbit.size());
     bytes_written += orbit.size();
   }
+
   random_generator->RandBytes(&(*nonce)[bytes_written],
                               kNonceSize - bytes_written);
 }
diff --git a/net/quic/crypto/p256_key_exchange_nss.cc b/net/quic/crypto/p256_key_exchange_nss.cc
index 73aa03d..3296a6f 100644
--- a/net/quic/crypto/p256_key_exchange_nss.cc
+++ b/net/quic/crypto/p256_key_exchange_nss.cc
@@ -5,6 +5,7 @@
 #include "net/quic/crypto/p256_key_exchange.h"
 
 #include "base/logging.h"
+#include "base/numerics/safe_conversions.h"
 #include "base/sys_byteorder.h"
 
 using base::StringPiece;
@@ -131,7 +132,7 @@
   }
 
   // TODO(thaidn): determine how large encrypted private key can be
-  uint16 private_key_size = private_key.size();
+  uint16 private_key_size = base::checked_cast<uint16>(private_key.size());
   const size_t result_size = sizeof(private_key_size) +
                              private_key_size +
                              public_key.size();
diff --git a/net/quic/crypto/quic_crypto_server_config.cc b/net/quic/crypto/quic_crypto_server_config.cc
index 5a650b6..4623ff5 100644
--- a/net/quic/crypto/quic_crypto_server_config.cc
+++ b/net/quic/crypto/quic_crypto_server_config.cc
@@ -251,9 +251,13 @@
 
   string encoded_public_values;
   // First three bytes encode the length of the public value.
-  encoded_public_values.push_back(curve25519_public_value.size());
-  encoded_public_values.push_back(curve25519_public_value.size() >> 8);
-  encoded_public_values.push_back(curve25519_public_value.size() >> 16);
+  DCHECK_LT(curve25519_public_value.size(), (1U << 24));
+  encoded_public_values.push_back(
+      static_cast<char>(curve25519_public_value.size()));
+  encoded_public_values.push_back(
+      static_cast<char>(curve25519_public_value.size() >> 8));
+  encoded_public_values.push_back(
+      static_cast<char>(curve25519_public_value.size() >> 16));
   encoded_public_values.append(curve25519_public_value.data(),
                                curve25519_public_value.size());
 
@@ -263,9 +267,13 @@
     scoped_ptr<P256KeyExchange> p256(P256KeyExchange::New(p256_private_key));
     StringPiece p256_public_value = p256->public_value();
 
-    encoded_public_values.push_back(p256_public_value.size());
-    encoded_public_values.push_back(p256_public_value.size() >> 8);
-    encoded_public_values.push_back(p256_public_value.size() >> 16);
+    DCHECK_LT(p256_public_value.size(), (1U << 24));
+    encoded_public_values.push_back(
+        static_cast<char>(p256_public_value.size()));
+    encoded_public_values.push_back(
+        static_cast<char>(p256_public_value.size() >> 8));
+    encoded_public_values.push_back(
+        static_cast<char>(p256_public_value.size() >> 16));
     encoded_public_values.append(p256_public_value.data(),
                                  p256_public_value.size());
   }
diff --git a/net/quic/crypto/quic_server_info.h b/net/quic/crypto/quic_server_info.h
index c6525c8..2ea7525 100644
--- a/net/quic/crypto/quic_server_info.h
+++ b/net/quic/crypto/quic_server_info.h
@@ -89,6 +89,14 @@
   const State& state() const;
   State* mutable_state();
 
+  base::TimeTicks wait_for_data_start_time() const {
+    return wait_for_data_start_time_;
+  }
+
+  base::TimeTicks wait_for_data_end_time() const {
+    return wait_for_data_end_time_;
+  }
+
  protected:
   // Parse parses pickled data and fills out the public member fields of this
   // object. It returns true iff the parse was successful. The public member
@@ -97,6 +105,10 @@
   std::string Serialize();
   State state_;
 
+  // Time when WaitForDataReady was called and when it has finished.
+  base::TimeTicks wait_for_data_start_time_;
+  base::TimeTicks wait_for_data_end_time_;
+
  private:
   // ParseInner is a helper function for Parse.
   bool ParseInner(const std::string& data);
diff --git a/net/quic/crypto/source_address_token.cc b/net/quic/crypto/source_address_token.cc
index 5faedaa..5c1877a 100644
--- a/net/quic/crypto/source_address_token.cc
+++ b/net/quic/crypto/source_address_token.cc
@@ -20,10 +20,10 @@
 
 string SourceAddressToken::SerializeAsString() const {
   string out;
-  out.push_back(ip_.size());
+  out.push_back(static_cast<char>(ip_.size()));
   out.append(ip_);
   string time_str = base::Int64ToString(timestamp_);
-  out.push_back(time_str.size());
+  out.push_back(static_cast<char>(time_str.size()));
   out.append(time_str);
   // TODO(rtenneti): Implement serialization of optional CachedNetworkParameters
   // when they are used.
diff --git a/net/quic/crypto/source_address_token.h b/net/quic/crypto/source_address_token.h
index f9a5098..32f11c5 100644
--- a/net/quic/crypto/source_address_token.h
+++ b/net/quic/crypto/source_address_token.h
@@ -8,6 +8,7 @@
 #include <string>
 
 #include "base/basictypes.h"
+#include "base/logging.h"
 #include "base/strings/string_piece.h"
 #include "net/base/net_export.h"
 #include "net/quic/crypto/cached_network_parameters.h"
@@ -31,6 +32,8 @@
   }
   void set_ip(base::StringPiece ip) {
     ip_ = ip.as_string();
+    DCHECK_LE(ip_.size(),
+              static_cast<size_t>(std::numeric_limits<char>::max()));
   }
 
   int64 timestamp() const {
diff --git a/net/quic/crypto/strike_register.cc b/net/quic/crypto/strike_register.cc
index d727ece..fd5dc4f 100644
--- a/net/quic/crypto/strike_register.cc
+++ b/net/quic/crypto/strike_register.cc
@@ -66,9 +66,9 @@
 
   uint32 child(unsigned n) const { return data_[n] >> 8; }
 
-  uint8 critbyte() const { return data_[0]; }
+  uint8 critbyte() const { return static_cast<uint8>(data_[0]); }
 
-  uint8 otherbits() const { return data_[1]; }
+  uint8 otherbits() const { return static_cast<uint8>(data_[1]); }
 
   // These bytes are organised thus:
   //   <24 bits> left child
@@ -194,9 +194,10 @@
   }
 
   // Now we need to find the first bit where we differ from |best_match|.
-  unsigned differing_byte;
+  uint8 differing_byte;
   uint8 new_other_bits;
-  for (differing_byte = 0; differing_byte < sizeof(value); differing_byte++) {
+  for (differing_byte = 0; differing_byte < arraysize(value);
+       differing_byte++) {
     new_other_bits = value[differing_byte] ^ best_match[differing_byte];
     if (new_other_bits) {
       break;
diff --git a/net/quic/quic_bandwidth.cc b/net/quic/quic_bandwidth.cc
index dbce39d..8612d5f 100644
--- a/net/quic/quic_bandwidth.cc
+++ b/net/quic/quic_bandwidth.cc
@@ -96,7 +96,7 @@
 }
 
 QuicBandwidth QuicBandwidth::Scale(float scale_factor) const {
-  return QuicBandwidth(bits_per_second_ * scale_factor);
+  return QuicBandwidth(static_cast<int64>(bits_per_second_ * scale_factor));
 }
 
 QuicTime::Delta QuicBandwidth::TransferTime(QuicByteCount bytes) const {
diff --git a/net/quic/quic_client_session.cc b/net/quic/quic_client_session.cc
index 97d6c3b..ef8bc20 100644
--- a/net/quic/quic_client_session.cc
+++ b/net/quic/quic_client_session.cc
@@ -286,6 +286,24 @@
     }
   }
   const QuicConnectionStats stats = connection()->GetStats();
+  if (server_info_ && stats.min_rtt_us > 0) {
+    base::TimeTicks wait_for_data_start_time =
+        server_info_->wait_for_data_start_time();
+    base::TimeTicks wait_for_data_end_time =
+        server_info_->wait_for_data_end_time();
+    if (!wait_for_data_start_time.is_null() &&
+        !wait_for_data_end_time.is_null()) {
+      base::TimeDelta wait_time =
+          wait_for_data_end_time - wait_for_data_start_time;
+      const base::HistogramBase::Sample kMaxWaitToRtt = 1000;
+      base::HistogramBase::Sample wait_to_rtt =
+          static_cast<base::HistogramBase::Sample>(
+              100 * wait_time.InMicroseconds() / stats.min_rtt_us);
+      UMA_HISTOGRAM_CUSTOM_COUNTS("Net.QuicServerInfo.WaitForDataReadyToRtt",
+                                  wait_to_rtt, 0, kMaxWaitToRtt, 50);
+    }
+  }
+
   if (stats.max_sequence_reordering == 0)
     return;
   const base::HistogramBase::Sample kMaxReordering = 100;
@@ -300,8 +318,9 @@
     UMA_HISTOGRAM_CUSTOM_COUNTS("Net.QuicSession.MaxReorderingTimeLongRtt",
                                 reordering, 0, kMaxReordering, 50);
   }
-  UMA_HISTOGRAM_COUNTS("Net.QuicSession.MaxReordering",
-                       stats.max_sequence_reordering);
+  UMA_HISTOGRAM_COUNTS(
+      "Net.QuicSession.MaxReordering",
+      static_cast<base::HistogramBase::Sample>(stats.max_sequence_reordering));
 }
 
 void QuicClientSession::OnStreamFrames(
@@ -433,7 +452,7 @@
   // Report the TLS cipher suite that most closely resembles the crypto
   // parameters of the QUIC connection.
   QuicTag aead = crypto_stream_->crypto_negotiated_params().aead;
-  int cipher_suite;
+  uint16 cipher_suite;
   int security_bits;
   switch (aead) {
     case kAESG:
@@ -449,9 +468,7 @@
       return false;
   }
   int ssl_connection_status = 0;
-  ssl_connection_status |=
-      (cipher_suite & SSL_CONNECTION_CIPHERSUITE_MASK) <<
-       SSL_CONNECTION_CIPHERSUITE_SHIFT;
+  ssl_connection_status |= cipher_suite;
   ssl_connection_status |=
       (SSL_CONNECTION_VERSION_QUIC & SSL_CONNECTION_VERSION_MASK) <<
        SSL_CONNECTION_VERSION_SHIFT;
@@ -584,6 +601,20 @@
   if (event == HANDSHAKE_CONFIRMED) {
     UMA_HISTOGRAM_TIMES("Net.QuicSession.HandshakeConfirmedTime",
                         base::TimeTicks::Now() - handshake_start_);
+    if (server_info_) {
+      // Track how long it has taken to finish handshake once we start waiting
+      // for reading of QUIC server information from disk cache. We could use
+      // this data to compare total time taken if we were to cancel the disk
+      // cache read vs waiting for the read to complete.
+      base::TimeTicks wait_for_data_start_time =
+          server_info_->wait_for_data_start_time();
+      if (!wait_for_data_start_time.is_null()) {
+        UMA_HISTOGRAM_TIMES(
+            "Net.QuicServerInfo.WaitForDataReady.HandshakeConfirmedTime",
+            base::TimeTicks::Now() - wait_for_data_start_time);
+      }
+    }
+
     ObserverSet::iterator it = observers_.begin();
     while (it != observers_.end()) {
       Observer* observer = *it;
diff --git a/net/quic/quic_config.cc b/net/quic/quic_config.cc
index 622cf3f..d2a10a4 100644
--- a/net/quic/quic_config.cc
+++ b/net/quic/quic_config.cc
@@ -484,8 +484,8 @@
     QuicTime::Delta max_idle_connection_state_lifetime,
     QuicTime::Delta default_idle_conection_state_lifetime) {
   idle_connection_state_lifetime_seconds_.set(
-      max_idle_connection_state_lifetime.ToSeconds(),
-      default_idle_conection_state_lifetime.ToSeconds());
+      static_cast<uint32>(max_idle_connection_state_lifetime.ToSeconds()),
+      static_cast<uint32>(default_idle_conection_state_lifetime.ToSeconds()));
 }
 
 QuicTime::Delta QuicConfig::IdleConnectionStateLifetime() const {
@@ -523,7 +523,7 @@
   return bytes_for_connection_id_.GetReceivedValue();
 }
 
-void QuicConfig::SetInitialRoundTripTimeUsToSend(size_t rtt) {
+void QuicConfig::SetInitialRoundTripTimeUsToSend(uint32 rtt) {
   initial_round_trip_time_us_.SetSendValue(rtt);
 }
 
diff --git a/net/quic/quic_config.h b/net/quic/quic_config.h
index cf3775c..507dd9d 100644
--- a/net/quic/quic_config.h
+++ b/net/quic/quic_config.h
@@ -320,7 +320,7 @@
   uint32 ReceivedBytesForConnectionId() const;
 
   // Sets an estimated initial round trip time in us.
-  void SetInitialRoundTripTimeUsToSend(size_t rtt_us);
+  void SetInitialRoundTripTimeUsToSend(uint32 rtt_us);
 
   bool HasReceivedInitialRoundTripTimeUs() const;
 
diff --git a/net/quic/quic_connection.cc b/net/quic/quic_connection.cc
index 62cbc64..c33aec5 100644
--- a/net/quic/quic_connection.cc
+++ b/net/quic/quic_connection.cc
@@ -15,6 +15,7 @@
 #include <utility>
 
 #include "base/debug/stack_trace.h"
+#include "base/format_macros.h"
 #include "base/logging.h"
 #include "base/stl_util.h"
 #include "base/strings/stringprintf.h"
@@ -57,10 +58,10 @@
 const size_t kMaxFecGroups = 2;
 
 // Maximum number of acks received before sending an ack in response.
-const size_t kMaxPacketsReceivedBeforeAckSend = 20;
+const QuicPacketCount kMaxPacketsReceivedBeforeAckSend = 20;
 
 // Maximum number of tracked packets.
-const size_t kMaxTrackedPackets = 5 * kMaxTcpCongestionWindow;;
+const QuicPacketCount kMaxTrackedPackets = 5 * kMaxTcpCongestionWindow;
 
 bool Near(QuicPacketSequenceNumber a, QuicPacketSequenceNumber b) {
   QuicPacketSequenceNumber delta = (a > b) ? a - b : b - a;
@@ -282,9 +283,9 @@
   max_undecryptable_packets_ = config.max_undecryptable_packets();
 }
 
-void QuicConnection::ResumeConnectionState(
+bool QuicConnection::ResumeConnectionState(
     const CachedNetworkParameters& cached_network_params) {
-  sent_packet_manager_.ResumeConnectionState(cached_network_params);
+  return sent_packet_manager_.ResumeConnectionState(cached_network_params);
 }
 
 void QuicConnection::SetNumOpenStreams(size_t num_streams) {
@@ -949,14 +950,14 @@
           (sent_packet_manager_.GetLeastUnacked() + kMaxTrackedPackets)) {
     SendConnectionCloseWithDetails(
         QUIC_TOO_MANY_OUTSTANDING_SENT_PACKETS,
-        StringPrintf("More than %zu outstanding.", kMaxTrackedPackets));
+        StringPrintf("More than %" PRIu64 " outstanding.", kMaxTrackedPackets));
   }
   // This occurs if there are received packet gaps and the peer does not raise
   // the least unacked fast enough.
   if (received_packet_manager_.NumTrackedPackets() > kMaxTrackedPackets) {
     SendConnectionCloseWithDetails(
         QUIC_TOO_MANY_OUTSTANDING_RECEIVED_PACKETS,
-        StringPrintf("More than %zu outstanding.", kMaxTrackedPackets));
+        StringPrintf("More than %" PRIu64 " outstanding.", kMaxTrackedPackets));
   }
 }
 
@@ -1138,8 +1139,7 @@
       sent_packet_manager_.GetRttStats()->min_rtt().ToMicroseconds();
   stats_.srtt_us =
       sent_packet_manager_.GetRttStats()->smoothed_rtt().ToMicroseconds();
-  stats_.estimated_bandwidth =
-      sent_packet_manager_.BandwidthEstimate().ToBytesPerSecond();
+  stats_.estimated_bandwidth = sent_packet_manager_.BandwidthEstimate();
   stats_.max_packet_size = packet_generator_.max_packet_length();
   return stats_;
 }
diff --git a/net/quic/quic_connection.h b/net/quic/quic_connection.h
index abab048..14c45a1 100644
--- a/net/quic/quic_connection.h
+++ b/net/quic/quic_connection.h
@@ -260,8 +260,8 @@
   void SetFromConfig(const QuicConfig& config);
 
   // Called by the Session when the client has provided CachedNetworkParameters.
-  // Virtual for tests.
-  virtual void ResumeConnectionState(
+  // Returns true if this changes the initial connection state.
+  virtual bool ResumeConnectionState(
       const CachedNetworkParameters& cached_network_params);
 
   // Sets the number of active streams on the connection for congestion control.
@@ -753,7 +753,7 @@
   // Indicates whether an ack should be sent the next time we try to write.
   bool ack_queued_;
   // Indicates how many consecutive packets have arrived without sending an ack.
-  uint32 num_packets_received_since_last_ack_sent_;
+  QuicPacketCount num_packets_received_since_last_ack_sent_;
   // Indicates how many consecutive times an ack has arrived which indicates
   // the peer needs to stop waiting for some packets.
   int stop_waiting_count_;
diff --git a/net/quic/quic_connection_logger.cc b/net/quic/quic_connection_logger.cc
index 205a571..4a12521 100644
--- a/net/quic/quic_connection_logger.cc
+++ b/net/quic/quic_connection_logger.cc
@@ -58,7 +58,8 @@
   dict->SetString("packet_sequence_number",
                   base::Uint64ToString(serialized_packet.sequence_number));
   dict->SetInteger("size", packet_size);
-  dict->SetInteger("sent_time_us", sent_time.ToDebuggingValue());
+  dict->SetInteger("sent_time_us",
+                   static_cast<int>(sent_time.ToDebuggingValue()));
   return dict;
 }
 
@@ -85,7 +86,7 @@
                   base::Uint64ToString(header->packet_sequence_number));
   dict->SetInteger("entropy_flag", header->entropy_flag);
   dict->SetInteger("fec_flag", header->fec_flag);
-  dict->SetInteger("fec_group", header->fec_group);
+  dict->SetInteger("fec_group", static_cast<int>(header->fec_group));
   return dict;
 }
 
@@ -104,8 +105,9 @@
   base::DictionaryValue* dict = new base::DictionaryValue();
   dict->SetString("largest_observed",
                   base::Uint64ToString(frame->largest_observed));
-  dict->SetInteger("delta_time_largest_observed_us",
-                   frame->delta_time_largest_observed.ToMicroseconds());
+  dict->SetInteger(
+      "delta_time_largest_observed_us",
+      static_cast<int>(frame->delta_time_largest_observed.ToMicroseconds()));
   dict->SetInteger("entropy_hash",
                    frame->entropy_hash);
   dict->SetBoolean("truncated", frame->is_truncated);
@@ -132,8 +134,9 @@
   for (PacketTimeList::const_iterator it = received_times.begin();
        it != received_times.end(); ++it) {
     base::DictionaryValue* info = new base::DictionaryValue();
-    info->SetInteger("sequence_number", it->first);
-    info->SetInteger("received", it->second.ToDebuggingValue());
+    info->SetInteger("sequence_number", static_cast<int>(it->first));
+    info->SetInteger("received",
+                     static_cast<int>(it->second.ToDebuggingValue()));
     received->Append(info);
   }
 
@@ -147,7 +150,8 @@
   switch (frame->type) {
     case kTCP:
       dict->SetString("type", "TCP");
-      dict->SetInteger("receive_window", frame->tcp.receive_window);
+      dict->SetInteger("receive_window",
+                       static_cast<int>(frame->tcp.receive_window));
       break;
   }
 
@@ -552,17 +556,22 @@
       // There is a gap between the largest packet previously received and
       // the current packet.  This indicates either loss, or out-of-order
       // delivery.
-      UMA_HISTOGRAM_COUNTS("Net.QuicSession.PacketGapReceived", delta - 1);
+      UMA_HISTOGRAM_COUNTS("Net.QuicSession.PacketGapReceived",
+                           static_cast<base::HistogramBase::Sample>(delta - 1));
     }
     largest_received_packet_sequence_number_ = header.packet_sequence_number;
   }
-  if (header.packet_sequence_number < received_packets_.size())
-    received_packets_[header.packet_sequence_number] = true;
+  if (header.packet_sequence_number < received_packets_.size()) {
+    received_packets_[static_cast<size_t>(header.packet_sequence_number)] =
+        true;
+  }
   if (header.packet_sequence_number < last_received_packet_sequence_number_) {
     ++num_out_of_order_received_packets_;
-    UMA_HISTOGRAM_COUNTS("Net.QuicSession.OutOfOrderGapReceived",
-                         last_received_packet_sequence_number_ -
-                             header.packet_sequence_number);
+    UMA_HISTOGRAM_COUNTS(
+        "Net.QuicSession.OutOfOrderGapReceived",
+        static_cast<base::HistogramBase::Sample>(
+            last_received_packet_sequence_number_ -
+            header.packet_sequence_number));
   }
   last_received_packet_sequence_number_ = header.packet_sequence_number;
 }
@@ -580,8 +589,10 @@
 
   const size_t kApproximateLargestSoloAckBytes = 100;
   if (last_received_packet_sequence_number_ < received_acks_.size() &&
-      last_received_packet_size_ < kApproximateLargestSoloAckBytes)
-    received_acks_[last_received_packet_sequence_number_] = true;
+      last_received_packet_size_ < kApproximateLargestSoloAckBytes) {
+    received_acks_[static_cast<size_t>(last_received_packet_sequence_number_)] =
+        true;
+  }
 
   if (frame.is_truncated)
     ++num_truncated_acks_received_;
@@ -839,7 +850,7 @@
   base::HistogramBase* histogram = base::Histogram::FactoryGet(
       prefix + connection_description_, 1, 1000, 75,
       base::HistogramBase::kUmaTargetedHistogramFlag);
-  histogram->Add(numerator / divisor);
+  histogram->Add(static_cast<base::HistogramBase::Sample>(numerator / divisor));
 }
 
 void QuicConnectionLogger::RecordLossHistograms() const {
diff --git a/net/quic/quic_connection_logger.h b/net/quic/quic_connection_logger.h
index 29acfdc..fdd813a 100644
--- a/net/quic/quic_connection_logger.h
+++ b/net/quic/quic_connection_logger.h
@@ -132,7 +132,7 @@
   // The number of times that OnPacketHeader was called.
   // If the network replicates packets, then this number may be slightly
   // different from the real number of distinct packets received.
-  QuicPacketSequenceNumber num_packets_received_;
+  QuicPacketCount num_packets_received_;
   // Number of times a truncated ACK frame was sent.
   size_t num_truncated_acks_sent_;
   // Number of times a truncated ACK frame was received.
diff --git a/net/quic/quic_connection_stats.cc b/net/quic/quic_connection_stats.cc
index 6625c61..10425de 100644
--- a/net/quic/quic_connection_stats.cc
+++ b/net/quic/quic_connection_stats.cc
@@ -33,7 +33,7 @@
       min_rtt_us(0),
       srtt_us(0),
       max_packet_size(0),
-      estimated_bandwidth(0),
+      estimated_bandwidth(QuicBandwidth::Zero()),
       packets_reordered(0),
       max_sequence_reordering(0),
       max_time_reordering_us(0),
@@ -70,7 +70,7 @@
      << ", min_rtt(us): " << s.min_rtt_us
      << ", srtt(us): " << s.srtt_us
      << ", max packet size: " << s.max_packet_size
-     << ", estimated bandwidth: " << s.estimated_bandwidth
+     << ", estimated bandwidth: " << s.estimated_bandwidth.ToBytesPerSecond()
      << ", tcp_loss_events: " << s.tcp_loss_events
      << ", packets reordered: " << s.packets_reordered
      << ", max sequence reordering: " << s.max_sequence_reordering
diff --git a/net/quic/quic_connection_stats.h b/net/quic/quic_connection_stats.h
index 2abdb59..247d2c5 100644
--- a/net/quic/quic_connection_stats.h
+++ b/net/quic/quic_connection_stats.h
@@ -9,6 +9,8 @@
 
 #include "base/basictypes.h"
 #include "net/base/net_export.h"
+#include "net/quic/quic_bandwidth.h"
+#include "net/quic/quic_protocol.h"
 #include "net/quic/quic_time.h"
 
 namespace net {
@@ -20,47 +22,52 @@
   NET_EXPORT_PRIVATE friend std::ostream& operator<<(
       std::ostream& os, const QuicConnectionStats& s);
 
-  uint64 bytes_sent;  // Includes retransmissions, fec.
-  uint32 packets_sent;
-  uint64 stream_bytes_sent;  // non-retransmitted bytes sent in a stream frame.
-  uint32 packets_discarded;  // Packets serialized and discarded before sending.
+  QuicByteCount bytes_sent;  // Includes retransmissions, fec.
+  QuicPacketCount packets_sent;
+  // Non-retransmitted bytes sent in a stream frame.
+  QuicByteCount stream_bytes_sent;
+  // Packets serialized and discarded before sending.
+  QuicPacketCount packets_discarded;
 
   // These include version negotiation and public reset packets, which do not
   // have sequence numbers or frame data.
-  uint64 bytes_received;  // Includes duplicate data for a stream, fec.
-  uint32 packets_received;  // Includes packets which were not processable.
-  uint32 packets_processed;  // Excludes packets which were not processable.
-  uint64 stream_bytes_received;  // Bytes received in a stream frame.
+  QuicByteCount bytes_received;  // Includes duplicate data for a stream, fec.
+  // Includes packets which were not processable.
+  QuicPacketCount packets_received;
+  // Excludes packets which were not processable.
+  QuicPacketCount packets_processed;
+  QuicByteCount stream_bytes_received;  // Bytes received in a stream frame.
 
-  uint64 bytes_retransmitted;
-  uint32 packets_retransmitted;
+  QuicByteCount bytes_retransmitted;
+  QuicPacketCount packets_retransmitted;
 
-  uint64 bytes_spuriously_retransmitted;
-  uint32 packets_spuriously_retransmitted;
+  QuicByteCount bytes_spuriously_retransmitted;
+  QuicPacketCount packets_spuriously_retransmitted;
   // Number of packets abandoned as lost by the loss detection algorithm.
-  uint32 packets_lost;
-  uint32 slowstart_packets_lost;  // Number of packets lost exiting slow start.
+  QuicPacketCount packets_lost;
+  // Number of packets lost exiting slow start.
+  QuicPacketCount slowstart_packets_lost;
 
-  uint32 packets_revived;
-  uint32 packets_dropped;  // Duplicate or less than least unacked.
+  QuicPacketCount packets_revived;
+  QuicPacketCount packets_dropped;  // Duplicate or less than least unacked.
   uint32 crypto_retransmit_count;
   // Count of times the loss detection alarm fired.  At least one packet should
   // be lost when the alarm fires.
   uint32 loss_timeout_count;
-  uint32 tlp_count;
-  uint32 rto_count;  // Count of times the rto timer fired.
-  uint32 spurious_rto_count;
+  size_t tlp_count;
+  size_t rto_count;  // Count of times the rto timer fired.
+  size_t spurious_rto_count;
 
   int64 min_rtt_us;  // Minimum RTT in microseconds.
   int64 srtt_us;  // Smoothed RTT in microseconds.
-  uint32 max_packet_size;  // In bytes.
-  uint64 estimated_bandwidth;  // In bytes per second.
+  QuicByteCount max_packet_size;
+  QuicBandwidth estimated_bandwidth;
 
   // Reordering stats for received packets.
   // Number of packets received out of sequence number order.
-  uint32 packets_reordered;
+  QuicPacketCount packets_reordered;
   // Maximum reordering observed in sequence space.
-  uint32 max_sequence_reordering;
+  QuicPacketSequenceNumber max_sequence_reordering;
   // Maximum reordering observed in microseconds
   int64 max_time_reordering_us;
 
@@ -69,9 +76,9 @@
   // one or more lost packets.
   uint32 tcp_loss_events;
   // Total amount of cwnd increase by TCPCubic in congestion avoidance.
-  uint32 cwnd_increase_congestion_avoidance;
+  QuicPacketCount cwnd_increase_congestion_avoidance;
   // Total amount of cwnd increase by TCPCubic in cubic mode.
-  uint32 cwnd_increase_cubic_mode;
+  QuicPacketCount cwnd_increase_cubic_mode;
 
   // Creation time, as reported by the QuicClock.
   QuicTime connection_creation_time;
diff --git a/net/quic/quic_connection_test.cc b/net/quic/quic_connection_test.cc
index ede61c8..32d7544 100644
--- a/net/quic/quic_connection_test.cc
+++ b/net/quic/quic_connection_test.cc
@@ -1166,8 +1166,8 @@
   }
   EXPECT_CALL(*loss_algorithm_, DetectLostPackets(_, _, _, _))
       .WillOnce(Return(lost_packets));
-  EXPECT_CALL(entropy_calculator_,
-              EntropyHash(511)).WillOnce(testing::Return(0));
+  EXPECT_CALL(entropy_calculator_, EntropyHash(511))
+      .WillOnce(Return(static_cast<QuicPacketEntropyHash>(0)));
   EXPECT_CALL(*send_algorithm_, OnCongestionEvent(true, _, _, _));
   ProcessAckPacket(&frame);
 
diff --git a/net/quic/quic_crypto_client_stream.cc b/net/quic/quic_crypto_client_stream.cc
index 1c41e0a..fd740dd 100644
--- a/net/quic/quic_crypto_client_stream.cc
+++ b/net/quic/quic_crypto_client_stream.cc
@@ -256,8 +256,8 @@
         session()->connection()->supported_versions().front(),
         cached, &crypto_negotiated_params_, &out);
     // Pad the inchoate client hello to fill up a packet.
-    const size_t kFramingOverhead = 50;  // A rough estimate.
-    const size_t max_packet_size =
+    const QuicByteCount kFramingOverhead = 50;  // A rough estimate.
+    const QuicByteCount max_packet_size =
         session()->connection()->max_packet_length();
     if (max_packet_size <= kFramingOverhead) {
       DLOG(DFATAL) << "max_packet_length (" << max_packet_size
@@ -270,7 +270,8 @@
       CloseConnection(QUIC_INTERNAL_ERROR);
       return;
     }
-    out.set_minimum_size(max_packet_size - kFramingOverhead);
+    out.set_minimum_size(
+        static_cast<size_t>(max_packet_size - kFramingOverhead));
     next_state_ = STATE_RECV_REJ;
     SendHandshakeMessage(out);
     return;
diff --git a/net/quic/quic_data_writer.cc b/net/quic/quic_data_writer.cc
index 11b6b55..d48f89f 100644
--- a/net/quic/quic_data_writer.cc
+++ b/net/quic/quic_data_writer.cc
@@ -11,9 +11,6 @@
 #include "base/basictypes.h"
 #include "base/logging.h"
 
-using base::StringPiece;
-using std::numeric_limits;
-
 namespace net {
 
 QuicDataWriter::QuicDataWriter(size_t size)
@@ -47,8 +44,8 @@
 }
 
 bool QuicDataWriter::WriteUInt48(uint64 value) {
-  uint32 hi = value >> 32;
-  uint32 lo = value & GG_UINT64_C(0x00000000FFFFFFFF);
+  uint16 hi = static_cast<uint16>(value >> 32);
+  uint32 lo = static_cast<uint32>(value);
   return WriteUInt32(lo) && WriteUInt16(hi);
 }
 
@@ -61,10 +58,10 @@
   if (value < (GG_UINT64_C(1) << kUFloat16MantissaEffectiveBits)) {
     // Fast path: either the value is denormalized, or has exponent zero.
     // Both cases are represented by the value itself.
-    result = value;
+    result = static_cast<uint16>(value);
   } else if (value >= kUFloat16MaxValue) {
     // Value is out of range; clamp it to the maximum representable.
-    result = numeric_limits<uint16>::max();
+    result = std::numeric_limits<uint16>::max();
   } else {
     // The highest bit is between position 13 and 42 (zero-based), which
     // corresponds to exponent 1-30. In the output, mantissa is from 0 to 10,
@@ -89,17 +86,17 @@
     // Hidden bit (position 11) is set. We should remove it and increment the
     // exponent. Equivalently, we just add it to the exponent.
     // This hides the bit.
-    result = value + (exponent << kUFloat16MantissaBits);
+    result = static_cast<uint16>(value + (exponent << kUFloat16MantissaBits));
   }
 
   return WriteBytes(&result, sizeof(result));
 }
 
-bool QuicDataWriter::WriteStringPiece16(StringPiece val) {
-  if (val.length() > numeric_limits<uint16>::max()) {
+bool QuicDataWriter::WriteStringPiece16(base::StringPiece val) {
+  if (val.size() > std::numeric_limits<uint16>::max()) {
     return false;
   }
-  if (!WriteUInt16(val.size())) {
+  if (!WriteUInt16(static_cast<uint16>(val.size()))) {
     return false;
   }
   return WriteBytes(val.data(), val.size());
@@ -127,7 +124,7 @@
   }
 
 #ifdef ARCH_CPU_64_BITS
-  DCHECK_LE(length, numeric_limits<uint32>::max());
+  DCHECK_LE(length, std::numeric_limits<uint32>::max());
 #endif
 
   return buffer_ + length_;
diff --git a/net/quic/quic_fec_group.cc b/net/quic/quic_fec_group.cc
index 5d55aed..3d52810 100644
--- a/net/quic/quic_fec_group.cc
+++ b/net/quic/quic_fec_group.cc
@@ -164,8 +164,9 @@
 size_t QuicFecGroup::NumMissingPackets() const {
   if (min_protected_packet_ == kNoSequenceNumber)
     return numeric_limits<size_t>::max();
-  return (max_protected_packet_ - min_protected_packet_ + 1) -
-      received_packets_.size();
+  return static_cast<size_t>(
+      (max_protected_packet_ - min_protected_packet_ + 1) -
+      received_packets_.size());
 }
 
 }  // namespace net
diff --git a/net/quic/quic_flags.cc b/net/quic/quic_flags.cc
index e737933..c9658c1 100644
--- a/net/quic/quic_flags.cc
+++ b/net/quic/quic_flags.cc
@@ -32,10 +32,6 @@
 // When true, defaults to BBR congestion control instead of Cubic.
 bool FLAGS_quic_use_bbr_congestion_control = false;
 
-// If true, the server will accept slightly more streams than the negotiated
-// limit.
-bool FLAGS_quic_allow_more_open_streams = false;
-
 // If true, QUIC will be more resilliant to junk packets with valid connection
 // IDs.
 bool FLAGS_quic_drop_junk_packets = true;
diff --git a/net/quic/quic_flags.h b/net/quic/quic_flags.h
index 2ffe618..32c5edf 100644
--- a/net/quic/quic_flags.h
+++ b/net/quic/quic_flags.h
@@ -14,7 +14,6 @@
 NET_EXPORT_PRIVATE extern bool FLAGS_send_quic_crypto_reject_reason;
 NET_EXPORT_PRIVATE extern bool FLAGS_enable_quic_fec;
 NET_EXPORT_PRIVATE extern bool FLAGS_quic_use_bbr_congestion_control;
-NET_EXPORT_PRIVATE extern bool FLAGS_quic_allow_more_open_streams;
 NET_EXPORT_PRIVATE extern bool FLAGS_quic_drop_junk_packets;
 NET_EXPORT_PRIVATE extern bool FLAGS_quic_allow_bbr;
 NET_EXPORT_PRIVATE extern bool FLAGS_allow_truncated_connection_ids_for_quic;
diff --git a/net/quic/quic_flow_controller.cc b/net/quic/quic_flow_controller.cc
index 722b243..59ae8c0 100644
--- a/net/quic/quic_flow_controller.cc
+++ b/net/quic/quic_flow_controller.cc
@@ -16,9 +16,9 @@
 QuicFlowController::QuicFlowController(QuicConnection* connection,
                                        QuicStreamId id,
                                        bool is_server,
-                                       uint64 send_window_offset,
-                                       uint64 receive_window_offset,
-                                       uint64 max_receive_window)
+                                       QuicStreamOffset send_window_offset,
+                                       QuicStreamOffset receive_window_offset,
+                                       QuicByteCount max_receive_window)
     : connection_(connection),
       id_(id),
       is_enabled_(true),
@@ -38,7 +38,7 @@
            << ", setting send window offset to: " << send_window_offset_;
 }
 
-void QuicFlowController::AddBytesConsumed(uint64 bytes_consumed) {
+void QuicFlowController::AddBytesConsumed(QuicByteCount bytes_consumed) {
   if (!IsEnabled()) {
     return;
   }
@@ -49,7 +49,8 @@
   MaybeSendWindowUpdate();
 }
 
-bool QuicFlowController::UpdateHighestReceivedOffset(uint64 new_offset) {
+bool QuicFlowController::UpdateHighestReceivedOffset(
+    QuicStreamOffset new_offset) {
   if (!IsEnabled()) {
     return false;
   }
@@ -66,7 +67,7 @@
   return true;
 }
 
-void QuicFlowController::AddBytesSent(uint64 bytes_sent) {
+void QuicFlowController::AddBytesSent(QuicByteCount bytes_sent) {
   if (!IsEnabled()) {
     return;
   }
@@ -111,8 +112,8 @@
   // (receive window offset - consumed bytes) < (max window / 2).
   // This is behaviour copied from SPDY.
   DCHECK_LT(bytes_consumed_, receive_window_offset_);
-  size_t consumed_window = receive_window_offset_ - bytes_consumed_;
-  size_t threshold = (max_receive_window_ / 2);
+  QuicStreamOffset consumed_window = receive_window_offset_ - bytes_consumed_;
+  QuicByteCount threshold = (max_receive_window_ / 2);
 
   if (consumed_window < threshold) {
     // Update our receive window.
@@ -151,7 +152,8 @@
   }
 }
 
-bool QuicFlowController::UpdateSendWindowOffset(uint64 new_send_window_offset) {
+bool QuicFlowController::UpdateSendWindowOffset(
+    QuicStreamOffset new_send_window_offset) {
   if (!IsEnabled()) {
     return false;
   }
diff --git a/net/quic/quic_flow_controller.h b/net/quic/quic_flow_controller.h
index 0df2b0e..371b8c9 100644
--- a/net/quic/quic_flow_controller.h
+++ b/net/quic/quic_flow_controller.h
@@ -28,30 +28,30 @@
   QuicFlowController(QuicConnection* connection,
                      QuicStreamId id,
                      bool is_server,
-                     uint64 send_window_offset,
-                     uint64 receive_window_offset,
-                     uint64 max_receive_window);
+                     QuicStreamOffset send_window_offset,
+                     QuicStreamOffset receive_window_offset,
+                     QuicByteCount max_receive_window);
   ~QuicFlowController() {}
 
   // Called when we see a new highest received byte offset from the peer, either
   // via a data frame or a RST.
   // Returns true if this call changes highest_received_byte_offset_, and false
   // in the case where |new_offset| is <= highest_received_byte_offset_.
-  bool UpdateHighestReceivedOffset(uint64 new_offset);
+  bool UpdateHighestReceivedOffset(QuicStreamOffset new_offset);
 
   // Called when bytes received from the peer are consumed locally. This may
   // trigger the sending of a WINDOW_UPDATE frame using |connection|.
-  void AddBytesConsumed(uint64 bytes_consumed);
+  void AddBytesConsumed(QuicByteCount bytes_consumed);
 
   // Called when bytes are sent to the peer.
-  void AddBytesSent(uint64 bytes_sent);
+  void AddBytesSent(QuicByteCount bytes_sent);
 
   // Set a new send window offset.
   // Returns true if this increases send_window_offset_ and is now blocked.
-  bool UpdateSendWindowOffset(uint64 new_send_window_offset);
+  bool UpdateSendWindowOffset(QuicStreamOffset new_send_window_offset);
 
   // Returns the current available send window.
-  uint64 SendWindowSize() const;
+  QuicByteCount SendWindowSize() const;
 
   // Send a BLOCKED frame if appropriate.
   void MaybeSendBlocked();
@@ -68,9 +68,9 @@
   // Returns true if flow control receive limits have been violated by the peer.
   bool FlowControlViolation();
 
-  uint64 bytes_consumed() const { return bytes_consumed_; }
+  QuicByteCount bytes_consumed() const { return bytes_consumed_; }
 
-  uint64 highest_received_byte_offset() const {
+  QuicStreamOffset highest_received_byte_offset() const {
     return highest_received_byte_offset_;
   }
 
@@ -97,29 +97,29 @@
 
   // Track number of bytes received from the peer, which have been consumed
   // locally.
-  uint64 bytes_consumed_;
+  QuicByteCount bytes_consumed_;
 
   // The highest byte offset we have seen from the peer. This could be the
   // highest offset in a data frame, or a final value in a RST.
-  uint64 highest_received_byte_offset_;
+  QuicStreamOffset highest_received_byte_offset_;
 
   // Tracks number of bytes sent to the peer.
-  uint64 bytes_sent_;
+  QuicByteCount bytes_sent_;
 
   // The absolute offset in the outgoing byte stream. If this offset is reached
   // then we become flow control blocked until we receive a WINDOW_UPDATE.
-  uint64 send_window_offset_;
+  QuicStreamOffset send_window_offset_;
 
   // The absolute offset in the incoming byte stream. The peer should never send
   // us bytes which are beyond this offset.
-  uint64 receive_window_offset_;
+  QuicStreamOffset receive_window_offset_;
 
   // Largest size the receive window can grow to.
-  uint64 max_receive_window_;
+  QuicByteCount max_receive_window_;
 
   // Keep track of the last time we sent a BLOCKED frame. We should only send
   // another when the number of bytes we have sent has changed.
-  uint64 last_blocked_send_window_offset_;
+  QuicStreamOffset last_blocked_send_window_offset_;
 
   DISALLOW_COPY_AND_ASSIGN(QuicFlowController);
 };
diff --git a/net/quic/quic_flow_controller_test.cc b/net/quic/quic_flow_controller_test.cc
index f960169..e3fcafe 100644
--- a/net/quic/quic_flow_controller_test.cc
+++ b/net/quic/quic_flow_controller_test.cc
@@ -4,6 +4,7 @@
 
 #include "net/quic/quic_flow_controller.h"
 
+#include "base/format_macros.h"
 #include "base/strings/stringprintf.h"
 #include "net/quic/quic_utils.h"
 #include "net/quic/test_tools/quic_connection_peer.h"
@@ -12,13 +13,9 @@
 #include "net/test/gtest_util.h"
 #include "testing/gmock/include/gmock/gmock.h"
 
-using base::StringPrintf;
-
 namespace net {
 namespace test {
 
-using ::testing::_;
-
 class QuicFlowControllerTest : public ::testing::Test {
  public:
   QuicFlowControllerTest()
@@ -37,9 +34,9 @@
 
  protected:
   QuicStreamId stream_id_;
-  uint64 send_window_;
-  uint64 receive_window_;
-  uint64 max_receive_window_;
+  QuicByteCount send_window_;
+  QuicByteCount receive_window_;
+  QuicByteCount max_receive_window_;
   scoped_ptr<QuicFlowController> flow_controller_;
   MockConnection connection_;
 };
@@ -80,8 +77,8 @@
               SendConnectionClose(QUIC_FLOW_CONTROL_SENT_TOO_MUCH_DATA));
   EXPECT_DFATAL(
       flow_controller_->AddBytesSent(send_window_ * 10),
-      StringPrintf("Trying to send an extra %d bytes",
-                   static_cast<int>(send_window_ * 10)));
+      base::StringPrintf("Trying to send an extra %" PRIu64 " bytes",
+                         send_window_ * 10));
   EXPECT_TRUE(flow_controller_->IsBlocked());
   EXPECT_EQ(0u, flow_controller_->SendWindowSize());
 }
@@ -104,7 +101,7 @@
             QuicFlowControllerPeer::ReceiveWindowSize(flow_controller_.get()));
 
   // Consume enough bytes to send a WINDOW_UPDATE frame.
-  EXPECT_CALL(connection_, SendWindowUpdate(stream_id_, _)).Times(1);
+  EXPECT_CALL(connection_, SendWindowUpdate(stream_id_, ::testing::_)).Times(1);
 
   flow_controller_->AddBytesConsumed(1 + receive_window_ / 2);
 
diff --git a/net/quic/quic_framer.cc b/net/quic/quic_framer.cc
index d2a7694..c381695 100644
--- a/net/quic/quic_framer.cc
+++ b/net/quic/quic_framer.cc
@@ -781,12 +781,12 @@
   // The FEC group number is the sequence number of the first fec
   // protected packet, or 0 if this packet is not protected.
   if (header.is_in_fec_group == IN_FEC_GROUP) {
-    DCHECK_GE(header.packet_sequence_number, header.fec_group);
-    DCHECK_GT(255u, header.packet_sequence_number - header.fec_group);
+    DCHECK_LE(header.fec_group, header.packet_sequence_number);
+    DCHECK_LT(header.packet_sequence_number - header.fec_group, 255u);
     // Offset from the current packet sequence number to the first fec
     // protected packet.
     uint8 first_fec_protected_packet_offset =
-        header.packet_sequence_number - header.fec_group;
+        static_cast<uint8>(header.packet_sequence_number - header.fec_group);
     if (!writer->WriteBytes(&first_fec_protected_packet_offset, 1)) {
       return false;
     }
@@ -987,18 +987,20 @@
   QuicPacketSequenceNumber last_missing = *iter;
   ++iter;
   for (; iter != frame.missing_packets.end(); ++iter) {
-    if (cur_range_length != numeric_limits<uint8>::max() &&
+    if (cur_range_length < numeric_limits<uint8>::max() &&
         *iter == (last_missing + 1)) {
       ++cur_range_length;
     } else {
-      ack_info.nack_ranges[last_missing - cur_range_length] = cur_range_length;
+      ack_info.nack_ranges[last_missing - cur_range_length] =
+          static_cast<uint8>(cur_range_length);
       cur_range_length = 0;
     }
     ack_info.max_delta = max(ack_info.max_delta, *iter - last_missing);
     last_missing = *iter;
   }
   // Include the last nack range.
-  ack_info.nack_ranges[last_missing - cur_range_length] = cur_range_length;
+  ack_info.nack_ranges[last_missing - cur_range_length] =
+      static_cast<uint8>(cur_range_length);
   // Include the range to the largest observed.
   ack_info.max_delta =
       max(ack_info.max_delta, frame.largest_observed - last_missing);
@@ -1904,7 +1906,7 @@
       break;
     }
     default:
-      type_byte = frame.type;
+      type_byte = static_cast<uint8>(frame.type);
       break;
   }
 
@@ -1957,7 +1959,9 @@
     return false;
   }
   if (!no_stream_frame_length) {
-    if (!writer->WriteUInt16(frame.data.TotalBufferSize())) {
+    if ((frame.data.TotalBufferSize() > std::numeric_limits<uint16>::max()) ||
+        !writer->WriteUInt16(
+            static_cast<uint16>(frame.data.TotalBufferSize()))) {
       LOG(DFATAL) << "Writing stream frame length failed";
       return false;
     }
@@ -2071,7 +2075,7 @@
   }
 
   const uint8 num_missing_ranges =
-      min(ack_info.nack_ranges.size(), max_num_ranges);
+      static_cast<uint8>(min(ack_info.nack_ranges.size(), max_num_ranges));
   if (!writer->WriteBytes(&num_missing_ranges, 1)) {
     return false;
   }
@@ -2098,11 +2102,11 @@
 
   // Append revived packets.
   // If not all the revived packets fit, only mention the ones that do.
-  uint8 num_revived_packets = min(frame.revived_packets.size(),
-                                  kMaxRevivedPackets);
-  num_revived_packets = min(
+  uint8 num_revived_packets =
+      static_cast<uint8>(min(frame.revived_packets.size(), kMaxRevivedPackets));
+  num_revived_packets = static_cast<uint8>(min(
       static_cast<size_t>(num_revived_packets),
-      (writer->capacity() - writer->length()) / largest_observed_length);
+      (writer->capacity() - writer->length()) / largest_observed_length));
   if (!writer->WriteBytes(&num_revived_packets, 1)) {
     return false;
   }
diff --git a/net/quic/quic_protocol.h b/net/quic/quic_protocol.h
index 4cd53a9..d5b8d1b 100644
--- a/net/quic/quic_protocol.h
+++ b/net/quic/quic_protocol.h
@@ -59,8 +59,6 @@
 // Default maximum packet size used in Linux TCP implementations.
 const QuicByteCount kDefaultTCPMSS = 1460;
 
-// Maximum size of the initial congestion window in packets.
-const QuicPacketCount kMaxInitialWindow = 100;
 // We match SPDY's use of 32 when secure (since we'd compete with SPDY).
 const QuicPacketCount kInitialCongestionWindowSecure = 32;
 // Be conservative, and just use double a typical TCP ICWND for HTTP.
@@ -69,9 +67,11 @@
 // Default size of initial flow control window, for both stream and session.
 const uint32 kDefaultFlowControlSendWindow = 16 * 1024;  // 16 KB
 
-// Maximum size of the congestion window, in packets, for TCP congestion control
-// algorithms.
-const size_t kMaxTcpCongestionWindow = 200;
+// Minimum size of the CWND, in packets, when doing bandwidth resumption.
+const QuicPacketCount kMinCongestionWindowForBandwidthResumption = 10;
+
+// Maximum size of the CWND, in packets, for TCP congestion control algorithms.
+const QuicPacketCount kMaxTcpCongestionWindow = 200;
 
 // Default size of the socket receive buffer in bytes.
 const QuicByteCount kDefaultSocketReceiveBuffer = 256 * 1024;
@@ -1089,7 +1089,7 @@
   QuicTime sent_time;
   // Zero when the packet is serialized, non-zero once it's sent.
   QuicByteCount bytes_sent;
-  size_t nack_count;
+  QuicPacketCount nack_count;
   // Reason why this packet was transmitted.
   TransmissionType transmission_type;
   // Stores the sequence numbers of all transmissions of this packet.
diff --git a/net/quic/quic_received_packet_manager.cc b/net/quic/quic_received_packet_manager.cc
index e8be74a..195dbd8 100644
--- a/net/quic/quic_received_packet_manager.cc
+++ b/net/quic/quic_received_packet_manager.cc
@@ -164,9 +164,9 @@
 
     // Record how out of order stats.
     ++stats_->packets_reordered;
-    uint32 sequence_gap = ack_frame_.largest_observed - sequence_number;
     stats_->max_sequence_reordering =
-        max(stats_->max_sequence_reordering, sequence_gap);
+        max(stats_->max_sequence_reordering,
+            ack_frame_.largest_observed - sequence_number);
     int64 reordering_time_us =
         receipt_time.Subtract(time_largest_observed_).ToMicroseconds();
     stats_->max_time_reordering_us = max(stats_->max_time_reordering_us,
diff --git a/net/quic/quic_sent_packet_manager.cc b/net/quic/quic_sent_packet_manager.cc
index 142871e..56c327c 100644
--- a/net/quic/quic_sent_packet_manager.cc
+++ b/net/quic/quic_sent_packet_manager.cc
@@ -163,9 +163,9 @@
   }
 }
 
-void QuicSentPacketManager::ResumeConnectionState(
+bool QuicSentPacketManager::ResumeConnectionState(
     const CachedNetworkParameters& cached_network_params) {
-  send_algorithm_->ResumeConnectionState(cached_network_params);
+  return send_algorithm_->ResumeConnectionState(cached_network_params);
 }
 
 void QuicSentPacketManager::SetNumOpenStreams(size_t num_streams) {
@@ -285,7 +285,7 @@
       // threshold is to tolerate re-ordering.  This handles both StretchAcks
       // and Forward Acks.
       // The nack count only increases when the largest observed increases.
-      size_t min_nacks = ack_frame.largest_observed - sequence_number;
+      QuicPacketCount min_nacks = ack_frame.largest_observed - sequence_number;
       // Truncated acks can nack the largest observed, so use a min of 1.
       if (min_nacks == 0) {
         min_nacks = 1;
diff --git a/net/quic/quic_sent_packet_manager.h b/net/quic/quic_sent_packet_manager.h
index 2a94e09..e651efe 100644
--- a/net/quic/quic_sent_packet_manager.h
+++ b/net/quic/quic_sent_packet_manager.h
@@ -101,7 +101,8 @@
   virtual void SetFromConfig(const QuicConfig& config);
 
   // Pass the CachedNetworkParameters to the send algorithm.
-  void ResumeConnectionState(
+  // Returns true if this changes the initial connection state.
+  bool ResumeConnectionState(
       const CachedNetworkParameters& cached_network_params);
 
   void SetNumOpenStreams(size_t num_streams);
diff --git a/net/quic/quic_server.cc b/net/quic/quic_server.cc
index fecb4e5..7b0f454 100644
--- a/net/quic/quic_server.cc
+++ b/net/quic/quic_server.cc
@@ -74,7 +74,8 @@
   // These send and receive buffer sizes are sized for a single connection,
   // because the default usage of QuicServer is as a test server with one or
   // two clients.  Adjust higher for use with many clients.
-  rc = socket->SetReceiveBufferSize(TcpReceiver::kReceiveWindowTCP);
+  rc = socket->SetReceiveBufferSize(
+      static_cast<int32>(TcpReceiver::kReceiveWindowTCP));
   if (rc < 0) {
     LOG(ERROR) << "SetReceiveBufferSize() failed: " << ErrorToString(rc);
     return rc;
diff --git a/net/quic/quic_session.cc b/net/quic/quic_session.cc
index e4b163f..f05395e 100644
--- a/net/quic/quic_session.cc
+++ b/net/quic/quic_session.cc
@@ -7,7 +7,6 @@
 #include "base/stl_util.h"
 #include "net/quic/crypto/proof_verifier.h"
 #include "net/quic/quic_connection.h"
-#include "net/quic/quic_flags.h"
 #include "net/quic/quic_flow_controller.h"
 #include "net/quic/quic_headers_stream.h"
 #include "net/ssl/ssl_info.h"
@@ -438,7 +437,7 @@
 
   DVLOG(1) << ENDPOINT << "Received final byte offset " << final_byte_offset
            << " for stream " << stream_id;
-  uint64 offset_diff = final_byte_offset - it->second;
+  QuicByteCount offset_diff = final_byte_offset - it->second;
   if (flow_controller_->UpdateHighestReceivedOffset(
       flow_controller_->highest_received_byte_offset() + offset_diff)) {
     // If the final offset violates flow control, close the connection now.
@@ -465,20 +464,18 @@
   connection_->SetFromConfig(config_);
   QuicVersion version = connection()->version();
 
-  if (FLAGS_quic_allow_more_open_streams) {
-    uint32 max_streams = config_.MaxStreamsPerConnection();
-    if (is_server()) {
-      // A server should accept a small number of additional streams beyond the
-      // limit sent to the client. This helps avoid early connection termination
-      // when FIN/RSTs for old streams are lost or arrive out of order.
-      // Use a minimum number of additional streams, or a percentage increase,
-      // whichever is larger.
-      max_streams =
-          max(max_streams + kMaxStreamsMinimumIncrement,
-              static_cast<uint32>(max_streams * kMaxStreamsMultiplier));
-    }
-    set_max_open_streams(max_streams);
+  uint32 max_streams = config_.MaxStreamsPerConnection();
+  if (is_server()) {
+    // A server should accept a small number of additional streams beyond the
+    // limit sent to the client. This helps avoid early connection termination
+    // when FIN/RSTs for old streams are lost or arrive out of order.
+    // Use a minimum number of additional streams, or a percentage increase,
+    // whichever is larger.
+    max_streams =
+        max(max_streams + kMaxStreamsMinimumIncrement,
+            static_cast<uint32>(max_streams * kMaxStreamsMultiplier));
   }
+  set_max_open_streams(max_streams);
 
   if (version == QUIC_VERSION_19) {
     // QUIC_VERSION_19 doesn't support independent stream/session flow
@@ -486,7 +483,8 @@
     if (config_.HasReceivedInitialFlowControlWindowBytes()) {
       // Streams which were created before the SHLO was received (0-RTT
       // requests) are now informed of the peer's initial flow control window.
-      uint32 new_window = config_.ReceivedInitialFlowControlWindowBytes();
+      QuicStreamOffset new_window =
+          config_.ReceivedInitialFlowControlWindowBytes();
       OnNewStreamFlowControlWindow(new_window);
       OnNewSessionFlowControlWindow(new_window);
     }
@@ -508,7 +506,7 @@
   }
 }
 
-void QuicSession::OnNewStreamFlowControlWindow(uint32 new_window) {
+void QuicSession::OnNewStreamFlowControlWindow(QuicStreamOffset new_window) {
   if (new_window < kDefaultFlowControlSendWindow) {
     LOG(ERROR)
         << "Peer sent us an invalid stream flow control send window: "
@@ -530,7 +528,7 @@
   }
 }
 
-void QuicSession::OnNewSessionFlowControlWindow(uint32 new_window) {
+void QuicSession::OnNewSessionFlowControlWindow(QuicStreamOffset new_window) {
   if (new_window < kDefaultFlowControlSendWindow) {
     LOG(ERROR)
         << "Peer sent us an invalid session flow control send window: "
@@ -563,9 +561,6 @@
       // Discard originally encrypted packets, since they can't be decrypted by
       // the peer.
       connection_->NeuterUnencryptedPackets();
-      if (!FLAGS_quic_allow_more_open_streams) {
-        max_open_streams_ = config_.MaxStreamsPerConnection();
-      }
       break;
 
     default:
diff --git a/net/quic/quic_session.h b/net/quic/quic_session.h
index 43f4042..7bc743a 100644
--- a/net/quic/quic_session.h
+++ b/net/quic/quic_session.h
@@ -280,11 +280,11 @@
 
   // Called in OnConfigNegotiated when we receive a new stream level flow
   // control window in a negotiated config. Closes the connection if invalid.
-  void OnNewStreamFlowControlWindow(uint32 new_window);
+  void OnNewStreamFlowControlWindow(QuicStreamOffset new_window);
 
   // Called in OnConfigNegotiated when we receive a new session level flow
   // control window in a negotiated config. Closes the connection if invalid.
-  void OnNewSessionFlowControlWindow(uint32 new_window);
+  void OnNewSessionFlowControlWindow(QuicStreamOffset new_window);
 
   // Keep track of highest received byte offset of locally closed streams, while
   // waiting for a definitive final highest offset from the peer.
diff --git a/net/quic/quic_stream_factory.cc b/net/quic/quic_stream_factory.cc
index 32adeda..e7612a0 100644
--- a/net/quic/quic_stream_factory.cc
+++ b/net/quic/quic_stream_factory.cc
@@ -871,7 +871,8 @@
   // that is more than large enough for a full receive window, and yet
   // does not consume "too much" memory.  If we see bursty packet loss, we may
   // revisit this setting and test for its impact.
-  const int32 kSocketBufferSize(TcpReceiver::kReceiveWindowTCP);
+  const int32 kSocketBufferSize =
+      static_cast<int32>(TcpReceiver::kReceiveWindowTCP);
   rv = socket->SetReceiveBufferSize(kSocketBufferSize);
   if (rv != OK) {
     HistogramCreateSessionFailure(CREATION_ERROR_SETTING_RECEIVE_BUFFER);
@@ -928,7 +929,8 @@
         http_server_properties_->GetServerNetworkStats(
             server_id.host_port_pair());
     if (stats != nullptr) {
-      config.SetInitialRoundTripTimeUsToSend(stats->srtt.InMicroseconds());
+      config.SetInitialRoundTripTimeUsToSend(
+          static_cast<uint32>(stats->srtt.InMicroseconds()));
     }
   }
 
diff --git a/net/quic/quic_stream_sequencer.cc b/net/quic/quic_stream_sequencer.cc
index 5df81e5..153e6cf 100644
--- a/net/quic/quic_stream_sequencer.cc
+++ b/net/quic/quic_stream_sequencer.cc
@@ -160,7 +160,7 @@
   size_t iov_index = 0;
   size_t iov_offset = 0;
   size_t frame_offset = 0;
-  size_t initial_bytes_consumed = num_bytes_consumed_;
+  QuicStreamOffset initial_bytes_consumed = num_bytes_consumed_;
 
   while (iov_index < iov_len &&
          it != buffered_frames_.end() &&
@@ -194,7 +194,7 @@
     buffered_frames_.erase(buffered_frames_.begin());
     RecordBytesConsumed(frame_offset);
   }
-  return num_bytes_consumed_ - initial_bytes_consumed;
+  return static_cast<int>(num_bytes_consumed_ - initial_bytes_consumed);
 }
 
 bool QuicStreamSequencer::HasBytesToRead() const {
diff --git a/net/quic/quic_time.cc b/net/quic/quic_time.cc
index e20a338..5d653a3 100644
--- a/net/quic/quic_time.cc
+++ b/net/quic/quic_time.cc
@@ -67,7 +67,8 @@
 }
 
 QuicTime::Delta QuicTime::Delta::Multiply(double d) const {
-  return QuicTime::Delta::FromMicroseconds(ToMicroseconds() * d);
+  return QuicTime::Delta::FromMicroseconds(
+      static_cast<int64>(ToMicroseconds() * d));
 }
 
 // static
diff --git a/net/quic/quic_unacked_packet_map.cc b/net/quic/quic_unacked_packet_map.cc
index bbff3c9..1267707 100644
--- a/net/quic/quic_unacked_packet_map.cc
+++ b/net/quic/quic_unacked_packet_map.cc
@@ -182,7 +182,7 @@
 }
 
 void QuicUnackedPacketMap::NackPacket(QuicPacketSequenceNumber sequence_number,
-                                      size_t min_nacks) {
+                                      QuicPacketCount min_nacks) {
   DCHECK_GE(sequence_number, least_unacked_);
   DCHECK_LT(sequence_number, least_unacked_ + unacked_packets_.size());
   unacked_packets_[sequence_number - least_unacked_].nack_count =
diff --git a/net/quic/quic_unacked_packet_map.h b/net/quic/quic_unacked_packet_map.h
index 165e41f..6c56dd6 100644
--- a/net/quic/quic_unacked_packet_map.h
+++ b/net/quic/quic_unacked_packet_map.h
@@ -38,7 +38,7 @@
 
   // Sets the nack count to the max of the current nack count and |min_nacks|.
   void NackPacket(QuicPacketSequenceNumber sequence_number,
-                  size_t min_nacks);
+                  QuicPacketCount min_nacks);
 
   // Marks |sequence_number| as no longer in flight.
   void RemoveFromInFlight(QuicPacketSequenceNumber sequence_number);
@@ -164,7 +164,7 @@
   // The packet at the 0th index of unacked_packets_.
   QuicPacketSequenceNumber least_unacked_;
 
-  size_t bytes_in_flight_;
+  QuicByteCount bytes_in_flight_;
   // Number of retransmittable crypto handshake packets.
   size_t pending_crypto_packet_count_;
 
diff --git a/net/quic/quic_utils.cc b/net/quic/quic_utils.cc
index f144651..a0e1de5 100644
--- a/net/quic/quic_utils.cc
+++ b/net/quic/quic_utils.cc
@@ -259,13 +259,13 @@
 
 // static
 string QuicUtils::TagToString(QuicTag tag) {
-  char chars[4];
+  char chars[sizeof tag];
   bool ascii = true;
   const QuicTag orig_tag = tag;
 
-  for (size_t i = 0; i < sizeof(chars); i++) {
-    chars[i] = tag;
-    if ((chars[i] == 0 || chars[i] == '\xff') && i == 3) {
+  for (size_t i = 0; i < arraysize(chars); i++) {
+    chars[i] = static_cast<char>(tag);
+    if ((chars[i] == 0 || chars[i] == '\xff') && i == arraysize(chars) - 1) {
       chars[i] = ' ';
     }
     if (!isprint(static_cast<unsigned char>(chars[i]))) {
diff --git a/net/quic/reliable_quic_stream.cc b/net/quic/reliable_quic_stream.cc
index 70b6d9a..116d843 100644
--- a/net/quic/reliable_quic_stream.cc
+++ b/net/quic/reliable_quic_stream.cc
@@ -363,7 +363,7 @@
 
   if (flow_controller_.IsEnabled()) {
     // How much data we are allowed to write from flow control.
-    uint64 send_window = flow_controller_.SendWindowSize();
+    QuicByteCount send_window = flow_controller_.SendWindowSize();
     // TODO(rjshade): Remove connection_flow_controller_->IsEnabled() check when
     // removing QUIC_VERSION_19.
     if (stream_contributes_to_connection_flow_control_ &&
@@ -383,7 +383,7 @@
       fin = false;
 
       // Writing more data would be a violation of flow control.
-      write_length = send_window;
+      write_length = static_cast<size_t>(send_window);
     }
   }
 
@@ -466,7 +466,8 @@
   // As there may be more bytes in flight and we need to ensure that both
   // endpoints have the same connection level flow control state, mark all
   // unreceived or buffered bytes as consumed.
-  uint64 bytes_to_consume = flow_controller_.highest_received_byte_offset() -
+  QuicByteCount bytes_to_consume =
+      flow_controller_.highest_received_byte_offset() -
       flow_controller_.bytes_consumed();
   AddBytesConsumed(bytes_to_consume);
 }
@@ -487,7 +488,8 @@
   }
 }
 
-bool ReliableQuicStream::MaybeIncreaseHighestReceivedOffset(uint64 new_offset) {
+bool ReliableQuicStream::MaybeIncreaseHighestReceivedOffset(
+    QuicStreamOffset new_offset) {
   if (!flow_controller_.IsEnabled()) {
     return false;
   }
@@ -508,7 +510,7 @@
   return true;
 }
 
-void ReliableQuicStream::AddBytesSent(uint64 bytes) {
+void ReliableQuicStream::AddBytesSent(QuicByteCount bytes) {
   if (flow_controller_.IsEnabled()) {
     flow_controller_.AddBytesSent(bytes);
     if (stream_contributes_to_connection_flow_control_) {
@@ -517,7 +519,7 @@
   }
 }
 
-void ReliableQuicStream::AddBytesConsumed(uint64 bytes) {
+void ReliableQuicStream::AddBytesConsumed(QuicByteCount bytes) {
   if (flow_controller_.IsEnabled()) {
     // Only adjust stream level flow controller if we are still reading.
     if (!read_side_closed_) {
@@ -530,7 +532,7 @@
   }
 }
 
-void ReliableQuicStream::UpdateSendWindowOffset(uint64 new_window) {
+void ReliableQuicStream::UpdateSendWindowOffset(QuicStreamOffset new_window) {
   if (flow_controller_.UpdateSendWindowOffset(new_window)) {
     OnCanWrite();
   }
diff --git a/net/quic/reliable_quic_stream.h b/net/quic/reliable_quic_stream.h
index 24bc349..698fefb 100644
--- a/net/quic/reliable_quic_stream.h
+++ b/net/quic/reliable_quic_stream.h
@@ -103,17 +103,17 @@
 
   // Called when we see a frame which could increase the highest offset.
   // Returns true if the highest offset did increase.
-  bool MaybeIncreaseHighestReceivedOffset(uint64 new_offset);
+  bool MaybeIncreaseHighestReceivedOffset(QuicStreamOffset new_offset);
   // Called when bytese are sent to the peer.
-  void AddBytesSent(uint64 bytes);
+  void AddBytesSent(QuicByteCount bytes);
   // Called by the stream sequencer as bytes are consumed from the buffer.
   // If our receive window has dropped below the threshold, then send a
   // WINDOW_UPDATE frame.
-  void AddBytesConsumed(uint64 bytes);
+  void AddBytesConsumed(QuicByteCount bytes);
 
   // Updates the flow controller's send window offset and calls OnCanWrite if
   // it was blocked before.
-  void UpdateSendWindowOffset(uint64 new_offset);
+  void UpdateSendWindowOffset(QuicStreamOffset new_offset);
 
   // Returns true if the stream is flow control blocked, by the stream flow
   // control window or the connection flow control window.
diff --git a/net/quic/test_tools/mock_crypto_client_stream.cc b/net/quic/test_tools/mock_crypto_client_stream.cc
index dd0e30b..eef3b80 100644
--- a/net/quic/test_tools/mock_crypto_client_stream.cc
+++ b/net/quic/test_tools/mock_crypto_client_stream.cc
@@ -100,6 +100,7 @@
       session()->config()->ProcessPeerHello(msg, CLIENT, &error_details);
   ASSERT_EQ(QUIC_NO_ERROR, error);
   ASSERT_TRUE(session()->config()->negotiated());
+  session()->OnConfigNegotiated();
 }
 
 QuicClientSessionBase* MockCryptoClientStream::client_session() {
diff --git a/net/quic/test_tools/quic_flow_controller_peer.cc b/net/quic/test_tools/quic_flow_controller_peer.cc
index 35882ed..d6a1098 100644
--- a/net/quic/test_tools/quic_flow_controller_peer.cc
+++ b/net/quic/test_tools/quic_flow_controller_peer.cc
@@ -15,43 +15,44 @@
 // static
 void QuicFlowControllerPeer::SetSendWindowOffset(
     QuicFlowController* flow_controller,
-    uint64 offset) {
+    QuicStreamOffset offset) {
   flow_controller->send_window_offset_ = offset;
 }
 
 // static
 void QuicFlowControllerPeer::SetReceiveWindowOffset(
     QuicFlowController* flow_controller,
-    uint64 offset) {
+    QuicStreamOffset offset) {
   flow_controller->receive_window_offset_ = offset;
 }
 
 // static
 void QuicFlowControllerPeer::SetMaxReceiveWindow(
-    QuicFlowController* flow_controller, uint64 window_size) {
+  QuicFlowController* flow_controller,
+  QuicByteCount window_size) {
   flow_controller->max_receive_window_ = window_size;
 }
 
 // static
-uint64 QuicFlowControllerPeer::SendWindowOffset(
+QuicStreamOffset QuicFlowControllerPeer::SendWindowOffset(
     QuicFlowController* flow_controller) {
   return flow_controller->send_window_offset_;
 }
 
 // static
-uint64 QuicFlowControllerPeer::SendWindowSize(
+QuicByteCount QuicFlowControllerPeer::SendWindowSize(
     QuicFlowController* flow_controller) {
   return flow_controller->SendWindowSize();
 }
 
 // static
-uint64 QuicFlowControllerPeer::ReceiveWindowOffset(
+QuicStreamOffset QuicFlowControllerPeer::ReceiveWindowOffset(
     QuicFlowController* flow_controller) {
   return flow_controller->receive_window_offset_;
 }
 
 // static
-uint64 QuicFlowControllerPeer::ReceiveWindowSize(
+QuicByteCount QuicFlowControllerPeer::ReceiveWindowSize(
     QuicFlowController* flow_controller) {
   return flow_controller->receive_window_offset_ -
          flow_controller->highest_received_byte_offset_;
diff --git a/net/quic/test_tools/quic_flow_controller_peer.h b/net/quic/test_tools/quic_flow_controller_peer.h
index 213d40d..4270d96 100644
--- a/net/quic/test_tools/quic_flow_controller_peer.h
+++ b/net/quic/test_tools/quic_flow_controller_peer.h
@@ -16,21 +16,22 @@
 class QuicFlowControllerPeer {
  public:
   static void SetSendWindowOffset(QuicFlowController* flow_controller,
-                                  uint64 offset);
+                                  QuicStreamOffset offset);
 
   static void SetReceiveWindowOffset(QuicFlowController* flow_controller,
-                                     uint64 offset);
+                                     QuicStreamOffset offset);
 
   static void SetMaxReceiveWindow(QuicFlowController* flow_controller,
-                                  uint64 window_size);
+                                  QuicByteCount window_size);
 
-  static uint64 SendWindowOffset(QuicFlowController* flow_controller);
+  static QuicStreamOffset SendWindowOffset(QuicFlowController* flow_controller);
 
-  static uint64 SendWindowSize(QuicFlowController* flow_controller);
+  static QuicByteCount SendWindowSize(QuicFlowController* flow_controller);
 
-  static uint64 ReceiveWindowOffset(QuicFlowController* flow_controller);
+  static QuicStreamOffset ReceiveWindowOffset(
+      QuicFlowController* flow_controller);
 
-  static uint64 ReceiveWindowSize(QuicFlowController* flow_controller);
+  static QuicByteCount ReceiveWindowSize(QuicFlowController* flow_controller);
 
  private:
   DISALLOW_COPY_AND_ASSIGN(QuicFlowControllerPeer);
diff --git a/net/quic/test_tools/quic_sent_packet_manager_peer.cc b/net/quic/test_tools/quic_sent_packet_manager_peer.cc
index bb9fb38..311b688 100644
--- a/net/quic/test_tools/quic_sent_packet_manager_peer.cc
+++ b/net/quic/test_tools/quic_sent_packet_manager_peer.cc
@@ -72,7 +72,7 @@
 }
 
 // static
-size_t QuicSentPacketManagerPeer::GetNackCount(
+QuicPacketCount QuicSentPacketManagerPeer::GetNackCount(
     const QuicSentPacketManager* sent_packet_manager,
     QuicPacketSequenceNumber sequence_number) {
   return sent_packet_manager->unacked_packets_.
diff --git a/net/quic/test_tools/quic_sent_packet_manager_peer.h b/net/quic/test_tools/quic_sent_packet_manager_peer.h
index dfc524d..2d850d3 100644
--- a/net/quic/test_tools/quic_sent_packet_manager_peer.h
+++ b/net/quic/test_tools/quic_sent_packet_manager_peer.h
@@ -42,7 +42,7 @@
 
   static RttStats* GetRttStats(QuicSentPacketManager* sent_packet_manager);
 
-  static size_t GetNackCount(
+  static QuicPacketCount GetNackCount(
       const QuicSentPacketManager* sent_packet_manager,
       QuicPacketSequenceNumber sequence_number);
 
diff --git a/net/quic/test_tools/quic_test_utils.h b/net/quic/test_tools/quic_test_utils.h
index 9df03eb..6b6efe3 100644
--- a/net/quic/test_tools/quic_test_utils.h
+++ b/net/quic/test_tools/quic_test_utils.h
@@ -319,6 +319,8 @@
                                       QuicStreamOffset byte_offset));
   MOCK_METHOD0(OnCanWrite, void());
 
+  MOCK_METHOD1(ResumeConnectionState, bool(const CachedNetworkParameters&));
+
   void ProcessUdpPacketInternal(const IPEndPoint& self_address,
                                 const IPEndPoint& peer_address,
                                 const QuicEncryptedPacket& packet) {
@@ -483,7 +485,7 @@
   MOCK_CONST_METHOD0(InRecovery, bool());
   MOCK_CONST_METHOD0(GetSlowStartThreshold, QuicByteCount());
   MOCK_CONST_METHOD0(GetCongestionControlType, CongestionControlType());
-  MOCK_METHOD1(ResumeConnectionState, void(const CachedNetworkParameters&));
+  MOCK_METHOD1(ResumeConnectionState, bool(const CachedNetworkParameters&));
 
  private:
   DISALLOW_COPY_AND_ASSIGN(MockSendAlgorithm);
diff --git a/net/socket/buffered_write_stream_socket.cc b/net/socket/buffered_write_stream_socket.cc
deleted file mode 100644
index e69de29..0000000
--- a/net/socket/buffered_write_stream_socket.cc
+++ /dev/null
diff --git a/net/socket/buffered_write_stream_socket.h b/net/socket/buffered_write_stream_socket.h
deleted file mode 100644
index e69de29..0000000
--- a/net/socket/buffered_write_stream_socket.h
+++ /dev/null
diff --git a/net/socket/buffered_write_stream_socket_unittest.cc b/net/socket/buffered_write_stream_socket_unittest.cc
deleted file mode 100644
index e69de29..0000000
--- a/net/socket/buffered_write_stream_socket_unittest.cc
+++ /dev/null
diff --git a/net/socket/client_socket_pool_manager_impl.cc b/net/socket/client_socket_pool_manager_impl.cc
index 5ed31fc..190023c 100644
--- a/net/socket/client_socket_pool_manager_impl.cc
+++ b/net/socket/client_socket_pool_manager_impl.cc
@@ -42,6 +42,7 @@
     ChannelIDService* channel_id_service,
     TransportSecurityState* transport_security_state,
     CTVerifier* cert_transparency_verifier,
+    CertPolicyEnforcer* cert_policy_enforcer,
     const std::string& ssl_session_cache_shard,
     ProxyService* proxy_service,
     SSLConfigService* ssl_config_service,
@@ -55,6 +56,7 @@
       channel_id_service_(channel_id_service),
       transport_security_state_(transport_security_state),
       cert_transparency_verifier_(cert_transparency_verifier),
+      cert_policy_enforcer_(cert_policy_enforcer),
       ssl_session_cache_shard_(ssl_session_cache_shard),
       proxy_service_(proxy_service),
       ssl_config_service_(ssl_config_service),
@@ -85,6 +87,7 @@
                                                channel_id_service,
                                                transport_security_state,
                                                cert_transparency_verifier,
+                                               cert_policy_enforcer,
                                                ssl_session_cache_shard,
                                                socket_factory,
                                                transport_socket_pool_.get(),
@@ -297,22 +300,17 @@
   std::pair<SSLSocketPoolMap::iterator, bool> ssl_https_ret =
       ssl_socket_pools_for_https_proxies_.insert(std::make_pair(
           http_proxy,
-          new SSLClientSocketPool(max_sockets_per_proxy_server(pool_type_),
-                                  max_sockets_per_group(pool_type_),
-                                  &ssl_for_https_proxy_pool_histograms_,
-                                  host_resolver_,
-                                  cert_verifier_,
-                                  channel_id_service_,
-                                  transport_security_state_,
-                                  cert_transparency_verifier_,
-                                  ssl_session_cache_shard_,
-                                  socket_factory_,
-                                  tcp_https_ret.first->second /* https proxy */,
-                                  NULL /* no socks proxy */,
-                                  NULL /* no http proxy */,
-                                  ssl_config_service_.get(),
-                                  enable_ssl_connect_job_waiting_,
-                                  net_log_)));
+          new SSLClientSocketPool(
+              max_sockets_per_proxy_server(pool_type_),
+              max_sockets_per_group(pool_type_),
+              &ssl_for_https_proxy_pool_histograms_, host_resolver_,
+              cert_verifier_, channel_id_service_, transport_security_state_,
+              cert_transparency_verifier_, cert_policy_enforcer_,
+              ssl_session_cache_shard_, socket_factory_,
+              tcp_https_ret.first->second /* https proxy */,
+              NULL /* no socks proxy */, NULL /* no http proxy */,
+              ssl_config_service_.get(), enable_ssl_connect_job_waiting_,
+              net_log_)));
   DCHECK(tcp_https_ret.second);
 
   std::pair<HTTPProxySocketPoolMap::iterator, bool> ret =
@@ -341,21 +339,14 @@
 
   SSLClientSocketPool* new_pool = new SSLClientSocketPool(
       max_sockets_per_proxy_server(pool_type_),
-      max_sockets_per_group(pool_type_),
-      &ssl_pool_histograms_,
-      host_resolver_,
-      cert_verifier_,
-      channel_id_service_,
-      transport_security_state_,
-      cert_transparency_verifier_,
-      ssl_session_cache_shard_,
-      socket_factory_,
+      max_sockets_per_group(pool_type_), &ssl_pool_histograms_, host_resolver_,
+      cert_verifier_, channel_id_service_, transport_security_state_,
+      cert_transparency_verifier_, cert_policy_enforcer_,
+      ssl_session_cache_shard_, socket_factory_,
       NULL, /* no tcp pool, we always go through a proxy */
       GetSocketPoolForSOCKSProxy(proxy_server),
-      GetSocketPoolForHTTPProxy(proxy_server),
-      ssl_config_service_.get(),
-      enable_ssl_connect_job_waiting_,
-      net_log_);
+      GetSocketPoolForHTTPProxy(proxy_server), ssl_config_service_.get(),
+      enable_ssl_connect_job_waiting_, net_log_);
 
   std::pair<SSLSocketPoolMap::iterator, bool> ret =
       ssl_socket_pools_for_proxies_.insert(std::make_pair(proxy_server,
diff --git a/net/socket/client_socket_pool_manager_impl.h b/net/socket/client_socket_pool_manager_impl.h
index f9f8d3b..ca609d5 100644
--- a/net/socket/client_socket_pool_manager_impl.h
+++ b/net/socket/client_socket_pool_manager_impl.h
@@ -65,6 +65,7 @@
                               ChannelIDService* channel_id_service,
                               TransportSecurityState* transport_security_state,
                               CTVerifier* cert_transparency_verifier,
+                              CertPolicyEnforcer* cert_policy_enforcer,
                               const std::string& ssl_session_cache_shard,
                               ProxyService* proxy_service,
                               SSLConfigService* ssl_config_service,
@@ -114,6 +115,7 @@
   ChannelIDService* const channel_id_service_;
   TransportSecurityState* const transport_security_state_;
   CTVerifier* const cert_transparency_verifier_;
+  CertPolicyEnforcer* const cert_policy_enforcer_;
   const std::string ssl_session_cache_shard_;
   ProxyService* const proxy_service_;
   const scoped_refptr<SSLConfigService> ssl_config_service_;
diff --git a/net/socket/ssl_client_socket.h b/net/socket/ssl_client_socket.h
index 7adfa8c..11b19a1 100644
--- a/net/socket/ssl_client_socket.h
+++ b/net/socket/ssl_client_socket.h
@@ -16,6 +16,7 @@
 
 namespace net {
 
+class CertPolicyEnforcer;
 class CertVerifier;
 class ChannelIDService;
 class CTVerifier;
@@ -34,23 +35,27 @@
       : cert_verifier(NULL),
         channel_id_service(NULL),
         transport_security_state(NULL),
-        cert_transparency_verifier(NULL) {}
+        cert_transparency_verifier(NULL),
+        cert_policy_enforcer(NULL) {}
 
   SSLClientSocketContext(CertVerifier* cert_verifier_arg,
                          ChannelIDService* channel_id_service_arg,
                          TransportSecurityState* transport_security_state_arg,
                          CTVerifier* cert_transparency_verifier_arg,
+                         CertPolicyEnforcer* cert_policy_enforcer_arg,
                          const std::string& ssl_session_cache_shard_arg)
       : cert_verifier(cert_verifier_arg),
         channel_id_service(channel_id_service_arg),
         transport_security_state(transport_security_state_arg),
         cert_transparency_verifier(cert_transparency_verifier_arg),
+        cert_policy_enforcer(cert_policy_enforcer_arg),
         ssl_session_cache_shard(ssl_session_cache_shard_arg) {}
 
   CertVerifier* cert_verifier;
   ChannelIDService* channel_id_service;
   TransportSecurityState* transport_security_state;
   CTVerifier* cert_transparency_verifier;
+  CertPolicyEnforcer* cert_policy_enforcer;
   // ssl_session_cache_shard is an opaque string that identifies a shard of the
   // SSL session cache. SSL sockets with the same ssl_session_cache_shard may
   // resume each other's SSL sessions but we'll never sessions between shards.
@@ -149,6 +154,10 @@
   // sessions.
   static void ClearSessionCache();
 
+  // Get the maximum SSL version supported by the underlying library and
+  // cryptographic implementation.
+  static uint16 GetMaxSupportedSSLVersion();
+
   virtual bool set_was_npn_negotiated(bool negotiated);
 
   virtual bool was_spdy_negotiated() const;
diff --git a/net/socket/ssl_client_socket_nss.cc b/net/socket/ssl_client_socket_nss.cc
index 3e5bde0..3651e8d 100644
--- a/net/socket/ssl_client_socket_nss.cc
+++ b/net/socket/ssl_client_socket_nss.cc
@@ -91,6 +91,7 @@
 #include "net/base/net_errors.h"
 #include "net/base/net_log.h"
 #include "net/cert/asn1_util.h"
+#include "net/cert/cert_policy_enforcer.h"
 #include "net/cert/cert_status_flags.h"
 #include "net/cert/cert_verifier.h"
 #include "net/cert/ct_ev_whitelist.h"
@@ -2473,10 +2474,7 @@
   if (ok == SECSuccess &&
       channel_info.length == sizeof(channel_info) &&
       channel_info.cipherSuite) {
-    nss_handshake_state_.ssl_connection_status |=
-        (static_cast<int>(channel_info.cipherSuite) &
-         SSL_CONNECTION_CIPHERSUITE_MASK) <<
-        SSL_CONNECTION_CIPHERSUITE_SHIFT;
+    nss_handshake_state_.ssl_connection_status |= channel_info.cipherSuite;
 
     nss_handshake_state_.ssl_connection_status |=
         (static_cast<int>(channel_info.compressionMethod) &
@@ -2834,6 +2832,7 @@
       nss_fd_(NULL),
       net_log_(transport_->socket()->NetLog()),
       transport_security_state_(context.transport_security_state),
+      policy_enforcer_(context.cert_policy_enforcer),
       valid_thread_id_(base::kInvalidThreadId) {
   EnterFunction("");
   InitCore();
@@ -2856,6 +2855,19 @@
   SSL_ClearSessionCache();
 }
 
+#if !defined(CKM_NSS_TLS_MASTER_KEY_DERIVE_DH_SHA256)
+#define CKM_NSS_TLS_MASTER_KEY_DERIVE_DH_SHA256 (CKM_NSS + 24)
+#endif
+
+// static
+uint16 SSLClientSocket::GetMaxSupportedSSLVersion() {
+  if (PK11_TokenExists(CKM_NSS_TLS_MASTER_KEY_DERIVE_DH_SHA256)) {
+    return SSL_PROTOCOL_VERSION_TLS1_2;
+  } else {
+    return SSL_PROTOCOL_VERSION_TLS1_1;
+  }
+}
+
 bool SSLClientSocketNSS::GetSSLInfo(SSLInfo* ssl_info) {
   EnterFunction("");
   ssl_info->Reset();
@@ -3518,21 +3530,6 @@
     result = ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN;
   }
 
-  scoped_refptr<ct::EVCertsWhitelist> ev_whitelist =
-      SSLConfigService::GetEVCertsWhitelist();
-  if (server_cert_verify_result_.cert_status & CERT_STATUS_IS_EV) {
-    if (ev_whitelist.get() && ev_whitelist->IsValid()) {
-      const SHA256HashValue fingerprint(
-          X509Certificate::CalculateFingerprint256(
-              server_cert_verify_result_.verified_cert->os_cert_handle()));
-
-      UMA_HISTOGRAM_BOOLEAN(
-          "Net.SSL_EVCertificateInWhitelist",
-          ev_whitelist->ContainsCertificateHash(
-              std::string(reinterpret_cast<const char*>(fingerprint.data), 8)));
-    }
-  }
-
   if (result == OK) {
     // Only check Certificate Transparency if there were no other errors with
     // the connection.
@@ -3556,20 +3553,31 @@
   // Note that this is a completely synchronous operation: The CT Log Verifier
   // gets all the data it needs for SCT verification and does not do any
   // external communication.
-  int result = cert_transparency_verifier_->Verify(
+  cert_transparency_verifier_->Verify(
       server_cert_verify_result_.verified_cert.get(),
       core_->state().stapled_ocsp_response,
-      core_->state().sct_list_from_tls_extension,
-      &ct_verify_result_,
-      net_log_);
+      core_->state().sct_list_from_tls_extension, &ct_verify_result_, net_log_);
   // TODO(ekasper): wipe stapled_ocsp_response and sct_list_from_tls_extension
   // from the state after verification is complete, to conserve memory.
 
-  VLOG(1) << "CT Verification complete: result " << result
-          << " Invalid scts: " << ct_verify_result_.invalid_scts.size()
-          << " Verified scts: " << ct_verify_result_.verified_scts.size()
-          << " scts from unknown logs: "
-          << ct_verify_result_.unknown_logs_scts.size();
+  if (!policy_enforcer_) {
+    server_cert_verify_result_.cert_status &= ~CERT_STATUS_IS_EV;
+  } else {
+    if (server_cert_verify_result_.cert_status & CERT_STATUS_IS_EV) {
+      scoped_refptr<ct::EVCertsWhitelist> ev_whitelist =
+          SSLConfigService::GetEVCertsWhitelist();
+      if (!policy_enforcer_->DoesConformToCTEVPolicy(
+              server_cert_verify_result_.verified_cert.get(),
+              ev_whitelist.get(), ct_verify_result_)) {
+        // TODO(eranm): Log via the BoundNetLog, see crbug.com/437766
+        VLOG(1) << "EV certificate for "
+                << server_cert_verify_result_.verified_cert->subject()
+                       .GetDisplayName()
+                << " does not conform to CT policy, removing EV status.";
+        server_cert_verify_result_.cert_status &= ~CERT_STATUS_IS_EV;
+      }
+    }
+  }
 }
 
 void SSLClientSocketNSS::EnsureThreadIdAssigned() const {
diff --git a/net/socket/ssl_client_socket_nss.h b/net/socket/ssl_client_socket_nss.h
index 71f09c0..10bb57f 100644
--- a/net/socket/ssl_client_socket_nss.h
+++ b/net/socket/ssl_client_socket_nss.h
@@ -36,6 +36,7 @@
 namespace net {
 
 class BoundNetLog;
+class CertPolicyEnforcer;
 class CertVerifier;
 class ChannelIDService;
 class CTVerifier;
@@ -199,6 +200,8 @@
 
   TransportSecurityState* transport_security_state_;
 
+  CertPolicyEnforcer* const policy_enforcer_;
+
   // pinning_failure_log contains a message produced by
   // TransportSecurityState::CheckPublicKeyPins in the event of a
   // pinning failure. It is a (somewhat) human-readable string.
diff --git a/net/socket/ssl_client_socket_openssl.cc b/net/socket/ssl_client_socket_openssl.cc
index 05eb1cb..4e86c05 100644
--- a/net/socket/ssl_client_socket_openssl.cc
+++ b/net/socket/ssl_client_socket_openssl.cc
@@ -24,6 +24,7 @@
 #include "crypto/openssl_util.h"
 #include "crypto/scoped_openssl_types.h"
 #include "net/base/net_errors.h"
+#include "net/cert/cert_policy_enforcer.h"
 #include "net/cert/cert_verifier.h"
 #include "net/cert/ct_ev_whitelist.h"
 #include "net/cert/ct_verifier.h"
@@ -81,11 +82,10 @@
 #endif
 
 // Used for encoding the |connection_status| field of an SSLInfo object.
-int EncodeSSLConnectionStatus(int cipher_suite,
+int EncodeSSLConnectionStatus(uint16 cipher_suite,
                               int compression,
                               int version) {
-  return ((cipher_suite & SSL_CONNECTION_CIPHERSUITE_MASK) <<
-          SSL_CONNECTION_CIPHERSUITE_SHIFT) |
+  return cipher_suite |
          ((compression & SSL_CONNECTION_COMPRESSION_MASK) <<
           SSL_CONNECTION_COMPRESSION_SHIFT) |
          ((version & SSL_CONNECTION_VERSION_MASK) <<
@@ -345,6 +345,11 @@
   context->session_cache()->Flush();
 }
 
+// static
+uint16 SSLClientSocket::GetMaxSupportedSSLVersion() {
+  return SSL_PROTOCOL_VERSION_TLS1_2;
+}
+
 SSLClientSocketOpenSSL::SSLClientSocketOpenSSL(
     scoped_ptr<ClientSocketHandle> transport_socket,
     const HostPortPair& host_and_port,
@@ -376,6 +381,7 @@
       handshake_succeeded_(false),
       marked_session_as_good_(false),
       transport_security_state_(context.transport_security_state),
+      policy_enforcer_(context.cert_policy_enforcer),
       net_log_(transport_->socket()->NetLog()),
       weak_factory_(this) {
 }
@@ -625,7 +631,7 @@
   ssl_info->security_bits = SSL_CIPHER_get_bits(cipher, NULL);
 
   ssl_info->connection_status = EncodeSSLConnectionStatus(
-      SSL_CIPHER_get_id(cipher), 0 /* no compression */,
+      static_cast<uint16>(SSL_CIPHER_get_id(cipher)), 0 /* no compression */,
       GetNetSSLVersion(ssl_));
 
   if (!SSL_get_secure_renegotiation_support(ssl_))
@@ -788,7 +794,7 @@
   // appended to the cipher removal |command|.
   for (size_t i = 0; i < sk_SSL_CIPHER_num(ciphers); ++i) {
     const SSL_CIPHER* cipher = sk_SSL_CIPHER_value(ciphers, i);
-    const uint16 id = SSL_CIPHER_get_id(cipher);
+    const uint16 id = static_cast<uint16>(SSL_CIPHER_get_id(cipher));
     // Remove any ciphers with a strength of less than 80 bits. Note the NSS
     // implementation uses "effective" bits here but OpenSSL does not provide
     // this detail. This only impacts Triple DES: reports 112 vs. 168 bits,
@@ -960,7 +966,7 @@
     // Only record OCSP histograms if OCSP was requested.
     if (ssl_config_.signed_cert_timestamps_enabled ||
         IsOCSPStaplingSupported()) {
-      uint8_t* ocsp_response;
+      const uint8_t* ocsp_response;
       size_t ocsp_response_len;
       SSL_get0_ocsp_response(ssl_, &ocsp_response, &ocsp_response_len);
 
@@ -968,7 +974,7 @@
       UMA_HISTOGRAM_BOOLEAN("Net.OCSPResponseStapled", ocsp_response_len != 0);
     }
 
-    uint8_t* sct_list;
+    const uint8_t* sct_list;
     size_t sct_list_len;
     SSL_get0_signed_cert_timestamp_list(ssl_, &sct_list, &sct_list_len);
     set_signed_cert_timestamps_received(sct_list_len != 0);
@@ -1140,21 +1146,6 @@
     result = ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN;
   }
 
-  scoped_refptr<ct::EVCertsWhitelist> ev_whitelist =
-      SSLConfigService::GetEVCertsWhitelist();
-  if (server_cert_verify_result_.cert_status & CERT_STATUS_IS_EV) {
-    if (ev_whitelist.get() && ev_whitelist->IsValid()) {
-      const SHA256HashValue fingerprint(
-          X509Certificate::CalculateFingerprint256(
-              server_cert_verify_result_.verified_cert->os_cert_handle()));
-
-      UMA_HISTOGRAM_BOOLEAN(
-          "Net.SSL_EVCertificateInWhitelist",
-          ev_whitelist->ContainsCertificateHash(
-              std::string(reinterpret_cast<const char*>(fingerprint.data), 8)));
-    }
-  }
-
   if (result == OK) {
     // Only check Certificate Transparency if there were no other errors with
     // the connection.
@@ -1201,13 +1192,13 @@
     // update IsOCSPStaplingSupported for Mac. https://crbug.com/430714
     if (IsOCSPStaplingSupported()) {
 #if defined(OS_WIN)
-      uint8_t* ocsp_response_raw;
+      const uint8_t* ocsp_response_raw;
       size_t ocsp_response_len;
       SSL_get0_ocsp_response(ssl_, &ocsp_response_raw, &ocsp_response_len);
 
       CRYPT_DATA_BLOB ocsp_response_blob;
       ocsp_response_blob.cbData = ocsp_response_len;
-      ocsp_response_blob.pbData = ocsp_response_raw;
+      ocsp_response_blob.pbData = const_cast<BYTE*>(ocsp_response_raw);
       BOOL ok = CertSetCertificateContextProperty(
           server_cert_->os_cert_handle(),
           CERT_OCSP_RESPONSE_PROP_ID,
@@ -1228,7 +1219,7 @@
   if (!cert_transparency_verifier_)
     return;
 
-  uint8_t* ocsp_response_raw;
+  const uint8_t* ocsp_response_raw;
   size_t ocsp_response_len;
   SSL_get0_ocsp_response(ssl_, &ocsp_response_raw, &ocsp_response_len);
   std::string ocsp_response;
@@ -1237,7 +1228,7 @@
                          ocsp_response_len);
   }
 
-  uint8_t* sct_list_raw;
+  const uint8_t* sct_list_raw;
   size_t sct_list_len;
   SSL_get0_signed_cert_timestamp_list(ssl_, &sct_list_raw, &sct_list_len);
   std::string sct_list;
@@ -1247,15 +1238,28 @@
   // Note that this is a completely synchronous operation: The CT Log Verifier
   // gets all the data it needs for SCT verification and does not do any
   // external communication.
-  int result = cert_transparency_verifier_->Verify(
-      server_cert_verify_result_.verified_cert.get(),
-      ocsp_response, sct_list, &ct_verify_result_, net_log_);
+  cert_transparency_verifier_->Verify(
+      server_cert_verify_result_.verified_cert.get(), ocsp_response, sct_list,
+      &ct_verify_result_, net_log_);
 
-  VLOG(1) << "CT Verification complete: result " << result
-          << " Invalid scts: " << ct_verify_result_.invalid_scts.size()
-          << " Verified scts: " << ct_verify_result_.verified_scts.size()
-          << " scts from unknown logs: "
-          << ct_verify_result_.unknown_logs_scts.size();
+  if (!policy_enforcer_) {
+    server_cert_verify_result_.cert_status &= ~CERT_STATUS_IS_EV;
+  } else {
+    if (server_cert_verify_result_.cert_status & CERT_STATUS_IS_EV) {
+      scoped_refptr<ct::EVCertsWhitelist> ev_whitelist =
+          SSLConfigService::GetEVCertsWhitelist();
+      if (!policy_enforcer_->DoesConformToCTEVPolicy(
+              server_cert_verify_result_.verified_cert.get(),
+              ev_whitelist.get(), ct_verify_result_)) {
+        // TODO(eranm): Log via the BoundNetLog, see crbug.com/437766
+        VLOG(1) << "EV certificate for "
+                << server_cert_verify_result_.verified_cert->subject()
+                       .GetDisplayName()
+                << " does not conform to CT policy, removing EV status.";
+        server_cert_verify_result_.cert_status &= ~CERT_STATUS_IS_EV;
+      }
+    }
+  }
 }
 
 void SSLClientSocketOpenSSL::OnHandshakeIOComplete(int result) {
diff --git a/net/socket/ssl_client_socket_openssl.h b/net/socket/ssl_client_socket_openssl.h
index 53d33c4..6343cb7 100644
--- a/net/socket/ssl_client_socket_openssl.h
+++ b/net/socket/ssl_client_socket_openssl.h
@@ -304,6 +304,8 @@
 
   TransportSecurityState* transport_security_state_;
 
+  CertPolicyEnforcer* const policy_enforcer_;
+
   // pinning_failure_log contains a message produced by
   // TransportSecurityState::CheckPublicKeyPins in the event of a
   // pinning failure. It is a (somewhat) human-readable string.
diff --git a/net/socket/ssl_client_socket_pool.cc b/net/socket/ssl_client_socket_pool.cc
index 56df1d8..c3b98b8 100644
--- a/net/socket/ssl_client_socket_pool.cc
+++ b/net/socket/ssl_client_socket_pool.cc
@@ -197,6 +197,7 @@
                context.channel_id_service,
                context.transport_security_state,
                context.cert_transparency_verifier,
+               context.cert_policy_enforcer,
                (params->privacy_mode() == PRIVACY_MODE_ENABLED
                     ? "pm/" + context.ssl_session_cache_shard
                     : context.ssl_session_cache_shard)),
@@ -634,6 +635,7 @@
     ChannelIDService* channel_id_service,
     TransportSecurityState* transport_security_state,
     CTVerifier* cert_transparency_verifier,
+    CertPolicyEnforcer* cert_policy_enforcer,
     const std::string& ssl_session_cache_shard,
     ClientSocketFactory* client_socket_factory,
     TransportClientSocketPool* transport_pool,
@@ -661,6 +663,7 @@
                                        channel_id_service,
                                        transport_security_state,
                                        cert_transparency_verifier,
+                                       cert_policy_enforcer,
                                        ssl_session_cache_shard),
                 base::Bind(
                     &SSLClientSocketPool::GetOrCreateSSLConnectJobMessenger,
diff --git a/net/socket/ssl_client_socket_pool.h b/net/socket/ssl_client_socket_pool.h
index c7f613e..59e754a 100644
--- a/net/socket/ssl_client_socket_pool.h
+++ b/net/socket/ssl_client_socket_pool.h
@@ -23,6 +23,7 @@
 
 namespace net {
 
+class CertPolicyEnforcer;
 class CertVerifier;
 class ClientSocketFactory;
 class ConnectJobFactory;
@@ -285,6 +286,7 @@
                       ChannelIDService* channel_id_service,
                       TransportSecurityState* transport_security_state,
                       CTVerifier* cert_transparency_verifier,
+                      CertPolicyEnforcer* cert_policy_enforcer,
                       const std::string& ssl_session_cache_shard,
                       ClientSocketFactory* client_socket_factory,
                       TransportClientSocketPool* transport_pool,
diff --git a/net/socket/ssl_client_socket_pool_unittest.cc b/net/socket/ssl_client_socket_pool_unittest.cc
index 23bb111..1e4a14f 100644
--- a/net/socket/ssl_client_socket_pool_unittest.cc
+++ b/net/socket/ssl_client_socket_pool_unittest.cc
@@ -143,22 +143,15 @@
   void CreatePool(bool transport_pool, bool http_proxy_pool, bool socks_pool) {
     ssl_histograms_.reset(new ClientSocketPoolHistograms("SSLUnitTest"));
     pool_.reset(new SSLClientSocketPool(
-        kMaxSockets,
-        kMaxSocketsPerGroup,
-        ssl_histograms_.get(),
-        NULL /* host_resolver */,
-        NULL /* cert_verifier */,
-        NULL /* channel_id_service */,
-        NULL /* transport_security_state */,
-        NULL /* cert_transparency_verifier */,
-        std::string() /* ssl_session_cache_shard */,
-        &socket_factory_,
+        kMaxSockets, kMaxSocketsPerGroup, ssl_histograms_.get(),
+        NULL /* host_resolver */, NULL /* cert_verifier */,
+        NULL /* channel_id_service */, NULL /* transport_security_state */,
+        NULL /* cert_transparency_verifier */, NULL /* cert_policy_enforcer */,
+        std::string() /* ssl_session_cache_shard */, &socket_factory_,
         transport_pool ? &transport_socket_pool_ : NULL,
         socks_pool ? &socks_socket_pool_ : NULL,
-        http_proxy_pool ? &http_proxy_socket_pool_ : NULL,
-        NULL,
-        enable_ssl_connect_job_waiting_,
-        NULL));
+        http_proxy_pool ? &http_proxy_socket_pool_ : NULL, NULL,
+        enable_ssl_connect_job_waiting_, NULL));
   }
 
   scoped_refptr<SSLSocketParams> SSLParams(ProxyServer::Scheme proxy,
diff --git a/net/spdy/spdy_http_stream_unittest.cc b/net/spdy/spdy_http_stream_unittest.cc
index f22b75f..04b5088 100644
--- a/net/spdy/spdy_http_stream_unittest.cc
+++ b/net/spdy/spdy_http_stream_unittest.cc
@@ -754,16 +754,18 @@
 
   // Verify that the window size has decreased.
   ASSERT_TRUE(http_stream->stream() != NULL);
-  EXPECT_NE(static_cast<int>(kSpdyStreamInitialWindowSize),
-            http_stream->stream()->send_window_size());
+  EXPECT_NE(
+      static_cast<int>(SpdySession::GetInitialWindowSize(session_->protocol())),
+      http_stream->stream()->send_window_size());
 
   // Read window update.
   deterministic_data_->RunFor(1);
 
   // Verify the window update.
   ASSERT_TRUE(http_stream->stream() != NULL);
-  EXPECT_EQ(static_cast<int>(kSpdyStreamInitialWindowSize),
-            http_stream->stream()->send_window_size());
+  EXPECT_EQ(
+      static_cast<int>(SpdySession::GetInitialWindowSize(session_->protocol())),
+      http_stream->stream()->send_window_size());
 
   // Read response headers.
   deterministic_data_->RunFor(1);
diff --git a/net/spdy/spdy_network_transaction_unittest.cc b/net/spdy/spdy_network_transaction_unittest.cc
index 3836fd3..4c6c205 100644
--- a/net/spdy/spdy_network_transaction_unittest.cc
+++ b/net/spdy/spdy_network_transaction_unittest.cc
@@ -4416,7 +4416,8 @@
   scoped_ptr<SpdyFrame> initial_window_update(
       spdy_util_.ConstructSpdyWindowUpdate(
           kSessionFlowControlStreamId,
-          kDefaultInitialRecvWindowSize - kSpdySessionInitialWindowSize));
+          kDefaultInitialRecvWindowSize -
+              SpdySession::GetInitialWindowSize(GetParam().protocol)));
 
   // Construct the persisted SETTINGS frame.
   const SettingsMap& settings =
@@ -5909,10 +5910,10 @@
   SpdyHttpStream* stream = static_cast<SpdyHttpStream*>(trans->stream_.get());
   ASSERT_TRUE(stream != NULL);
   ASSERT_TRUE(stream->stream() != NULL);
-  EXPECT_EQ(static_cast<int>(kSpdyStreamInitialWindowSize) +
-            kDeltaWindowSize * kDeltaCount -
-            kMaxSpdyFrameChunkSize * kFrameCount,
-            stream->stream()->send_window_size());
+  EXPECT_EQ(
+      static_cast<int>(SpdySession::GetInitialWindowSize(GetParam().protocol)) +
+          kDeltaWindowSize * kDeltaCount - kMaxSpdyFrameChunkSize * kFrameCount,
+      stream->stream()->send_window_size());
 
   data.RunFor(1);
 
@@ -5925,8 +5926,10 @@
 // Test that received data frames and sent WINDOW_UPDATE frames change
 // the recv_window_size_ correctly.
 TEST_P(SpdyNetworkTransactionTest, WindowUpdateSent) {
+  const int32 initial_window_size =
+      SpdySession::GetInitialWindowSize(GetParam().protocol);
   // Amount of body required to trigger a sent window update.
-  const size_t kTargetSize = kSpdyStreamInitialWindowSize / 2 + 1;
+  const size_t kTargetSize = initial_window_size / 2 + 1;
 
   scoped_ptr<SpdyFrame> req(
       spdy_util_.ConstructSpdyGet(NULL, 0, false, 1, LOWEST, true));
@@ -5955,7 +5958,7 @@
     reads.push_back(CreateMockRead(*body_frames.back()));
     remaining -= frame_size;
   }
-  reads.push_back(MockRead(ASYNC, ERR_IO_PENDING, 0)); // Yield.
+  reads.push_back(MockRead(ASYNC, ERR_IO_PENDING, 0));  // Yield.
 
   DelayedSocketData data(1, vector_as_array(&reads), reads.size(),
                          vector_as_array(&writes), writes.size());
@@ -5979,7 +5982,7 @@
   ASSERT_TRUE(stream->stream() != NULL);
 
   // All data has been read, but not consumed. The window reflects this.
-  EXPECT_EQ(static_cast<int>(kSpdyStreamInitialWindowSize - kTargetSize),
+  EXPECT_EQ(static_cast<int>(initial_window_size - kTargetSize),
             stream->stream()->recv_window_size());
 
   const HttpResponseInfo* response = trans->GetResponseInfo();
@@ -5993,7 +5996,7 @@
   scoped_refptr<net::IOBuffer> buf(new net::IOBuffer(kTargetSize));
   EXPECT_EQ(static_cast<int>(kTargetSize),
             trans->Read(buf.get(), kTargetSize, CompletionCallback()));
-  EXPECT_EQ(static_cast<int>(kSpdyStreamInitialWindowSize),
+  EXPECT_EQ(static_cast<int>(initial_window_size),
             stream->stream()->recv_window_size());
   EXPECT_THAT(base::StringPiece(buf->data(), kTargetSize), Each(Eq('x')));
 
@@ -6083,22 +6086,22 @@
 // After that, next read is artifically enforced, which causes a
 // WINDOW_UPDATE to be read and I/O process resumes.
 TEST_P(SpdyNetworkTransactionTest, FlowControlStallResume) {
+  const int32 initial_window_size =
+      SpdySession::GetInitialWindowSize(GetParam().protocol);
   // Number of frames we need to send to zero out the window size: data
   // frames plus SYN_STREAM plus the last data frame; also we need another
   // data frame that we will send once the WINDOW_UPDATE is received,
   // therefore +3.
-  size_t num_writes = kSpdyStreamInitialWindowSize / kMaxSpdyFrameChunkSize + 3;
+  size_t num_writes = initial_window_size / kMaxSpdyFrameChunkSize + 3;
 
   // Calculate last frame's size; 0 size data frame is legal.
-  size_t last_frame_size =
-      kSpdyStreamInitialWindowSize % kMaxSpdyFrameChunkSize;
+  size_t last_frame_size = initial_window_size % kMaxSpdyFrameChunkSize;
 
   // Construct content for a data frame of maximum size.
   std::string content(kMaxSpdyFrameChunkSize, 'a');
 
   scoped_ptr<SpdyFrame> req(spdy_util_.ConstructSpdyPost(
-      kRequestUrl, 1, kSpdyStreamInitialWindowSize + kUploadDataSize,
-      LOWEST, NULL, 0));
+      kRequestUrl, 1, initial_window_size + kUploadDataSize, LOWEST, NULL, 0));
 
   // Full frames.
   scoped_ptr<SpdyFrame> body1(
@@ -6151,7 +6154,7 @@
                          writes.get(), num_writes);
 
   ScopedVector<UploadElementReader> element_readers;
-  std::string upload_data_string(kSpdyStreamInitialWindowSize, 'a');
+  std::string upload_data_string(initial_window_size, 'a');
   upload_data_string.append(kUploadData, kUploadDataSize);
   element_readers.push_back(new UploadBytesElementReader(
       upload_data_string.c_str(), upload_data_string.size()));
@@ -6194,21 +6197,22 @@
 // Test we correctly handle the case where the SETTINGS frame results in
 // unstalling the send window.
 TEST_P(SpdyNetworkTransactionTest, FlowControlStallResumeAfterSettings) {
+  const int32 initial_window_size =
+      SpdySession::GetInitialWindowSize(GetParam().protocol);
+
   // Number of frames we need to send to zero out the window size: data
   // frames plus SYN_STREAM plus the last data frame; also we need another
   // data frame that we will send once the SETTING is received, therefore +3.
-  size_t num_writes = kSpdyStreamInitialWindowSize / kMaxSpdyFrameChunkSize + 3;
+  size_t num_writes = initial_window_size / kMaxSpdyFrameChunkSize + 3;
 
   // Calculate last frame's size; 0 size data frame is legal.
-  size_t last_frame_size =
-      kSpdyStreamInitialWindowSize % kMaxSpdyFrameChunkSize;
+  size_t last_frame_size = initial_window_size % kMaxSpdyFrameChunkSize;
 
   // Construct content for a data frame of maximum size.
   std::string content(kMaxSpdyFrameChunkSize, 'a');
 
   scoped_ptr<SpdyFrame> req(spdy_util_.ConstructSpdyPost(
-      kRequestUrl, 1, kSpdyStreamInitialWindowSize + kUploadDataSize,
-      LOWEST, NULL, 0));
+      kRequestUrl, 1, initial_window_size + kUploadDataSize, LOWEST, NULL, 0));
 
   // Full frames.
   scoped_ptr<SpdyFrame> body1(
@@ -6236,8 +6240,7 @@
   // rest of the data.
   SettingsMap settings;
   settings[SETTINGS_INITIAL_WINDOW_SIZE] =
-      SettingsFlagsAndValue(
-          SETTINGS_FLAG_NONE, kSpdyStreamInitialWindowSize * 2);
+      SettingsFlagsAndValue(SETTINGS_FLAG_NONE, initial_window_size * 2);
   scoped_ptr<SpdyFrame> settings_frame_large(
       spdy_util_.ConstructSpdySettings(settings));
 
@@ -6265,7 +6268,7 @@
                                vector_as_array(&writes), writes.size());
 
   ScopedVector<UploadElementReader> element_readers;
-  std::string upload_data_string(kSpdyStreamInitialWindowSize, 'a');
+  std::string upload_data_string(initial_window_size, 'a');
   upload_data_string.append(kUploadData, kUploadDataSize);
   element_readers.push_back(new UploadBytesElementReader(
       upload_data_string.c_str(), upload_data_string.size()));
@@ -6312,21 +6315,21 @@
 // Test we correctly handle the case where the SETTINGS frame results in a
 // negative send window size.
 TEST_P(SpdyNetworkTransactionTest, FlowControlNegativeSendWindowSize) {
+  const int32 initial_window_size =
+      SpdySession::GetInitialWindowSize(GetParam().protocol);
   // Number of frames we need to send to zero out the window size: data
   // frames plus SYN_STREAM plus the last data frame; also we need another
   // data frame that we will send once the SETTING is received, therefore +3.
-  size_t num_writes = kSpdyStreamInitialWindowSize / kMaxSpdyFrameChunkSize + 3;
+  size_t num_writes = initial_window_size / kMaxSpdyFrameChunkSize + 3;
 
   // Calculate last frame's size; 0 size data frame is legal.
-  size_t last_frame_size =
-      kSpdyStreamInitialWindowSize % kMaxSpdyFrameChunkSize;
+  size_t last_frame_size = initial_window_size % kMaxSpdyFrameChunkSize;
 
   // Construct content for a data frame of maximum size.
   std::string content(kMaxSpdyFrameChunkSize, 'a');
 
   scoped_ptr<SpdyFrame> req(spdy_util_.ConstructSpdyPost(
-      kRequestUrl, 1, kSpdyStreamInitialWindowSize + kUploadDataSize,
-      LOWEST, NULL, 0));
+      kRequestUrl, 1, initial_window_size + kUploadDataSize, LOWEST, NULL, 0));
 
   // Full frames.
   scoped_ptr<SpdyFrame> body1(
@@ -6354,16 +6357,15 @@
   // negative.
   SettingsMap new_settings;
   new_settings[SETTINGS_INITIAL_WINDOW_SIZE] =
-      SettingsFlagsAndValue(
-          SETTINGS_FLAG_NONE, kSpdyStreamInitialWindowSize / 2);
+      SettingsFlagsAndValue(SETTINGS_FLAG_NONE, initial_window_size / 2);
   scoped_ptr<SpdyFrame> settings_frame_small(
       spdy_util_.ConstructSpdySettings(new_settings));
   // Construct read frames for WINDOW_UPDATE that makes the send_window_size
   // positive.
   scoped_ptr<SpdyFrame> session_window_update_init_size(
-      spdy_util_.ConstructSpdyWindowUpdate(0, kSpdyStreamInitialWindowSize));
+      spdy_util_.ConstructSpdyWindowUpdate(0, initial_window_size));
   scoped_ptr<SpdyFrame> window_update_init_size(
-      spdy_util_.ConstructSpdyWindowUpdate(1, kSpdyStreamInitialWindowSize));
+      spdy_util_.ConstructSpdyWindowUpdate(1, initial_window_size));
 
   reads.push_back(CreateMockRead(*settings_frame_small, i++));
   reads.push_back(CreateMockRead(*session_window_update_init_size, i++));
@@ -6386,7 +6388,7 @@
                                vector_as_array(&writes), writes.size());
 
   ScopedVector<UploadElementReader> element_readers;
-  std::string upload_data_string(kSpdyStreamInitialWindowSize, 'a');
+  std::string upload_data_string(initial_window_size, 'a');
   upload_data_string.append(kUploadData, kUploadDataSize);
   element_readers.push_back(new UploadBytesElementReader(
       upload_data_string.c_str(), upload_data_string.size()));
diff --git a/net/spdy/spdy_session.cc b/net/spdy/spdy_session.cc
index 1c9abce..4b91909 100644
--- a/net/spdy/spdy_session.cc
+++ b/net/spdy/spdy_session.cc
@@ -655,7 +655,7 @@
       check_ping_status_pending_(false),
       send_connection_header_prefix_(false),
       flow_control_state_(FLOW_CONTROL_NONE),
-      stream_initial_send_window_size_(kSpdyStreamInitialWindowSize),
+      stream_initial_send_window_size_(GetInitialWindowSize(default_protocol)),
       stream_initial_recv_window_size_(stream_initial_recv_window_size == 0
                                            ? kDefaultInitialRecvWindowSize
                                            : stream_initial_recv_window_size),
@@ -729,6 +729,7 @@
       connection_->socket()->GetNegotiatedProtocol();
   if (protocol_negotiated != kProtoUnknown) {
     protocol_ = protocol_negotiated;
+    stream_initial_send_window_size_ = GetInitialWindowSize(protocol_);
   }
   DCHECK_GE(protocol_, kProtoSPDYMinimumVersion);
   DCHECK_LE(protocol_, kProtoSPDYMaximumVersion);
@@ -739,8 +740,8 @@
 
   if (protocol_ >= kProtoSPDY31) {
     flow_control_state_ = FLOW_CONTROL_STREAM_AND_SESSION;
-    session_send_window_size_ = kSpdySessionInitialWindowSize;
-    session_recv_window_size_ = kSpdySessionInitialWindowSize;
+    session_send_window_size_ = GetInitialWindowSize(protocol_);
+    session_recv_window_size_ = GetInitialWindowSize(protocol_);
   } else if (protocol_ >= kProtoSPDY3) {
     flow_control_state_ = FLOW_CONTROL_STREAM;
   } else {
@@ -2778,7 +2779,7 @@
   settings_map[SETTINGS_MAX_CONCURRENT_STREAMS] =
       SettingsFlagsAndValue(SETTINGS_FLAG_NONE, kMaxConcurrentPushedStreams);
   if (flow_control_state_ >= FLOW_CONTROL_STREAM &&
-      stream_initial_recv_window_size_ != kSpdyStreamInitialWindowSize) {
+      stream_initial_recv_window_size_ != GetInitialWindowSize(protocol_)) {
     settings_map[SETTINGS_INITIAL_WINDOW_SIZE] =
         SettingsFlagsAndValue(SETTINGS_FLAG_NONE,
                               stream_initial_recv_window_size_);
@@ -3195,7 +3196,8 @@
                  delta_window_size, session_recv_window_size_));
 
   session_unacked_recv_window_bytes_ += delta_window_size;
-  if (session_unacked_recv_window_bytes_ > kSpdySessionInitialWindowSize / 2) {
+  if (session_unacked_recv_window_bytes_ >
+      GetInitialWindowSize(protocol_) / 2) {
     SendWindowUpdateFrame(kSessionFlowControlStreamId,
                           session_unacked_recv_window_bytes_,
                           HIGHEST);
diff --git a/net/spdy/spdy_session.h b/net/spdy/spdy_session.h
index 862918b..06dfae6 100644
--- a/net/spdy/spdy_session.h
+++ b/net/spdy/spdy_session.h
@@ -511,6 +511,10 @@
     return buffered_spdy_framer_->GetDataFrameMaximumPayload();
   }
 
+  static int32 GetInitialWindowSize(NextProto protocol) {
+    return protocol < kProtoSPDY4MinimumVersion ? 65536 : 65535;
+  }
+
   // https://http2.github.io/http2-spec/#TLSUsage mandates minimum security
   // standards for TLS.
   bool HasAcceptableTransportSecurity() const;
diff --git a/net/spdy/spdy_session_unittest.cc b/net/spdy/spdy_session_unittest.cc
index 6ec3383..ce53711 100644
--- a/net/spdy/spdy_session_unittest.cc
+++ b/net/spdy/spdy_session_unittest.cc
@@ -1235,7 +1235,7 @@
   if (session->flow_control_state_ ==
       SpdySession::FLOW_CONTROL_STREAM_AND_SESSION) {
     // Unclaimed push body consumed bytes from the session window.
-    EXPECT_EQ(kSpdySessionInitialWindowSize - kUploadDataSize,
+    EXPECT_EQ(SpdySession::GetInitialWindowSize(GetParam()) - kUploadDataSize,
               session->session_recv_window_size_);
     EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
   }
@@ -1254,7 +1254,7 @@
   if (session->flow_control_state_ ==
       SpdySession::FLOW_CONTROL_STREAM_AND_SESSION) {
     // Verify that the session window reclaimed the evicted stream body.
-    EXPECT_EQ(kSpdySessionInitialWindowSize,
+    EXPECT_EQ(SpdySession::GetInitialWindowSize(GetParam()),
               session->session_recv_window_size_);
     EXPECT_EQ(kUploadDataSize, session->session_unacked_recv_window_bytes_);
   }
@@ -1553,7 +1553,8 @@
   scoped_ptr<SpdyFrame> initial_window_update(
       spdy_util_.ConstructSpdyWindowUpdate(
           kSessionFlowControlStreamId,
-          kDefaultInitialRecvWindowSize - kSpdySessionInitialWindowSize));
+          kDefaultInitialRecvWindowSize -
+              SpdySession::GetInitialWindowSize(GetParam())));
   std::vector<MockWrite> writes;
   if ((GetParam() >= kProtoSPDY4MinimumVersion) &&
      (GetParam() <= kProtoSPDY4MaximumVersion)) {
@@ -3081,9 +3082,9 @@
             session->buffered_spdy_framer_->protocol_version());
   EXPECT_EQ(SpdySession::FLOW_CONTROL_STREAM_AND_SESSION,
             session->flow_control_state());
-  EXPECT_EQ(kSpdySessionInitialWindowSize,
+  EXPECT_EQ(SpdySession::GetInitialWindowSize(GetParam()),
             session->session_send_window_size_);
-  EXPECT_EQ(kSpdySessionInitialWindowSize,
+  EXPECT_EQ(SpdySession::GetInitialWindowSize(GetParam()),
             session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 }
@@ -3510,16 +3511,16 @@
 
   session_deps_.host_resolver->set_synchronous_mode(true);
 
+  const int32 initial_window_size =
+      SpdySession::GetInitialWindowSize(GetParam());
   const int32 delta_window_size = 100;
 
   MockConnect connect_data(SYNCHRONOUS, OK);
   MockRead reads[] = {
     MockRead(ASYNC, 0, 1)  // EOF
   };
-  scoped_ptr<SpdyFrame> window_update(
-      spdy_util_.ConstructSpdyWindowUpdate(
-          kSessionFlowControlStreamId,
-          kSpdySessionInitialWindowSize + delta_window_size));
+  scoped_ptr<SpdyFrame> window_update(spdy_util_.ConstructSpdyWindowUpdate(
+      kSessionFlowControlStreamId, initial_window_size + delta_window_size));
   MockWrite writes[] = {
     CreateMockWrite(*window_update, 0),
   };
@@ -3534,18 +3535,17 @@
   EXPECT_EQ(SpdySession::FLOW_CONTROL_STREAM_AND_SESSION,
             session->flow_control_state());
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 
   session->IncreaseRecvWindowSize(delta_window_size);
-  EXPECT_EQ(kSpdySessionInitialWindowSize + delta_window_size,
+  EXPECT_EQ(initial_window_size + delta_window_size,
             session->session_recv_window_size_);
   EXPECT_EQ(delta_window_size, session->session_unacked_recv_window_bytes_);
 
   // Should trigger sending a WINDOW_UPDATE frame.
-  session->IncreaseRecvWindowSize(kSpdySessionInitialWindowSize);
-  EXPECT_EQ(kSpdySessionInitialWindowSize + delta_window_size +
-            kSpdySessionInitialWindowSize,
+  session->IncreaseRecvWindowSize(initial_window_size);
+  EXPECT_EQ(initial_window_size + delta_window_size + initial_window_size,
             session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 
@@ -3553,9 +3553,8 @@
 
   // DecreaseRecvWindowSize() expects |in_io_loop_| to be true.
   session->in_io_loop_ = true;
-  session->DecreaseRecvWindowSize(
-      kSpdySessionInitialWindowSize + delta_window_size +
-      kSpdySessionInitialWindowSize);
+  session->DecreaseRecvWindowSize(initial_window_size + delta_window_size +
+                                  initial_window_size);
   session->in_io_loop_ = false;
   EXPECT_EQ(0, session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
@@ -3584,16 +3583,18 @@
   EXPECT_EQ(SpdySession::FLOW_CONTROL_STREAM_AND_SESSION,
             session->flow_control_state());
 
+  const int32 initial_window_size =
+      SpdySession::GetInitialWindowSize(GetParam());
   const int32 delta_window_size = 100;
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_send_window_size_);
 
   session->IncreaseSendWindowSize(delta_window_size);
-  EXPECT_EQ(kSpdySessionInitialWindowSize + delta_window_size,
+  EXPECT_EQ(initial_window_size + delta_window_size,
             session->session_send_window_size_);
 
   session->DecreaseSendWindowSize(delta_window_size);
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_send_window_size_);
 }
 
 // Incoming data for an inactive stream should not cause the session
@@ -3621,12 +3622,14 @@
   EXPECT_EQ(SpdySession::FLOW_CONTROL_STREAM_AND_SESSION,
             session->flow_control_state());
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  EXPECT_EQ(SpdySession::GetInitialWindowSize(GetParam()),
+            session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 
   data.RunFor(1);
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  EXPECT_EQ(SpdySession::GetInitialWindowSize(GetParam()),
+            session->session_recv_window_size_);
   EXPECT_EQ(kUploadDataSize, session->session_unacked_recv_window_bytes_);
 
   data.RunFor(1);
@@ -3711,7 +3714,9 @@
             stream->SendRequestHeaders(headers.Pass(), MORE_DATA_TO_SEND));
   EXPECT_TRUE(stream->HasUrlFromHeaders());
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  const int32 initial_window_size =
+      SpdySession::GetInitialWindowSize(GetParam());
+  EXPECT_EQ(initial_window_size, session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 
   data.RunFor(4);
@@ -3719,7 +3724,7 @@
   EXPECT_TRUE(data.at_write_eof());
   EXPECT_TRUE(data.at_read_eof());
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_recv_window_size_);
   EXPECT_EQ(msg_data_size, session->session_unacked_recv_window_bytes_);
 
   stream->Close();
@@ -3727,7 +3732,7 @@
 
   EXPECT_EQ(OK, delegate.WaitForClose());
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_recv_window_size_);
   EXPECT_EQ(msg_data_size, session->session_unacked_recv_window_bytes_);
 }
 
@@ -3786,25 +3791,27 @@
             stream->SendRequestHeaders(headers.Pass(), MORE_DATA_TO_SEND));
   EXPECT_TRUE(stream->HasUrlFromHeaders());
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_);
+  const int32 initial_window_size =
+      SpdySession::GetInitialWindowSize(GetParam());
+  EXPECT_EQ(initial_window_size, session->session_send_window_size_);
 
   data.RunFor(1);
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_send_window_size_);
 
   data.RunFor(1);
 
   EXPECT_TRUE(data.at_write_eof());
   EXPECT_TRUE(data.at_read_eof());
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize - msg_data_size,
+  EXPECT_EQ(initial_window_size - msg_data_size,
             session->session_send_window_size_);
 
   // Closing the stream should increase the session's send window.
   stream->Close();
   EXPECT_EQ(NULL, stream.get());
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_send_window_size_);
 
   EXPECT_EQ(OK, delegate.WaitForClose());
 }
@@ -3875,42 +3882,44 @@
             stream->SendRequestHeaders(headers.Pass(), MORE_DATA_TO_SEND));
   EXPECT_TRUE(stream->HasUrlFromHeaders());
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_);
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  const int32 initial_window_size =
+      SpdySession::GetInitialWindowSize(GetParam());
+  EXPECT_EQ(initial_window_size, session->session_send_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 
   data.RunFor(1);
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_);
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_send_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 
   data.RunFor(1);
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize - msg_data_size,
+  EXPECT_EQ(initial_window_size - msg_data_size,
             session->session_send_window_size_);
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 
   data.RunFor(1);
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize - msg_data_size,
+  EXPECT_EQ(initial_window_size - msg_data_size,
             session->session_send_window_size_);
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 
   data.RunFor(1);
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize - msg_data_size,
+  EXPECT_EQ(initial_window_size - msg_data_size,
             session->session_send_window_size_);
-  EXPECT_EQ(kSpdySessionInitialWindowSize - msg_data_size,
+  EXPECT_EQ(initial_window_size - msg_data_size,
             session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 
   data.RunFor(1);
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_);
-  EXPECT_EQ(kSpdySessionInitialWindowSize - msg_data_size,
+  EXPECT_EQ(initial_window_size, session->session_send_window_size_);
+  EXPECT_EQ(initial_window_size - msg_data_size,
             session->session_recv_window_size_);
   EXPECT_EQ(0, session->session_unacked_recv_window_bytes_);
 
@@ -3921,8 +3930,8 @@
 
   // Draining the delegate's read queue should increase the session's
   // receive window.
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_);
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_send_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_recv_window_size_);
   EXPECT_EQ(msg_data_size, session->session_unacked_recv_window_bytes_);
 
   stream->Close();
@@ -3930,8 +3939,8 @@
 
   EXPECT_EQ(OK, delegate.WaitForClose());
 
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_);
-  EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_send_window_size_);
+  EXPECT_EQ(initial_window_size, session->session_recv_window_size_);
   EXPECT_EQ(msg_data_size, session->session_unacked_recv_window_bytes_);
 }
 
diff --git a/net/spdy/spdy_stream_unittest.cc b/net/spdy/spdy_stream_unittest.cc
index e8915bb..b8638d9 100644
--- a/net/spdy/spdy_stream_unittest.cc
+++ b/net/spdy/spdy_stream_unittest.cc
@@ -186,12 +186,9 @@
   base::WeakPtr<SpdySession> spdy_session(CreateDefaultSpdySession());
 
   // Conjure up a stream.
-  SpdyStream stream(SPDY_PUSH_STREAM,
-                    spdy_session,
-                    GURL(),
-                    DEFAULT_PRIORITY,
-                    kSpdyStreamInitialWindowSize,
-                    kSpdyStreamInitialWindowSize,
+  SpdyStream stream(SPDY_PUSH_STREAM, spdy_session, GURL(), DEFAULT_PRIORITY,
+                    SpdySession::GetInitialWindowSize(kProtoSPDY31),
+                    SpdySession::GetInitialWindowSize(kProtoSPDY31),
                     BoundNetLog());
   stream.set_stream_id(2);
   EXPECT_FALSE(stream.HasUrlFromHeaders());
diff --git a/net/spdy/spdy_test_util_common.cc b/net/spdy/spdy_test_util_common.cc
index 9543e64..f0765a0 100644
--- a/net/spdy/spdy_test_util_common.cc
+++ b/net/spdy/spdy_test_util_common.cc
@@ -367,7 +367,8 @@
       enable_ping(false),
       enable_user_alternate_protocol_ports(false),
       protocol(protocol),
-      stream_initial_recv_window_size(kSpdyStreamInitialWindowSize),
+      stream_initial_recv_window_size(
+          SpdySession::GetInitialWindowSize(protocol)),
       time_func(&base::TimeTicks::Now),
       force_spdy_over_ssl(false),
       force_spdy_always(false),
@@ -384,8 +385,8 @@
   host_resolver->set_synchronous_mode(true);
 }
 
-SpdySessionDependencies::SpdySessionDependencies(
-    NextProto protocol, ProxyService* proxy_service)
+SpdySessionDependencies::SpdySessionDependencies(NextProto protocol,
+                                                 ProxyService* proxy_service)
     : host_resolver(new MockHostResolver),
       cert_verifier(new MockCertVerifier),
       transport_security_state(new TransportSecurityState),
@@ -400,7 +401,8 @@
       enable_ping(false),
       enable_user_alternate_protocol_ports(false),
       protocol(protocol),
-      stream_initial_recv_window_size(kSpdyStreamInitialWindowSize),
+      stream_initial_recv_window_size(
+          SpdySession::GetInitialWindowSize(protocol)),
       time_func(&base::TimeTicks::Now),
       force_spdy_over_ssl(false),
       force_spdy_always(false),
diff --git a/net/ssl/openssl_platform_key_mac.cc b/net/ssl/openssl_platform_key_mac.cc
index d369244..34857af 100644
--- a/net/ssl/openssl_platform_key_mac.cc
+++ b/net/ssl/openssl_platform_key_mac.cc
@@ -4,7 +4,9 @@
 
 #include "net/ssl/openssl_platform_key.h"
 
+#include <openssl/ec_key.h>
 #include <openssl/err.h>
+#include <openssl/engine.h>
 #include <openssl/evp.h>
 #include <openssl/rsa.h>
 
diff --git a/net/ssl/openssl_platform_key_win.cc b/net/ssl/openssl_platform_key_win.cc
index c7db5cb..8c9589a 100644
--- a/net/ssl/openssl_platform_key_win.cc
+++ b/net/ssl/openssl_platform_key_win.cc
@@ -4,15 +4,707 @@
 
 #include "net/ssl/openssl_platform_key.h"
 
+#include <windows.h>
+#include <NCrypt.h>
+
+#include <string.h>
+
+#include <algorithm>
+#include <vector>
+
+#include <openssl/bn.h>
+#include <openssl/digest.h>
+#include <openssl/ec_key.h>
+#include <openssl/err.h>
+#include <openssl/engine.h>
+#include <openssl/evp.h>
+#include <openssl/md5.h>
+#include <openssl/obj_mac.h>
+#include <openssl/rsa.h>
+#include <openssl/sha.h>
+
+#include "base/debug/debugger.h"
+#include "base/debug/stack_trace.h"
+#include "base/lazy_instance.h"
 #include "base/logging.h"
+#include "base/memory/scoped_ptr.h"
+#include "base/win/windows_version.h"
+#include "crypto/scoped_capi_types.h"
+#include "crypto/wincrypt_shim.h"
+#include "net/base/net_errors.h"
+#include "net/cert/x509_certificate.h"
+#include "net/ssl/openssl_ssl_util.h"
 
 namespace net {
 
+namespace {
+
+using NCryptFreeObjectFunc = SECURITY_STATUS(WINAPI*)(NCRYPT_HANDLE);
+using NCryptGetPropertyFunc =
+    SECURITY_STATUS(WINAPI*)(NCRYPT_HANDLE,  // hObject
+                             LPCWSTR,  // pszProperty
+                             PBYTE,  // pbOutput
+                             DWORD,  // cbOutput
+                             DWORD*,  // pcbResult
+                             DWORD);  // dwFlags
+using NCryptSignHashFunc =
+    SECURITY_STATUS(WINAPI*)(NCRYPT_KEY_HANDLE,  // hKey
+                             VOID*,  // pPaddingInfo
+                             PBYTE,  // pbHashValue
+                             DWORD,  // cbHashValue
+                             PBYTE,  // pbSignature
+                             DWORD,  // cbSignature
+                             DWORD*,  // pcbResult
+                             DWORD);  // dwFlags
+
+class CNGFunctions {
+ public:
+  CNGFunctions()
+      : ncrypt_free_object_(nullptr),
+        ncrypt_get_property_(nullptr),
+        ncrypt_sign_hash_(nullptr) {
+    HMODULE ncrypt = GetModuleHandle(L"ncrypt.dll");
+    if (ncrypt != nullptr) {
+      ncrypt_free_object_ = reinterpret_cast<NCryptFreeObjectFunc>(
+          GetProcAddress(ncrypt, "NCryptFreeObject"));
+      ncrypt_get_property_ = reinterpret_cast<NCryptGetPropertyFunc>(
+          GetProcAddress(ncrypt, "NCryptGetProperty"));
+      ncrypt_sign_hash_ = reinterpret_cast<NCryptSignHashFunc>(
+          GetProcAddress(ncrypt, "NCryptSignHash"));
+    }
+  }
+
+  NCryptFreeObjectFunc ncrypt_free_object() const {
+    return ncrypt_free_object_;
+  }
+
+  NCryptGetPropertyFunc ncrypt_get_property() const {
+    return ncrypt_get_property_;
+  }
+
+  NCryptSignHashFunc ncrypt_sign_hash() const { return ncrypt_sign_hash_; }
+
+ private:
+  NCryptFreeObjectFunc ncrypt_free_object_;
+  NCryptGetPropertyFunc ncrypt_get_property_;
+  NCryptSignHashFunc ncrypt_sign_hash_;
+};
+
+base::LazyInstance<CNGFunctions>::Leaky g_cng_functions =
+    LAZY_INSTANCE_INITIALIZER;
+
+struct CERT_KEY_CONTEXTDeleter {
+  void operator()(PCERT_KEY_CONTEXT key) {
+    if (key->dwKeySpec == CERT_NCRYPT_KEY_SPEC) {
+      g_cng_functions.Get().ncrypt_free_object()(key->hNCryptKey);
+    } else {
+      CryptReleaseContext(key->hCryptProv, 0);
+    }
+    delete key;
+  }
+};
+
+using ScopedCERT_KEY_CONTEXT =
+    scoped_ptr<CERT_KEY_CONTEXT, CERT_KEY_CONTEXTDeleter>;
+
+// KeyExData contains the data that is contained in the EX_DATA of the
+// RSA and ECDSA objects that are created to wrap Windows system keys.
+struct KeyExData {
+  KeyExData(ScopedCERT_KEY_CONTEXT key, DWORD key_length)
+      : key(key.Pass()), key_length(key_length) {}
+
+  ScopedCERT_KEY_CONTEXT key;
+  DWORD key_length;
+};
+
+// ExDataDup is called when one of the RSA or EC_KEY objects is
+// duplicated. This is not supported and should never happen.
+int ExDataDup(CRYPTO_EX_DATA* to,
+              const CRYPTO_EX_DATA* from,
+              void** from_d,
+              int idx,
+              long argl,
+              void* argp) {
+  CHECK_EQ((void*)nullptr, *from_d);
+  return 0;
+}
+
+// ExDataFree is called when one of the RSA or EC_KEY objects is freed.
+void ExDataFree(void* parent,
+                void* ptr,
+                CRYPTO_EX_DATA* ex_data,
+                int idx,
+                long argl,
+                void* argp) {
+  KeyExData* data = reinterpret_cast<KeyExData*>(ptr);
+  delete data;
+}
+
+extern const RSA_METHOD win_rsa_method;
+extern const ECDSA_METHOD win_ecdsa_method;
+
+// BoringSSLEngine is a BoringSSL ENGINE that implements RSA and ECDSA
+// by forwarding the requested operations to CAPI or CNG.
+class BoringSSLEngine {
+ public:
+  BoringSSLEngine()
+      : rsa_index_(RSA_get_ex_new_index(0 /* argl */,
+                                        nullptr /* argp */,
+                                        nullptr /* new_func */,
+                                        ExDataDup,
+                                        ExDataFree)),
+        ec_key_index_(EC_KEY_get_ex_new_index(0 /* argl */,
+                                              nullptr /* argp */,
+                                              nullptr /* new_func */,
+                                              ExDataDup,
+                                              ExDataFree)),
+        engine_(ENGINE_new()) {
+    ENGINE_set_RSA_method(engine_, &win_rsa_method, sizeof(win_rsa_method));
+    ENGINE_set_ECDSA_method(engine_, &win_ecdsa_method,
+                            sizeof(win_ecdsa_method));
+  }
+
+  int rsa_ex_index() const { return rsa_index_; }
+  int ec_key_ex_index() const { return ec_key_index_; }
+
+  const ENGINE* engine() const { return engine_; }
+
+ private:
+  const int rsa_index_;
+  const int ec_key_index_;
+  ENGINE* const engine_;
+};
+
+base::LazyInstance<BoringSSLEngine>::Leaky global_boringssl_engine =
+    LAZY_INSTANCE_INITIALIZER;
+
+// Custom RSA_METHOD that uses the platform APIs for signing.
+
+const KeyExData* RsaGetExData(const RSA* rsa) {
+  return reinterpret_cast<const KeyExData*>(
+      RSA_get_ex_data(rsa, global_boringssl_engine.Get().rsa_ex_index()));
+}
+
+size_t RsaMethodSize(const RSA* rsa) {
+  const KeyExData* ex_data = RsaGetExData(rsa);
+  return (ex_data->key_length + 7) / 8;
+}
+
+// Signs |in| using |rsa| with PKCS #1 padding. If |hash_nid| is NID_md5_sha1,
+// |in| is a TLS MD5/SHA-1 concatenation and should be signed as-is. Otherwise
+// |in| is a standard hash function and should be prefixed with the
+// corresponding DigestInfo before signing. The signature is written to |out|
+// and its length written to |*out_len|. This function returns true on success
+// and false on failure.
+bool RsaSignPKCS1(const RSA* rsa,
+                  int hash_nid,
+                  const uint8_t* in,
+                  size_t in_len,
+                  uint8_t* out,
+                  size_t max_out,
+                  size_t* out_len) {
+  const KeyExData* ex_data = RsaGetExData(rsa);
+  if (!ex_data) {
+    NOTREACHED();
+    OPENSSL_PUT_ERROR(RSA, RSA_sign, ERR_R_INTERNAL_ERROR);
+    return false;
+  }
+
+  if (ex_data->key->dwKeySpec == CERT_NCRYPT_KEY_SPEC) {
+    BCRYPT_PKCS1_PADDING_INFO rsa_padding_info;
+    switch (hash_nid) {
+      case NID_md5_sha1:
+        rsa_padding_info.pszAlgId = nullptr;
+        break;
+      case NID_sha1:
+        rsa_padding_info.pszAlgId = BCRYPT_SHA1_ALGORITHM;
+        break;
+      case NID_sha256:
+        rsa_padding_info.pszAlgId = BCRYPT_SHA256_ALGORITHM;
+        break;
+      case NID_sha384:
+        rsa_padding_info.pszAlgId = BCRYPT_SHA384_ALGORITHM;
+        break;
+      case NID_sha512:
+        rsa_padding_info.pszAlgId = BCRYPT_SHA512_ALGORITHM;
+        break;
+      default:
+        OPENSSL_PUT_ERROR(RSA, RSA_sign, RSA_R_UNKNOWN_ALGORITHM_TYPE);
+        return false;
+    }
+
+    DWORD signature_len;
+    SECURITY_STATUS ncrypt_status = g_cng_functions.Get().ncrypt_sign_hash()(
+        ex_data->key->hNCryptKey, &rsa_padding_info, const_cast<PBYTE>(in),
+        in_len, out, max_out, &signature_len, BCRYPT_PAD_PKCS1);
+    if (FAILED(ncrypt_status) || signature_len == 0) {
+      OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+      return false;
+    }
+    *out_len = signature_len;
+    return true;
+  }
+
+  ALG_ID hash_alg;
+  switch (hash_nid) {
+    case NID_md5_sha1:
+      hash_alg = CALG_SSL3_SHAMD5;
+      break;
+    case NID_sha1:
+      hash_alg = CALG_SHA1;
+      break;
+    case NID_sha256:
+      hash_alg = CALG_SHA_256;
+      break;
+    case NID_sha384:
+      hash_alg = CALG_SHA_384;
+      break;
+    case NID_sha512:
+      hash_alg = CALG_SHA_512;
+      break;
+    default:
+      OPENSSL_PUT_ERROR(RSA, RSA_sign, RSA_R_UNKNOWN_ALGORITHM_TYPE);
+      return false;
+  }
+
+  HCRYPTHASH hash;
+  if (!CryptCreateHash(ex_data->key->hCryptProv, hash_alg, 0, 0, &hash)) {
+    PLOG(ERROR) << "CreateCreateHash failed";
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return false;
+  }
+  DWORD hash_len;
+  DWORD arg_len = sizeof(hash_len);
+  if (!CryptGetHashParam(hash, HP_HASHSIZE, reinterpret_cast<BYTE*>(&hash_len),
+                         &arg_len, 0)) {
+    PLOG(ERROR) << "CryptGetHashParam HP_HASHSIZE failed";
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return false;
+  }
+  if (hash_len != in_len) {
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return false;
+  }
+  if (!CryptSetHashParam(hash, HP_HASHVAL, const_cast<BYTE*>(in), 0)) {
+    PLOG(ERROR) << "CryptSetHashParam HP_HASHVAL failed";
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return false;
+  }
+  DWORD signature_len = max_out;
+  if (!CryptSignHash(hash, ex_data->key->dwKeySpec, nullptr, 0, out,
+                     &signature_len)) {
+    PLOG(ERROR) << "CryptSignHash failed";
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return false;
+  }
+
+  /* CryptoAPI signs in little-endian, so reverse it. */
+  std::reverse(out, out + signature_len);
+  *out_len = signature_len;
+  return true;
+}
+
+int RsaMethodSign(int hash_nid,
+                  const uint8_t* in,
+                  unsigned in_len,
+                  uint8_t* out,
+                  unsigned* out_len,
+                  const RSA* rsa) {
+  // TOD(davidben): Switch BoringSSL's sign hook to using size_t rather than
+  // unsigned.
+  size_t len;
+  if (!RsaSignPKCS1(rsa, hash_nid, in, in_len, out, RSA_size(rsa), &len))
+    return 0;
+  *out_len = len;
+  return 1;
+}
+
+int RsaMethodEncrypt(RSA* rsa,
+                     size_t* out_len,
+                     uint8_t* out,
+                     size_t max_out,
+                     const uint8_t* in,
+                     size_t in_len,
+                     int padding) {
+  NOTIMPLEMENTED();
+  OPENSSL_PUT_ERROR(RSA, encrypt, RSA_R_UNKNOWN_ALGORITHM_TYPE);
+  return 0;
+}
+
+int RsaMethodSignRaw(RSA* rsa,
+                     size_t* out_len,
+                     uint8_t* out,
+                     size_t max_out,
+                     const uint8_t* in,
+                     size_t in_len,
+                     int padding) {
+  DCHECK_EQ(RSA_PKCS1_PADDING, padding);
+  if (padding != RSA_PKCS1_PADDING) {
+    OPENSSL_PUT_ERROR(RSA, sign_raw, RSA_R_UNKNOWN_PADDING_TYPE);
+    return 0;
+  }
+
+  // BoringSSL calls only sign_raw, not sign, in pre-TLS-1.2 MD5/SHA1
+  // signatures. This hook is implemented only for that case.
+  //
+  // TODO(davidben): Make client auth in BoringSSL call RSA_sign with
+  // NID_md5_sha1. https://crbug.com/437023
+  if (in_len != MD5_DIGEST_LENGTH + SHA_DIGEST_LENGTH) {
+    OPENSSL_PUT_ERROR(RSA, sign_raw, RSA_R_INVALID_MESSAGE_LENGTH);
+    return 0;
+  }
+  if (!RsaSignPKCS1(rsa, NID_md5_sha1, in, in_len, out, max_out, out_len))
+    return 0;
+  return 1;
+}
+
+int RsaMethodDecrypt(RSA* rsa,
+                     size_t* out_len,
+                     uint8_t* out,
+                     size_t max_out,
+                     const uint8_t* in,
+                     size_t in_len,
+                     int padding) {
+  NOTIMPLEMENTED();
+  OPENSSL_PUT_ERROR(RSA, decrypt, RSA_R_UNKNOWN_ALGORITHM_TYPE);
+  return 0;
+}
+
+int RsaMethodVerifyRaw(RSA* rsa,
+                       size_t* out_len,
+                       uint8_t* out,
+                       size_t max_out,
+                       const uint8_t* in,
+                       size_t in_len,
+                       int padding) {
+  NOTIMPLEMENTED();
+  OPENSSL_PUT_ERROR(RSA, verify_raw, RSA_R_UNKNOWN_ALGORITHM_TYPE);
+  return 0;
+}
+
+int RsaMethodSupportsDigest(const RSA* rsa, const EVP_MD* md) {
+  const KeyExData* ex_data = RsaGetExData(rsa);
+  if (!ex_data) {
+    NOTREACHED();
+    return 0;
+  }
+
+  int hash_nid = EVP_MD_type(md);
+  if (ex_data->key->dwKeySpec == CERT_NCRYPT_KEY_SPEC) {
+    // Only hashes which appear in RsaSignPKCS1 are supported.
+    if (hash_nid != NID_sha1 && hash_nid != NID_sha256 &&
+        hash_nid != NID_sha384 && hash_nid != NID_sha512) {
+      return 0;
+    }
+
+    // If the key is a 1024-bit RSA, assume conservatively that it may only be
+    // able to sign SHA-1 hashes. This is the case for older Estonian ID cards
+    // that have 1024-bit RSA keys.
+    //
+    // CNG does provide NCryptIsAlgSupported and NCryptEnumAlgorithms functions,
+    // however they seem to both return NTE_NOT_SUPPORTED when querying the
+    // NCRYPT_PROV_HANDLE at the key's NCRYPT_PROVIDER_HANDLE_PROPERTY.
+    if (ex_data->key_length <= 1024 && hash_nid != NID_sha1)
+      return 0;
+
+    return 1;
+  } else {
+    // If the key is in CAPI, assume conservatively that the CAPI service
+    // provider may only be able to sign SHA-1 hashes.
+    return hash_nid == NID_sha1;
+  }
+}
+
+const RSA_METHOD win_rsa_method = {
+    {
+     0,  // references
+     1,  // is_static
+    },
+    nullptr,  // app_data
+
+    nullptr,  // init
+    nullptr,  // finish
+    RsaMethodSize,
+    RsaMethodSign,
+    nullptr,  // verify
+    RsaMethodEncrypt,
+    RsaMethodSignRaw,
+    RsaMethodDecrypt,
+    RsaMethodVerifyRaw,
+    nullptr,  // private_transform
+    nullptr,  // mod_exp
+    nullptr,  // bn_mod_exp
+    RSA_FLAG_OPAQUE,
+    nullptr,  // keygen
+    RsaMethodSupportsDigest,
+};
+
+// Custom ECDSA_METHOD that uses the platform APIs.
+// Note that for now, only signing through ECDSA_sign() is really supported.
+// all other method pointers are either stubs returning errors, or no-ops.
+
+const KeyExData* EcKeyGetExData(const EC_KEY* ec_key) {
+  return reinterpret_cast<const KeyExData*>(EC_KEY_get_ex_data(
+      ec_key, global_boringssl_engine.Get().ec_key_ex_index()));
+}
+
+size_t EcdsaMethodGroupOrderSize(const EC_KEY* ec_key) {
+  const KeyExData* ex_data = EcKeyGetExData(ec_key);
+  // Windows doesn't distinguish the sizes of the curve's degree (which
+  // determines the size of a point on the curve) and the base point's order
+  // (which determines the size of a scalar). For P-256, P-384, and P-521, these
+  // two sizes are the same.
+  //
+  // See
+  // http://msdn.microsoft.com/en-us/library/windows/desktop/aa375520(v=vs.85).aspx
+  // which uses the same length for both.
+  return (ex_data->key_length + 7) / 8;
+}
+
+int EcdsaMethodSign(const uint8_t* digest,
+                    size_t digest_len,
+                    uint8_t* out_sig,
+                    unsigned int* out_sig_len,
+                    EC_KEY* ec_key) {
+  const KeyExData* ex_data = EcKeyGetExData(ec_key);
+  // Only CNG supports ECDSA.
+  if (!ex_data || ex_data->key->dwKeySpec != CERT_NCRYPT_KEY_SPEC) {
+    NOTREACHED();
+    OPENSSL_PUT_ERROR(RSA, sign_raw, ERR_R_INTERNAL_ERROR);
+    return 0;
+  }
+
+  size_t degree = (ex_data->key_length + 7) / 8;
+  if (degree == 0) {
+    NOTREACHED();
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return 0;
+  }
+  std::vector<uint8_t> raw_sig(degree * 2);
+
+  DWORD signature_len;
+  SECURITY_STATUS ncrypt_status = g_cng_functions.Get().ncrypt_sign_hash()(
+      ex_data->key->hNCryptKey, nullptr, const_cast<PBYTE>(digest), digest_len,
+      &raw_sig[0], raw_sig.size(), &signature_len, 0);
+  if (FAILED(ncrypt_status) || signature_len != raw_sig.size()) {
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return 0;
+  }
+
+  // Convert the RAW ECDSA signature to a DER-encoded ECDSA-Sig-Value.
+  crypto::ScopedECDSA_SIG sig(ECDSA_SIG_new());
+  if (!sig) {
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return 0;
+  }
+  sig->r = BN_bin2bn(&raw_sig[0], degree, nullptr);
+  sig->s = BN_bin2bn(&raw_sig[degree], degree, nullptr);
+  if (!sig->r || !sig->s) {
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return 0;
+  }
+
+  // Ensure the DER-encoded signature fits in the bounds.
+  int len = i2d_ECDSA_SIG(sig.get(), nullptr);
+  if (len < 0 || len > ECDSA_size(ec_key)) {
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return 0;
+  }
+
+  len = i2d_ECDSA_SIG(sig.get(), &out_sig);
+  if (len < 0) {
+    OpenSSLPutNetError(FROM_HERE, ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED);
+    return 0;
+  }
+  *out_sig_len = len;
+  return 1;
+}
+
+int EcdsaMethodVerify(const uint8_t* digest,
+                      size_t digest_len,
+                      const uint8_t* sig,
+                      size_t sig_len,
+                      EC_KEY* eckey) {
+  NOTIMPLEMENTED();
+  OPENSSL_PUT_ERROR(ECDSA, ECDSA_do_verify, ECDSA_R_NOT_IMPLEMENTED);
+  return 0;
+}
+
+const ECDSA_METHOD win_ecdsa_method = {
+    {
+     0,  // references
+     1,  // is_static
+    },
+    nullptr,  // app_data
+
+    nullptr,  // init
+    nullptr,  // finish
+    EcdsaMethodGroupOrderSize,
+    EcdsaMethodSign,
+    EcdsaMethodVerify,
+    ECDSA_FLAG_OPAQUE,
+};
+
+// Determines the key type and length of |key|. The type is returned as an
+// OpenSSL EVP_PKEY type. The key length for RSA key is the size of the RSA
+// modulus in bits. For an ECDSA key, it is the number of bits to represent the
+// group order. It returns true on success and false on failure.
+bool GetKeyInfo(PCERT_KEY_CONTEXT key, int* out_type, DWORD* out_length) {
+  if (key->dwKeySpec == CERT_NCRYPT_KEY_SPEC) {
+    DWORD prop_len;
+    SECURITY_STATUS status = g_cng_functions.Get().ncrypt_get_property()(
+        key->hNCryptKey, NCRYPT_ALGORITHM_GROUP_PROPERTY, nullptr, 0, &prop_len,
+        0);
+    if (FAILED(status) || prop_len == 0 || prop_len % 2 != 0) {
+      LOG(ERROR) << "Could not query CNG key type: " << status;
+      return false;
+    }
+
+    std::vector<BYTE> prop_buf(prop_len);
+    status = g_cng_functions.Get().ncrypt_get_property()(
+        key->hNCryptKey, NCRYPT_ALGORITHM_GROUP_PROPERTY, &prop_buf[0],
+        prop_buf.size(), &prop_len, 0);
+    if (FAILED(status) || prop_len == 0 || prop_len % 2 != 0) {
+      LOG(ERROR) << "Could not query CNG key type: " << status;
+      return false;
+    }
+
+    int type;
+    const wchar_t* alg = reinterpret_cast<const wchar_t*>(&prop_buf[0]);
+    if (wcsncmp(NCRYPT_RSA_ALGORITHM_GROUP, alg, prop_len / 2) == 0) {
+      type = EVP_PKEY_RSA;
+    } else if (wcsncmp(NCRYPT_ECDSA_ALGORITHM_GROUP, alg, prop_len / 2) == 0 ||
+               wcsncmp(NCRYPT_ECDH_ALGORITHM_GROUP, alg, prop_len / 2) == 0) {
+      // Importing an ECDSA key via PKCS #12 seems to label it as ECDH rather
+      // than ECDSA, so also allow ECDH.
+      type = EVP_PKEY_EC;
+    } else {
+      LOG(ERROR) << "Unknown CNG key type: "
+                 << std::wstring(alg, wcsnlen(alg, prop_len / 2));
+      return false;
+    }
+
+    DWORD length;
+    prop_len;
+    status = g_cng_functions.Get().ncrypt_get_property()(
+        key->hNCryptKey, NCRYPT_LENGTH_PROPERTY,
+        reinterpret_cast<BYTE*>(&length), sizeof(DWORD), &prop_len, 0);
+    if (FAILED(status)) {
+      LOG(ERROR) << "Could not get CNG key length " << status;
+      return false;
+    }
+    DCHECK_EQ(sizeof(DWORD), prop_len);
+
+    *out_type = type;
+    *out_length = length;
+    return true;
+  }
+
+  crypto::ScopedHCRYPTKEY hcryptkey;
+  if (!CryptGetUserKey(key->hCryptProv, key->dwKeySpec, hcryptkey.receive())) {
+    PLOG(ERROR) << "Could not get CAPI key handle";
+    return false;
+  }
+
+  ALG_ID alg_id;
+  DWORD prop_len = sizeof(alg_id);
+  if (!CryptGetKeyParam(hcryptkey.get(), KP_ALGID,
+                        reinterpret_cast<BYTE*>(&alg_id), &prop_len, 0)) {
+    PLOG(ERROR) << "Could not query CAPI key type";
+    return false;
+  }
+
+  if (alg_id != CALG_RSA_SIGN && alg_id != CALG_RSA_KEYX) {
+    LOG(ERROR) << "Unknown CAPI key type: " << alg_id;
+    return false;
+  }
+
+  DWORD length;
+  prop_len = sizeof(DWORD);
+  if (!CryptGetKeyParam(hcryptkey.get(), KP_KEYLEN,
+                        reinterpret_cast<BYTE*>(&length), &prop_len, 0)) {
+    PLOG(ERROR) << "Could not get CAPI key length";
+    return false;
+  }
+  DCHECK_EQ(sizeof(DWORD), prop_len);
+
+  *out_type = EVP_PKEY_RSA;
+  *out_length = length;
+  return true;
+}
+
+crypto::ScopedEVP_PKEY CreateRSAWrapper(ScopedCERT_KEY_CONTEXT key,
+                                        DWORD key_length) {
+  crypto::ScopedRSA rsa(RSA_new_method(global_boringssl_engine.Get().engine()));
+  if (!rsa)
+    return nullptr;
+
+  RSA_set_ex_data(rsa.get(), global_boringssl_engine.Get().rsa_ex_index(),
+                  new KeyExData(key.Pass(), key_length));
+
+  crypto::ScopedEVP_PKEY pkey(EVP_PKEY_new());
+  if (!pkey || !EVP_PKEY_set1_RSA(pkey.get(), rsa.get()))
+    return nullptr;
+  return pkey.Pass();
+}
+
+crypto::ScopedEVP_PKEY CreateECDSAWrapper(ScopedCERT_KEY_CONTEXT key,
+                                          DWORD key_length) {
+  crypto::ScopedEC_KEY ec_key(
+      EC_KEY_new_method(global_boringssl_engine.Get().engine()));
+  if (!ec_key)
+    return nullptr;
+
+  EC_KEY_set_ex_data(ec_key.get(),
+                     global_boringssl_engine.Get().ec_key_ex_index(),
+                     new KeyExData(key.Pass(), key_length));
+
+  crypto::ScopedEVP_PKEY pkey(EVP_PKEY_new());
+  if (!pkey || !EVP_PKEY_set1_EC_KEY(pkey.get(), ec_key.get()))
+    return nullptr;
+
+  return pkey.Pass();
+}
+
+}  // namespace
+
 crypto::ScopedEVP_PKEY FetchClientCertPrivateKey(
     const X509Certificate* certificate) {
-  // TODO(davidben): Implement on Windows.
-  NOTIMPLEMENTED();
-  return crypto::ScopedEVP_PKEY();
+  PCCERT_CONTEXT cert_context = certificate->os_cert_handle();
+
+  HCRYPTPROV_OR_NCRYPT_KEY_HANDLE crypt_prov = 0;
+  DWORD key_spec = 0;
+  BOOL must_free = FALSE;
+  DWORD flags = 0;
+  if (base::win::GetVersion() >= base::win::VERSION_VISTA)
+    flags |= CRYPT_ACQUIRE_PREFER_NCRYPT_KEY_FLAG;
+
+  if (!CryptAcquireCertificatePrivateKey(cert_context, flags, nullptr,
+                                         &crypt_prov, &key_spec, &must_free)) {
+    PLOG(WARNING) << "Could not acquire private key";
+    return nullptr;
+  }
+
+  // Should never get a cached handle back - ownership must always be
+  // transferred.
+  CHECK_EQ(must_free, TRUE);
+  ScopedCERT_KEY_CONTEXT key(new CERT_KEY_CONTEXT);
+  key->dwKeySpec = key_spec;
+  key->hCryptProv = crypt_prov;
+
+  int key_type;
+  DWORD key_length;
+  if (!GetKeyInfo(key.get(), &key_type, &key_length))
+    return nullptr;
+
+  switch (key_type) {
+    case EVP_PKEY_RSA:
+      return CreateRSAWrapper(key.Pass(), key_length);
+    case EVP_PKEY_EC:
+      return CreateECDSAWrapper(key.Pass(), key_length);
+    default:
+      return nullptr;
+  }
 }
 
 }  // namespace net
diff --git a/net/ssl/ssl_connection_status_flags.h b/net/ssl/ssl_connection_status_flags.h
index faae306..e2a8193 100644
--- a/net/ssl/ssl_connection_status_flags.h
+++ b/net/ssl/ssl_connection_status_flags.h
@@ -13,7 +13,6 @@
 // Status flags for SSLInfo::connection_status.
 enum {
   // The lower 16 bits are reserved for the TLS ciphersuite id.
-  SSL_CONNECTION_CIPHERSUITE_SHIFT = 0,
   SSL_CONNECTION_CIPHERSUITE_MASK = 0xffff,
 
   // The next two bits are reserved for the compression used.
@@ -53,9 +52,8 @@
 COMPILE_ASSERT(SSL_CONNECTION_VERSION_MAX - 1 <= SSL_CONNECTION_VERSION_MASK,
                SSL_CONNECTION_VERSION_MASK_too_small);
 
-inline int SSLConnectionStatusToCipherSuite(int connection_status) {
-  return (connection_status >> SSL_CONNECTION_CIPHERSUITE_SHIFT) &
-         SSL_CONNECTION_CIPHERSUITE_MASK;
+inline uint16 SSLConnectionStatusToCipherSuite(int connection_status) {
+  return static_cast<uint16>(connection_status);
 }
 
 inline int SSLConnectionStatusToVersion(int connection_status) {
@@ -63,14 +61,12 @@
          SSL_CONNECTION_VERSION_MASK;
 }
 
-inline void SSLConnectionStatusSetCipherSuite(int cipher_suite,
+inline void SSLConnectionStatusSetCipherSuite(uint16 cipher_suite,
                                               int* connection_status) {
   // Clear out the old ciphersuite.
-  *connection_status &=
-      ~(SSL_CONNECTION_CIPHERSUITE_MASK << SSL_CONNECTION_CIPHERSUITE_SHIFT);
+  *connection_status &= ~SSL_CONNECTION_CIPHERSUITE_MASK;
   // Set the new ciphersuite.
-  *connection_status |= ((cipher_suite & SSL_CONNECTION_CIPHERSUITE_MASK)
-                         << SSL_CONNECTION_CIPHERSUITE_SHIFT);
+  *connection_status |= cipher_suite;
 }
 
 inline void SSLConnectionStatusSetVersion(int version, int* connection_status) {
diff --git a/net/ssl/ssl_connection_status_flags_unittest.cc b/net/ssl/ssl_connection_status_flags_unittest.cc
index 64fea13..98e4f53 100644
--- a/net/ssl/ssl_connection_status_flags_unittest.cc
+++ b/net/ssl/ssl_connection_status_flags_unittest.cc
@@ -15,13 +15,13 @@
   int expected_version = SSLConnectionStatusToVersion(connection_status);
 
   SSLConnectionStatusSetCipherSuite(12345, &connection_status);
-  EXPECT_EQ(12345, SSLConnectionStatusToCipherSuite(connection_status));
+  EXPECT_EQ(12345U, SSLConnectionStatusToCipherSuite(connection_status));
   EXPECT_EQ(expected_version, SSLConnectionStatusToVersion(connection_status));
 }
 
 TEST(SSLConnectionStatusTest, SetVersion) {
   int connection_status = 0xDEADBEEF;
-  int expected_cipher_suite =
+  uint16 expected_cipher_suite =
       SSLConnectionStatusToCipherSuite(connection_status);
 
   SSLConnectionStatusSetVersion(SSL_CONNECTION_VERSION_TLS1_2,
diff --git a/net/third_party/nss/ssl.gyp b/net/third_party/nss/ssl.gyp
index d6e2253..64d8551 100644
--- a/net/third_party/nss/ssl.gyp
+++ b/net/third_party/nss/ssl.gyp
@@ -79,6 +79,12 @@
         'USE_UTIL_DIRECTLY',
       ],
       'msvs_disabled_warnings': [4018, 4244, 4267],
+      'variables': {
+        'clang_warning_flags_unset': [
+          # ssl uses PR_ASSERT(!"foo") instead of PR_ASSERT(false && "foo")
+          '-Wstring-conversion',
+        ],
+      },
       'conditions': [
         ['component == "shared_library"', {
           'conditions': [
diff --git a/net/third_party/nss/ssl/BUILD.gn b/net/third_party/nss/ssl/BUILD.gn
index b8fe40f..c958c13 100644
--- a/net/third_party/nss/ssl/BUILD.gn
+++ b/net/third_party/nss/ssl/BUILD.gn
@@ -8,14 +8,6 @@
   if (is_mac || is_win) {
     defines = [ "NSS_PLATFORM_CLIENT_AUTH" ]
   }
-
-  if (is_clang) {
-    cflags = [
-      # There is a broken header guard in /usr/include/nss/secmod.h:
-      # https://bugzilla.mozilla.org/show_bug.cgi?id=884072
-      "-Wno-header-guard",
-    ]
-  }
 }
 
 component("libssl") {
@@ -105,6 +97,11 @@
     libs = [ "Security.framework" ]
   }
 
+  if (is_clang) {
+    # SSL triggers some of these Clang warnings.
+    configs -= [ "//build/config/clang:extra_warnings" ]
+  }
+
   if (is_posix) {
     sources -= [
       "win32err.c",
diff --git a/net/tools/dump_cache/simple_cache_dumper.cc b/net/tools/dump_cache/simple_cache_dumper.cc
index dd5ecbf..9be140d 100644
--- a/net/tools/dump_cache/simple_cache_dumper.cc
+++ b/net/tools/dump_cache/simple_cache_dumper.cc
@@ -10,6 +10,7 @@
 #include "base/memory/scoped_ptr.h"
 #include "base/message_loop/message_loop.h"
 #include "base/message_loop/message_loop_proxy.h"
+#include "base/profiler/scoped_tracker.h"
 #include "base/threading/thread.h"
 #include "net/base/cache_type.h"
 #include "net/base/io_buffer.h"
@@ -260,6 +261,11 @@
 }
 
 void SimpleCacheDumper::OnIOComplete(int rv) {
+  // TODO(vadimt): Remove ScopedTracker below once crbug.com/422516 is fixed.
+  tracked_objects::ScopedTracker tracking_profile(
+      FROM_HERE_WITH_EXPLICIT_FUNCTION(
+          "422516 SimpleCacheDumper::OnIOComplete"));
+
   rv = DoLoop(rv);
 
   if (rv != ERR_IO_PENDING) {
diff --git a/net/tools/quic/end_to_end_test.cc b/net/tools/quic/end_to_end_test.cc
index dcc9345..f7efc71 100644
--- a/net/tools/quic/end_to_end_test.cc
+++ b/net/tools/quic/end_to_end_test.cc
@@ -854,8 +854,6 @@
 }
 
 TEST_P(EndToEndTest, NegotiateMaxOpenStreams) {
-  ValueRestore<bool> old_flag(&FLAGS_quic_allow_more_open_streams, true);
-
   // Negotiate 1 max open stream.
   client_config_.SetMaxStreamsPerConnection(1, 1);
   ASSERT_TRUE(Initialize());
diff --git a/net/tools/quic/quic_client.h b/net/tools/quic/quic_client.h
index 4111b1a..6bf87f9 100644
--- a/net/tools/quic/quic_client.h
+++ b/net/tools/quic/quic_client.h
@@ -246,9 +246,8 @@
   bool initialized_;
 
   // If overflow_supported_ is true, this will be the number of packets dropped
-  // during the lifetime of the server.  This may overflow if enough packets
-  // are dropped.
-  uint32 packets_dropped_;
+  // during the lifetime of the server.
+  QuicPacketCount packets_dropped_;
 
   // True if the kernel supports SO_RXQ_OVFL, the number of packets dropped
   // because the socket would otherwise overflow.
diff --git a/net/tools/quic/quic_server.cc b/net/tools/quic/quic_server.cc
index 2694365..fd24059 100644
--- a/net/tools/quic/quic_server.cc
+++ b/net/tools/quic/quic_server.cc
@@ -204,7 +204,7 @@
 bool QuicServer::ReadAndDispatchSinglePacket(int fd,
                                              int port,
                                              ProcessPacketInterface* processor,
-                                             uint32* packets_dropped) {
+                                             QuicPacketCount* packets_dropped) {
   // Allocate some extra space so we can send an error if the client goes over
   // the limit.
   char buf[2 * kMaxPacketSize];
diff --git a/net/tools/quic/quic_server.h b/net/tools/quic/quic_server.h
index 980f9ba..f8a5533 100644
--- a/net/tools/quic/quic_server.h
+++ b/net/tools/quic/quic_server.h
@@ -58,7 +58,7 @@
   // dropped packets.
   static bool ReadAndDispatchSinglePacket(int fd, int port,
                                           ProcessPacketInterface* processor,
-                                          uint32* packets_dropped);
+                                          QuicPacketCount* packets_dropped);
 
   void OnShutdown(EpollServer* eps, int fd) override {}
 
@@ -74,7 +74,7 @@
 
   bool overflow_supported() { return overflow_supported_; }
 
-  uint32 packets_dropped() { return packets_dropped_; }
+  QuicPacketCount packets_dropped() { return packets_dropped_; }
 
   int port() { return port_; }
 
@@ -110,7 +110,7 @@
   // If overflow_supported_ is true this will be the number of packets dropped
   // during the lifetime of the server.  This may overflow if enough packets
   // are dropped.
-  uint32 packets_dropped_;
+  QuicPacketCount packets_dropped_;
 
   // True if the kernel supports SO_RXQ_OVFL, the number of packets dropped
   // because the socket would otherwise overflow.
diff --git a/net/tools/quic/quic_server_session_test.cc b/net/tools/quic/quic_server_session_test.cc
index b0ed5d1..4705c05 100644
--- a/net/tools/quic/quic_server_session_test.cc
+++ b/net/tools/quic/quic_server_session_test.cc
@@ -192,7 +192,6 @@
 }
 
 TEST_P(QuicServerSessionTest, MaxOpenStreams) {
-  ValueRestore<bool> old_flag(&FLAGS_quic_allow_more_open_streams, true);
   // Test that the server closes the connection if a client attempts to open too
   // many data streams. The server accepts slightly more than the negotiated
   // stream limit to deal with rare cases where a client FIN/RST is lost.
@@ -230,7 +229,6 @@
 }
 
 TEST_P(QuicServerSessionTest, MaxOpenStreamsImplicit) {
-  ValueRestore<bool> old_flag(&FLAGS_quic_allow_more_open_streams, true);
   // Test that the server closes the connection if a client attempts to open too
   // many data streams implicitly.  The server accepts slightly more than the
   // negotiated stream limit to deal with rare cases where a client FIN/RST is
diff --git a/net/tools/quic/quic_socket_utils.cc b/net/tools/quic/quic_socket_utils.cc
index f11647b..3ac0bf3 100644
--- a/net/tools/quic/quic_socket_utils.cc
+++ b/net/tools/quic/quic_socket_utils.cc
@@ -51,8 +51,9 @@
 }
 
 // static
-bool QuicSocketUtils::GetOverflowFromMsghdr(struct msghdr *hdr,
-                                            uint32 *dropped_packets) {
+bool QuicSocketUtils::GetOverflowFromMsghdr(
+    struct msghdr *hdr,
+    QuicPacketCount *dropped_packets) {
   if (hdr->msg_controllen > 0) {
     struct cmsghdr *cmsg;
     for (cmsg = CMSG_FIRSTHDR(hdr);
@@ -99,7 +100,7 @@
 
 // static
 int QuicSocketUtils::ReadPacket(int fd, char* buffer, size_t buf_len,
-                                uint32* dropped_packets,
+                                QuicPacketCount* dropped_packets,
                                 IPAddressNumber* self_address,
                                 IPEndPoint* peer_address) {
   CHECK(peer_address != nullptr);
diff --git a/net/tools/quic/quic_socket_utils.h b/net/tools/quic/quic_socket_utils.h
index 03b95e5..41d3b93 100644
--- a/net/tools/quic/quic_socket_utils.h
+++ b/net/tools/quic/quic_socket_utils.h
@@ -13,6 +13,7 @@
 
 #include "base/basictypes.h"
 #include "net/base/ip_endpoint.h"
+#include "net/quic/quic_bandwidth.h"
 #include "net/quic/quic_types.h"
 
 namespace net {
@@ -28,7 +29,7 @@
   // If the msghdr contains an SO_RXQ_OVFL entry, this will set dropped_packets
   // to the correct value and return true. Otherwise it will return false.
   static bool GetOverflowFromMsghdr(struct msghdr *hdr,
-                                    uint32 *dropped_packets);
+                                    QuicPacketCount *dropped_packets);
 
   // Sets either IP_PKTINFO or IPV6_PKTINFO on the socket, based on
   // address_family.  Returns the return code from setsockopt.
@@ -52,7 +53,7 @@
   static int ReadPacket(int fd,
                         char* buffer,
                         size_t buf_len,
-                        uint32* dropped_packets,
+                        QuicPacketCount* dropped_packets,
                         IPAddressNumber* self_address,
                         IPEndPoint* peer_address);
 
diff --git a/net/tools/quic/test_tools/quic_test_utils.h b/net/tools/quic/test_tools/quic_test_utils.h
index e1220cb..d70b22d 100644
--- a/net/tools/quic/test_tools/quic_test_utils.h
+++ b/net/tools/quic/test_tools/quic_test_utils.h
@@ -95,7 +95,7 @@
   MOCK_METHOD0(OnCanWrite, void());
   MOCK_CONST_METHOD0(HasPendingWrites, bool());
 
-  MOCK_METHOD1(ResumeConnectionState, void(const CachedNetworkParameters&));
+  MOCK_METHOD1(ResumeConnectionState, bool(const CachedNetworkParameters&));
 
   void ReallyProcessUdpPacket(const IPEndPoint& self_address,
                               const IPEndPoint& peer_address,
diff --git a/net/url_request/sdch_dictionary_fetcher.cc b/net/url_request/sdch_dictionary_fetcher.cc
index 9aeed9a..450a608 100644
--- a/net/url_request/sdch_dictionary_fetcher.cc
+++ b/net/url_request/sdch_dictionary_fetcher.cc
@@ -11,6 +11,7 @@
 #include "base/compiler_specific.h"
 #include "base/profiler/scoped_tracker.h"
 #include "base/thread_task_runner_handle.h"
+#include "net/base/io_buffer.h"
 #include "net/base/load_flags.h"
 #include "net/base/sdch_net_log_params.h"
 #include "net/url_request/url_request_context.h"
diff --git a/net/url_request/url_fetcher_core.cc b/net/url_request/url_fetcher_core.cc
index 23399f3..420e831 100644
--- a/net/url_request/url_fetcher_core.cc
+++ b/net/url_request/url_fetcher_core.cc
@@ -436,16 +436,36 @@
   URLRequestThrottlerManager* throttler_manager =
       request->context()->throttler_manager();
   if (throttler_manager) {
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/423948 is fixed.
+    tracked_objects::ScopedTracker tracking_profile1(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "423948 URLFetcherCore::OnReadCompleted1"));
+
     url_throttler_entry_ = throttler_manager->RegisterRequestUrl(url_);
   }
 
+  // TODO(vadimt): Remove ScopedTracker below once crbug.com/423948 is fixed.
+  tracked_objects::ScopedTracker tracking_profile2(
+      FROM_HERE_WITH_EXPLICIT_FUNCTION(
+          "423948 URLFetcherCore::OnReadCompleted2"));
+
   do {
     if (!request_->status().is_success() || bytes_read <= 0)
       break;
 
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/423948 is fixed.
+    tracked_objects::ScopedTracker tracking_profile3(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "423948 URLFetcherCore::OnReadCompleted3"));
+
     current_response_bytes_ += bytes_read;
     InformDelegateDownloadProgress();
 
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/423948 is fixed.
+    tracked_objects::ScopedTracker tracking_profile4(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "423948 URLFetcherCore::OnReadCompleted4"));
+
     const int result =
         WriteBuffer(new DrainableIOBuffer(buffer_.get(), bytes_read));
     if (result < 0) {
@@ -456,17 +476,38 @@
 
   const URLRequestStatus status = request_->status();
 
+  // TODO(vadimt): Remove ScopedTracker below once crbug.com/423948 is fixed.
+  tracked_objects::ScopedTracker tracking_profile5(
+      FROM_HERE_WITH_EXPLICIT_FUNCTION(
+          "423948 URLFetcherCore::OnReadCompleted5"));
+
   if (status.is_success())
     request_->GetResponseCookies(&cookies_);
 
   // See comments re: HEAD requests in ReadResponse().
   if (!status.is_io_pending() || request_type_ == URLFetcher::HEAD) {
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/423948 is fixed.
+    tracked_objects::ScopedTracker tracking_profile6(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "423948 URLFetcherCore::OnReadCompleted6"));
+
     status_ = status;
     ReleaseRequest();
 
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/423948 is fixed.
+    tracked_objects::ScopedTracker tracking_profile7(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "423948 URLFetcherCore::OnReadCompleted7"));
+
     // No more data to write.
     const int result = response_writer_->Finish(
         base::Bind(&URLFetcherCore::DidFinishWriting, this));
+
+    // TODO(vadimt): Remove ScopedTracker below once crbug.com/423948 is fixed.
+    tracked_objects::ScopedTracker tracking_profile8(
+        FROM_HERE_WITH_EXPLICIT_FUNCTION(
+            "423948 URLFetcherCore::OnReadCompleted8"));
+
     if (result != ERR_IO_PENDING)
       DidFinishWriting(result);
   }
diff --git a/net/url_request/url_request_simple_job.cc b/net/url_request/url_request_simple_job.cc
index 060a90e..ebc2b5d 100644
--- a/net/url_request/url_request_simple_job.cc
+++ b/net/url_request/url_request_simple_job.cc
@@ -53,9 +53,9 @@
           "422489 URLRequestSimpleJob::ReadRawData"));
 
   DCHECK(bytes_read);
-  int remaining = byte_range_.last_byte_position() - data_offset_ + 1;
-  if (buf_size > remaining)
-    buf_size = remaining;
+  buf_size = static_cast<int>(std::min(
+      static_cast<int64>(buf_size),
+      byte_range_.last_byte_position() - data_offset_ + 1));
   memcpy(buf->data(), data_->front() + data_offset_, buf_size);
   data_offset_ += buf_size;
   *bytes_read = buf_size;
@@ -138,9 +138,8 @@
     }
 
     data_offset_ = byte_range_.first_byte_position();
-    int remaining_bytes = byte_range_.last_byte_position() -
-        byte_range_.first_byte_position() + 1;
-    set_expected_content_size(remaining_bytes);
+    set_expected_content_size(
+        byte_range_.last_byte_position() - data_offset_ + 1);
     NotifyHeadersComplete();
   } else {
     NotifyStartError(URLRequestStatus(URLRequestStatus::FAILED, result));
diff --git a/net/url_request/url_request_simple_job.h b/net/url_request/url_request_simple_job.h
index 99b6cb6..f605fe4 100644
--- a/net/url_request/url_request_simple_job.h
+++ b/net/url_request/url_request_simple_job.h
@@ -66,7 +66,7 @@
   std::string mime_type_;
   std::string charset_;
   scoped_refptr<base::RefCountedMemory> data_;
-  int data_offset_;
+  int64 data_offset_;
   base::WeakPtrFactory<URLRequestSimpleJob> weak_factory_;
 };
 
diff --git a/net/url_request/url_request_unittest.cc b/net/url_request/url_request_unittest.cc
index 9892a69..b114ecc 100644
--- a/net/url_request/url_request_unittest.cc
+++ b/net/url_request/url_request_unittest.cc
@@ -258,9 +258,9 @@
   EXPECT_GT(ssl_info.security_bits, 0);
 
   // The cipher suite TLS_NULL_WITH_NULL_NULL (0) must not be negotiated.
-  int cipher_suite = SSLConnectionStatusToCipherSuite(
+  uint16 cipher_suite = SSLConnectionStatusToCipherSuite(
       ssl_info.connection_status);
-  EXPECT_NE(0, cipher_suite);
+  EXPECT_NE(0U, cipher_suite);
 }
 
 void CheckFullRequestHeaders(const HttpRequestHeaders& headers,
@@ -3763,7 +3763,7 @@
     ASSERT_LT(upper_bound, 1000000);
   }
 
-  int tolerance = upper_bound * 0.005;
+  int tolerance = static_cast<int>(upper_bound * 0.005);
   if (tolerance < 2)
     tolerance = 2;
 
@@ -4969,8 +4969,10 @@
 
     base::RunLoop().Run();
 
-    int64 size = 0;
-    ASSERT_EQ(true, base::GetFileSize(path, &size));
+    int64 size64 = 0;
+    ASSERT_EQ(true, base::GetFileSize(path, &size64));
+    ASSERT_LE(size64, std::numeric_limits<int>::max());
+    int size = static_cast<int>(size64);
     scoped_ptr<char[]> buf(new char[size]);
 
     ASSERT_EQ(size, base::ReadFile(path, buf.get(), size));
diff --git a/net/url_request/view_cache_helper.cc b/net/url_request/view_cache_helper.cc
index 36d3ae5..594f739 100644
--- a/net/url_request/view_cache_helper.cc
+++ b/net/url_request/view_cache_helper.cc
@@ -6,6 +6,7 @@
 
 #include "base/bind.h"
 #include "base/bind_helpers.h"
+#include "base/profiler/scoped_tracker.h"
 #include "base/strings/stringprintf.h"
 #include "net/base/escape.h"
 #include "net/base/io_buffer.h"
@@ -362,6 +363,10 @@
 }
 
 void ViewCacheHelper::OnIOComplete(int result) {
+  // TODO(vadimt): Remove ScopedTracker below once crbug.com/422516 is fixed.
+  tracked_objects::ScopedTracker tracking_profile(
+      FROM_HERE_WITH_EXPLICIT_FUNCTION("422516 ViewCacheHelper::OnIOComplete"));
+
   DoLoop(result);
 }
 
diff --git a/net/websockets/websocket_basic_handshake_stream.cc b/net/websockets/websocket_basic_handshake_stream.cc
index 08ee6ae..bac2438 100644
--- a/net/websockets/websocket_basic_handshake_stream.cc
+++ b/net/websockets/websocket_basic_handshake_stream.cc
@@ -25,6 +25,7 @@
 #include "base/strings/stringprintf.h"
 #include "base/time/time.h"
 #include "crypto/random.h"
+#include "net/base/io_buffer.h"
 #include "net/http/http_request_headers.h"
 #include "net/http/http_request_info.h"
 #include "net/http/http_response_body_drainer.h"
diff --git a/sandbox/linux/BUILD.gn b/sandbox/linux/BUILD.gn
index 0f8f86a..ff4a238 100644
--- a/sandbox/linux/BUILD.gn
+++ b/sandbox/linux/BUILD.gn
@@ -71,6 +71,7 @@
     "services/syscall_wrappers_unittest.cc",
     "services/thread_helpers_unittests.cc",
     "services/yama_unittests.cc",
+    "syscall_broker/broker_file_permission_unittest.cc",
     "syscall_broker/broker_process_unittest.cc",
     "tests/main.cc",
     "tests/scoped_temporary_file.cc",
@@ -108,6 +109,7 @@
       "seccomp-bpf/bpf_tests_unittest.cc",
       "seccomp-bpf/codegen_unittest.cc",
       "seccomp-bpf/errorcode_unittest.cc",
+      "seccomp-bpf/sandbox_bpf_unittest.cc",
       "seccomp-bpf/syscall_iterator_unittest.cc",
       "seccomp-bpf/syscall_unittest.cc",
     ]
@@ -115,6 +117,7 @@
   if (compile_credentials) {
     sources += [
       "services/credentials_unittest.cc",
+      "services/proc_util_unittest.cc",
       "services/unix_domain_socket_unittest.cc",
     ]
   }
@@ -173,6 +176,7 @@
   defines = [ "SANDBOX_IMPLEMENTATION" ]
 
   deps = [
+    ":sandbox_services",
     ":sandbox_services_headers",
     "//base",
   ]
@@ -235,6 +239,8 @@
     "syscall_broker/broker_client.cc",
     "syscall_broker/broker_client.h",
     "syscall_broker/broker_common.h",
+    "syscall_broker/broker_file_permission.cc",
+    "syscall_broker/broker_file_permission.h",
     "syscall_broker/broker_host.cc",
     "syscall_broker/broker_host.h",
     "syscall_broker/broker_policy.cc",
@@ -249,6 +255,8 @@
     sources += [
       "services/credentials.cc",
       "services/credentials.h",
+      "services/proc_util.cc",
+      "services/proc_util.h",
     ]
     # For capabilities.cc.
     configs += [ "//build/config/linux:libcap" ]
diff --git a/sandbox/linux/bpf_dsl/bpf_dsl.cc b/sandbox/linux/bpf_dsl/bpf_dsl.cc
index 0d5aa55..3a35903 100644
--- a/sandbox/linux/bpf_dsl/bpf_dsl.cc
+++ b/sandbox/linux/bpf_dsl/bpf_dsl.cc
@@ -10,12 +10,17 @@
 #include "base/memory/ref_counted.h"
 #include "sandbox/linux/bpf_dsl/bpf_dsl_impl.h"
 #include "sandbox/linux/bpf_dsl/policy_compiler.h"
+#include "sandbox/linux/seccomp-bpf/die.h"
 #include "sandbox/linux/seccomp-bpf/errorcode.h"
 
 namespace sandbox {
 namespace bpf_dsl {
 namespace {
 
+intptr_t BPFFailure(const struct arch_seccomp_data&, void* aux) {
+  SANDBOX_DIE(static_cast<char*>(aux));
+}
+
 class AllowResultExprImpl : public internal::ResultExprImpl {
  public:
   AllowResultExprImpl() {}
@@ -24,6 +29,8 @@
     return ErrorCode(ErrorCode::ERR_ALLOWED);
   }
 
+  bool IsAllow() const override { return true; }
+
  private:
   ~AllowResultExprImpl() override {}
 
@@ -40,6 +47,8 @@
     return pc->Error(err_);
   }
 
+  bool IsDeny() const override { return true; }
+
  private:
   ~ErrorResultExprImpl() override {}
 
@@ -48,22 +57,6 @@
   DISALLOW_COPY_AND_ASSIGN(ErrorResultExprImpl);
 };
 
-class KillResultExprImpl : public internal::ResultExprImpl {
- public:
-  explicit KillResultExprImpl(const char* msg) : msg_(msg) { DCHECK(msg_); }
-
-  ErrorCode Compile(PolicyCompiler* pc) const override {
-    return pc->Kill(msg_);
-  }
-
- private:
-  ~KillResultExprImpl() override {}
-
-  const char* msg_;
-
-  DISALLOW_COPY_AND_ASSIGN(KillResultExprImpl);
-};
-
 class TraceResultExprImpl : public internal::ResultExprImpl {
  public:
   TraceResultExprImpl(uint16_t aux) : aux_(aux) {}
@@ -82,46 +75,29 @@
 
 class TrapResultExprImpl : public internal::ResultExprImpl {
  public:
-  TrapResultExprImpl(TrapRegistry::TrapFnc func, const void* arg)
-      : func_(func), arg_(arg) {
+  TrapResultExprImpl(TrapRegistry::TrapFnc func, const void* arg, bool safe)
+      : func_(func), arg_(arg), safe_(safe) {
     DCHECK(func_);
   }
 
   ErrorCode Compile(PolicyCompiler* pc) const override {
-    return pc->Trap(func_, arg_);
+    return pc->Trap(func_, arg_, safe_);
   }
 
+  bool HasUnsafeTraps() const override { return safe_ == false; }
+
+  bool IsDeny() const override { return true; }
+
  private:
   ~TrapResultExprImpl() override {}
 
   TrapRegistry::TrapFnc func_;
   const void* arg_;
+  bool safe_;
 
   DISALLOW_COPY_AND_ASSIGN(TrapResultExprImpl);
 };
 
-class UnsafeTrapResultExprImpl : public internal::ResultExprImpl {
- public:
-  UnsafeTrapResultExprImpl(TrapRegistry::TrapFnc func, const void* arg)
-      : func_(func), arg_(arg) {
-    DCHECK(func_);
-  }
-
-  ErrorCode Compile(PolicyCompiler* pc) const override {
-    return pc->UnsafeTrap(func_, arg_);
-  }
-
-  bool HasUnsafeTraps() const override { return true; }
-
- private:
-  ~UnsafeTrapResultExprImpl() override {}
-
-  TrapRegistry::TrapFnc func_;
-  const void* arg_;
-
-  DISALLOW_COPY_AND_ASSIGN(UnsafeTrapResultExprImpl);
-};
-
 class IfThenResultExprImpl : public internal::ResultExprImpl {
  public:
   IfThenResultExprImpl(const BoolExpr& cond,
@@ -258,6 +234,14 @@
   return false;
 }
 
+bool ResultExprImpl::IsAllow() const {
+  return false;
+}
+
+bool ResultExprImpl::IsDeny() const {
+  return false;
+}
+
 uint64_t DefaultMask(size_t size) {
   switch (size) {
     case 4:
@@ -291,7 +275,7 @@
 }
 
 ResultExpr Kill(const char* msg) {
-  return ResultExpr(new const KillResultExprImpl(msg));
+  return Trap(BPFFailure, msg);
 }
 
 ResultExpr Trace(uint16_t aux) {
@@ -299,11 +283,13 @@
 }
 
 ResultExpr Trap(TrapRegistry::TrapFnc trap_func, const void* aux) {
-  return ResultExpr(new const TrapResultExprImpl(trap_func, aux));
+  return ResultExpr(
+      new const TrapResultExprImpl(trap_func, aux, true /* safe */));
 }
 
 ResultExpr UnsafeTrap(TrapRegistry::TrapFnc trap_func, const void* aux) {
-  return ResultExpr(new const UnsafeTrapResultExprImpl(trap_func, aux));
+  return ResultExpr(
+      new const TrapResultExprImpl(trap_func, aux, false /* unsafe */));
 }
 
 BoolExpr BoolConst(bool value) {
diff --git a/sandbox/linux/bpf_dsl/bpf_dsl_impl.h b/sandbox/linux/bpf_dsl/bpf_dsl_impl.h
index 48b9169..2ffaf79 100644
--- a/sandbox/linux/bpf_dsl/bpf_dsl_impl.h
+++ b/sandbox/linux/bpf_dsl/bpf_dsl_impl.h
@@ -47,6 +47,12 @@
   // contains an unsafe trap expression.
   virtual bool HasUnsafeTraps() const;
 
+  // IsAllow returns whether the result expression is an "allow" result.
+  virtual bool IsAllow() const;
+
+  // IsAllow returns whether the result expression is a "deny" result.
+  virtual bool IsDeny() const;
+
  protected:
   ResultExprImpl() {}
   virtual ~ResultExprImpl() {}
diff --git a/sandbox/linux/bpf_dsl/bpf_dsl_more_unittest.cc b/sandbox/linux/bpf_dsl/bpf_dsl_more_unittest.cc
index 66669e7..df5dbd5 100644
--- a/sandbox/linux/bpf_dsl/bpf_dsl_more_unittest.cc
+++ b/sandbox/linux/bpf_dsl/bpf_dsl_more_unittest.cc
@@ -42,6 +42,7 @@
 #include "sandbox/linux/seccomp-bpf/trap.h"
 #include "sandbox/linux/services/linux_syscalls.h"
 #include "sandbox/linux/services/syscall_wrappers.h"
+#include "sandbox/linux/syscall_broker/broker_file_permission.h"
 #include "sandbox/linux/syscall_broker/broker_process.h"
 #include "sandbox/linux/tests/scoped_temporary_file.h"
 #include "sandbox/linux/tests/unit_tests.h"
@@ -75,28 +76,6 @@
   Die::SuppressInfoMessages(true);
 }
 
-// This test should execute no matter whether we have kernel support. So,
-// we make it a TEST() instead of a BPF_TEST().
-TEST(SandboxBPF, DISABLE_ON_TSAN(CallSupports)) {
-  // We check that we don't crash, but it's ok if the kernel doesn't
-  // support it.
-  bool seccomp_bpf_supported =
-      SandboxBPF::SupportsSeccompSandbox(-1) == SandboxBPF::STATUS_AVAILABLE;
-  // We want to log whether or not seccomp BPF is actually supported
-  // since actual test coverage depends on it.
-  RecordProperty("SeccompBPFSupported",
-                 seccomp_bpf_supported ? "true." : "false.");
-  std::cout << "Seccomp BPF supported: "
-            << (seccomp_bpf_supported ? "true." : "false.") << "\n";
-  RecordProperty("PointerSize", sizeof(void*));
-  std::cout << "Pointer size: " << sizeof(void*) << "\n";
-}
-
-SANDBOX_TEST(SandboxBPF, DISABLE_ON_TSAN(CallSupportsTwice)) {
-  SandboxBPF::SupportsSeccompSandbox(-1);
-  SandboxBPF::SupportsSeccompSandbox(-1);
-}
-
 // BPF_TEST does a lot of the boiler-plate code around setting up a
 // policy and optional passing data between the caller, the policy and
 // any Trap() handlers. This is great for writing short and concise tests,
@@ -131,13 +110,12 @@
 };
 
 SANDBOX_TEST(SandboxBPF, DISABLE_ON_TSAN(VerboseAPITesting)) {
-  if (SandboxBPF::SupportsSeccompSandbox(-1) ==
-      sandbox::SandboxBPF::STATUS_AVAILABLE) {
+  if (SandboxBPF::SupportsSeccompSandbox(
+          SandboxBPF::SeccompLevel::SINGLE_THREADED)) {
     static int counter = 0;
 
-    SandboxBPF sandbox;
-    sandbox.SetSandboxPolicy(new VerboseAPITestingPolicy(&counter));
-    BPF_ASSERT(sandbox.StartSandbox(SandboxBPF::PROCESS_SINGLE_THREADED));
+    SandboxBPF sandbox(new VerboseAPITestingPolicy(&counter));
+    BPF_ASSERT(sandbox.StartSandbox(SandboxBPF::SeccompLevel::SINGLE_THREADED));
 
     BPF_ASSERT_EQ(0, counter);
     BPF_ASSERT_EQ(0, syscall(__NR_uname, 0));
@@ -179,6 +157,14 @@
   BlacklistNanosleepPolicy::AssertNanosleepFails();
 }
 
+BPF_TEST_C(SandboxBPF, UseVsyscall, BlacklistNanosleepPolicy) {
+  time_t current_time;
+  // time() is implemented as a vsyscall. With an older glibc, with
+  // vsyscall=emulate and some versions of the seccomp BPF patch
+  // we may get SIGKILL-ed. Detect this!
+  BPF_ASSERT_NE(static_cast<time_t>(-1), time(&current_time));
+}
+
 // Now do a simple whitelist test
 
 class WhitelistGetpidPolicy : public Policy {
@@ -396,9 +382,8 @@
 
   // Stack a second sandbox with its own policy. Verify that we can further
   // restrict filters, but we cannot relax existing filters.
-  SandboxBPF sandbox;
-  sandbox.SetSandboxPolicy(new StackingPolicyPartTwo());
-  BPF_ASSERT(sandbox.StartSandbox(SandboxBPF::PROCESS_SINGLE_THREADED));
+  SandboxBPF sandbox(new StackingPolicyPartTwo());
+  BPF_ASSERT(sandbox.StartSandbox(SandboxBPF::SeccompLevel::SINGLE_THREADED));
 
   errno = 0;
   BPF_ASSERT(syscall(__NR_getppid, 0) == -1);
@@ -756,12 +741,14 @@
 class InitializedOpenBroker {
  public:
   InitializedOpenBroker() : initialized_(false) {
-    std::vector<std::string> allowed_files;
-    allowed_files.push_back("/proc/allowed");
-    allowed_files.push_back("/proc/cpuinfo");
+    std::vector<syscall_broker::BrokerFilePermission> permissions;
+    permissions.push_back(
+        syscall_broker::BrokerFilePermission::ReadOnly("/proc/allowed"));
+    permissions.push_back(
+        syscall_broker::BrokerFilePermission::ReadOnly("/proc/cpuinfo"));
 
-    broker_process_.reset(new syscall_broker::BrokerProcess(
-        EPERM, allowed_files, std::vector<std::string>()));
+    broker_process_.reset(
+        new syscall_broker::BrokerProcess(EPERM, permissions));
     BPF_ASSERT(broker_process() != NULL);
     BPF_ASSERT(broker_process_->Init(base::Bind(&NoOpCallback)));
 
@@ -2069,8 +2056,8 @@
 };
 
 SANDBOX_TEST(SandboxBPF, DISABLE_ON_TSAN(SeccompRetTrace)) {
-  if (SandboxBPF::SupportsSeccompSandbox(-1) !=
-      sandbox::SandboxBPF::STATUS_AVAILABLE) {
+  if (!SandboxBPF::SupportsSeccompSandbox(
+          SandboxBPF::SeccompLevel::SINGLE_THREADED)) {
     return;
   }
 
@@ -2094,9 +2081,8 @@
     pid_t my_pid = getpid();
     BPF_ASSERT_NE(-1, ptrace(PTRACE_TRACEME, -1, NULL, NULL));
     BPF_ASSERT_EQ(0, raise(SIGSTOP));
-    SandboxBPF sandbox;
-    sandbox.SetSandboxPolicy(new TraceAllPolicy);
-    BPF_ASSERT(sandbox.StartSandbox(SandboxBPF::PROCESS_SINGLE_THREADED));
+    SandboxBPF sandbox(new TraceAllPolicy);
+    BPF_ASSERT(sandbox.StartSandbox(SandboxBPF::SeccompLevel::SINGLE_THREADED));
 
     // getpid is allowed.
     BPF_ASSERT_EQ(my_pid, sys_getpid());
@@ -2267,8 +2253,8 @@
 }
 
 SANDBOX_TEST(SandboxBPF, Tsync) {
-  if (SandboxBPF::SupportsSeccompThreadFilterSynchronization() !=
-      SandboxBPF::STATUS_AVAILABLE) {
+  if (!(SandboxBPF::SupportsSeccompSandbox(
+          SandboxBPF::SeccompLevel::MULTI_THREADED))) {
     return;
   }
 
@@ -2284,9 +2270,8 @@
   BPF_ASSERT_EQ(0, HANDLE_EINTR(syscall(__NR_nanosleep, &ts, NULL)));
 
   // Engage the sandbox.
-  SandboxBPF sandbox;
-  sandbox.SetSandboxPolicy(new BlacklistNanosleepPolicy());
-  BPF_ASSERT(sandbox.StartSandbox(SandboxBPF::PROCESS_MULTI_THREADED));
+  SandboxBPF sandbox(new BlacklistNanosleepPolicy());
+  BPF_ASSERT(sandbox.StartSandbox(SandboxBPF::SeccompLevel::MULTI_THREADED));
 
   // This thread should have the filter applied as well.
   BlacklistNanosleepPolicy::AssertNanosleepFails();
@@ -2316,9 +2301,8 @@
   base::Thread thread("sandbox.linux.StartMultiThreadedAsSingleThreaded");
   BPF_ASSERT(thread.Start());
 
-  SandboxBPF sandbox;
-  sandbox.SetSandboxPolicy(new AllowAllPolicy());
-  BPF_ASSERT(!sandbox.StartSandbox(SandboxBPF::PROCESS_SINGLE_THREADED));
+  SandboxBPF sandbox(new AllowAllPolicy());
+  BPF_ASSERT(!sandbox.StartSandbox(SandboxBPF::SeccompLevel::SINGLE_THREADED));
 }
 
 // http://crbug.com/407357
@@ -2329,9 +2313,8 @@
     DEATH_MESSAGE(
         "Cannot start sandbox; process may be single-threaded when "
         "reported as not")) {
-  SandboxBPF sandbox;
-  sandbox.SetSandboxPolicy(new AllowAllPolicy());
-  BPF_ASSERT(!sandbox.StartSandbox(SandboxBPF::PROCESS_MULTI_THREADED));
+  SandboxBPF sandbox(new AllowAllPolicy());
+  BPF_ASSERT(!sandbox.StartSandbox(SandboxBPF::SeccompLevel::MULTI_THREADED));
 }
 #endif  // !defined(THREAD_SANITIZER)
 
diff --git a/sandbox/linux/bpf_dsl/bpf_dsl_unittest.cc b/sandbox/linux/bpf_dsl/bpf_dsl_unittest.cc
index 6c2875f..cffadc5 100644
--- a/sandbox/linux/bpf_dsl/bpf_dsl_unittest.cc
+++ b/sandbox/linux/bpf_dsl/bpf_dsl_unittest.cc
@@ -15,10 +15,12 @@
 #include "base/files/scoped_file.h"
 #include "base/macros.h"
 #include "build/build_config.h"
+#include "sandbox/linux/bpf_dsl/bpf_dsl_impl.h"
 #include "sandbox/linux/bpf_dsl/policy.h"
 #include "sandbox/linux/seccomp-bpf/bpf_tests.h"
 #include "sandbox/linux/seccomp-bpf/errorcode.h"
 #include "sandbox/linux/seccomp-bpf/syscall.h"
+#include "testing/gtest/include/gtest/gtest.h"
 
 #define CASES SANDBOX_BPF_DSL_CASES
 
@@ -328,6 +330,48 @@
   ASSERT_SYSCALL_RESULT(-EACCES, fcntl, sock_fd.get(), F_DUPFD, 0);
 }
 
+static intptr_t DummyTrap(const struct arch_seccomp_data& data, void* aux) {
+  return 0;
+}
+
+TEST(BPFDSL, IsAllowDeny) {
+  ResultExpr allow = Allow();
+  EXPECT_TRUE(allow->IsAllow());
+  EXPECT_FALSE(allow->IsDeny());
+
+  ResultExpr error = Error(ENOENT);
+  EXPECT_FALSE(error->IsAllow());
+  EXPECT_TRUE(error->IsDeny());
+
+  ResultExpr trace = Trace(42);
+  EXPECT_FALSE(trace->IsAllow());
+  EXPECT_FALSE(trace->IsDeny());
+
+  ResultExpr trap = Trap(DummyTrap, nullptr);
+  EXPECT_FALSE(trap->IsAllow());
+  EXPECT_TRUE(trap->IsDeny());
+
+  const Arg<int> arg(0);
+  ResultExpr maybe = If(arg == 0, Allow()).Else(Error(EPERM));
+  EXPECT_FALSE(maybe->IsAllow());
+  EXPECT_FALSE(maybe->IsDeny());
+}
+
+TEST(BPFDSL, HasUnsafeTraps) {
+  ResultExpr allow = Allow();
+  EXPECT_FALSE(allow->HasUnsafeTraps());
+
+  ResultExpr safe = Trap(DummyTrap, nullptr);
+  EXPECT_FALSE(safe->HasUnsafeTraps());
+
+  ResultExpr unsafe = UnsafeTrap(DummyTrap, nullptr);
+  EXPECT_TRUE(unsafe->HasUnsafeTraps());
+
+  const Arg<int> arg(0);
+  ResultExpr maybe = If(arg == 0, allow).Else(unsafe);
+  EXPECT_TRUE(maybe->HasUnsafeTraps());
+}
+
 }  // namespace
 }  // namespace bpf_dsl
 }  // namespace sandbox
diff --git a/sandbox/linux/bpf_dsl/policy_compiler.cc b/sandbox/linux/bpf_dsl/policy_compiler.cc
index 2bc22e9..f91f70c 100644
--- a/sandbox/linux/bpf_dsl/policy_compiler.cc
+++ b/sandbox/linux/bpf_dsl/policy_compiler.cc
@@ -54,12 +54,6 @@
   return x != 0 && (x & (x - 1)) == 0;
 }
 
-bool IsDenied(const ErrorCode& code) {
-  return (code.err() & SECCOMP_RET_ACTION) == SECCOMP_RET_TRAP ||
-         (code.err() >= (SECCOMP_RET_ERRNO + ErrorCode::ERR_MIN_ERRNO) &&
-          code.err() <= (SECCOMP_RET_ERRNO + ErrorCode::ERR_MAX_ERRNO));
-}
-
 // A Trap() handler that returns an "errno" value. The value is encoded
 // in the "aux" parameter.
 intptr_t ReturnErrno(const struct arch_seccomp_data&, void* aux) {
@@ -71,11 +65,8 @@
   return -err;
 }
 
-intptr_t BPFFailure(const struct arch_seccomp_data&, void* aux) {
-  SANDBOX_DIE(static_cast<char*>(aux));
-}
-
 bool HasUnsafeTraps(const Policy* policy) {
+  DCHECK(policy);
   for (uint32_t sysnum : SyscallSet::ValidOnly()) {
     if (policy->EvaluateSyscall(sysnum)->HasUnsafeTraps()) {
       return true;
@@ -87,9 +78,8 @@
 }  // namespace
 
 struct PolicyCompiler::Range {
-  Range(uint32_t f, const ErrorCode& e) : from(f), err(e) {}
   uint32_t from;
-  ErrorCode err;
+  CodeGen::Node node;
 };
 
 PolicyCompiler::PolicyCompiler(const Policy* policy, TrapRegistry* registry)
@@ -98,13 +88,14 @@
       conds_(),
       gen_(),
       has_unsafe_traps_(HasUnsafeTraps(policy_)) {
+  DCHECK(policy);
 }
 
 PolicyCompiler::~PolicyCompiler() {
 }
 
 scoped_ptr<CodeGen::Program> PolicyCompiler::Compile() {
-  if (!IsDenied(policy_->InvalidSyscall()->Compile(this))) {
+  if (!policy_->InvalidSyscall()->IsDeny()) {
     SANDBOX_DIE("Policies should deny invalid system calls.");
   }
 
@@ -121,8 +112,7 @@
     }
 
     for (int sysnum : kSyscallsRequiredForUnsafeTraps) {
-      if (!policy_->EvaluateSyscall(sysnum)->Compile(this)
-               .Equals(ErrorCode(ErrorCode::ERR_ALLOWED))) {
+      if (!policy_->EvaluateSyscall(sysnum)->IsAllow()) {
         SANDBOX_DIE(
             "Policies that use UnsafeTrap() must unconditionally allow all "
             "required system calls");
@@ -159,13 +149,10 @@
   // If the architecture doesn't match SECCOMP_ARCH, disallow the
   // system call.
   return gen_.MakeInstruction(
-      BPF_LD + BPF_W + BPF_ABS,
-      SECCOMP_ARCH_IDX,
+      BPF_LD + BPF_W + BPF_ABS, SECCOMP_ARCH_IDX,
       gen_.MakeInstruction(
-          BPF_JMP + BPF_JEQ + BPF_K,
-          SECCOMP_ARCH,
-          passed,
-          RetExpression(Kill("Invalid audit architecture in BPF filter"))));
+          BPF_JMP + BPF_JEQ + BPF_K, SECCOMP_ARCH, passed,
+          CompileResult(Kill("Invalid audit architecture in BPF filter"))));
 }
 
 CodeGen::Node PolicyCompiler::MaybeAddEscapeHatch(CodeGen::Node rest) {
@@ -189,19 +176,13 @@
   // For simplicity, we check the full 64-bit instruction pointer even
   // on 32-bit architectures.
   return gen_.MakeInstruction(
-      BPF_LD + BPF_W + BPF_ABS,
-      SECCOMP_IP_LSB_IDX,
+      BPF_LD + BPF_W + BPF_ABS, SECCOMP_IP_LSB_IDX,
       gen_.MakeInstruction(
-          BPF_JMP + BPF_JEQ + BPF_K,
-          low,
+          BPF_JMP + BPF_JEQ + BPF_K, low,
           gen_.MakeInstruction(
-              BPF_LD + BPF_W + BPF_ABS,
-              SECCOMP_IP_MSB_IDX,
-              gen_.MakeInstruction(
-                  BPF_JMP + BPF_JEQ + BPF_K,
-                  hi,
-                  RetExpression(ErrorCode(ErrorCode::ERR_ALLOWED)),
-                  rest)),
+              BPF_LD + BPF_W + BPF_ABS, SECCOMP_IP_MSB_IDX,
+              gen_.MakeInstruction(BPF_JMP + BPF_JEQ + BPF_K, hi,
+                                   CompileResult(Allow()), rest)),
           rest));
 }
 
@@ -225,7 +206,7 @@
     // On Intel architectures, verify that system call numbers are in the
     // expected number range.
     CodeGen::Node invalidX32 =
-        RetExpression(Kill("Illegal mixing of system call ABIs"));
+        CompileResult(Kill("Illegal mixing of system call ABIs"));
     if (kIsX32) {
       // The newer x32 API always sets bit 30.
       return gen_.MakeInstruction(
@@ -247,24 +228,28 @@
   // deal with this disparity by enumerating from MIN_SYSCALL to MAX_SYSCALL,
   // and then verifying that the rest of the number range (both positive and
   // negative) all return the same ErrorCode.
-  const ErrorCode invalid_err = policy_->InvalidSyscall()->Compile(this);
+  const CodeGen::Node invalid_node = CompileResult(policy_->InvalidSyscall());
   uint32_t old_sysnum = 0;
-  ErrorCode old_err = SyscallSet::IsValid(old_sysnum)
-                          ? policy_->EvaluateSyscall(old_sysnum)->Compile(this)
-                          : invalid_err;
+  CodeGen::Node old_node =
+      SyscallSet::IsValid(old_sysnum)
+          ? CompileResult(policy_->EvaluateSyscall(old_sysnum))
+          : invalid_node;
 
   for (uint32_t sysnum : SyscallSet::All()) {
-    ErrorCode err =
+    CodeGen::Node node =
         SyscallSet::IsValid(sysnum)
-            ? policy_->EvaluateSyscall(static_cast<int>(sysnum))->Compile(this)
-            : invalid_err;
-    if (!err.Equals(old_err)) {
-      ranges->push_back(Range(old_sysnum, old_err));
+            ? CompileResult(policy_->EvaluateSyscall(static_cast<int>(sysnum)))
+            : invalid_node;
+    // N.B., here we rely on CodeGen folding (i.e., returning the same
+    // node value for) identical code sequences, otherwise our jump
+    // table will blow up in size.
+    if (node != old_node) {
+      ranges->push_back(Range{old_sysnum, old_node});
       old_sysnum = sysnum;
-      old_err = err;
+      old_node = node;
     }
   }
-  ranges->push_back(Range(old_sysnum, old_err));
+  ranges->push_back(Range{old_sysnum, old_node});
 }
 
 CodeGen::Node PolicyCompiler::AssembleJumpTable(Ranges::const_iterator start,
@@ -278,7 +263,7 @@
   } else if (stop - start == 1) {
     // If we have narrowed things down to a single range object, we can
     // return from the BPF filter program.
-    return RetExpression(start->err);
+    return start->node;
   }
 
   // Pick the range object that is located at the mid point of our list.
@@ -293,6 +278,10 @@
   return gen_.MakeInstruction(BPF_JMP + BPF_JGE + BPF_K, mid->from, jt, jf);
 }
 
+CodeGen::Node PolicyCompiler::CompileResult(const ResultExpr& res) {
+  return RetExpression(res->Compile(this));
+}
+
 CodeGen::Node PolicyCompiler::RetExpression(const ErrorCode& err) {
   switch (err.error_type()) {
     case ErrorCode::ET_COND:
@@ -454,7 +443,7 @@
 }
 
 ErrorCode PolicyCompiler::Unexpected64bitArgument() {
-  return Kill("Unexpected 64bit argument detected");
+  return Kill("Unexpected 64bit argument detected")->Compile(this);
 }
 
 ErrorCode PolicyCompiler::Error(int err) {
@@ -468,28 +457,19 @@
     // The performance penalty for this extra round-trip to user-space is not
     // actually that bad, as we only ever pay it for denied system calls; and a
     // typical program has very few of these.
-    return Trap(ReturnErrno, reinterpret_cast<void*>(err));
+    return Trap(ReturnErrno, reinterpret_cast<void*>(err), true);
   }
 
   return ErrorCode(err);
 }
 
-ErrorCode PolicyCompiler::MakeTrap(TrapRegistry::TrapFnc fnc,
-                                   const void* aux,
-                                   bool safe) {
+ErrorCode PolicyCompiler::Trap(TrapRegistry::TrapFnc fnc,
+                               const void* aux,
+                               bool safe) {
   uint16_t trap_id = registry_->Add(fnc, aux, safe);
   return ErrorCode(trap_id, fnc, aux, safe);
 }
 
-ErrorCode PolicyCompiler::Trap(TrapRegistry::TrapFnc fnc, const void* aux) {
-  return MakeTrap(fnc, aux, true /* Safe Trap */);
-}
-
-ErrorCode PolicyCompiler::UnsafeTrap(TrapRegistry::TrapFnc fnc,
-                                     const void* aux) {
-  return MakeTrap(fnc, aux, false /* Unsafe Trap */);
-}
-
 bool PolicyCompiler::IsRequiredForUnsafeTrap(int sysno) {
   for (size_t i = 0; i < arraysize(kSyscallsRequiredForUnsafeTraps); ++i) {
     if (sysno == kSyscallsRequiredForUnsafeTraps[i]) {
@@ -513,9 +493,5 @@
                    &*conds_.insert(failed).first);
 }
 
-ErrorCode PolicyCompiler::Kill(const char* msg) {
-  return Trap(BPFFailure, const_cast<char*>(msg));
-}
-
 }  // namespace bpf_dsl
 }  // namespace sandbox
diff --git a/sandbox/linux/bpf_dsl/policy_compiler.h b/sandbox/linux/bpf_dsl/policy_compiler.h
index 4ef8cf3..8737c42 100644
--- a/sandbox/linux/bpf_dsl/policy_compiler.h
+++ b/sandbox/linux/bpf_dsl/policy_compiler.h
@@ -13,6 +13,7 @@
 
 #include "base/macros.h"
 #include "base/memory/scoped_ptr.h"
+#include "sandbox/linux/bpf_dsl/bpf_dsl_forward.h"
 #include "sandbox/linux/seccomp-bpf/codegen.h"
 #include "sandbox/linux/seccomp-bpf/errorcode.h"
 #include "sandbox/sandbox_export.h"
@@ -37,25 +38,9 @@
   // the specified error number.
   ErrorCode Error(int err);
 
-  // We can use ErrorCode to request calling of a trap handler. This method
-  // performs the required wrapping of the callback function into an
-  // ErrorCode object.
-  // The "aux" field can carry a pointer to arbitrary data. See EvaluateSyscall
-  // for a description of how to pass data from SetSandboxPolicy() to a Trap()
-  // handler.
-  ErrorCode Trap(TrapRegistry::TrapFnc fnc, const void* aux);
-
-  // Calls a user-space trap handler and disables all sandboxing for system
-  // calls made from this trap handler.
-  // This feature is available only if explicitly enabled by the user having
-  // set the CHROME_SANDBOX_DEBUGGING environment variable.
-  // Returns an ET_INVALID ErrorCode, if called when not enabled.
-  // NOTE: This feature, by definition, disables all security features of
-  //   the sandbox. It should never be used in production, but it can be
-  //   very useful to diagnose code that is incompatible with the sandbox.
-  //   If even a single system call returns "UnsafeTrap", the security of
-  //   entire sandbox should be considered compromised.
-  ErrorCode UnsafeTrap(TrapRegistry::TrapFnc fnc, const void* aux);
+  // Trap returns an ErrorCode to indicate the system call should
+  // instead invoke a trap handler.
+  ErrorCode Trap(TrapRegistry::TrapFnc fnc, const void* aux, bool safe);
 
   // UnsafeTraps require some syscalls to always be allowed.
   // This helper function returns true for these calls.
@@ -77,9 +62,6 @@
                             const ErrorCode& passed,
                             const ErrorCode& failed);
 
-  // Kill the program and print an error message.
-  ErrorCode Kill(const char* msg);
-
   // Returns the fatal ErrorCode that is used to indicate that somebody
   // attempted to pass a 64bit value in a 32bit system call argument.
   // This method is primarily needed for testing purposes.
@@ -88,7 +70,6 @@
  private:
   struct Range;
   typedef std::vector<Range> Ranges;
-  typedef std::map<uint32_t, ErrorCode> ErrMap;
   typedef std::set<ErrorCode, struct ErrorCode::LessThan> Conds;
 
   // Used by CondExpressionHalf to track which half of the argument it's
@@ -133,6 +114,10 @@
   CodeGen::Node AssembleJumpTable(Ranges::const_iterator start,
                                   Ranges::const_iterator stop);
 
+  // CompileResult compiles an individual result expression into a
+  // CodeGen node.
+  CodeGen::Node CompileResult(const ResultExpr& res);
+
   // Returns a BPF program snippet that makes the BPF filter program exit
   // with the given ErrorCode "err". N.B. the ErrorCode may very well be a
   // conditional expression; if so, this function will recursively call
@@ -153,9 +138,6 @@
                                    CodeGen::Node passed,
                                    CodeGen::Node failed);
 
-  // MakeTrap is the common implementation for Trap and UnsafeTrap.
-  ErrorCode MakeTrap(TrapRegistry::TrapFnc fnc, const void* aux, bool safe);
-
   const Policy* policy_;
   TrapRegistry* registry_;
 
diff --git a/sandbox/linux/sandbox_linux.gypi b/sandbox/linux/sandbox_linux.gypi
index 08a5c43..89c830e 100644
--- a/sandbox/linux/sandbox_linux.gypi
+++ b/sandbox/linux/sandbox_linux.gypi
@@ -234,6 +234,8 @@
         'syscall_broker/broker_client.cc',
         'syscall_broker/broker_client.h',
         'syscall_broker/broker_common.h',
+        'syscall_broker/broker_file_permission.cc',
+        'syscall_broker/broker_file_permission.h',
         'syscall_broker/broker_host.cc',
         'syscall_broker/broker_host.h',
         'syscall_broker/broker_policy.cc',
@@ -252,6 +254,8 @@
           'sources': [
             'services/credentials.cc',
             'services/credentials.h',
+            'services/proc_util.cc',
+            'services/proc_util.h',
           ],
           'dependencies': [
             # for capabilities.cc.
diff --git a/sandbox/linux/sandbox_linux_test_sources.gypi b/sandbox/linux/sandbox_linux_test_sources.gypi
index cefe962..5aeacf6 100644
--- a/sandbox/linux/sandbox_linux_test_sources.gypi
+++ b/sandbox/linux/sandbox_linux_test_sources.gypi
@@ -21,6 +21,7 @@
     'services/syscall_wrappers_unittest.cc',
     'services/thread_helpers_unittests.cc',
     'services/yama_unittests.cc',
+    'syscall_broker/broker_file_permission_unittest.cc',
     'syscall_broker/broker_process_unittest.cc',
     'tests/main.cc',
     'tests/scoped_temporary_file.cc',
@@ -45,6 +46,7 @@
         'seccomp-bpf/bpf_tests_unittest.cc',
         'seccomp-bpf/codegen_unittest.cc',
         'seccomp-bpf/errorcode_unittest.cc',
+        'seccomp-bpf/sandbox_bpf_unittest.cc',
         'seccomp-bpf/syscall_iterator_unittest.cc',
         'seccomp-bpf/syscall_unittest.cc',
       ],
@@ -52,6 +54,7 @@
     [ 'compile_credentials==1', {
       'sources': [
         'services/credentials_unittest.cc',
+        'services/proc_util_unittest.cc',
         'services/unix_domain_socket_unittest.cc',
       ],
     }],
diff --git a/sandbox/linux/seccomp-bpf/codegen.cc b/sandbox/linux/seccomp-bpf/codegen.cc
index 3ed06cb..df96760 100644
--- a/sandbox/linux/seccomp-bpf/codegen.cc
+++ b/sandbox/linux/seccomp-bpf/codegen.cc
@@ -49,7 +49,7 @@
 
 const CodeGen::Node CodeGen::kNullNode;
 
-CodeGen::CodeGen() : program_(), memos_() {
+CodeGen::CodeGen() : program_(), equivalent_(), memos_() {
 }
 
 CodeGen::~CodeGen() {
@@ -81,11 +81,11 @@
   if (BPF_CLASS(code) == BPF_JMP) {
     CHECK_NE(BPF_JA, BPF_OP(code)) << "CodeGen inserts JAs as needed";
 
-    // We need to check |jt| twice because it might get pushed
-    // out-of-range by appending a jump for |jf|.
-    jt = WithinRange(jt, kBranchRange);
+    // Optimally adding jumps is rather tricky, so we use a quick
+    // approximation: by artificially reducing |jt|'s range, |jt| will
+    // stay within its true range even if we add a jump for |jf|.
+    jt = WithinRange(jt, kBranchRange - 1);
     jf = WithinRange(jf, kBranchRange);
-    jt = WithinRange(jt, kBranchRange);
     return Append(code, k, Offset(jt), Offset(jf));
   }
 
@@ -97,24 +97,26 @@
     // proceeds to the next instruction; so we need to arrange for
     // that to be |jt|.
     jt = WithinRange(jt, 0);
+    CHECK_EQ(0U, Offset(jt)) << "ICE: Failed to setup next instruction";
   }
   return Append(code, k, 0, 0);
 }
 
 CodeGen::Node CodeGen::WithinRange(Node target, size_t range) {
-  if (Offset(target) > range) {
-    // TODO(mdempsky): If |range > 0|, we might be able to reuse an
-    // existing instruction within that range.
-
-    // TODO(mdempsky): If |target| is a branch or return, it might be
-    // possible to duplicate that instruction rather than jump to it.
-
-    // Fall back to emitting a jump instruction.
-    target = Append(BPF_JMP | BPF_JA, Offset(target), 0, 0);
+  // Just use |target| if it's already within range.
+  if (Offset(target) <= range) {
+    return target;
   }
 
-  CHECK_LE(Offset(target), range) << "ICE: Failed to bring target within range";
-  return target;
+  // Alternatively, look for an equivalent instruction within range.
+  if (Offset(equivalent_.at(target)) <= range) {
+    return equivalent_.at(target);
+  }
+
+  // Otherwise, fall back to emitting a jump instruction.
+  Node jump = Append(BPF_JMP | BPF_JA, Offset(target), 0, 0);
+  equivalent_.at(target) = jump;
+  return jump;
 }
 
 CodeGen::Node CodeGen::Append(uint16_t code, uint32_t k, size_t jt, size_t jf) {
@@ -127,8 +129,12 @@
   }
 
   CHECK_LT(program_.size(), static_cast<size_t>(BPF_MAXINSNS));
+  CHECK_EQ(program_.size(), equivalent_.size());
+
+  Node res = program_.size();
   program_.push_back(sock_filter{code, jt, jf, k});
-  return program_.size() - 1;
+  equivalent_.push_back(res);
+  return res;
 }
 
 size_t CodeGen::Offset(Node target) const {
diff --git a/sandbox/linux/seccomp-bpf/codegen.h b/sandbox/linux/seccomp-bpf/codegen.h
index bca4046..e679664 100644
--- a/sandbox/linux/seccomp-bpf/codegen.h
+++ b/sandbox/linux/seccomp-bpf/codegen.h
@@ -106,6 +106,13 @@
   // indices remain stable as we add instructions.
   Program program_;
 
+  // equivalent_ stores the most recent semantically-equivalent node for each
+  // instruction in program_. A node is defined as semantically-equivalent to N
+  // if it has the same instruction code and constant as N and its successor
+  // nodes (if any) are semantically-equivalent to N's successor nodes, or
+  // if it's an unconditional jump to a node semantically-equivalent to N.
+  std::vector<Node> equivalent_;
+
   std::map<MemoKey, Node, MemoKeyLess> memos_;
 
   DISALLOW_COPY_AND_ASSIGN(CodeGen);
diff --git a/sandbox/linux/seccomp-bpf/codegen_unittest.cc b/sandbox/linux/seccomp-bpf/codegen_unittest.cc
index a001668..8d4bf5d 100644
--- a/sandbox/linux/seccomp-bpf/codegen_unittest.cc
+++ b/sandbox/linux/seccomp-bpf/codegen_unittest.cc
@@ -367,5 +367,37 @@
   }
 }
 
+TEST_F(ProgramTest, JumpReuse) {
+  // As a code size optimization, we try to reuse jumps when possible
+  // instead of emitting new ones. Here we make sure that optimization
+  // is working as intended.
+  //
+  // NOTE: To simplify testing, we rely on implementation details
+  // about what CodeGen::Node values indicate (i.e., vector indices),
+  // but CodeGen users should treat them as opaque values.
+
+  // Populate with 260 initial instruction nodes.
+  std::vector<CodeGen::Node> nodes;
+  nodes.push_back(MakeInstruction(BPF_RET + BPF_K, 0));
+  for (size_t i = 1; i < 260; ++i) {
+    nodes.push_back(
+        MakeInstruction(BPF_ALU + BPF_ADD + BPF_K, i, nodes.back()));
+  }
+
+  // Branching to nodes[0] and nodes[1] should require 3 new
+  // instructions: two far jumps plus the branch itself.
+  CodeGen::Node one =
+      MakeInstruction(BPF_JMP + BPF_JEQ + BPF_K, 0, nodes[0], nodes[1]);
+  EXPECT_EQ(nodes.back() + 3, one);  // XXX: Implementation detail!
+  RunTest(one);
+
+  // Branching again to the same target nodes should require only one
+  // new instruction, as we can reuse the previous branch's jumps.
+  CodeGen::Node two =
+      MakeInstruction(BPF_JMP + BPF_JEQ + BPF_K, 1, nodes[0], nodes[1]);
+  EXPECT_EQ(one + 1, two);  // XXX: Implementation detail!
+  RunTest(two);
+}
+
 }  // namespace
 }  // namespace sandbox
diff --git a/sandbox/linux/seccomp-bpf/errorcode.h b/sandbox/linux/seccomp-bpf/errorcode.h
index fb86fe8..d887773 100644
--- a/sandbox/linux/seccomp-bpf/errorcode.h
+++ b/sandbox/linux/seccomp-bpf/errorcode.h
@@ -21,6 +21,10 @@
 // All of the commonly used values are stored in the "err_" field. So, code
 // that is using the ErrorCode class typically operates on a single 32bit
 // field.
+//
+// TODO(mdempsky): Nuke from orbit. The only reason this class still
+// exists is for Verifier, which will eventually be replaced by a true
+// BPF symbolic evaluator and constraint solver.
 class SANDBOX_EXPORT ErrorCode {
  public:
   enum {
diff --git a/sandbox/linux/seccomp-bpf/errorcode_unittest.cc b/sandbox/linux/seccomp-bpf/errorcode_unittest.cc
index ae68b0a..9f5090e 100644
--- a/sandbox/linux/seccomp-bpf/errorcode_unittest.cc
+++ b/sandbox/linux/seccomp-bpf/errorcode_unittest.cc
@@ -43,7 +43,7 @@
 
   DummyPolicy dummy_policy;
   bpf_dsl::PolicyCompiler compiler(&dummy_policy, Trap::Registry());
-  ErrorCode e3 = compiler.Trap(NULL, NULL);
+  ErrorCode e3 = compiler.Trap(NULL, NULL, true /* safe */);
   SANDBOX_ASSERT((e3.err() & SECCOMP_RET_ACTION)  == SECCOMP_RET_TRAP);
 
   uint16_t data = 0xdead;
@@ -61,12 +61,12 @@
 SANDBOX_TEST(ErrorCode, Trap) {
   DummyPolicy dummy_policy;
   bpf_dsl::PolicyCompiler compiler(&dummy_policy, Trap::Registry());
-  ErrorCode e0 = compiler.Trap(NULL, "a");
-  ErrorCode e1 = compiler.Trap(NULL, "b");
+  ErrorCode e0 = compiler.Trap(NULL, "a", true /* safe */);
+  ErrorCode e1 = compiler.Trap(NULL, "b", true /* safe */);
   SANDBOX_ASSERT((e0.err() & SECCOMP_RET_DATA) + 1 ==
                  (e1.err() & SECCOMP_RET_DATA));
 
-  ErrorCode e2 = compiler.Trap(NULL, "a");
+  ErrorCode e2 = compiler.Trap(NULL, "a", true /* safe */);
   SANDBOX_ASSERT((e0.err() & SECCOMP_RET_DATA) ==
                  (e2.err() & SECCOMP_RET_DATA));
 }
@@ -83,9 +83,9 @@
 
   DummyPolicy dummy_policy;
   bpf_dsl::PolicyCompiler compiler(&dummy_policy, Trap::Registry());
-  ErrorCode e4 = compiler.Trap(NULL, "a");
-  ErrorCode e5 = compiler.Trap(NULL, "b");
-  ErrorCode e6 = compiler.Trap(NULL, "a");
+  ErrorCode e4 = compiler.Trap(NULL, "a", true /* safe */);
+  ErrorCode e5 = compiler.Trap(NULL, "b", true /* safe */);
+  ErrorCode e6 = compiler.Trap(NULL, "a", true /* safe */);
   SANDBOX_ASSERT(!e1.Equals(e4));
   SANDBOX_ASSERT(!e3.Equals(e4));
   SANDBOX_ASSERT(!e5.Equals(e4));
@@ -105,9 +105,9 @@
 
   DummyPolicy dummy_policy;
   bpf_dsl::PolicyCompiler compiler(&dummy_policy, Trap::Registry());
-  ErrorCode e4 = compiler.Trap(NULL, "a");
-  ErrorCode e5 = compiler.Trap(NULL, "b");
-  ErrorCode e6 = compiler.Trap(NULL, "a");
+  ErrorCode e4 = compiler.Trap(NULL, "a", true /* safe */);
+  ErrorCode e5 = compiler.Trap(NULL, "b", true /* safe */);
+  ErrorCode e6 = compiler.Trap(NULL, "a", true /* safe */);
   SANDBOX_ASSERT(e1.LessThan(e4));
   SANDBOX_ASSERT(e3.LessThan(e4));
   SANDBOX_ASSERT(e4.LessThan(e5));
diff --git a/sandbox/linux/seccomp-bpf/sandbox_bpf.cc b/sandbox/linux/seccomp-bpf/sandbox_bpf.cc
index 43c9af6..555f672 100644
--- a/sandbox/linux/seccomp-bpf/sandbox_bpf.cc
+++ b/sandbox/linux/seccomp-bpf/sandbox_bpf.cc
@@ -11,24 +11,18 @@
 #endif
 
 #include <errno.h>
-#include <fcntl.h>
 #include <linux/filter.h>
-#include <signal.h>
-#include <string.h>
 #include <sys/prctl.h>
-#include <sys/stat.h>
-#include <sys/syscall.h>
 #include <sys/types.h>
-#include <sys/wait.h>
-#include <time.h>
 #include <unistd.h>
 
 #include "base/compiler_specific.h"
+#include "base/files/scoped_file.h"
 #include "base/logging.h"
 #include "base/macros.h"
 #include "base/memory/scoped_ptr.h"
 #include "base/posix/eintr_wrapper.h"
-#include "sandbox/linux/bpf_dsl/bpf_dsl.h"
+#include "base/third_party/valgrind/valgrind.h"
 #include "sandbox/linux/bpf_dsl/dump_bpf.h"
 #include "sandbox/linux/bpf_dsl/policy.h"
 #include "sandbox/linux/bpf_dsl/policy_compiler.h"
@@ -42,354 +36,95 @@
 #include "sandbox/linux/seccomp-bpf/verifier.h"
 #include "sandbox/linux/services/linux_syscalls.h"
 #include "sandbox/linux/services/syscall_wrappers.h"
-
-using sandbox::bpf_dsl::Allow;
-using sandbox::bpf_dsl::Error;
-using sandbox::bpf_dsl::ResultExpr;
+#include "sandbox/linux/services/thread_helpers.h"
 
 namespace sandbox {
 
 namespace {
 
-const int kExpectedExitCode = 100;
+bool IsRunningOnValgrind() { return RUNNING_ON_VALGRIND; }
 
-#if !defined(NDEBUG)
-void WriteFailedStderrSetupMessage(int out_fd) {
-  const char* error_string = strerror(errno);
-  static const char msg[] =
-      "You have reproduced a puzzling issue.\n"
-      "Please, report to crbug.com/152530!\n"
-      "Failed to set up stderr: ";
-  if (HANDLE_EINTR(write(out_fd, msg, sizeof(msg) - 1)) > 0 && error_string &&
-      HANDLE_EINTR(write(out_fd, error_string, strlen(error_string))) > 0 &&
-      HANDLE_EINTR(write(out_fd, "\n", 1))) {
-  }
-}
-#endif  // !defined(NDEBUG)
-
-// We define a really simple sandbox policy. It is just good enough for us
-// to tell that the sandbox has actually been activated.
-class ProbePolicy : public bpf_dsl::Policy {
- public:
-  ProbePolicy() {}
-  virtual ~ProbePolicy() {}
-
-  virtual ResultExpr EvaluateSyscall(int sysnum) const override {
-    switch (sysnum) {
-      case __NR_getpid:
-        // Return EPERM so that we can check that the filter actually ran.
-        return Error(EPERM);
-      case __NR_exit_group:
-        // Allow exit() with a non-default return code.
-        return Allow();
-      default:
-        // Make everything else fail in an easily recognizable way.
-        return Error(EINVAL);
-    }
-  }
-
- private:
-  DISALLOW_COPY_AND_ASSIGN(ProbePolicy);
-};
-
-void ProbeProcess(void) {
-  if (sys_getpid() < 0 && errno == EPERM) {
-    sys_exit_group(kExpectedExitCode);
-  }
+bool IsSingleThreaded(int proc_task_fd) {
+  return ThreadHelpers::IsSingleThreaded(proc_task_fd);
 }
 
-class AllowAllPolicy : public bpf_dsl::Policy {
- public:
-  AllowAllPolicy() {}
-  virtual ~AllowAllPolicy() {}
+// Check if the kernel supports seccomp-filter (a.k.a. seccomp mode 2) via
+// prctl().
+bool KernelSupportsSeccompBPF() {
+  errno = 0;
+  const int rv = prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, nullptr);
 
-  virtual ResultExpr EvaluateSyscall(int sysnum) const override {
-    DCHECK(SandboxBPF::IsValidSyscallNumber(sysnum));
-    return Allow();
-  }
-
- private:
-  DISALLOW_COPY_AND_ASSIGN(AllowAllPolicy);
-};
-
-void TryVsyscallProcess(void) {
-  time_t current_time;
-  // time() is implemented as a vsyscall. With an older glibc, with
-  // vsyscall=emulate and some versions of the seccomp BPF patch
-  // we may get SIGKILL-ed. Detect this!
-  if (time(&current_time) != static_cast<time_t>(-1)) {
-    sys_exit_group(kExpectedExitCode);
-  }
-}
-
-bool IsSingleThreaded(int proc_fd) {
-  if (proc_fd < 0) {
-    // Cannot determine whether program is single-threaded. Hope for
-    // the best...
+  if (rv == -1 && EFAULT == errno) {
     return true;
   }
+  return false;
+}
 
-  struct stat sb;
-  int task = -1;
-  if ((task = openat(proc_fd, "self/task", O_RDONLY | O_DIRECTORY)) < 0 ||
-      fstat(task, &sb) != 0 || sb.st_nlink != 3 || IGNORE_EINTR(close(task))) {
-    if (task >= 0) {
-      if (IGNORE_EINTR(close(task))) {
-      }
-    }
+// Check if the kernel supports seccomp-filter via the seccomp system call
+// and the TSYNC feature to enable seccomp on all threads.
+bool KernelSupportsSeccompTsync() {
+  errno = 0;
+  const int rv =
+      sys_seccomp(SECCOMP_SET_MODE_FILTER, SECCOMP_FILTER_FLAG_TSYNC, nullptr);
+
+  if (rv == -1 && errno == EFAULT) {
+    return true;
+  } else {
+    // TODO(jln): turn these into DCHECK after 417888 is considered fixed.
+    CHECK_EQ(-1, rv);
+    CHECK(ENOSYS == errno || EINVAL == errno);
     return false;
   }
-  return true;
 }
 
 }  // namespace
 
-SandboxBPF::SandboxBPF()
-    : quiet_(false), proc_fd_(-1), sandbox_has_started_(false), policy_() {
+SandboxBPF::SandboxBPF(bpf_dsl::Policy* policy)
+    : proc_task_fd_(), sandbox_has_started_(false), policy_(policy) {
 }
 
 SandboxBPF::~SandboxBPF() {
 }
 
-bool SandboxBPF::IsValidSyscallNumber(int sysnum) {
-  return SyscallSet::IsValid(sysnum);
-}
-
-bool SandboxBPF::RunFunctionInPolicy(void (*code_in_sandbox)(),
-                                     scoped_ptr<bpf_dsl::Policy> policy) {
-  // Block all signals before forking a child process. This prevents an
-  // attacker from manipulating our test by sending us an unexpected signal.
-  sigset_t old_mask, new_mask;
-  if (sigfillset(&new_mask) || sigprocmask(SIG_BLOCK, &new_mask, &old_mask)) {
-    SANDBOX_DIE("sigprocmask() failed");
-  }
-  int fds[2];
-  if (pipe2(fds, O_NONBLOCK | O_CLOEXEC)) {
-    SANDBOX_DIE("pipe() failed");
-  }
-
-  if (fds[0] <= 2 || fds[1] <= 2) {
-    SANDBOX_DIE("Process started without standard file descriptors");
-  }
-
-  // This code is using fork() and should only ever run single-threaded.
-  // Most of the code below is "async-signal-safe" and only minor changes
-  // would be needed to support threads.
-  DCHECK(IsSingleThreaded(proc_fd_));
-  pid_t pid = fork();
-  if (pid < 0) {
-    // Die if we cannot fork(). We would probably fail a little later
-    // anyway, as the machine is likely very close to running out of
-    // memory.
-    // But what we don't want to do is return "false", as a crafty
-    // attacker might cause fork() to fail at will and could trick us
-    // into running without a sandbox.
-    sigprocmask(SIG_SETMASK, &old_mask, NULL);  // OK, if it fails
-    SANDBOX_DIE("fork() failed unexpectedly");
-  }
-
-  // In the child process
-  if (!pid) {
-    // Test a very simple sandbox policy to verify that we can
-    // successfully turn on sandboxing.
-    Die::EnableSimpleExit();
-
-    errno = 0;
-    if (IGNORE_EINTR(close(fds[0]))) {
-      // This call to close() has been failing in strange ways. See
-      // crbug.com/152530. So we only fail in debug mode now.
-#if !defined(NDEBUG)
-      WriteFailedStderrSetupMessage(fds[1]);
-      SANDBOX_DIE(NULL);
-#endif
-    }
-    if (HANDLE_EINTR(dup2(fds[1], 2)) != 2) {
-      // Stderr could very well be a file descriptor to .xsession-errors, or
-      // another file, which could be backed by a file system that could cause
-      // dup2 to fail while trying to close stderr. It's important that we do
-      // not fail on trying to close stderr.
-      // If dup2 fails here, we will continue normally, this means that our
-      // parent won't cause a fatal failure if something writes to stderr in
-      // this child.
-#if !defined(NDEBUG)
-      // In DEBUG builds, we still want to get a report.
-      WriteFailedStderrSetupMessage(fds[1]);
-      SANDBOX_DIE(NULL);
-#endif
-    }
-    if (IGNORE_EINTR(close(fds[1]))) {
-      // This call to close() has been failing in strange ways. See
-      // crbug.com/152530. So we only fail in debug mode now.
-#if !defined(NDEBUG)
-      WriteFailedStderrSetupMessage(fds[1]);
-      SANDBOX_DIE(NULL);
-#endif
-    }
-
-    SetSandboxPolicy(policy.release());
-    if (!StartSandbox(PROCESS_SINGLE_THREADED)) {
-      SANDBOX_DIE(NULL);
-    }
-
-    // Run our code in the sandbox.
-    code_in_sandbox();
-
-    // code_in_sandbox() is not supposed to return here.
-    SANDBOX_DIE(NULL);
-  }
-
-  // In the parent process.
-  if (IGNORE_EINTR(close(fds[1]))) {
-    SANDBOX_DIE("close() failed");
-  }
-  if (sigprocmask(SIG_SETMASK, &old_mask, NULL)) {
-    SANDBOX_DIE("sigprocmask() failed");
-  }
-  int status;
-  if (HANDLE_EINTR(waitpid(pid, &status, 0)) != pid) {
-    SANDBOX_DIE("waitpid() failed unexpectedly");
-  }
-  bool rc = WIFEXITED(status) && WEXITSTATUS(status) == kExpectedExitCode;
-
-  // If we fail to support sandboxing, there might be an additional
-  // error message. If so, this was an entirely unexpected and fatal
-  // failure. We should report the failure and somebody must fix
-  // things. This is probably a security-critical bug in the sandboxing
-  // code.
-  if (!rc) {
-    char buf[4096];
-    ssize_t len = HANDLE_EINTR(read(fds[0], buf, sizeof(buf) - 1));
-    if (len > 0) {
-      while (len > 1 && buf[len - 1] == '\n') {
-        --len;
-      }
-      buf[len] = '\000';
-      SANDBOX_DIE(buf);
-    }
-  }
-  if (IGNORE_EINTR(close(fds[0]))) {
-    SANDBOX_DIE("close() failed");
-  }
-
-  return rc;
-}
-
-bool SandboxBPF::KernelSupportSeccompBPF() {
-  return RunFunctionInPolicy(ProbeProcess,
-                             scoped_ptr<bpf_dsl::Policy>(new ProbePolicy())) &&
-         RunFunctionInPolicy(TryVsyscallProcess,
-                             scoped_ptr<bpf_dsl::Policy>(new AllowAllPolicy()));
-}
-
 // static
-SandboxBPF::SandboxStatus SandboxBPF::SupportsSeccompSandbox(int proc_fd) {
-  // It the sandbox is currently active, we clearly must have support for
-  // sandboxing.
-  if (status_ == STATUS_ENABLED) {
-    return status_;
-  }
-
-  // Even if the sandbox was previously available, something might have
-  // changed in our run-time environment. Check one more time.
-  if (status_ == STATUS_AVAILABLE) {
-    if (!IsSingleThreaded(proc_fd)) {
-      status_ = STATUS_UNAVAILABLE;
-    }
-    return status_;
-  }
-
-  if (status_ == STATUS_UNAVAILABLE && IsSingleThreaded(proc_fd)) {
-    // All state transitions resulting in STATUS_UNAVAILABLE are immediately
-    // preceded by STATUS_AVAILABLE. Furthermore, these transitions all
-    // happen, if and only if they are triggered by the process being multi-
-    // threaded.
-    // In other words, if a single-threaded process is currently in the
-    // STATUS_UNAVAILABLE state, it is safe to assume that sandboxing is
-    // actually available.
-    status_ = STATUS_AVAILABLE;
-    return status_;
-  }
-
-  // If we have not previously checked for availability of the sandbox or if
-  // we otherwise don't believe to have a good cached value, we have to
-  // perform a thorough check now.
-  if (status_ == STATUS_UNKNOWN) {
-    // We create our own private copy of a "Sandbox" object. This ensures that
-    // the object does not have any policies configured, that might interfere
-    // with the tests done by "KernelSupportSeccompBPF()".
-    SandboxBPF sandbox;
-
-    // By setting "quiet_ = true" we suppress messages for expected and benign
-    // failures (e.g. if the current kernel lacks support for BPF filters).
-    sandbox.quiet_ = true;
-    sandbox.set_proc_fd(proc_fd);
-    status_ = sandbox.KernelSupportSeccompBPF() ? STATUS_AVAILABLE
-                                                : STATUS_UNSUPPORTED;
-
-    // As we are performing our tests from a child process, the run-time
-    // environment that is visible to the sandbox is always guaranteed to be
-    // single-threaded. Let's check here whether the caller is single-
-    // threaded. Otherwise, we mark the sandbox as temporarily unavailable.
-    if (status_ == STATUS_AVAILABLE && !IsSingleThreaded(proc_fd)) {
-      status_ = STATUS_UNAVAILABLE;
-    }
-  }
-  return status_;
-}
-
-// static
-SandboxBPF::SandboxStatus
-SandboxBPF::SupportsSeccompThreadFilterSynchronization() {
-  // Applying NO_NEW_PRIVS, a BPF filter, and synchronizing the filter across
-  // the thread group are all handled atomically by this syscall.
-  const int rv = syscall(
-      __NR_seccomp, SECCOMP_SET_MODE_FILTER, SECCOMP_FILTER_FLAG_TSYNC, NULL);
-
-  if (rv == -1 && errno == EFAULT) {
-    return STATUS_AVAILABLE;
-  } else {
-    // TODO(jln): turn these into DCHECK after 417888 is considered fixed.
-    CHECK_EQ(-1, rv);
-    CHECK(ENOSYS == errno || EINVAL == errno);
-    return STATUS_UNSUPPORTED;
-  }
-}
-
-void SandboxBPF::set_proc_fd(int proc_fd) { proc_fd_ = proc_fd; }
-
-bool SandboxBPF::StartSandbox(SandboxThreadState thread_state) {
-  CHECK(thread_state == PROCESS_SINGLE_THREADED ||
-        thread_state == PROCESS_MULTI_THREADED);
-
-  if (status_ == STATUS_UNSUPPORTED || status_ == STATUS_UNAVAILABLE) {
-    SANDBOX_DIE(
-        "Trying to start sandbox, even though it is known to be "
-        "unavailable");
+bool SandboxBPF::SupportsSeccompSandbox(SeccompLevel level) {
+  // Never pretend to support seccomp with Valgrind, as it
+  // throws the tool off.
+  if (IsRunningOnValgrind()) {
     return false;
-  } else if (sandbox_has_started_) {
+  }
+
+  switch (level) {
+    case SeccompLevel::SINGLE_THREADED:
+      return KernelSupportsSeccompBPF();
+    case SeccompLevel::MULTI_THREADED:
+      return KernelSupportsSeccompTsync();
+  }
+  NOTREACHED();
+  return false;
+}
+
+bool SandboxBPF::StartSandbox(SeccompLevel seccomp_level) {
+  DCHECK(policy_);
+  CHECK(seccomp_level == SeccompLevel::SINGLE_THREADED ||
+        seccomp_level == SeccompLevel::MULTI_THREADED);
+
+  if (sandbox_has_started_) {
     SANDBOX_DIE(
         "Cannot repeatedly start sandbox. Create a separate Sandbox "
         "object instead.");
     return false;
   }
-  if (proc_fd_ < 0) {
-    proc_fd_ = open("/proc", O_RDONLY | O_DIRECTORY);
-  }
-  if (proc_fd_ < 0) {
-    // For now, continue in degraded mode, if we can't access /proc.
-    // In the future, we might want to tighten this requirement.
-  }
 
-  bool supports_tsync =
-      SupportsSeccompThreadFilterSynchronization() == STATUS_AVAILABLE;
+  const bool supports_tsync = KernelSupportsSeccompTsync();
 
-  if (thread_state == PROCESS_SINGLE_THREADED) {
-    if (!IsSingleThreaded(proc_fd_)) {
+  if (seccomp_level == SeccompLevel::SINGLE_THREADED) {
+    if (!IsSingleThreaded(proc_task_fd_.get())) {
       SANDBOX_DIE("Cannot start sandbox; process is already multi-threaded");
       return false;
     }
-  } else if (thread_state == PROCESS_MULTI_THREADED) {
-    if (IsSingleThreaded(proc_fd_)) {
+  } else if (seccomp_level == SeccompLevel::MULTI_THREADED) {
+    if (IsSingleThreaded(proc_task_fd_.get())) {
       SANDBOX_DIE("Cannot start sandbox; "
                   "process may be single-threaded when reported as not");
       return false;
@@ -404,30 +139,65 @@
   // We no longer need access to any files in /proc. We want to do this
   // before installing the filters, just in case that our policy denies
   // close().
-  if (proc_fd_ >= 0) {
-    if (IGNORE_EINTR(close(proc_fd_))) {
-      SANDBOX_DIE("Failed to close file descriptor for /proc");
-      return false;
-    }
-    proc_fd_ = -1;
+  if (proc_task_fd_.is_valid()) {
+    proc_task_fd_.reset();
   }
 
   // Install the filters.
-  InstallFilter(supports_tsync || thread_state == PROCESS_MULTI_THREADED);
-
-  // We are now inside the sandbox.
-  status_ = STATUS_ENABLED;
+  InstallFilter(supports_tsync ||
+                seccomp_level == SeccompLevel::MULTI_THREADED);
 
   return true;
 }
 
-// Don't take a scoped_ptr here, polymorphism make their use awkward.
-void SandboxBPF::SetSandboxPolicy(bpf_dsl::Policy* policy) {
-  DCHECK(!policy_);
-  if (sandbox_has_started_) {
-    SANDBOX_DIE("Cannot change policy after sandbox has started");
+void SandboxBPF::SetProcTaskFd(base::ScopedFD proc_task_fd) {
+  proc_task_fd_.swap(proc_task_fd);
+}
+
+// static
+bool SandboxBPF::IsValidSyscallNumber(int sysnum) {
+  return SyscallSet::IsValid(sysnum);
+}
+
+// static
+bool SandboxBPF::IsRequiredForUnsafeTrap(int sysno) {
+  return bpf_dsl::PolicyCompiler::IsRequiredForUnsafeTrap(sysno);
+}
+
+// static
+intptr_t SandboxBPF::ForwardSyscall(const struct arch_seccomp_data& args) {
+  return Syscall::Call(
+      args.nr, static_cast<intptr_t>(args.args[0]),
+      static_cast<intptr_t>(args.args[1]), static_cast<intptr_t>(args.args[2]),
+      static_cast<intptr_t>(args.args[3]), static_cast<intptr_t>(args.args[4]),
+      static_cast<intptr_t>(args.args[5]));
+}
+
+scoped_ptr<CodeGen::Program> SandboxBPF::AssembleFilter(
+    bool force_verification) {
+#if !defined(NDEBUG)
+  force_verification = true;
+#endif
+  DCHECK(policy_);
+  bpf_dsl::PolicyCompiler compiler(policy_.get(), Trap::Registry());
+  scoped_ptr<CodeGen::Program> program = compiler.Compile();
+
+  // Make sure compilation resulted in a BPF program that executes
+  // correctly. Otherwise, there is an internal error in our BPF compiler.
+  // There is really nothing the caller can do until the bug is fixed.
+  if (force_verification) {
+    // Verification is expensive. We only perform this step, if we are
+    // compiled in debug mode, or if the caller explicitly requested
+    // verification.
+
+    const char* err = NULL;
+    if (!Verifier::VerifyBPF(&compiler, *program, *policy_, &err)) {
+      bpf_dsl::DumpBPF::PrintProgram(*program);
+      SANDBOX_DIE(err);
+    }
   }
-  policy_.reset(policy);
+
+  return program.Pass();
 }
 
 void SandboxBPF::InstallFilter(bool must_sync_threads) {
@@ -456,69 +226,26 @@
   policy_.reset();
 
   if (prctl(PR_SET_NO_NEW_PRIVS, 1, 0, 0, 0)) {
-    SANDBOX_DIE(quiet_ ? NULL : "Kernel refuses to enable no-new-privs");
+    SANDBOX_DIE("Kernel refuses to enable no-new-privs");
   }
 
   // Install BPF filter program. If the thread state indicates multi-threading
   // support, then the kernel hass the seccomp system call. Otherwise, fall
   // back on prctl, which requires the process to be single-threaded.
   if (must_sync_threads) {
-    int rv = syscall(__NR_seccomp, SECCOMP_SET_MODE_FILTER,
-        SECCOMP_FILTER_FLAG_TSYNC, reinterpret_cast<const char*>(&prog));
+    int rv =
+        sys_seccomp(SECCOMP_SET_MODE_FILTER, SECCOMP_FILTER_FLAG_TSYNC, &prog);
     if (rv) {
-      SANDBOX_DIE(quiet_ ? NULL :
+      SANDBOX_DIE(
           "Kernel refuses to turn on and synchronize threads for BPF filters");
     }
   } else {
     if (prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, &prog)) {
-      SANDBOX_DIE(quiet_ ? NULL : "Kernel refuses to turn on BPF filters");
+      SANDBOX_DIE("Kernel refuses to turn on BPF filters");
     }
   }
 
   sandbox_has_started_ = true;
 }
 
-scoped_ptr<CodeGen::Program> SandboxBPF::AssembleFilter(
-    bool force_verification) {
-#if !defined(NDEBUG)
-  force_verification = true;
-#endif
-
-  bpf_dsl::PolicyCompiler compiler(policy_.get(), Trap::Registry());
-  scoped_ptr<CodeGen::Program> program = compiler.Compile();
-
-  // Make sure compilation resulted in BPF program that executes
-  // correctly. Otherwise, there is an internal error in our BPF compiler.
-  // There is really nothing the caller can do until the bug is fixed.
-  if (force_verification) {
-    // Verification is expensive. We only perform this step, if we are
-    // compiled in debug mode, or if the caller explicitly requested
-    // verification.
-
-    const char* err = NULL;
-    if (!Verifier::VerifyBPF(&compiler, *program, *policy_, &err)) {
-      bpf_dsl::DumpBPF::PrintProgram(*program);
-      SANDBOX_DIE(err);
-    }
-  }
-
-  return program.Pass();
-}
-
-bool SandboxBPF::IsRequiredForUnsafeTrap(int sysno) {
-  return bpf_dsl::PolicyCompiler::IsRequiredForUnsafeTrap(sysno);
-}
-
-intptr_t SandboxBPF::ForwardSyscall(const struct arch_seccomp_data& args) {
-  return Syscall::Call(args.nr,
-                       static_cast<intptr_t>(args.args[0]),
-                       static_cast<intptr_t>(args.args[1]),
-                       static_cast<intptr_t>(args.args[2]),
-                       static_cast<intptr_t>(args.args[3]),
-                       static_cast<intptr_t>(args.args[4]),
-                       static_cast<intptr_t>(args.args[5]));
-}
-
-SandboxBPF::SandboxStatus SandboxBPF::status_ = STATUS_UNKNOWN;
-
 }  // namespace sandbox
diff --git a/sandbox/linux/seccomp-bpf/sandbox_bpf.h b/sandbox/linux/seccomp-bpf/sandbox_bpf.h
index a7f2d5f..1a9c1f8 100644
--- a/sandbox/linux/seccomp-bpf/sandbox_bpf.h
+++ b/sandbox/linux/seccomp-bpf/sandbox_bpf.h
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_H__
-#define SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_H__
+#ifndef SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_H_
+#define SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_H_
 
 #include <stdint.h>
 
-#include "base/compiler_specific.h"
+#include "base/files/scoped_file.h"
 #include "base/macros.h"
 #include "base/memory/scoped_ptr.h"
 #include "sandbox/linux/seccomp-bpf/codegen.h"
@@ -19,67 +19,63 @@
 class Policy;
 }
 
+// This class can be used to apply a syscall sandboxing policy expressed in a
+// bpf_dsl::Policy object to the current process.
+// Syscall sandboxing policies get inherited by subprocesses and, once applied,
+// can never be removed for the lifetime of the process.
 class SANDBOX_EXPORT SandboxBPF {
  public:
-  enum SandboxStatus {
-    STATUS_UNKNOWN,      // Status prior to calling supportsSeccompSandbox()
-    STATUS_UNSUPPORTED,  // The kernel does not appear to support sandboxing
-    STATUS_UNAVAILABLE,  // Currently unavailable but might work again later
-    STATUS_AVAILABLE,    // Sandboxing is available but not currently active
-    STATUS_ENABLED       // The sandbox is now active
+  enum class SeccompLevel {
+    SINGLE_THREADED,
+    MULTI_THREADED,
   };
 
-  // Depending on the level of kernel support, seccomp-bpf may require the
-  // process to be single-threaded in order to enable it. When calling
-  // StartSandbox(), the program should indicate whether or not the sandbox
-  // should try and engage with multi-thread support.
-  enum SandboxThreadState {
-    PROCESS_INVALID,
-    PROCESS_SINGLE_THREADED,  // The program is currently single-threaded.
-    // Note: PROCESS_MULTI_THREADED requires experimental kernel support that
-    // has not been contributed to upstream Linux.
-    PROCESS_MULTI_THREADED,   // The program may be multi-threaded.
-  };
-
-  // Constructors and destructors.
+  // Ownership of |policy| is transfered here to the sandbox object.
+  // nullptr is allowed for unit tests.
+  explicit SandboxBPF(bpf_dsl::Policy* policy);
   // NOTE: Setting a policy and starting the sandbox is a one-way operation.
-  //       The kernel does not provide any option for unloading a loaded
-  //       sandbox. Strictly speaking, that means we should disallow calling
-  //       the destructor, if StartSandbox() has ever been called. In practice,
-  //       this makes it needlessly complicated to operate on "Sandbox"
-  //       objects. So, we instead opted to allow object destruction. But it
-  //       should be noted that during its lifetime, the object probably made
-  //       irreversible state changes to the runtime environment. These changes
-  //       stay in effect even after the destructor has been run.
-  SandboxBPF();
+  // The kernel does not provide any option for unloading a loaded sandbox. The
+  // sandbox remains engaged even when the object is destructed.
   ~SandboxBPF();
 
-  // Checks whether a particular system call number is valid on the current
-  // architecture. E.g. on ARM there's a non-contiguous range of private
-  // system calls.
-  static bool IsValidSyscallNumber(int sysnum);
+  // Detect if the kernel supports the specified seccomp level.
+  // See StartSandbox() for a description of these.
+  static bool SupportsSeccompSandbox(SeccompLevel level);
 
-  // There are a lot of reasons why the Seccomp sandbox might not be available.
-  // This could be because the kernel does not support Seccomp mode, or it
-  // could be because another sandbox is already active.
-  // "proc_fd" should be a file descriptor for "/proc", or -1 if not
-  // provided by the caller.
-  static SandboxStatus SupportsSeccompSandbox(int proc_fd);
+  // This is the main public entry point. It sets up the resources needed by
+  // the sandbox, and enters Seccomp mode.
+  // The calling process must provide a |level| to tell the sandbox which type
+  // of kernel support it should engage.
+  // SINGLE_THREADED will only sandbox the calling thread. Since it would be a
+  // security risk, the sandbox will also check that the current process is
+  // single threaded and crash if it isn't the case.
+  // MULTI_THREADED requires more recent kernel support and allows to sandbox
+  // all the threads of the current process. Be mindful of potential races,
+  // with other threads using disallowed system calls either before or after
+  // the sandbox is engaged.
+  //
+  // It is possible to stack multiple sandboxes by creating separate "Sandbox"
+  // objects and calling "StartSandbox()" on each of them. Please note, that
+  // this requires special care, though, as newly stacked sandboxes can never
+  // relax restrictions imposed by earlier sandboxes. Furthermore, installing
+  // a new policy requires making system calls, that might already be
+  // disallowed.
+  // Finally, stacking does add more kernel overhead than having a single
+  // combined policy. So, it should only be used if there are no alternatives.
+  bool StartSandbox(SeccompLevel level) WARN_UNUSED_RESULT;
 
-  // Determines if the kernel has support for the seccomp() system call to
-  // synchronize BPF filters across a thread group.
-  static SandboxStatus SupportsSeccompThreadFilterSynchronization();
-
-  // The sandbox needs to be able to access files in "/proc/self". If this
-  // directory is not accessible when "startSandbox()" gets called, the caller
-  // can provide an already opened file descriptor by calling "set_proc_fd()".
+  // The sandbox needs to be able to access files in "/proc/self/task/". If
+  // this directory is not accessible when "StartSandbox()" gets called, the
+  // caller must provide an already opened file descriptor by calling
+  // "SetProcTaskFd()".
   // The sandbox becomes the new owner of this file descriptor and will
-  // eventually close it when "StartSandbox()" executes.
-  void set_proc_fd(int proc_fd);
+  // close it when "StartSandbox()" executes or when the sandbox object
+  // disappears.
+  void SetProcTaskFd(base::ScopedFD proc_task_fd);
 
-  // Set the BPF policy as |policy|. Ownership of |policy| is transfered here
-  // to the sandbox object.
-  void SetSandboxPolicy(bpf_dsl::Policy* policy);
+  // Checks whether a particular system call number is valid on the current
+  // architecture.
+  static bool IsValidSyscallNumber(int sysnum);
 
   // UnsafeTraps require some syscalls to always be allowed.
   // This helper function returns true for these calls.
@@ -95,21 +91,6 @@
   // directly suitable as a return value for a trap handler.
   static intptr_t ForwardSyscall(const struct arch_seccomp_data& args);
 
-  // This is the main public entry point. It finds all system calls that
-  // need rewriting, sets up the resources needed by the sandbox, and
-  // enters Seccomp mode.
-  // The calling process must specify its current SandboxThreadState, as a way
-  // to tell the sandbox which type of kernel support it should engage.
-  // It is possible to stack multiple sandboxes by creating separate "Sandbox"
-  // objects and calling "StartSandbox()" on each of them. Please note, that
-  // this requires special care, though, as newly stacked sandboxes can never
-  // relax restrictions imposed by earlier sandboxes. Furthermore, installing
-  // a new policy requires making system calls, that might already be
-  // disallowed.
-  // Finally, stacking does add more kernel overhead than having a single
-  // combined policy. So, it should only be used if there are no alternatives.
-  bool StartSandbox(SandboxThreadState thread_state) WARN_UNUSED_RESULT;
-
   // Assembles a BPF filter program from the current policy. After calling this
   // function, you must not call any other sandboxing function.
   // Typically, AssembleFilter() is only used by unit tests and by sandbox
@@ -121,34 +102,11 @@
   scoped_ptr<CodeGen::Program> AssembleFilter(bool force_verification);
 
  private:
-  // Get a file descriptor pointing to "/proc", if currently available.
-  int proc_fd() { return proc_fd_; }
-
-  // Creates a subprocess and runs "code_in_sandbox" inside of the specified
-  // policy. The caller has to make sure that "this" has not yet been
-  // initialized with any other policies.
-  bool RunFunctionInPolicy(void (*code_in_sandbox)(),
-                           scoped_ptr<bpf_dsl::Policy> policy);
-
-  // Performs a couple of sanity checks to verify that the kernel supports the
-  // features that we need for successful sandboxing.
-  // The caller has to make sure that "this" has not yet been initialized with
-  // any other policies.
-  bool KernelSupportSeccompBPF();
-
   // Assembles and installs a filter based on the policy that has previously
   // been configured with SetSandboxPolicy().
   void InstallFilter(bool must_sync_threads);
 
-  // Verify the correctness of a compiled program by comparing it against the
-  // current policy. This function should only ever be called by unit tests and
-  // by the sandbox internals. It should not be used by production code.
-  void VerifyProgram(const CodeGen::Program& program);
-
-  static SandboxStatus status_;
-
-  bool quiet_;
-  int proc_fd_;
+  base::ScopedFD proc_task_fd_;
   bool sandbox_has_started_;
   scoped_ptr<bpf_dsl::Policy> policy_;
 
@@ -157,4 +115,4 @@
 
 }  // namespace sandbox
 
-#endif  // SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_H__
+#endif  // SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_H_
diff --git a/sandbox/linux/seccomp-bpf/sandbox_bpf_test_runner.cc b/sandbox/linux/seccomp-bpf/sandbox_bpf_test_runner.cc
index 59ee26f..cb051d2 100644
--- a/sandbox/linux/seccomp-bpf/sandbox_bpf_test_runner.cc
+++ b/sandbox/linux/seccomp-bpf/sandbox_bpf_test_runner.cc
@@ -31,20 +31,12 @@
   scoped_ptr<bpf_dsl::Policy> policy =
       bpf_tester_delegate_->GetSandboxBPFPolicy();
 
-  if (sandbox::SandboxBPF::SupportsSeccompSandbox(-1) ==
-      sandbox::SandboxBPF::STATUS_AVAILABLE) {
-    // Ensure the the sandbox is actually available at this time
-    int proc_fd;
-    SANDBOX_ASSERT((proc_fd = open("/proc", O_RDONLY | O_DIRECTORY)) >= 0);
-    SANDBOX_ASSERT(sandbox::SandboxBPF::SupportsSeccompSandbox(proc_fd) ==
-                   sandbox::SandboxBPF::STATUS_AVAILABLE);
-
+  if (sandbox::SandboxBPF::SupportsSeccompSandbox(
+          SandboxBPF::SeccompLevel::SINGLE_THREADED)) {
     // Initialize and then start the sandbox with our custom policy
-    sandbox::SandboxBPF sandbox;
-    sandbox.set_proc_fd(proc_fd);
-    sandbox.SetSandboxPolicy(policy.release());
-    SANDBOX_ASSERT(
-        sandbox.StartSandbox(sandbox::SandboxBPF::PROCESS_SINGLE_THREADED));
+    sandbox::SandboxBPF sandbox(policy.release());
+    SANDBOX_ASSERT(sandbox.StartSandbox(
+        sandbox::SandboxBPF::SeccompLevel::SINGLE_THREADED));
 
     // Run the actual test.
     bpf_tester_delegate_->RunTestFunction();
@@ -58,8 +50,7 @@
     }
     // Call the compiler and verify the policy. That's the least we can do,
     // if we don't have kernel support.
-    sandbox::SandboxBPF sandbox;
-    sandbox.SetSandboxPolicy(policy.release());
+    sandbox::SandboxBPF sandbox(policy.release());
     sandbox.AssembleFilter(true /* force_verification */);
     sandbox::UnitTests::IgnoreThisTest();
   }
diff --git a/sandbox/linux/seccomp-bpf/sandbox_bpf_unittest.cc b/sandbox/linux/seccomp-bpf/sandbox_bpf_unittest.cc
new file mode 100644
index 0000000..7e478b5
--- /dev/null
+++ b/sandbox/linux/seccomp-bpf/sandbox_bpf_unittest.cc
@@ -0,0 +1,85 @@
+// Copyright 2014 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.
+
+#include "sandbox/linux/seccomp-bpf/sandbox_bpf.h"
+
+#include <fcntl.h>
+#include <unistd.h>
+
+#include <iostream>
+
+#include "base/files/scoped_file.h"
+#include "base/posix/eintr_wrapper.h"
+#include "sandbox/linux/tests/unit_tests.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace sandbox {
+namespace {
+
+// NOTE: most tests for the SandboxBPF class are currently in
+// bpf_dsl_more_unittest.cc.
+
+TEST(SandboxBPF, CreateDestroy) {
+  // Give an opportunity to dynamic tools to perform some simple testing.
+  SandboxBPF sandbox(nullptr);
+  SandboxBPF* sandbox_ptr = new SandboxBPF(nullptr);
+  delete sandbox_ptr;
+}
+
+// This test should execute no matter whether we have kernel support. So,
+// we make it a TEST() instead of a BPF_TEST().
+TEST(SandboxBPF, DISABLE_ON_TSAN(CallSupports)) {
+  // We check that we don't crash, but it's ok if the kernel doesn't
+  // support it.
+  bool seccomp_bpf_supported = SandboxBPF::SupportsSeccompSandbox(
+      SandboxBPF::SeccompLevel::SINGLE_THREADED);
+  bool seccomp_bpf_tsync_supported = SandboxBPF::SupportsSeccompSandbox(
+      SandboxBPF::SeccompLevel::MULTI_THREADED);
+  // We want to log whether or not seccomp BPF is actually supported
+  // since actual test coverage depends on it.
+  std::cout << "Seccomp BPF supported (single thread): "
+            << (seccomp_bpf_supported ? "true." : "false.") << "\n";
+  std::cout << "Seccomp BPF supported (multi thread): "
+            << (seccomp_bpf_tsync_supported ? "true." : "false.") << "\n";
+  std::cout << "Pointer size: " << sizeof(void*) << "\n";
+}
+
+SANDBOX_TEST(SandboxBPF, DISABLE_ON_TSAN(CallSupportsTwice)) {
+  bool single1 = SandboxBPF::SupportsSeccompSandbox(
+      SandboxBPF::SeccompLevel::SINGLE_THREADED);
+  bool single2 = SandboxBPF::SupportsSeccompSandbox(
+      SandboxBPF::SeccompLevel::SINGLE_THREADED);
+  ASSERT_EQ(single1, single2);
+  bool multi1 = SandboxBPF::SupportsSeccompSandbox(
+      SandboxBPF::SeccompLevel::MULTI_THREADED);
+  bool multi2 = SandboxBPF::SupportsSeccompSandbox(
+      SandboxBPF::SeccompLevel::MULTI_THREADED);
+  ASSERT_EQ(multi1, multi2);
+
+  // Multi threaded support implies single threaded support.
+  if (multi1) {
+    ASSERT_TRUE(single1);
+  }
+}
+
+TEST(SandboxBPF, ProcTaskFdDescriptorGetsClosed) {
+  int pipe_fds[2];
+  ASSERT_EQ(0, pipe(pipe_fds));
+  base::ScopedFD read_end(pipe_fds[0]);
+  base::ScopedFD write_end(pipe_fds[1]);
+
+  {
+    SandboxBPF sandbox(nullptr);
+    sandbox.SetProcTaskFd(write_end.Pass());
+  }
+
+  ASSERT_EQ(0, fcntl(read_end.get(), F_SETFL, O_NONBLOCK));
+  char c;
+  // Check that the sandbox closed the write_end (read will EOF instead of
+  // returning EWOULDBLOCK).
+  ASSERT_EQ(0, read(read_end.get(), &c, 1));
+}
+
+}  // namespace
+}  // sandbox
diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
index a745220..f926ce8 100644
--- a/sandbox/linux/services/credentials.cc
+++ b/sandbox/linux/services/credentials.cc
@@ -4,13 +4,10 @@
 
 #include "sandbox/linux/services/credentials.h"
 
-#include <dirent.h>
 #include <errno.h>
-#include <fcntl.h>
 #include <signal.h>
 #include <stdio.h>
 #include <sys/capability.h>
-#include <sys/stat.h>
 #include <sys/syscall.h>
 #include <sys/types.h>
 #include <sys/wait.h>
@@ -24,6 +21,7 @@
 #include "base/template_util.h"
 #include "base/third_party/valgrind/valgrind.h"
 #include "base/threading/thread.h"
+#include "sandbox/linux/services/proc_util.h"
 #include "sandbox/linux/services/syscall_wrappers.h"
 
 namespace {
@@ -61,15 +59,6 @@
 // TODO(jln): fix base/.
 typedef scoped_ptr<FILE, FILECloser> ScopedFILE;
 
-struct DIRCloser {
-  void operator()(DIR* d) const {
-    DCHECK(d);
-    PCHECK(0 == closedir(d));
-  }
-};
-
-typedef scoped_ptr<DIR, DIRCloser> ScopedDIR;
-
 COMPILE_ASSERT((base::is_same<uid_t, gid_t>::value), UidAndGidAreSameType);
 // generic_id_t can be used for either uid_t or gid_t.
 typedef uid_t generic_id_t;
@@ -174,86 +163,6 @@
 Credentials::~Credentials() {
 }
 
-int Credentials::CountOpenFds(int proc_fd) {
-  DCHECK_LE(0, proc_fd);
-  int proc_self_fd = openat(proc_fd, "self/fd", O_DIRECTORY | O_RDONLY);
-  PCHECK(0 <= proc_self_fd);
-
-  // Ownership of proc_self_fd is transferred here, it must not be closed
-  // or modified afterwards except via dir.
-  ScopedDIR dir(fdopendir(proc_self_fd));
-  CHECK(dir);
-
-  int count = 0;
-  struct dirent e;
-  struct dirent* de;
-  while (!readdir_r(dir.get(), &e, &de) && de) {
-    if (strcmp(e.d_name, ".") == 0 || strcmp(e.d_name, "..") == 0) {
-      continue;
-    }
-
-    int fd_num;
-    CHECK(base::StringToInt(e.d_name, &fd_num));
-    if (fd_num == proc_fd || fd_num == proc_self_fd) {
-      continue;
-    }
-
-    ++count;
-  }
-  return count;
-}
-
-bool Credentials::HasOpenDirectory(int proc_fd) {
-  int proc_self_fd = -1;
-  if (proc_fd >= 0) {
-    proc_self_fd = openat(proc_fd, "self/fd", O_DIRECTORY | O_RDONLY);
-  } else {
-    proc_self_fd = openat(AT_FDCWD, "/proc/self/fd", O_DIRECTORY | O_RDONLY);
-    if (proc_self_fd < 0) {
-      // If this process has been chrooted (eg into /proc/self/fdinfo) then
-      // the new root dir will not have directory listing permissions for us
-      // (hence EACCES).  And if we do have this permission, then /proc won't
-      // exist anyway (hence ENOENT).
-      DPCHECK(errno == EACCES || errno == ENOENT)
-        << "Unexpected failure when trying to open /proc/self/fd: ("
-        << errno << ") " << strerror(errno);
-
-      // If not available, guess false.
-      return false;
-    }
-  }
-  PCHECK(0 <= proc_self_fd);
-
-  // Ownership of proc_self_fd is transferred here, it must not be closed
-  // or modified afterwards except via dir.
-  ScopedDIR dir(fdopendir(proc_self_fd));
-  CHECK(dir);
-
-  struct dirent e;
-  struct dirent* de;
-  while (!readdir_r(dir.get(), &e, &de) && de) {
-    if (strcmp(e.d_name, ".") == 0 || strcmp(e.d_name, "..") == 0) {
-      continue;
-    }
-
-    int fd_num;
-    CHECK(base::StringToInt(e.d_name, &fd_num));
-    if (fd_num == proc_fd || fd_num == proc_self_fd) {
-      continue;
-    }
-
-    struct stat s;
-    // It's OK to use proc_self_fd here, fstatat won't modify it.
-    CHECK(fstatat(proc_self_fd, e.d_name, &s, 0) == 0);
-    if (S_ISDIR(s.st_mode)) {
-      return true;
-    }
-  }
-
-  // No open unmanaged directories found.
-  return false;
-}
-
 bool Credentials::DropAllCapabilities() {
   ScopedCap cap(cap_init());
   CHECK(cap);
@@ -341,7 +250,7 @@
 bool Credentials::DropFileSystemAccess() {
   // Chrooting to a safe empty dir will only be safe if no directory file
   // descriptor is available to the process.
-  DCHECK(!HasOpenDirectory(-1));
+  DCHECK(!ProcUtil::HasOpenDirectory(-1));
   return ChrootToSafeEmptyDir();
 }
 
diff --git a/sandbox/linux/services/credentials.h b/sandbox/linux/services/credentials.h
index 99f8f32..c6a6eb0 100644
--- a/sandbox/linux/services/credentials.h
+++ b/sandbox/linux/services/credentials.h
@@ -27,25 +27,6 @@
   Credentials();
   ~Credentials();
 
-  // Returns the number of file descriptors in the current process's FD
-  // table, excluding |proc_fd|, which should be a file descriptor for
-  // /proc.
-  int CountOpenFds(int proc_fd);
-
-  // Checks whether the current process has any directory file descriptor open.
-  // Directory file descriptors are "capabilities" that would let a process use
-  // system calls such as openat() to bypass restrictions such as
-  // DropFileSystemAccess().
-  // Sometimes it's useful to call HasOpenDirectory() after file system access
-  // has been dropped. In this case, |proc_fd| should be a file descriptor to
-  // /proc. The file descriptor in |proc_fd| will be ignored by
-  // HasOpenDirectory() and remains owned by the caller. It is very important
-  // for the caller to close it.
-  // If /proc is available, |proc_fd| can be passed as -1.
-  // If |proc_fd| is -1 and /proc is not available, this function will return
-  // false.
-  bool HasOpenDirectory(int proc_fd);
-
   // Drop all capabilities in the effective, inheritable and permitted sets for
   // the current process.
   bool DropAllCapabilities();
diff --git a/sandbox/linux/services/credentials_unittest.cc b/sandbox/linux/services/credentials_unittest.cc
index 28199fb..5951d4a 100644
--- a/sandbox/linux/services/credentials_unittest.cc
+++ b/sandbox/linux/services/credentials_unittest.cc
@@ -57,56 +57,6 @@
   scoped_ptr<Credentials> cred2(new Credentials);
 }
 
-TEST(Credentials, CountOpenFds) {
-  base::ScopedFD proc_fd(open("/proc", O_RDONLY | O_DIRECTORY));
-  ASSERT_TRUE(proc_fd.is_valid());
-  Credentials creds;
-  int fd_count = creds.CountOpenFds(proc_fd.get());
-  int fd = open("/dev/null", O_RDONLY);
-  ASSERT_LE(0, fd);
-  EXPECT_EQ(fd_count + 1, creds.CountOpenFds(proc_fd.get()));
-  ASSERT_EQ(0, IGNORE_EINTR(close(fd)));
-  EXPECT_EQ(fd_count, creds.CountOpenFds(proc_fd.get()));
-}
-
-TEST(Credentials, HasOpenDirectory) {
-  Credentials creds;
-  // No open directory should exist at startup.
-  EXPECT_FALSE(creds.HasOpenDirectory(-1));
-  {
-    // Have a "/dev" file descriptor around.
-    int dev_fd = open("/dev", O_RDONLY | O_DIRECTORY);
-    base::ScopedFD dev_fd_closer(dev_fd);
-    EXPECT_TRUE(creds.HasOpenDirectory(-1));
-  }
-  EXPECT_FALSE(creds.HasOpenDirectory(-1));
-}
-
-TEST(Credentials, HasOpenDirectoryWithFD) {
-  Credentials creds;
-
-  int proc_fd = open("/proc", O_RDONLY | O_DIRECTORY);
-  base::ScopedFD proc_fd_closer(proc_fd);
-  ASSERT_LE(0, proc_fd);
-
-  // Don't pass |proc_fd|, an open directory (proc_fd) should
-  // be detected.
-  EXPECT_TRUE(creds.HasOpenDirectory(-1));
-  // Pass |proc_fd| and no open directory should be detected.
-  EXPECT_FALSE(creds.HasOpenDirectory(proc_fd));
-
-  {
-    // Have a "/dev" file descriptor around.
-    int dev_fd = open("/dev", O_RDONLY | O_DIRECTORY);
-    base::ScopedFD dev_fd_closer(dev_fd);
-    EXPECT_TRUE(creds.HasOpenDirectory(proc_fd));
-  }
-
-  // The "/dev" file descriptor should now be closed, |proc_fd| is the only
-  // directory file descriptor open.
-  EXPECT_FALSE(creds.HasOpenDirectory(proc_fd));
-}
-
 SANDBOX_TEST(Credentials, DropAllCaps) {
   Credentials creds;
   CHECK(creds.DropAllCapabilities());
diff --git a/sandbox/linux/services/proc_util.cc b/sandbox/linux/services/proc_util.cc
new file mode 100644
index 0000000..fd0e348
--- /dev/null
+++ b/sandbox/linux/services/proc_util.cc
@@ -0,0 +1,112 @@
+// Copyright 2014 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.
+
+#include "sandbox/linux/services/proc_util.h"
+
+#include <dirent.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <string.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+
+#include "base/logging.h"
+#include "base/memory/scoped_ptr.h"
+#include "base/strings/string_number_conversions.h"
+
+namespace sandbox {
+namespace {
+
+struct DIRCloser {
+  void operator()(DIR* d) const {
+    DCHECK(d);
+    PCHECK(0 == closedir(d));
+  }
+};
+
+typedef scoped_ptr<DIR, DIRCloser> ScopedDIR;
+
+}  // namespace
+
+int ProcUtil::CountOpenFds(int proc_fd) {
+  DCHECK_LE(0, proc_fd);
+  int proc_self_fd = openat(proc_fd, "self/fd", O_DIRECTORY | O_RDONLY);
+  PCHECK(0 <= proc_self_fd);
+
+  // Ownership of proc_self_fd is transferred here, it must not be closed
+  // or modified afterwards except via dir.
+  ScopedDIR dir(fdopendir(proc_self_fd));
+  CHECK(dir);
+
+  int count = 0;
+  struct dirent e;
+  struct dirent* de;
+  while (!readdir_r(dir.get(), &e, &de) && de) {
+    if (strcmp(e.d_name, ".") == 0 || strcmp(e.d_name, "..") == 0) {
+      continue;
+    }
+
+    int fd_num;
+    CHECK(base::StringToInt(e.d_name, &fd_num));
+    if (fd_num == proc_fd || fd_num == proc_self_fd) {
+      continue;
+    }
+
+    ++count;
+  }
+  return count;
+}
+
+bool ProcUtil::HasOpenDirectory(int proc_fd) {
+  int proc_self_fd = -1;
+  if (proc_fd >= 0) {
+    proc_self_fd = openat(proc_fd, "self/fd", O_DIRECTORY | O_RDONLY);
+  } else {
+    proc_self_fd = openat(AT_FDCWD, "/proc/self/fd", O_DIRECTORY | O_RDONLY);
+    if (proc_self_fd < 0) {
+      // If this process has been chrooted (eg into /proc/self/fdinfo) then
+      // the new root dir will not have directory listing permissions for us
+      // (hence EACCES).  And if we do have this permission, then /proc won't
+      // exist anyway (hence ENOENT).
+      DPCHECK(errno == EACCES || errno == ENOENT)
+        << "Unexpected failure when trying to open /proc/self/fd: ("
+        << errno << ") " << strerror(errno);
+
+      // If not available, guess false.
+      return false;
+    }
+  }
+  PCHECK(0 <= proc_self_fd);
+
+  // Ownership of proc_self_fd is transferred here, it must not be closed
+  // or modified afterwards except via dir.
+  ScopedDIR dir(fdopendir(proc_self_fd));
+  CHECK(dir);
+
+  struct dirent e;
+  struct dirent* de;
+  while (!readdir_r(dir.get(), &e, &de) && de) {
+    if (strcmp(e.d_name, ".") == 0 || strcmp(e.d_name, "..") == 0) {
+      continue;
+    }
+
+    int fd_num;
+    CHECK(base::StringToInt(e.d_name, &fd_num));
+    if (fd_num == proc_fd || fd_num == proc_self_fd) {
+      continue;
+    }
+
+    struct stat s;
+    // It's OK to use proc_self_fd here, fstatat won't modify it.
+    CHECK(fstatat(proc_self_fd, e.d_name, &s, 0) == 0);
+    if (S_ISDIR(s.st_mode)) {
+      return true;
+    }
+  }
+
+  // No open unmanaged directories found.
+  return false;
+}
+
+}  // namespace sandbox
diff --git a/sandbox/linux/services/proc_util.h b/sandbox/linux/services/proc_util.h
new file mode 100644
index 0000000..9d9bb2e
--- /dev/null
+++ b/sandbox/linux/services/proc_util.h
@@ -0,0 +1,40 @@
+// Copyright 2014 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.
+
+#ifndef SANDBOX_LINUX_SERVICES_PROC_UTIL_H_
+#define SANDBOX_LINUX_SERVICES_PROC_UTIL_H_
+
+#include "base/macros.h"
+#include "sandbox/sandbox_export.h"
+
+namespace sandbox {
+
+class SANDBOX_EXPORT ProcUtil {
+ public:
+  // Returns the number of file descriptors in the current process's FD
+  // table, excluding |proc_fd|, which should be a file descriptor for
+  // /proc.
+  static int CountOpenFds(int proc_fd);
+
+  // Checks whether the current process has any directory file descriptor open.
+  // Directory file descriptors are "capabilities" that would let a process use
+  // system calls such as openat() to bypass restrictions such as
+  // DropFileSystemAccess().
+  // Sometimes it's useful to call HasOpenDirectory() after file system access
+  // has been dropped. In this case, |proc_fd| should be a file descriptor to
+  // /proc. The file descriptor in |proc_fd| will be ignored by
+  // HasOpenDirectory() and remains owned by the caller. It is very important
+  // for the caller to close it.
+  // If /proc is available, |proc_fd| can be passed as -1.
+  // If |proc_fd| is -1 and /proc is not available, this function will return
+  // false.
+  static bool HasOpenDirectory(int proc_fd);
+
+ private:
+  DISALLOW_IMPLICIT_CONSTRUCTORS(ProcUtil);
+};
+
+}  // namespace sandbox
+
+#endif  // SANDBOX_LINUX_SERVICES_PROC_UTIL_H_
diff --git a/sandbox/linux/services/proc_util_unittest.cc b/sandbox/linux/services/proc_util_unittest.cc
new file mode 100644
index 0000000..ee36c83
--- /dev/null
+++ b/sandbox/linux/services/proc_util_unittest.cc
@@ -0,0 +1,62 @@
+// Copyright 2014 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.
+
+#include "sandbox/linux/services/proc_util.h"
+
+#include <fcntl.h>
+#include <unistd.h>
+
+#include "base/files/scoped_file.h"
+#include "base/posix/eintr_wrapper.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace sandbox {
+
+TEST(ProcUtil, CountOpenFds) {
+  base::ScopedFD proc_fd(open("/proc", O_RDONLY | O_DIRECTORY));
+  ASSERT_TRUE(proc_fd.is_valid());
+  int fd_count = ProcUtil::CountOpenFds(proc_fd.get());
+  int fd = open("/dev/null", O_RDONLY);
+  ASSERT_LE(0, fd);
+  EXPECT_EQ(fd_count + 1, ProcUtil::CountOpenFds(proc_fd.get()));
+  ASSERT_EQ(0, IGNORE_EINTR(close(fd)));
+  EXPECT_EQ(fd_count, ProcUtil::CountOpenFds(proc_fd.get()));
+}
+
+TEST(ProcUtil, HasOpenDirectory) {
+  // No open directory should exist at startup.
+  EXPECT_FALSE(ProcUtil::HasOpenDirectory(-1));
+  {
+    // Have a "/dev" file descriptor around.
+    int dev_fd = open("/dev", O_RDONLY | O_DIRECTORY);
+    base::ScopedFD dev_fd_closer(dev_fd);
+    EXPECT_TRUE(ProcUtil::HasOpenDirectory(-1));
+  }
+  EXPECT_FALSE(ProcUtil::HasOpenDirectory(-1));
+}
+
+TEST(ProcUtil, HasOpenDirectoryWithFD) {
+  int proc_fd = open("/proc", O_RDONLY | O_DIRECTORY);
+  base::ScopedFD proc_fd_closer(proc_fd);
+  ASSERT_LE(0, proc_fd);
+
+  // Don't pass |proc_fd|, an open directory (proc_fd) should
+  // be detected.
+  EXPECT_TRUE(ProcUtil::HasOpenDirectory(-1));
+  // Pass |proc_fd| and no open directory should be detected.
+  EXPECT_FALSE(ProcUtil::HasOpenDirectory(proc_fd));
+
+  {
+    // Have a "/dev" file descriptor around.
+    int dev_fd = open("/dev", O_RDONLY | O_DIRECTORY);
+    base::ScopedFD dev_fd_closer(dev_fd);
+    EXPECT_TRUE(ProcUtil::HasOpenDirectory(proc_fd));
+  }
+
+  // The "/dev" file descriptor should now be closed, |proc_fd| is the only
+  // directory file descriptor open.
+  EXPECT_FALSE(ProcUtil::HasOpenDirectory(proc_fd));
+}
+
+}  // namespace sandbox
diff --git a/sandbox/linux/services/syscall_wrappers.cc b/sandbox/linux/services/syscall_wrappers.cc
index 3938694..ede4964 100644
--- a/sandbox/linux/services/syscall_wrappers.cc
+++ b/sandbox/linux/services/syscall_wrappers.cc
@@ -56,4 +56,10 @@
   syscall(__NR_exit_group, status);
 }
 
+int sys_seccomp(unsigned int operation,
+                unsigned int flags,
+                const struct sock_fprog* args) {
+  return syscall(__NR_seccomp, operation, flags, args);
+}
+
 }  // namespace sandbox
diff --git a/sandbox/linux/services/syscall_wrappers.h b/sandbox/linux/services/syscall_wrappers.h
index 03d5cdf..15ec81b 100644
--- a/sandbox/linux/services/syscall_wrappers.h
+++ b/sandbox/linux/services/syscall_wrappers.h
@@ -9,6 +9,8 @@
 
 #include "sandbox/sandbox_export.h"
 
+struct sock_fprog;
+
 namespace sandbox {
 
 // Provide direct system call wrappers for a few common system calls.
@@ -30,6 +32,12 @@
 
 SANDBOX_EXPORT void sys_exit_group(int status);
 
+// The official system call takes |args| as void*  (in order to be extensible),
+// but add more typing for the cases that are currently used.
+SANDBOX_EXPORT int sys_seccomp(unsigned int operation,
+                               unsigned int flags,
+                               const struct sock_fprog* args);
+
 }  // namespace sandbox
 
 #endif  // SANDBOX_LINUX_SERVICES_SYSCALL_WRAPPERS_H_
diff --git a/sandbox/linux/services/thread_helpers.cc b/sandbox/linux/services/thread_helpers.cc
index e820449..dbadbd4 100644
--- a/sandbox/linux/services/thread_helpers.cc
+++ b/sandbox/linux/services/thread_helpers.cc
@@ -43,7 +43,8 @@
 bool ThreadHelpers::IsSingleThreaded(int proc_self_task) {
   DCHECK_LE(-1, proc_self_task);
   if (-1 == proc_self_task) {
-    const int task_fd = open("/proc/self/task/", O_RDONLY | O_DIRECTORY);
+    const int task_fd =
+        open("/proc/self/task/", O_RDONLY | O_DIRECTORY | O_CLOEXEC);
     PCHECK(0 <= task_fd);
     const bool result = IsSingleThreadedImpl(task_fd);
     PCHECK(0 == IGNORE_EINTR(close(task_fd)));
diff --git a/sandbox/linux/syscall_broker/broker_client.cc b/sandbox/linux/syscall_broker/broker_client.cc
index e63205f..b82ecb3 100644
--- a/sandbox/linux/syscall_broker/broker_client.cc
+++ b/sandbox/linux/syscall_broker/broker_client.cc
@@ -54,7 +54,9 @@
   // IPC.
   if (fast_check_in_client_) {
     if (syscall_type == COMMAND_OPEN &&
-        !broker_policy_.GetFileNameIfAllowedToOpen(pathname, flags, NULL)) {
+        !broker_policy_.GetFileNameIfAllowedToOpen(
+            pathname, flags, NULL /* file_to_open */,
+            NULL /* unlink_after_open */)) {
       return -broker_policy_.denied_errno();
     }
     if (syscall_type == COMMAND_ACCESS &&
diff --git a/sandbox/linux/syscall_broker/broker_file_permission.cc b/sandbox/linux/syscall_broker/broker_file_permission.cc
new file mode 100644
index 0000000..beceda9
--- /dev/null
+++ b/sandbox/linux/syscall_broker/broker_file_permission.cc
@@ -0,0 +1,243 @@
+// Copyright 2014 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.
+
+#include "sandbox/linux/syscall_broker/broker_file_permission.h"
+
+#include <fcntl.h>
+#include <string.h>
+
+#include <string>
+
+#include "base/logging.h"
+#include "sandbox/linux/syscall_broker/broker_common.h"
+
+namespace sandbox {
+
+namespace syscall_broker {
+
+// Async signal safe
+bool BrokerFilePermission::ValidatePath(const char* path) {
+  if (!path)
+    return false;
+
+  const size_t len = strlen(path);
+  // No empty paths
+  if (len == 0)
+    return false;
+  // Paths must be absolute and not relative
+  if (path[0] != '/')
+    return false;
+  // No trailing / (but "/" is valid)
+  if (len > 1 && path[len - 1] == '/')
+    return false;
+  // No trailing /..
+  if (len >= 3 && path[len - 3] == '/' && path[len - 2] == '.' &&
+      path[len - 1] == '.')
+    return false;
+  // No /../ anywhere
+  for (size_t i = 0; i < len; i++) {
+    if (path[i] == '/' && (len - i) > 3) {
+      if (path[i + 1] == '.' && path[i + 2] == '.' && path[i + 3] == '/') {
+        return false;
+      }
+    }
+  }
+  return true;
+}
+
+// Async signal safe
+// Calls std::string::c_str(), strncmp and strlen. All these
+// methods are async signal safe in common standard libs.
+// TODO(leecam): remove dependency on std::string
+bool BrokerFilePermission::MatchPath(const char* requested_filename) const {
+  const char* path = path_.c_str();
+  if ((recursive_ && strncmp(requested_filename, path, strlen(path)) == 0)) {
+    // Note: This prefix match will allow any path under the whitelisted
+    // path, for any number of directory levels. E.g. if the whitelisted
+    // path is /good/ then the following will be permitted by the policy.
+    //   /good/file1
+    //   /good/folder/file2
+    //   /good/folder/folder2/file3
+    // If an attacker could make 'folder' a symlink to ../../ they would have
+    // access to the entire filesystem.
+    // Whitelisting with multiple depths is useful, e.g /proc/ but
+    // the system needs to ensure symlinks can not be created!
+    // That said if an attacker can convert any of the absolute paths
+    // to a symlink they can control any file on the system also.
+    return true;
+  } else if (strcmp(requested_filename, path) == 0) {
+    return true;
+  }
+  return false;
+}
+
+// Async signal safe.
+// External call to std::string::c_str() is
+// called in MatchPath.
+// TODO(leecam): remove dependency on std::string
+bool BrokerFilePermission::CheckAccess(const char* requested_filename,
+                                       int mode,
+                                       const char** file_to_access) const {
+  // First, check if |mode| is existence, ability to read or ability
+  // to write. We do not support X_OK.
+  if (mode != F_OK && mode & ~(R_OK | W_OK)) {
+    return false;
+  }
+
+  if (!ValidatePath(requested_filename))
+    return false;
+
+  if (!MatchPath(requested_filename)) {
+    return false;
+  }
+  bool allowed = false;
+  switch (mode) {
+    case F_OK:
+      if (allow_read_ || allow_write_)
+        allowed = true;
+      break;
+    case R_OK:
+      if (allow_read_)
+        allowed = true;
+      break;
+    case W_OK:
+      if (allow_write_)
+        allowed = true;
+      break;
+    case R_OK | W_OK:
+      if (allow_read_ && allow_write_)
+        allowed = true;
+      break;
+    default:
+      return false;
+  }
+
+  if (allowed && file_to_access) {
+    if (!recursive_)
+      *file_to_access = path_.c_str();
+    else
+      *file_to_access = requested_filename;
+  }
+  return allowed;
+}
+
+// Async signal safe.
+// External call to std::string::c_str() is
+// called in MatchPath.
+// TODO(leecam): remove dependency on std::string
+bool BrokerFilePermission::CheckOpen(const char* requested_filename,
+                                     int flags,
+                                     const char** file_to_open,
+                                     bool* unlink_after_open) const {
+  if (!ValidatePath(requested_filename))
+    return false;
+
+  if (!MatchPath(requested_filename)) {
+    return false;
+  }
+
+  // First, check the access mode is valid.
+  const int access_mode = flags & O_ACCMODE;
+  if (access_mode != O_RDONLY && access_mode != O_WRONLY &&
+      access_mode != O_RDWR) {
+    return false;
+  }
+
+  // Check if read is allowed
+  if (!allow_read_ && (access_mode == O_RDONLY || access_mode == O_RDWR)) {
+    return false;
+  }
+
+  // Check if write is allowed
+  if (!allow_write_ && (access_mode == O_WRONLY || access_mode == O_RDWR)) {
+    return false;
+  }
+
+  // Check if file creation is allowed.
+  if (!allow_create_ && (flags & O_CREAT)) {
+    return false;
+  }
+
+  // If O_CREAT is present, ensure O_EXCL
+  if ((flags & O_CREAT) && !(flags & O_EXCL)) {
+    return false;
+  }
+
+  // If this file is to be unlinked, ensure it's created.
+  if (unlink_ && !(flags & O_CREAT)) {
+    return false;
+  }
+
+  // Some flags affect the behavior of the current process. We don't support
+  // them and don't allow them for now.
+  if (flags & kCurrentProcessOpenFlagsMask) {
+    return false;
+  }
+
+  // Now check that all the flags are known to us.
+  const int creation_and_status_flags = flags & ~O_ACCMODE;
+
+  const int known_flags = O_APPEND | O_ASYNC | O_CLOEXEC | O_CREAT | O_DIRECT |
+                          O_DIRECTORY | O_EXCL | O_LARGEFILE | O_NOATIME |
+                          O_NOCTTY | O_NOFOLLOW | O_NONBLOCK | O_NDELAY |
+                          O_SYNC | O_TRUNC;
+
+  const int unknown_flags = ~known_flags;
+  const bool has_unknown_flags = creation_and_status_flags & unknown_flags;
+
+  if (has_unknown_flags)
+    return false;
+
+  if (file_to_open) {
+    if (!recursive_)
+      *file_to_open = path_.c_str();
+    else
+      *file_to_open = requested_filename;
+  }
+  if (unlink_after_open)
+    *unlink_after_open = unlink_;
+
+  return true;
+}
+
+const char* BrokerFilePermission::GetErrorMessageForTests() {
+  static char kInvalidBrokerFileString[] = "Invalid BrokerFilePermission";
+  return kInvalidBrokerFileString;
+}
+
+BrokerFilePermission::BrokerFilePermission(const std::string& path,
+                                           bool recursive,
+                                           bool unlink,
+                                           bool allow_read,
+                                           bool allow_write,
+                                           bool allow_create)
+    : path_(path),
+      recursive_(recursive),
+      unlink_(unlink),
+      allow_read_(allow_read),
+      allow_write_(allow_write),
+      allow_create_(allow_create) {
+  // Validate this permission and die if invalid!
+
+  // Must have enough length for a '/'
+  CHECK(path_.length() > 0) << GetErrorMessageForTests();
+  // Whitelisted paths must be absolute.
+  CHECK(path_[0] == '/') << GetErrorMessageForTests();
+
+  // Don't allow unlinking on creation without create permission
+  if (unlink_) {
+    CHECK(allow_create) << GetErrorMessageForTests();
+  }
+  const char last_char = *(path_.rbegin());
+  // Recursive paths must have a trailing slash
+  if (recursive_) {
+    CHECK(last_char == '/') << GetErrorMessageForTests();
+  } else {
+    CHECK(last_char != '/') << GetErrorMessageForTests();
+  }
+}
+
+}  // namespace syscall_broker
+
+}  // namespace sandbox
\ No newline at end of file
diff --git a/sandbox/linux/syscall_broker/broker_file_permission.h b/sandbox/linux/syscall_broker/broker_file_permission.h
new file mode 100644
index 0000000..03300d1
--- /dev/null
+++ b/sandbox/linux/syscall_broker/broker_file_permission.h
@@ -0,0 +1,119 @@
+// Copyright 2014 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.
+
+#ifndef SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
+#define SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
+
+#include <string>
+
+#include "base/macros.h"
+#include "sandbox/sandbox_export.h"
+
+namespace sandbox {
+
+namespace syscall_broker {
+
+// BrokerFilePermission defines a path for whitelisting.
+// Pick the correct static factory method to create a permission.
+// CheckOpen and CheckAccess are async signal safe.
+// Constuction and Destruction are not async signal safe.
+// |path| is the path to be whitelisted.
+class SANDBOX_EXPORT BrokerFilePermission {
+ public:
+  ~BrokerFilePermission() {}
+  BrokerFilePermission(const BrokerFilePermission&) = default;
+  BrokerFilePermission& operator=(const BrokerFilePermission&) = default;
+
+  static BrokerFilePermission ReadOnly(const std::string& path) {
+    return BrokerFilePermission(path, false, false, true, false, false);
+  }
+
+  static BrokerFilePermission ReadOnlyRecursive(const std::string& path) {
+    return BrokerFilePermission(path, true, false, true, false, false);
+  }
+
+  static BrokerFilePermission WriteOnly(const std::string& path) {
+    return BrokerFilePermission(path, false, false, false, true, false);
+  }
+
+  static BrokerFilePermission ReadWrite(const std::string& path) {
+    return BrokerFilePermission(path, false, false, true, true, false);
+  }
+
+  static BrokerFilePermission ReadWriteCreate(const std::string& path) {
+    return BrokerFilePermission(path, false, false, true, true, true);
+  }
+
+  static BrokerFilePermission ReadWriteCreateUnlink(const std::string& path) {
+    return BrokerFilePermission(path, false, true, true, true, true);
+  }
+
+  static BrokerFilePermission ReadWriteCreateUnlinkRecursive(
+      const std::string& path) {
+    return BrokerFilePermission(path, true, true, true, true, true);
+  }
+
+  // Returns true if |requested_filename| is allowed to be opened
+  // by this permission.
+  // If |file_to_open| is not NULL it is set to point to either
+  // the |requested_filename| in the case of a recursive match,
+  // or a pointer the matched path in the whitelist if an absolute
+  // match.
+  // If not NULL |unlink_after_open| is set to point to true if the
+  // caller should unlink the path after openning.
+  // Async signal safe if |file_to_open| is NULL.
+  bool CheckOpen(const char* requested_filename,
+                 int flags,
+                 const char** file_to_open,
+                 bool* unlink_after_open) const;
+  // Returns true if |requested_filename| is allowed to be accessed
+  // by this permission as per access(2).
+  // If |file_to_open| is not NULL it is set to point to either
+  // the |requested_filename| in the case of a recursive match,
+  // or a pointer to the matched path in the whitelist if an absolute
+  // match.
+  // |mode| is per mode argument of access(2).
+  // Async signal safe if |file_to_access| is NULL
+  bool CheckAccess(const char* requested_filename,
+                   int mode,
+                   const char** file_to_access) const;
+
+ private:
+  friend class BrokerFilePermissionTester;
+  BrokerFilePermission(const std::string& path,
+                       bool recursive,
+                       bool unlink,
+                       bool allow_read,
+                       bool allow_write,
+                       bool allow_create);
+
+  // ValidatePath checks |path| and returns true if these conditions are met
+  // * Greater than 0 length
+  // * Is an absolute path
+  // * No trailing slash
+  // * No /../ path traversal
+  static bool ValidatePath(const char* path);
+
+  // MatchPath returns true if |requested_filename| is covered by this instance
+  bool MatchPath(const char* requested_filename) const;
+
+  // Used in by BrokerFilePermissionTester for tests.
+  static const char* GetErrorMessageForTests();
+
+  // These are not const as std::vector requires copy-assignment and this class
+  // is stored in vectors. All methods are marked const so
+  // the compiler will still enforce no changes outside of the constructor.
+  std::string path_;
+  bool recursive_;  // Allow everything under this path. |path| must be a dir.
+  bool unlink_;     // unlink after opening.
+  bool allow_read_;
+  bool allow_write_;
+  bool allow_create_;
+};
+
+}  // namespace syscall_broker
+
+}  // namespace sandbox
+
+#endif  //  SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_
\ No newline at end of file
diff --git a/sandbox/linux/syscall_broker/broker_file_permission_unittest.cc b/sandbox/linux/syscall_broker/broker_file_permission_unittest.cc
new file mode 100644
index 0000000..2853021
--- /dev/null
+++ b/sandbox/linux/syscall_broker/broker_file_permission_unittest.cc
@@ -0,0 +1,262 @@
+// Copyright 2014 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.
+
+#include "sandbox/linux/syscall_broker/broker_file_permission.h"
+
+#include <fcntl.h>
+#include <string.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+#include "base/logging.h"
+#include "base/macros.h"
+#include "sandbox/linux/tests/test_utils.h"
+#include "sandbox/linux/tests/unit_tests.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace sandbox {
+
+namespace syscall_broker {
+
+class BrokerFilePermissionTester {
+ public:
+  static bool ValidatePath(const char* path) {
+    return BrokerFilePermission::ValidatePath(path);
+  }
+  static const char* GetErrorMessage() {
+    return BrokerFilePermission::GetErrorMessageForTests();
+  }
+
+ private:
+  DISALLOW_COPY_AND_ASSIGN(BrokerFilePermissionTester);
+};
+
+namespace {
+
+// Creation tests are DEATH tests as a bad permission causes termination.
+SANDBOX_TEST(BrokerFilePermission, CreateGood) {
+  const char kPath[] = "/tmp/good";
+  BrokerFilePermission perm = BrokerFilePermission::ReadOnly(kPath);
+}
+
+SANDBOX_TEST(BrokerFilePermission, CreateGoodRecursive) {
+  const char kPath[] = "/tmp/good/";
+  BrokerFilePermission perm = BrokerFilePermission::ReadOnlyRecursive(kPath);
+}
+
+SANDBOX_DEATH_TEST(
+    BrokerFilePermission,
+    CreateBad,
+    DEATH_MESSAGE(BrokerFilePermissionTester::GetErrorMessage())) {
+  const char kPath[] = "/tmp/bad/";
+  BrokerFilePermission perm = BrokerFilePermission::ReadOnly(kPath);
+}
+
+SANDBOX_DEATH_TEST(
+    BrokerFilePermission,
+    CreateBadRecursive,
+    DEATH_MESSAGE(BrokerFilePermissionTester::GetErrorMessage())) {
+  const char kPath[] = "/tmp/bad";
+  BrokerFilePermission perm = BrokerFilePermission::ReadOnlyRecursive(kPath);
+}
+
+SANDBOX_DEATH_TEST(
+    BrokerFilePermission,
+    CreateBadNotAbs,
+    DEATH_MESSAGE(BrokerFilePermissionTester::GetErrorMessage())) {
+  const char kPath[] = "tmp/bad";
+  BrokerFilePermission perm = BrokerFilePermission::ReadOnly(kPath);
+}
+
+SANDBOX_DEATH_TEST(
+    BrokerFilePermission,
+    CreateBadEmpty,
+    DEATH_MESSAGE(BrokerFilePermissionTester::GetErrorMessage())) {
+  const char kPath[] = "";
+  BrokerFilePermission perm = BrokerFilePermission::ReadOnly(kPath);
+}
+
+// CheckPerm tests |path| against |perm| given |access_flags|.
+// If |create| is true then file creation is tested for success.
+void CheckPerm(const BrokerFilePermission& perm,
+               const char* path,
+               int access_flags,
+               bool create) {
+  const char* file_to_open = NULL;
+
+  ASSERT_FALSE(perm.CheckAccess(path, X_OK, NULL));
+  ASSERT_TRUE(perm.CheckAccess(path, F_OK, NULL));
+  // check bad perms
+  switch (access_flags) {
+    case O_RDONLY:
+      ASSERT_TRUE(perm.CheckOpen(path, O_RDONLY, &file_to_open, NULL));
+      ASSERT_FALSE(perm.CheckOpen(path, O_WRONLY, &file_to_open, NULL));
+      ASSERT_FALSE(perm.CheckOpen(path, O_RDWR, &file_to_open, NULL));
+      ASSERT_TRUE(perm.CheckAccess(path, R_OK, NULL));
+      ASSERT_FALSE(perm.CheckAccess(path, W_OK, NULL));
+      break;
+    case O_WRONLY:
+      ASSERT_FALSE(perm.CheckOpen(path, O_RDONLY, &file_to_open, NULL));
+      ASSERT_TRUE(perm.CheckOpen(path, O_WRONLY, &file_to_open, NULL));
+      ASSERT_FALSE(perm.CheckOpen(path, O_RDWR, &file_to_open, NULL));
+      ASSERT_FALSE(perm.CheckAccess(path, R_OK, NULL));
+      ASSERT_TRUE(perm.CheckAccess(path, W_OK, NULL));
+      break;
+    case O_RDWR:
+      ASSERT_TRUE(perm.CheckOpen(path, O_RDONLY, &file_to_open, NULL));
+      ASSERT_TRUE(perm.CheckOpen(path, O_WRONLY, &file_to_open, NULL));
+      ASSERT_TRUE(perm.CheckOpen(path, O_RDWR, &file_to_open, NULL));
+      ASSERT_TRUE(perm.CheckAccess(path, R_OK, NULL));
+      ASSERT_TRUE(perm.CheckAccess(path, W_OK, NULL));
+      break;
+    default:
+      // Bad test case
+      NOTREACHED();
+  }
+
+// O_SYNC can be defined as (__O_SYNC|O_DSYNC)
+#ifdef O_DSYNC
+  const int kSyncFlag = O_SYNC & ~O_DSYNC;
+#else
+  const int kSyncFlag = O_SYNC;
+#endif
+
+  const int kNumberOfBitsInOAccMode = 2;
+  COMPILE_ASSERT(O_ACCMODE == ((1 << kNumberOfBitsInOAccMode) - 1),
+                 number_of_bits);
+  // check every possible flag and act accordingly.
+  // Skipping AccMode bits as they are present in every case.
+  for (int i = kNumberOfBitsInOAccMode; i < 32; i++) {
+    int flag = 1 << i;
+    switch (flag) {
+      case O_APPEND:
+      case O_ASYNC:
+      case O_DIRECT:
+      case O_DIRECTORY:
+#ifdef O_DSYNC
+      case O_DSYNC:
+#endif
+      case O_EXCL:
+      case O_LARGEFILE:
+      case O_NOATIME:
+      case O_NOCTTY:
+      case O_NOFOLLOW:
+      case O_NONBLOCK:
+#if (O_NONBLOCK != O_NDELAY)
+      case O_NDELAY:
+#endif
+      case kSyncFlag:
+      case O_TRUNC:
+        ASSERT_TRUE(
+            perm.CheckOpen(path, access_flags | flag, &file_to_open, NULL));
+        break;
+      case O_CLOEXEC:
+      case O_CREAT:
+      default:
+        ASSERT_FALSE(
+            perm.CheckOpen(path, access_flags | flag, &file_to_open, NULL));
+    }
+  }
+  if (create) {
+    bool unlink;
+    ASSERT_TRUE(perm.CheckOpen(path, O_CREAT | O_EXCL | access_flags,
+                               &file_to_open, &unlink));
+    ASSERT_FALSE(unlink);
+  } else {
+    ASSERT_FALSE(perm.CheckOpen(path, O_CREAT | O_EXCL | access_flags,
+                                &file_to_open, NULL));
+  }
+}
+
+TEST(BrokerFilePermission, ReadOnly) {
+  const char kPath[] = "/tmp/good";
+  BrokerFilePermission perm = BrokerFilePermission::ReadOnly(kPath);
+  CheckPerm(perm, kPath, O_RDONLY, false);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+TEST(BrokerFilePermission, ReadOnlyRecursive) {
+  const char kPath[] = "/tmp/good/";
+  const char kPathFile[] = "/tmp/good/file";
+  BrokerFilePermission perm = BrokerFilePermission::ReadOnlyRecursive(kPath);
+  CheckPerm(perm, kPathFile, O_RDONLY, false);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+TEST(BrokerFilePermission, WriteOnly) {
+  const char kPath[] = "/tmp/good";
+  BrokerFilePermission perm = BrokerFilePermission::WriteOnly(kPath);
+  CheckPerm(perm, kPath, O_WRONLY, false);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+TEST(BrokerFilePermission, ReadWrite) {
+  const char kPath[] = "/tmp/good";
+  BrokerFilePermission perm = BrokerFilePermission::ReadWrite(kPath);
+  CheckPerm(perm, kPath, O_RDWR, false);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+TEST(BrokerFilePermission, ReadWriteCreate) {
+  const char kPath[] = "/tmp/good";
+  BrokerFilePermission perm = BrokerFilePermission::ReadWriteCreate(kPath);
+  CheckPerm(perm, kPath, O_RDWR, true);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+void CheckUnlink(BrokerFilePermission& perm,
+                 const char* path,
+                 int access_flags) {
+  bool unlink;
+  ASSERT_FALSE(perm.CheckOpen(path, access_flags, NULL, &unlink));
+  ASSERT_FALSE(perm.CheckOpen(path, access_flags | O_CREAT, NULL, &unlink));
+  ASSERT_TRUE(
+      perm.CheckOpen(path, access_flags | O_CREAT | O_EXCL, NULL, &unlink));
+  ASSERT_TRUE(unlink);
+}
+
+TEST(BrokerFilePermission, ReadWriteCreateUnlink) {
+  const char kPath[] = "/tmp/good";
+  BrokerFilePermission perm =
+      BrokerFilePermission::ReadWriteCreateUnlink(kPath);
+  CheckUnlink(perm, kPath, O_RDWR);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+TEST(BrokerFilePermission, ReadWriteCreateUnlinkRecursive) {
+  const char kPath[] = "/tmp/good/";
+  const char kPathFile[] = "/tmp/good/file";
+  BrokerFilePermission perm =
+      BrokerFilePermission::ReadWriteCreateUnlinkRecursive(kPath);
+  CheckUnlink(perm, kPathFile, O_RDWR);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+TEST(BrokerFilePermission, ValidatePath) {
+  EXPECT_TRUE(BrokerFilePermissionTester::ValidatePath("/path"));
+  EXPECT_TRUE(BrokerFilePermissionTester::ValidatePath("/"));
+  EXPECT_TRUE(BrokerFilePermissionTester::ValidatePath("/..path"));
+
+  EXPECT_FALSE(BrokerFilePermissionTester::ValidatePath(""));
+  EXPECT_FALSE(BrokerFilePermissionTester::ValidatePath("bad"));
+  EXPECT_FALSE(BrokerFilePermissionTester::ValidatePath("/bad/"));
+  EXPECT_FALSE(BrokerFilePermissionTester::ValidatePath("bad/"));
+  EXPECT_FALSE(BrokerFilePermissionTester::ValidatePath("/bad/.."));
+  EXPECT_FALSE(BrokerFilePermissionTester::ValidatePath("/bad/../bad"));
+  EXPECT_FALSE(BrokerFilePermissionTester::ValidatePath("/../bad"));
+}
+
+}  // namespace
+
+}  // namespace syscall_broker
+
+}  // namespace sandbox
diff --git a/sandbox/linux/syscall_broker/broker_host.cc b/sandbox/linux/syscall_broker/broker_host.cc
index 29300f7..7ebc785 100644
--- a/sandbox/linux/syscall_broker/broker_host.cc
+++ b/sandbox/linux/syscall_broker/broker_host.cc
@@ -38,8 +38,13 @@
 // make a direct system call since we want to keep in control of the broker
 // process' system calls profile to be able to loosely sandbox it.
 int sys_open(const char* pathname, int flags) {
-  // Always pass a defined |mode| in case flags mistakenly contains O_CREAT.
-  const int mode = 0;
+  // Hardcode mode to rw------- when creating files.
+  int mode;
+  if (flags & O_CREAT) {
+    mode = 0600;
+  } else {
+    mode = 0;
+  }
   if (IsRunningOnValgrind()) {
     // Valgrind does not support AT_FDCWD, just use libc's open() in this case.
     return open(pathname, flags, mode);
@@ -59,8 +64,9 @@
   DCHECK(write_pickle);
   DCHECK(opened_files);
   const char* file_to_open = NULL;
+  bool unlink_after_open = false;
   const bool safe_to_open_file = policy.GetFileNameIfAllowedToOpen(
-      requested_filename.c_str(), flags, &file_to_open);
+      requested_filename.c_str(), flags, &file_to_open, &unlink_after_open);
 
   if (safe_to_open_file) {
     CHECK(file_to_open);
@@ -69,6 +75,9 @@
       write_pickle->WriteInt(-errno);
     } else {
       // Success.
+      if (unlink_after_open) {
+        unlink(file_to_open);
+      }
       opened_files->push_back(opened_fd);
       write_pickle->WriteInt(0);
     }
diff --git a/sandbox/linux/syscall_broker/broker_policy.cc b/sandbox/linux/syscall_broker/broker_policy.cc
index ee9a658..d9f69e3 100644
--- a/sandbox/linux/syscall_broker/broker_policy.cc
+++ b/sandbox/linux/syscall_broker/broker_policy.cc
@@ -17,76 +17,19 @@
 namespace sandbox {
 namespace syscall_broker {
 
-namespace {
-
-// We maintain a list of flags that have been reviewed for "sanity" and that
-// we're ok to allow in the broker.
-// I.e. here is where we wouldn't add O_RESET_FILE_SYSTEM.
-bool IsAllowedOpenFlags(int flags) {
-  // First, check the access mode.
-  const int access_mode = flags & O_ACCMODE;
-  if (access_mode != O_RDONLY && access_mode != O_WRONLY &&
-      access_mode != O_RDWR) {
-    return false;
-  }
-
-  // We only support a 2-parameters open, so we forbid O_CREAT.
-  if (flags & O_CREAT) {
-    return false;
-  }
-
-  // Some flags affect the behavior of the current process. We don't support
-  // them and don't allow them for now.
-  if (flags & kCurrentProcessOpenFlagsMask)
-    return false;
-
-  // Now check that all the flags are known to us.
-  const int creation_and_status_flags = flags & ~O_ACCMODE;
-
-  const int known_flags = O_APPEND | O_ASYNC | O_CLOEXEC | O_CREAT | O_DIRECT |
-                          O_DIRECTORY | O_EXCL | O_LARGEFILE | O_NOATIME |
-                          O_NOCTTY | O_NOFOLLOW | O_NONBLOCK | O_NDELAY |
-                          O_SYNC | O_TRUNC;
-
-  const int unknown_flags = ~known_flags;
-  const bool has_unknown_flags = creation_and_status_flags & unknown_flags;
-  return !has_unknown_flags;
-}
-
-// Needs to be async signal safe if |file_to_open| is NULL.
-// TODO(jln): assert signal safety.
-bool GetFileNameInWhitelist(const std::vector<std::string>& allowed_file_names,
-                            const char* requested_filename,
-                            const char** file_to_open) {
-  if (file_to_open && *file_to_open) {
-    // Make sure that callers never pass a non-empty string. In case callers
-    // wrongly forget to check the return value and look at the string
-    // instead, this could catch bugs.
-    RAW_LOG(FATAL, "*file_to_open should be NULL");
-    return false;
-  }
-
-  // Look for |requested_filename| in |allowed_file_names|.
-  // We don't use ::find() because it takes a std::string and
-  // the conversion allocates memory.
-  for (const auto& allowed_file_name : allowed_file_names) {
-    if (strcmp(requested_filename, allowed_file_name.c_str()) == 0) {
-      if (file_to_open)
-        *file_to_open = allowed_file_name.c_str();
-      return true;
-    }
-  }
-  return false;
-}
-
-}  // namespace
-
 BrokerPolicy::BrokerPolicy(int denied_errno,
-                           const std::vector<std::string>& allowed_r_files,
-                           const std::vector<std::string>& allowed_w_files)
+                           const std::vector<BrokerFilePermission>& permissions)
     : denied_errno_(denied_errno),
-      allowed_r_files_(allowed_r_files),
-      allowed_w_files_(allowed_w_files) {
+      permissions_(permissions),
+      num_of_permissions_(permissions.size()) {
+  // The spec guarantees vectors store their elements contiguously
+  // so set up a pointer to array of element so it can be used
+  // in async signal safe code instead of vector operations.
+  if (num_of_permissions_ > 0) {
+    permissions_array_ = &permissions_[0];
+  } else {
+    permissions_array_ = NULL;
+  }
 }
 
 BrokerPolicy::~BrokerPolicy() {
@@ -107,34 +50,20 @@
     const char* requested_filename,
     int requested_mode,
     const char** file_to_access) const {
-  // First, check if |requested_mode| is existence, ability to read or ability
-  // to write. We do not support X_OK.
-  if (requested_mode != F_OK && requested_mode & ~(R_OK | W_OK)) {
+  if (file_to_access && *file_to_access) {
+    // Make sure that callers never pass a non-empty string. In case callers
+    // wrongly forget to check the return value and look at the string
+    // instead, this could catch bugs.
+    RAW_LOG(FATAL, "*file_to_access should be NULL");
     return false;
   }
-  switch (requested_mode) {
-    case F_OK:
-      // We allow to check for file existence if we can either read or write.
-      return GetFileNameInWhitelist(
-                 allowed_r_files_, requested_filename, file_to_access) ||
-             GetFileNameInWhitelist(
-                 allowed_w_files_, requested_filename, file_to_access);
-    case R_OK:
-      return GetFileNameInWhitelist(
-          allowed_r_files_, requested_filename, file_to_access);
-    case W_OK:
-      return GetFileNameInWhitelist(
-          allowed_w_files_, requested_filename, file_to_access);
-    case R_OK | W_OK: {
-      bool allowed_for_read_and_write =
-          GetFileNameInWhitelist(allowed_r_files_, requested_filename, NULL) &&
-          GetFileNameInWhitelist(
-              allowed_w_files_, requested_filename, file_to_access);
-      return allowed_for_read_and_write;
+  for (size_t i = 0; i < num_of_permissions_; i++) {
+    if (permissions_array_[i].CheckAccess(requested_filename, requested_mode,
+                                          file_to_access)) {
+      return true;
     }
-    default:
-      return false;
   }
+  return false;
 }
 
 // Check if |requested_filename| can be opened with flags |requested_flags|.
@@ -147,27 +76,22 @@
 // Async signal safe if and only if |file_to_open| is NULL.
 bool BrokerPolicy::GetFileNameIfAllowedToOpen(const char* requested_filename,
                                               int requested_flags,
-                                              const char** file_to_open) const {
-  if (!IsAllowedOpenFlags(requested_flags)) {
+                                              const char** file_to_open,
+                                              bool* unlink_after_open) const {
+  if (file_to_open && *file_to_open) {
+    // Make sure that callers never pass a non-empty string. In case callers
+    // wrongly forget to check the return value and look at the string
+    // instead, this could catch bugs.
+    RAW_LOG(FATAL, "*file_to_open should be NULL");
     return false;
   }
-  switch (requested_flags & O_ACCMODE) {
-    case O_RDONLY:
-      return GetFileNameInWhitelist(
-          allowed_r_files_, requested_filename, file_to_open);
-    case O_WRONLY:
-      return GetFileNameInWhitelist(
-          allowed_w_files_, requested_filename, file_to_open);
-    case O_RDWR: {
-      bool allowed_for_read_and_write =
-          GetFileNameInWhitelist(allowed_r_files_, requested_filename, NULL) &&
-          GetFileNameInWhitelist(
-              allowed_w_files_, requested_filename, file_to_open);
-      return allowed_for_read_and_write;
+  for (size_t i = 0; i < num_of_permissions_; i++) {
+    if (permissions_array_[i].CheckOpen(requested_filename, requested_flags,
+                                        file_to_open, unlink_after_open)) {
+      return true;
     }
-    default:
-      return false;
   }
+  return false;
 }
 
 }  // namespace syscall_broker
diff --git a/sandbox/linux/syscall_broker/broker_policy.h b/sandbox/linux/syscall_broker/broker_policy.h
index ef5bdfa..d5146ed 100644
--- a/sandbox/linux/syscall_broker/broker_policy.h
+++ b/sandbox/linux/syscall_broker/broker_policy.h
@@ -10,6 +10,8 @@
 
 #include "base/macros.h"
 
+#include "sandbox/linux/syscall_broker/broker_file_permission.h"
+
 namespace sandbox {
 namespace syscall_broker {
 
@@ -23,21 +25,21 @@
   // |denied_errno| is the error code returned when IPC requests for system
   // calls such as open() or access() are denied because a file is not in the
   // whitelist. EACCESS would be a typical value.
-  // |allowed_r_files| and |allowed_w_files| are white lists of files that
-  // should be allowed for opening, respectively for reading and writing.
-  // A file available read-write should be listed in both.
+  // |permissions| is a list of BrokerPermission objects that define
+  // what the broker will allow.
   BrokerPolicy(int denied_errno,
-               const std::vector<std::string>& allowed_r_files,
-               const std::vector<std::string>& allowed_w_files_);
+               const std::vector<BrokerFilePermission>& permissions);
+
   ~BrokerPolicy();
 
   // Check if calling access() should be allowed on |requested_filename| with
   // mode |requested_mode|.
   // Note: access() being a system call to check permissions, this can get a bit
   // confusing. We're checking if calling access() should even be allowed with
-  // the same policy we would use for open().
-  // If |file_to_access| is not NULL, we will return the matching pointer from
-  // the whitelist. For paranoia a caller should then use |file_to_access|. See
+  // If |file_to_open| is not NULL, a pointer to the path will be returned.
+  // In the case of a recursive match, this will be the requested_filename,
+  // otherwise it will return the matching pointer from the
+  // whitelist. For paranoia a caller should then use |file_to_access|. See
   // GetFileNameIfAllowedToOpen() for more explanation.
   // return true if calling access() on this file should be allowed, false
   // otherwise.
@@ -47,22 +49,34 @@
                                     const char** file_to_access) const;
 
   // Check if |requested_filename| can be opened with flags |requested_flags|.
-  // If |file_to_open| is not NULL, we will return the matching pointer from the
+  // If |file_to_open| is not NULL, a pointer to the path will be returned.
+  // In the case of a recursive match, this will be the requested_filename,
+  // otherwise it will return the matching pointer from the
   // whitelist. For paranoia, a caller should then use |file_to_open| rather
   // than |requested_filename|, so that it never attempts to open an
   // attacker-controlled file name, even if an attacker managed to fool the
   // string comparison mechanism.
+  // |unlink_after_open| if not NULL will be set to point to true if the
+  // policy requests the caller unlink the path after opening.
   // Return true if opening should be allowed, false otherwise.
   // Async signal safe if and only if |file_to_open| is NULL.
   bool GetFileNameIfAllowedToOpen(const char* requested_filename,
                                   int requested_flags,
-                                  const char** file_to_open) const;
+                                  const char** file_to_open,
+                                  bool* unlink_after_open) const;
   int denied_errno() const { return denied_errno_; }
 
  private:
   const int denied_errno_;
-  const std::vector<std::string> allowed_r_files_;
-  const std::vector<std::string> allowed_w_files_;
+  // The permissions_ vector is used as storage for the BrokerFilePermission
+  // objects but is not referenced outside of the constructor as
+  // vectors are unfriendly in async signal safe code.
+  const std::vector<BrokerFilePermission> permissions_;
+  // permissions_array_ is set up to point to the backing store of
+  // permissions_ and is used in async signal safe methods.
+  const BrokerFilePermission* permissions_array_;
+  const size_t num_of_permissions_;
+
   DISALLOW_COPY_AND_ASSIGN(BrokerPolicy);
 };
 
diff --git a/sandbox/linux/syscall_broker/broker_process.cc b/sandbox/linux/syscall_broker/broker_process.cc
index 9b92c49..81131cc 100644
--- a/sandbox/linux/syscall_broker/broker_process.cc
+++ b/sandbox/linux/syscall_broker/broker_process.cc
@@ -30,16 +30,16 @@
 
 namespace syscall_broker {
 
-BrokerProcess::BrokerProcess(int denied_errno,
-                             const std::vector<std::string>& allowed_r_files,
-                             const std::vector<std::string>& allowed_w_files,
-                             bool fast_check_in_client,
-                             bool quiet_failures_for_tests)
+BrokerProcess::BrokerProcess(
+    int denied_errno,
+    const std::vector<syscall_broker::BrokerFilePermission>& permissions,
+    bool fast_check_in_client,
+    bool quiet_failures_for_tests)
     : initialized_(false),
       fast_check_in_client_(fast_check_in_client),
       quiet_failures_for_tests_(quiet_failures_for_tests),
       broker_pid_(-1),
-      policy_(denied_errno, allowed_r_files, allowed_w_files) {
+      policy_(denied_errno, permissions) {
 }
 
 BrokerProcess::~BrokerProcess() {
diff --git a/sandbox/linux/syscall_broker/broker_process.h b/sandbox/linux/syscall_broker/broker_process.h
index 50e7eee..c23ac3c 100644
--- a/sandbox/linux/syscall_broker/broker_process.h
+++ b/sandbox/linux/syscall_broker/broker_process.h
@@ -21,6 +21,7 @@
 namespace syscall_broker {
 
 class BrokerClient;
+class BrokerFilePermission;
 
 // Create a new "broker" process to which we can send requests via an IPC
 // channel by forking the current process.
@@ -42,11 +43,13 @@
   // A file available read-write should be listed in both.
   // |fast_check_in_client| and |quiet_failures_for_tests| are reserved for
   // unit tests, don't use it.
-  BrokerProcess(int denied_errno,
-                const std::vector<std::string>& allowed_r_files,
-                const std::vector<std::string>& allowed_w_files,
-                bool fast_check_in_client = true,
-                bool quiet_failures_for_tests = false);
+
+  BrokerProcess(
+      int denied_errno,
+      const std::vector<syscall_broker::BrokerFilePermission>& permissions,
+      bool fast_check_in_client = true,
+      bool quiet_failures_for_tests = false);
+
   ~BrokerProcess();
   // Will initialize the broker process. There should be no threads at this
   // point, since we need to fork().
diff --git a/sandbox/linux/syscall_broker/broker_process_unittest.cc b/sandbox/linux/syscall_broker/broker_process_unittest.cc
index 997667c..ee284f2 100644
--- a/sandbox/linux/syscall_broker/broker_process_unittest.cc
+++ b/sandbox/linux/syscall_broker/broker_process_unittest.cc
@@ -54,11 +54,10 @@
 }  // namespace
 
 TEST(BrokerProcess, CreateAndDestroy) {
-  std::vector<std::string> read_whitelist;
-  read_whitelist.push_back("/proc/cpuinfo");
+  std::vector<BrokerFilePermission> permissions;
+  permissions.push_back(BrokerFilePermission::ReadOnly("/proc/cpuinfo"));
 
-  scoped_ptr<BrokerProcess> open_broker(
-      new BrokerProcess(EPERM, read_whitelist, std::vector<std::string>()));
+  scoped_ptr<BrokerProcess> open_broker(new BrokerProcess(EPERM, permissions));
   ASSERT_TRUE(open_broker->Init(base::Bind(&NoOpCallback)));
 
   ASSERT_TRUE(TestUtils::CurrentProcessHasChildren());
@@ -68,8 +67,8 @@
 }
 
 TEST(BrokerProcess, TestOpenAccessNull) {
-  const std::vector<std::string> empty;
-  BrokerProcess open_broker(EPERM, empty, empty);
+  std::vector<BrokerFilePermission> empty;
+  BrokerProcess open_broker(EPERM, empty);
   ASSERT_TRUE(open_broker.Init(base::Bind(&NoOpCallback)));
 
   int fd = open_broker.Open(NULL, O_RDONLY);
@@ -88,17 +87,14 @@
   const char kRW_WhiteListed[] = "/proc/DOESNOTEXIST3";
   const char k_NotWhitelisted[] = "/proc/DOESNOTEXIST4";
 
-  std::vector<std::string> read_whitelist;
-  read_whitelist.push_back(kR_WhiteListed);
-  read_whitelist.push_back(kR_WhiteListedButDenied);
-  read_whitelist.push_back(kRW_WhiteListed);
+  std::vector<BrokerFilePermission> permissions;
+  permissions.push_back(BrokerFilePermission::ReadOnly(kR_WhiteListed));
+  permissions.push_back(
+      BrokerFilePermission::ReadOnly(kR_WhiteListedButDenied));
+  permissions.push_back(BrokerFilePermission::WriteOnly(kW_WhiteListed));
+  permissions.push_back(BrokerFilePermission::ReadWrite(kRW_WhiteListed));
 
-  std::vector<std::string> write_whitelist;
-  write_whitelist.push_back(kW_WhiteListed);
-  write_whitelist.push_back(kRW_WhiteListed);
-
-  BrokerProcess open_broker(
-      denied_errno, read_whitelist, write_whitelist, fast_check_in_client);
+  BrokerProcess open_broker(denied_errno, permissions, fast_check_in_client);
   ASSERT_TRUE(open_broker.Init(base::Bind(&NoOpCallback)));
 
   int fd = -1;
@@ -243,13 +239,78 @@
   // expected.
 }
 
-void TestOpenCpuinfo(bool fast_check_in_client) {
+void TestBadPaths(bool fast_check_in_client) {
   const char kFileCpuInfo[] = "/proc/cpuinfo";
-  std::vector<std::string> read_whitelist;
-  read_whitelist.push_back(kFileCpuInfo);
+  const char kNotAbsPath[] = "proc/cpuinfo";
+  const char kDotDotStart[] = "/../proc/cpuinfo";
+  const char kDotDotMiddle[] = "/proc/self/../cpuinfo";
+  const char kDotDotEnd[] = "/proc/..";
+  const char kTrailingSlash[] = "/proc/";
 
-  scoped_ptr<BrokerProcess> open_broker(new BrokerProcess(
-      EPERM, read_whitelist, std::vector<std::string>(), fast_check_in_client));
+  std::vector<BrokerFilePermission> permissions;
+
+  permissions.push_back(BrokerFilePermission::ReadOnlyRecursive("/proc/"));
+  scoped_ptr<BrokerProcess> open_broker(
+      new BrokerProcess(EPERM, permissions, fast_check_in_client));
+  ASSERT_TRUE(open_broker->Init(base::Bind(&NoOpCallback)));
+  // Open cpuinfo via the broker.
+  int cpuinfo_fd = open_broker->Open(kFileCpuInfo, O_RDONLY);
+  base::ScopedFD cpuinfo_fd_closer(cpuinfo_fd);
+  ASSERT_GE(cpuinfo_fd, 0);
+
+  int fd = -1;
+  int can_access;
+
+  can_access = open_broker->Access(kNotAbsPath, R_OK);
+  ASSERT_EQ(can_access, -EPERM);
+  fd = open_broker->Open(kNotAbsPath, O_RDONLY);
+  ASSERT_EQ(fd, -EPERM);
+
+  can_access = open_broker->Access(kDotDotStart, R_OK);
+  ASSERT_EQ(can_access, -EPERM);
+  fd = open_broker->Open(kDotDotStart, O_RDONLY);
+  ASSERT_EQ(fd, -EPERM);
+
+  can_access = open_broker->Access(kDotDotMiddle, R_OK);
+  ASSERT_EQ(can_access, -EPERM);
+  fd = open_broker->Open(kDotDotMiddle, O_RDONLY);
+  ASSERT_EQ(fd, -EPERM);
+
+  can_access = open_broker->Access(kDotDotEnd, R_OK);
+  ASSERT_EQ(can_access, -EPERM);
+  fd = open_broker->Open(kDotDotEnd, O_RDONLY);
+  ASSERT_EQ(fd, -EPERM);
+
+  can_access = open_broker->Access(kTrailingSlash, R_OK);
+  ASSERT_EQ(can_access, -EPERM);
+  fd = open_broker->Open(kTrailingSlash, O_RDONLY);
+  ASSERT_EQ(fd, -EPERM);
+}
+
+TEST(BrokerProcess, BadPathsClientCheck) {
+  TestBadPaths(true /* fast_check_in_client */);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+TEST(BrokerProcess, BadPathsNoClientCheck) {
+  TestBadPaths(false /* fast_check_in_client */);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+void TestOpenCpuinfo(bool fast_check_in_client, bool recursive) {
+  const char kFileCpuInfo[] = "/proc/cpuinfo";
+  const char kDirProc[] = "/proc/";
+
+  std::vector<BrokerFilePermission> permissions;
+  if (recursive)
+    permissions.push_back(BrokerFilePermission::ReadOnlyRecursive(kDirProc));
+  else
+    permissions.push_back(BrokerFilePermission::ReadOnly(kFileCpuInfo));
+
+  scoped_ptr<BrokerProcess> open_broker(
+      new BrokerProcess(EPERM, permissions, fast_check_in_client));
   ASSERT_TRUE(open_broker->Init(base::Bind(&NoOpCallback)));
 
   int fd = -1;
@@ -293,16 +354,28 @@
   ASSERT_FALSE(TestUtils::CurrentProcessHasChildren());
 }
 
-// Run the same thing twice. The second time, we make sure that no security
-// check is performed on the client.
+// Run this test 4 times. With and without the check in client
+// and using a recursive path.
 TEST(BrokerProcess, OpenCpuinfoWithClientCheck) {
-  TestOpenCpuinfo(true /* fast_check_in_client */);
+  TestOpenCpuinfo(true /* fast_check_in_client */, false /* not recursive */);
   // Don't do anything here, so that ASSERT works in the subfunction as
   // expected.
 }
 
 TEST(BrokerProcess, OpenCpuinfoNoClientCheck) {
-  TestOpenCpuinfo(false /* fast_check_in_client */);
+  TestOpenCpuinfo(false /* fast_check_in_client */, false /* not recursive */);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+TEST(BrokerProcess, OpenCpuinfoWithClientCheckRecursive) {
+  TestOpenCpuinfo(true /* fast_check_in_client */, true /* recursive */);
+  // Don't do anything here, so that ASSERT works in the subfunction as
+  // expected.
+}
+
+TEST(BrokerProcess, OpenCpuinfoNoClientCheckRecursive) {
+  TestOpenCpuinfo(false /* fast_check_in_client */, true /* recursive */);
   // Don't do anything here, so that ASSERT works in the subfunction as
   // expected.
 }
@@ -311,10 +384,10 @@
   ScopedTemporaryFile tempfile;
   const char* tempfile_name = tempfile.full_file_name();
 
-  std::vector<std::string> whitelist;
-  whitelist.push_back(tempfile_name);
+  std::vector<BrokerFilePermission> permissions;
+  permissions.push_back(BrokerFilePermission::ReadWrite(tempfile_name));
 
-  BrokerProcess open_broker(EPERM, whitelist, whitelist);
+  BrokerProcess open_broker(EPERM, permissions);
   ASSERT_TRUE(open_broker.Init(base::Bind(&NoOpCallback)));
 
   // Check we can access that file with read or write.
@@ -344,13 +417,11 @@
 // SANDBOX_TEST because the process could die with a SIGPIPE
 // and we want this to happen in a subprocess.
 SANDBOX_TEST(BrokerProcess, BrokerDied) {
-  std::vector<std::string> read_whitelist;
-  read_whitelist.push_back("/proc/cpuinfo");
+  const char kCpuInfo[] = "/proc/cpuinfo";
+  std::vector<BrokerFilePermission> permissions;
+  permissions.push_back(BrokerFilePermission::ReadOnly(kCpuInfo));
 
-  BrokerProcess open_broker(EPERM,
-                            read_whitelist,
-                            std::vector<std::string>(),
-                            true /* fast_check_in_client */,
+  BrokerProcess open_broker(EPERM, permissions, true /* fast_check_in_client */,
                             true /* quiet_failures_for_tests */);
   SANDBOX_ASSERT(open_broker.Init(base::Bind(&NoOpCallback)));
   const pid_t broker_pid = open_broker.broker_pid();
@@ -366,16 +437,16 @@
   SANDBOX_ASSERT(SIGKILL == process_info.si_status);
 
   // Check that doing Open with a dead broker won't SIGPIPE us.
-  SANDBOX_ASSERT(open_broker.Open("/proc/cpuinfo", O_RDONLY) == -ENOMEM);
-  SANDBOX_ASSERT(open_broker.Access("/proc/cpuinfo", O_RDONLY) == -ENOMEM);
+  SANDBOX_ASSERT(open_broker.Open(kCpuInfo, O_RDONLY) == -ENOMEM);
+  SANDBOX_ASSERT(open_broker.Access(kCpuInfo, O_RDONLY) == -ENOMEM);
 }
 
 void TestOpenComplexFlags(bool fast_check_in_client) {
   const char kCpuInfo[] = "/proc/cpuinfo";
-  std::vector<std::string> whitelist;
-  whitelist.push_back(kCpuInfo);
+  std::vector<BrokerFilePermission> permissions;
+  permissions.push_back(BrokerFilePermission::ReadOnly(kCpuInfo));
 
-  BrokerProcess open_broker(EPERM, whitelist, whitelist, fast_check_in_client);
+  BrokerProcess open_broker(EPERM, permissions, fast_check_in_client);
   ASSERT_TRUE(open_broker.Init(base::Bind(&NoOpCallback)));
   // Test that we do the right thing for O_CLOEXEC and O_NONBLOCK.
   int fd = -1;
@@ -454,10 +525,10 @@
   SANDBOX_ASSERT(0 == setrlimit(RLIMIT_NOFILE, &rlim));
 
   static const char kCpuInfo[] = "/proc/cpuinfo";
-  std::vector<std::string> read_whitelist;
-  read_whitelist.push_back(kCpuInfo);
+  std::vector<BrokerFilePermission> permissions;
+  permissions.push_back(BrokerFilePermission::ReadOnly(kCpuInfo));
 
-  BrokerProcess open_broker(EPERM, read_whitelist, std::vector<std::string>());
+  BrokerProcess open_broker(EPERM, permissions);
   SANDBOX_ASSERT(open_broker.Init(base::Bind(&NoOpCallback)));
 
   const int ipc_fd = BrokerProcessTestHelper::GetIPCDescriptor(&open_broker);
@@ -498,16 +569,15 @@
 // Closing the broker client's IPC channel should terminate the broker
 // process.
 TEST(BrokerProcess, BrokerDiesOnClosedChannel) {
-  std::vector<std::string> read_whitelist;
-  read_whitelist.push_back("/proc/cpuinfo");
+  std::vector<BrokerFilePermission> permissions;
+  permissions.push_back(BrokerFilePermission::ReadOnly("/proc/cpuinfo"));
 
   // Get the writing end of a pipe into the broker (child) process so
   // that we can reliably detect when it dies.
   int lifeline_fds[2];
   PCHECK(0 == pipe(lifeline_fds));
 
-  BrokerProcess open_broker(EPERM, read_whitelist, std::vector<std::string>(),
-                            true /* fast_check_in_client */,
+  BrokerProcess open_broker(EPERM, permissions, true /* fast_check_in_client */,
                             false /* quiet_failures_for_tests */);
   ASSERT_TRUE(open_broker.Init(base::Bind(&CloseFD, lifeline_fds[0])));
   // Make sure the writing end only exists in the broker process.
@@ -533,6 +603,55 @@
   EXPECT_EQ(1, process_info.si_status);
 }
 
+TEST(BrokerProcess, CreateFile) {
+  std::string temp_str;
+  {
+    ScopedTemporaryFile tmp_file;
+    temp_str = tmp_file.full_file_name();
+  }
+  const char* tempfile_name = temp_str.c_str();
+
+  std::vector<BrokerFilePermission> permissions;
+  permissions.push_back(BrokerFilePermission::ReadWriteCreate(tempfile_name));
+
+  BrokerProcess open_broker(EPERM, permissions);
+  ASSERT_TRUE(open_broker.Init(base::Bind(&NoOpCallback)));
+
+  int fd = -1;
+
+  // Try without O_EXCL
+  fd = open_broker.Open(tempfile_name, O_RDWR | O_CREAT);
+  ASSERT_EQ(fd, -EPERM);
+
+  const char kTestText[] = "TESTTESTTEST";
+  // Create a file
+  fd = open_broker.Open(tempfile_name, O_RDWR | O_CREAT | O_EXCL);
+  ASSERT_GE(fd, 0);
+  {
+    base::ScopedFD scoped_fd(fd);
+
+    // Confirm fail if file exists
+    int bad_fd = open_broker.Open(tempfile_name, O_RDWR | O_CREAT | O_EXCL);
+    ASSERT_EQ(bad_fd, -EEXIST);
+
+    // Write to the descriptor opened by the broker.
+
+    ssize_t len = HANDLE_EINTR(write(fd, kTestText, sizeof(kTestText)));
+    ASSERT_EQ(len, static_cast<ssize_t>(sizeof(kTestText)));
+  }
+
+  int fd_check = open(tempfile_name, O_RDONLY);
+  ASSERT_GE(fd_check, 0);
+  {
+    base::ScopedFD scoped_fd(fd_check);
+    char buf[1024];
+    ssize_t len = HANDLE_EINTR(read(fd_check, buf, sizeof(buf)));
+
+    ASSERT_EQ(len, static_cast<ssize_t>(sizeof(kTestText)));
+    ASSERT_EQ(memcmp(kTestText, buf, sizeof(kTestText)), 0);
+  }
+}
+
 }  // namespace syscall_broker
 
 }  // namespace sandbox
diff --git a/sandbox/linux/tests/unit_tests.cc b/sandbox/linux/tests/unit_tests.cc
index b7c3af6..5872e94 100644
--- a/sandbox/linux/tests/unit_tests.cc
+++ b/sandbox/linux/tests/unit_tests.cc
@@ -263,6 +263,16 @@
 
   bool subprocess_exited_without_matching_message =
       msg.find(expected_msg) == std::string::npos;
+
+// In official builds CHECK messages are dropped, so look for SIGABRT.
+// See https://code.google.com/p/chromium/issues/detail?id=437312
+#if defined(OFFICIAL_BUILD) && defined(NDEBUG) && !defined(OS_ANDROID)
+  if (subprocess_exited_without_matching_message) {
+    static const char kSigAbortMessage[] = "Received signal 6";
+    subprocess_exited_without_matching_message =
+        msg.find(kSigAbortMessage) == std::string::npos;
+  }
+#endif
   EXPECT_FALSE(subprocess_exited_without_matching_message) << details;
 }
 
diff --git a/services/gles2/command_buffer_driver.cc b/services/gles2/command_buffer_driver.cc
index ff6bd5e..c5cfac1 100644
--- a/services/gles2/command_buffer_driver.cc
+++ b/services/gles2/command_buffer_driver.cc
@@ -8,6 +8,7 @@
 #include "base/macros.h"
 #include "base/memory/shared_memory.h"
 #include "gpu/command_buffer/common/constants.h"
+#include "gpu/command_buffer/common/value_state.h"
 #include "gpu/command_buffer/service/command_buffer_service.h"
 #include "gpu/command_buffer/service/context_group.h"
 #include "gpu/command_buffer/service/gles2_cmd_decoder.h"
@@ -119,7 +120,7 @@
   scoped_refptr<gpu::gles2::ContextGroup> context_group =
       new gpu::gles2::ContextGroup(
           mailbox_manager_.get(), new MemoryTrackerStub,
-          new gpu::gles2::ShaderTranslatorCache, nullptr, true);
+          new gpu::gles2::ShaderTranslatorCache, nullptr, nullptr, true);
 
   command_buffer_.reset(
       new gpu::CommandBufferService(context_group->transfer_buffer_manager()));
diff --git a/services/surfaces/surfaces_impl.cc b/services/surfaces/surfaces_impl.cc
index 9cbe6dd..7387f9c 100644
--- a/services/surfaces/surfaces_impl.cc
+++ b/services/surfaces/surfaces_impl.cc
@@ -44,7 +44,7 @@
     NOTREACHED();
     return;
   }
-  factory_.Create(id.To<cc::SurfaceId>(), size.To<gfx::Size>());
+  factory_.Create(id.To<cc::SurfaceId>());
 }
 
 void SurfacesImpl::SubmitFrame(SurfaceIdPtr id,
@@ -97,8 +97,9 @@
     display_->Initialize(make_scoped_ptr(new DirectOutputSurface(
         new ContextProviderMojo(command_buffer_handle_.Pass()))));
   }
-  factory_.Create(cc_id, size.To<gfx::Size>());
-  display_->Resize(cc_id, size.To<gfx::Size>(), 1.f);
+  factory_.Create(cc_id);
+  display_->SetSurfaceId(cc_id, 1.f);
+  display_->Resize(size.To<gfx::Size>());
   parameter_listeners_.AddBinding(this, listener_request.Pass());
 }
 
diff --git a/skia/BUILD.gn b/skia/BUILD.gn
index 2751977..9c88863 100644
--- a/skia/BUILD.gn
+++ b/skia/BUILD.gn
@@ -290,7 +290,6 @@
     "ext/SkDiscardableMemory_chrome.h",
     "ext/SkDiscardableMemory_chrome.cc",
     "ext/SkMemory_new_handler.cpp",
-    "ext/skia_trace_shim.h",
     "ext/skia_utils_base.cc",
     "ext/skia_utils_base.h",
     "ext/skia_utils_ios.mm",
diff --git a/skia/config/SkUserConfig.h b/skia/config/SkUserConfig.h
index 887d37a..bd039e3 100644
--- a/skia/config/SkUserConfig.h
+++ b/skia/config/SkUserConfig.h
@@ -222,10 +222,6 @@
 // assertion.
 #define SK_CRASH() SkDebugf_FileLine(__FILE__, __LINE__, true, "SK_CRASH")
 
-// Uncomment the following line to forward skia trace events to Chrome
-// tracing.
-// #define SK_USER_TRACE_INCLUDE_FILE "skia/ext/skia_trace_shim.h"
-
 #ifndef SK_ATOMICS_PLATFORM_H
 #  if defined(SK_BUILD_FOR_WIN)
 #    define SK_ATOMICS_PLATFORM_H "third_party/skia/src/ports/SkAtomics_win.h"
diff --git a/skia/ext/analysis_canvas.cc b/skia/ext/analysis_canvas.cc
index ca19170..48a09d1 100644
--- a/skia/ext/analysis_canvas.cc
+++ b/skia/ext/analysis_canvas.cc
@@ -15,6 +15,23 @@
 
 const int kNoLayer = -1;
 
+bool ActsLikeClear(SkXfermode::Mode mode, unsigned src_alpha) {
+  switch (mode) {
+    case SkXfermode::kClear_Mode:
+      return true;
+    case SkXfermode::kSrc_Mode:
+    case SkXfermode::kSrcIn_Mode:
+    case SkXfermode::kDstIn_Mode:
+    case SkXfermode::kSrcOut_Mode:
+    case SkXfermode::kDstATop_Mode:
+      return src_alpha == 0;
+    case SkXfermode::kDstOut_Mode:
+      return src_alpha == 0xFF;
+    default:
+      return false;
+  }
+}
+
 bool IsSolidColorPaint(const SkPaint& paint) {
   SkXfermode::Mode xfermode;
 
@@ -90,14 +107,9 @@
 }
 
 void AnalysisCanvas::drawPaint(const SkPaint& paint) {
-  // This check is in SkCanvas::drawPaint(), and some of our unittests rely on
-  // on this, so we reproduce it here.
-  if (isClipEmpty())
-    return;
-
-  is_solid_color_ = false;
-  is_transparent_ = false;
-  ++draw_op_count_;
+  SkRect rect;
+  getClipBounds(&rect);
+  drawRect(rect, paint);
 }
 
 void AnalysisCanvas::drawPoints(SkCanvas::PointMode mode,
@@ -137,7 +149,7 @@
   // In all other cases, we keep the current transparent value
   if (does_cover_canvas &&
       !is_forced_not_transparent_ &&
-      xfermode == SkXfermode::kClear_Mode) {
+      ActsLikeClear(xfermode, paint.getAlpha())) {
     is_transparent_ = true;
   } else if (paint.getAlpha() != 0 || xfermode != SkXfermode::kSrc_Mode) {
     is_transparent_ = false;
diff --git a/skia/ext/analysis_canvas_unittest.cc b/skia/ext/analysis_canvas_unittest.cc
index 378d27d..16a0390 100644
--- a/skia/ext/analysis_canvas_unittest.cc
+++ b/skia/ext/analysis_canvas_unittest.cc
@@ -78,8 +78,7 @@
   canvas.drawPaint(paint);
 
   SkColor outputColor;
-  //TODO(vmpstr): This should return true. (crbug.com/180597)
-  EXPECT_FALSE(canvas.GetColorIfSolid(&outputColor));
+  EXPECT_TRUE(canvas.GetColorIfSolid(&outputColor));
 
   // Draw points test.
   SkPoint points[4] = {
diff --git a/skia/ext/image_operations.cc b/skia/ext/image_operations.cc
index bf063d7..17c9997 100644
--- a/skia/ext/image_operations.cc
+++ b/skia/ext/image_operations.cc
@@ -342,134 +342,9 @@
                                  int dest_width, int dest_height,
                                  const SkIRect& dest_subset,
                                  SkBitmap::Allocator* allocator) {
-  if (method == ImageOperations::RESIZE_SUBPIXEL) {
-    return ResizeSubpixel(source, dest_width, dest_height,
-                          dest_subset, allocator);
-  } else {
-    return ResizeBasic(source, method, dest_width, dest_height, dest_subset,
-                       allocator);
-  }
-}
-
-// static
-SkBitmap ImageOperations::ResizeSubpixel(const SkBitmap& source,
-                                         int dest_width, int dest_height,
-                                         const SkIRect& dest_subset,
-                                         SkBitmap::Allocator* allocator) {
-  TRACE_EVENT2("skia", "ImageOperations::ResizeSubpixel",
-               "src_pixels", source.width()*source.height(),
-               "dst_pixels", dest_width*dest_height);
-  // Currently only works on Linux/BSD because these are the only platforms
-  // where SkFontHost::GetSubpixelOrder is defined.
-#if defined(OS_LINUX) && !defined(GTV)
-  // Understand the display.
-  const SkFontHost::LCDOrder order = SkFontHost::GetSubpixelOrder();
-  const SkFontHost::LCDOrientation orientation =
-      SkFontHost::GetSubpixelOrientation();
-
-  // Decide on which dimension, if any, to deploy subpixel rendering.
-  int w = 1;
-  int h = 1;
-  switch (orientation) {
-    case SkFontHost::kHorizontal_LCDOrientation:
-      w = dest_width < source.width() ? 3 : 1;
-      break;
-    case SkFontHost::kVertical_LCDOrientation:
-      h = dest_height < source.height() ? 3 : 1;
-      break;
-  }
-
-  // Resize the image.
-  const int width = dest_width * w;
-  const int height = dest_height * h;
-  SkIRect subset = { dest_subset.fLeft, dest_subset.fTop,
-                     dest_subset.fLeft + dest_subset.width() * w,
-                     dest_subset.fTop + dest_subset.height() * h };
-  SkBitmap img = ResizeBasic(source, ImageOperations::RESIZE_LANCZOS3, width,
-                             height, subset, allocator);
-  const int row_words = img.rowBytes() / 4;
-  if (w == 1 && h == 1)
-    return img;
-
-  // Render into subpixels.
-  SkBitmap result;
-  result.setInfo(SkImageInfo::MakeN32(dest_subset.width(), dest_subset.height(),
-                                      img.alphaType()));
-  result.allocPixels(allocator, NULL);
-  if (!result.readyToDraw())
-    return img;
-
-  SkAutoLockPixels locker(img);
-  if (!img.readyToDraw())
-    return img;
-
-  uint32* src_row = img.getAddr32(0, 0);
-  uint32* dst_row = result.getAddr32(0, 0);
-  for (int y = 0; y < dest_subset.height(); y++) {
-    uint32* src = src_row;
-    uint32* dst = dst_row;
-    for (int x = 0; x < dest_subset.width(); x++, src += w, dst++) {
-      uint8 r = 0, g = 0, b = 0, a = 0;
-      switch (order) {
-        case SkFontHost::kRGB_LCDOrder:
-          switch (orientation) {
-            case SkFontHost::kHorizontal_LCDOrientation:
-              r = SkGetPackedR32(src[0]);
-              g = SkGetPackedG32(src[1]);
-              b = SkGetPackedB32(src[2]);
-              a = SkGetPackedA32(src[1]);
-              break;
-            case SkFontHost::kVertical_LCDOrientation:
-              r = SkGetPackedR32(src[0 * row_words]);
-              g = SkGetPackedG32(src[1 * row_words]);
-              b = SkGetPackedB32(src[2 * row_words]);
-              a = SkGetPackedA32(src[1 * row_words]);
-              break;
-          }
-          break;
-        case SkFontHost::kBGR_LCDOrder:
-          switch (orientation) {
-            case SkFontHost::kHorizontal_LCDOrientation:
-              b = SkGetPackedB32(src[0]);
-              g = SkGetPackedG32(src[1]);
-              r = SkGetPackedR32(src[2]);
-              a = SkGetPackedA32(src[1]);
-              break;
-            case SkFontHost::kVertical_LCDOrientation:
-              b = SkGetPackedB32(src[0 * row_words]);
-              g = SkGetPackedG32(src[1 * row_words]);
-              r = SkGetPackedR32(src[2 * row_words]);
-              a = SkGetPackedA32(src[1 * row_words]);
-              break;
-          }
-          break;
-        case SkFontHost::kNONE_LCDOrder:
-          NOTREACHED();
-      }
-      // Premultiplied alpha is very fragile.
-      a = a > r ? a : r;
-      a = a > g ? a : g;
-      a = a > b ? a : b;
-      *dst = SkPackARGB32(a, r, g, b);
-    }
-    src_row += h * row_words;
-    dst_row += result.rowBytes() / 4;
-  }
-  return result;
-#else
-  return SkBitmap();
-#endif  // OS_POSIX && !OS_MACOSX && !defined(OS_ANDROID)
-}
-
-// static
-SkBitmap ImageOperations::ResizeBasic(const SkBitmap& source,
-                                      ResizeMethod method,
-                                      int dest_width, int dest_height,
-                                      const SkIRect& dest_subset,
-                                      SkBitmap::Allocator* allocator) {
-  TRACE_EVENT2("skia", "ImageOperations::ResizeBasic",
-               "src_pixels", source.width()*source.height(),
-               "dst_pixels", dest_width*dest_height);
+  TRACE_EVENT2("disabled-by-default-skia", "ImageOperations::Resize",
+               "src_pixels", source.width() * source.height(), "dst_pixels",
+               dest_width * dest_height);
   // Ensure that the ResizeMethod enumeration is sound.
   SkASSERT(((RESIZE_FIRST_QUALITY_METHOD <= method) &&
             (method <= RESIZE_LAST_QUALITY_METHOD)) ||
diff --git a/skia/ext/image_operations.h b/skia/ext/image_operations.h
index eff8912..9e0b073 100644
--- a/skia/ext/image_operations.h
+++ b/skia/ext/image_operations.h
@@ -79,15 +79,11 @@
     // each side, then oscillates 2 more times. It gives nice sharp edges.
     RESIZE_LANCZOS3,
 
-    // Lanczos filter + subpixel interpolation. If subpixel rendering is not
-    // appropriate we automatically fall back to Lanczos.
-    RESIZE_SUBPIXEL,
-
     // enum aliases for first and last methods by algorithm or by quality.
     RESIZE_FIRST_QUALITY_METHOD = RESIZE_GOOD,
     RESIZE_LAST_QUALITY_METHOD = RESIZE_BEST,
     RESIZE_FIRST_ALGORITHM_METHOD = RESIZE_BOX,
-    RESIZE_LAST_ALGORITHM_METHOD = RESIZE_SUBPIXEL,
+    RESIZE_LAST_ALGORITHM_METHOD = RESIZE_LANCZOS3,
   };
 
   // Resizes the given source bitmap using the specified resize method, so that
@@ -113,19 +109,6 @@
 
  private:
   ImageOperations();  // Class for scoping only.
-
-  // Supports all methods except RESIZE_SUBPIXEL.
-  static SkBitmap ResizeBasic(const SkBitmap& source,
-                              ResizeMethod method,
-                              int dest_width, int dest_height,
-                              const SkIRect& dest_subset,
-                              SkBitmap::Allocator* allocator = NULL);
-
-  // Subpixel renderer.
-  static SkBitmap ResizeSubpixel(const SkBitmap& source,
-                                 int dest_width, int dest_height,
-                                 const SkIRect& dest_subset,
-                                 SkBitmap::Allocator* allocator = NULL);
 };
 
 }  // namespace skia
diff --git a/skia/ext/image_operations_bench.cc b/skia/ext/image_operations_bench.cc
index c4146d2..4fd81bc 100644
--- a/skia/ext/image_operations_bench.cc
+++ b/skia/ext/image_operations_bench.cc
@@ -43,7 +43,6 @@
   ADD_METHOD(HAMMING1),
   ADD_METHOD(LANCZOS2),
   ADD_METHOD(LANCZOS3),
-  ADD_METHOD(SUBPIXEL)
 };
 
 // converts a string into one of the image operation method to resize.
diff --git a/skia/ext/image_operations_unittest.cc b/skia/ext/image_operations_unittest.cc
index 6152731..6f88d73 100644
--- a/skia/ext/image_operations_unittest.cc
+++ b/skia/ext/image_operations_unittest.cc
@@ -495,7 +495,6 @@
   const SkColor colors[] = { checker_color1, checker_color2 };
   const SkColor average_color = AveragePixel(colors, arraysize(colors));
 
-  // RESIZE_SUBPIXEL is only supported on Linux/non-GTV platforms.
   static const TestedResizeMethod tested_methods[] = {
     { skia::ImageOperations::RESIZE_GOOD,     "GOOD",     0.0f },
     { skia::ImageOperations::RESIZE_BETTER,   "BETTER",   0.0f },
@@ -504,26 +503,6 @@
     { skia::ImageOperations::RESIZE_HAMMING1, "HAMMING1", 0.0f },
     { skia::ImageOperations::RESIZE_LANCZOS2, "LANCZOS2", 0.0f },
     { skia::ImageOperations::RESIZE_LANCZOS3, "LANCZOS3", 0.0f },
-#if defined(OS_LINUX) && !defined(GTV)
-    // SUBPIXEL has slightly worse performance than the other filters:
-    //   6.324  Bottom left/right corners
-    //   5.099  Top left/right corners
-    //   2.828  Bottom middle
-    //   1.414  Top/Left/Right middle, center
-    //
-    // This is expected since, in order to judge RESIZE_SUBPIXEL accurately,
-    // we'd need to compute distances for each sub-pixel, and potentially
-    // tweak the test parameters so that expectations were realistic when
-    // looking at sub-pixels in isolation.
-    //
-    // Rather than going to these lengths, we added the "max_distance_override"
-    // field in TestedResizeMethod, intended for RESIZE_SUBPIXEL. It allows
-    // us to to enable its testing without having to lower the success criteria
-    // for the other methods. This procedure is  distateful but defining
-    // a distance limit for each tested pixel for each method was judged to add
-    // unneeded complexity.
-    { skia::ImageOperations::RESIZE_SUBPIXEL, "SUBPIXEL", 6.4f },
-#endif
   };
 
   // Create our source bitmap.
diff --git a/skia/ext/pixel_ref_utils_unittest.cc b/skia/ext/pixel_ref_utils_unittest.cc
index 656ef5c..08e5d3e 100644
--- a/skia/ext/pixel_ref_utils_unittest.cc
+++ b/skia/ext/pixel_ref_utils_unittest.cc
@@ -53,11 +53,9 @@
   SkBitmap bitmap_;
 };
 
-#ifdef SK_SUPPORT_LEGACY_DEEPFLATTENING
 SkFlattenable* TestDiscardableShader::CreateProc(SkReadBuffer&) {
   return new TestDiscardableShader;
 }
-#endif
 
 void CreateBitmap(gfx::Size size, const char* uri, SkBitmap* bitmap) {
   bitmap->allocN32Pixels(size.width(), size.height());
diff --git a/skia/ext/platform_canvas_unittest.cc b/skia/ext/platform_canvas_unittest.cc
index 3d8ef00..3b39b44 100644
--- a/skia/ext/platform_canvas_unittest.cc
+++ b/skia/ext/platform_canvas_unittest.cc
@@ -414,7 +414,7 @@
             platform_bitmap->GetBitmap().colorType());
   EXPECT_TRUE(platform_bitmap->GetBitmap().lockPixelsAreWritable());
   EXPECT_TRUE(platform_bitmap->GetBitmap().pixelRef()->isLocked());
-  EXPECT_EQ(1, platform_bitmap->GetBitmap().pixelRef()->getRefCnt());
+  EXPECT_TRUE(platform_bitmap->GetBitmap().pixelRef()->unique());
 
   *(platform_bitmap->GetBitmap().getAddr32(10, 20)) = 0xDEED1020;
   *(platform_bitmap->GetBitmap().getAddr32(20, 30)) = 0xDEED2030;
@@ -422,8 +422,8 @@
   SkBitmap sk_bitmap = platform_bitmap->GetBitmap();
   sk_bitmap.lockPixels();
 
-  EXPECT_EQ(2, platform_bitmap->GetBitmap().pixelRef()->getRefCnt());
-  EXPECT_EQ(2, sk_bitmap.pixelRef()->getRefCnt());
+  EXPECT_FALSE(platform_bitmap->GetBitmap().pixelRef()->unique());
+  EXPECT_FALSE(sk_bitmap.pixelRef()->unique());
 
   EXPECT_EQ(0xDEED1020, *sk_bitmap.getAddr32(10, 20));
   EXPECT_EQ(0xDEED2030, *sk_bitmap.getAddr32(20, 30));
@@ -434,7 +434,7 @@
   // the PlatformBitmap.
   platform_bitmap.reset();
 
-  EXPECT_EQ(1, sk_bitmap.pixelRef()->getRefCnt());
+  EXPECT_TRUE(sk_bitmap.pixelRef()->unique());
 
   EXPECT_EQ(0xDEED1020, *sk_bitmap.getAddr32(10, 20));
   EXPECT_EQ(0xDEED2030, *sk_bitmap.getAddr32(20, 30));
diff --git a/skia/ext/refptr_unittest.cc b/skia/ext/refptr_unittest.cc
index 1d63ed1..bf54b03 100644
--- a/skia/ext/refptr_unittest.cc
+++ b/skia/ext/refptr_unittest.cc
@@ -11,13 +11,13 @@
 
 TEST(RefPtrTest, ReferenceCounting) {
   SkRefCnt* ref = new SkRefCnt();
-  EXPECT_EQ(1, ref->getRefCnt());
+  EXPECT_TRUE(ref->unique());
 
   {
     // Adopt the reference from the caller on creation.
     RefPtr<SkRefCnt> refptr1 = AdoptRef(ref);
-    EXPECT_EQ(1, ref->getRefCnt());
-    EXPECT_EQ(1, refptr1->getRefCnt());
+    EXPECT_TRUE(ref->unique());
+    EXPECT_TRUE(refptr1->unique());
 
     EXPECT_EQ(ref, &*refptr1);
     EXPECT_EQ(ref, refptr1.get());
@@ -25,100 +25,100 @@
     {
       // Take a second reference for the second instance.
       RefPtr<SkRefCnt> refptr2(refptr1);
-      EXPECT_EQ(2, ref->getRefCnt());
+      EXPECT_FALSE(ref->unique());
 
       RefPtr<SkRefCnt> refptr3;
       EXPECT_FALSE(refptr3);
 
       // Take a third reference for the third instance.
       refptr3 = refptr1;
-      EXPECT_EQ(3, ref->getRefCnt());
+      EXPECT_FALSE(ref->unique());
 
       // Same object, so should have the same refcount.
       refptr2 = refptr3;
-      EXPECT_EQ(3, ref->getRefCnt());
+      EXPECT_FALSE(ref->unique());
 
       // Drop the object from refptr2, so it should lose its reference.
       EXPECT_TRUE(refptr2);
       refptr2.clear();
-      EXPECT_EQ(2, ref->getRefCnt());
+      EXPECT_FALSE(ref->unique());
 
       EXPECT_FALSE(refptr2);
       EXPECT_EQ(NULL, refptr2.get());
 
       EXPECT_TRUE(refptr3);
-      EXPECT_EQ(2, refptr3->getRefCnt());
+      EXPECT_FALSE(refptr3->unique());
       EXPECT_EQ(ref, &*refptr3);
       EXPECT_EQ(ref, refptr3.get());
     }
 
     // Drop a reference when the third object is destroyed.
-    EXPECT_EQ(1, ref->getRefCnt());
+    EXPECT_TRUE(ref->unique());
   }
 }
 
 TEST(RefPtrTest, Construct) {
   SkRefCnt* ref = new SkRefCnt();
-  EXPECT_EQ(1, ref->getRefCnt());
+  EXPECT_TRUE(ref->unique());
 
   // Adopt the reference from the caller on creation.
   RefPtr<SkRefCnt> refptr1(AdoptRef(ref));
-  EXPECT_EQ(1, ref->getRefCnt());
-  EXPECT_EQ(1, refptr1->getRefCnt());
+  EXPECT_TRUE(ref->unique());
+  EXPECT_TRUE(refptr1->unique());
 
   EXPECT_EQ(ref, &*refptr1);
   EXPECT_EQ(ref, refptr1.get());
 
   RefPtr<SkRefCnt> refptr2(refptr1);
-  EXPECT_EQ(2, ref->getRefCnt());
+  EXPECT_FALSE(ref->unique());
 }
 
 TEST(RefPtrTest, DeclareAndAssign) {
   SkRefCnt* ref = new SkRefCnt();
-  EXPECT_EQ(1, ref->getRefCnt());
+  EXPECT_TRUE(ref->unique());
 
   // Adopt the reference from the caller on creation.
   RefPtr<SkRefCnt> refptr1 = AdoptRef(ref);
-  EXPECT_EQ(1, ref->getRefCnt());
-  EXPECT_EQ(1, refptr1->getRefCnt());
+  EXPECT_TRUE(ref->unique());
+  EXPECT_TRUE(refptr1->unique());
 
   EXPECT_EQ(ref, &*refptr1);
   EXPECT_EQ(ref, refptr1.get());
 
   RefPtr<SkRefCnt> refptr2 = refptr1;
-  EXPECT_EQ(2, ref->getRefCnt());
+  EXPECT_FALSE(ref->unique());
 }
 
 TEST(RefPtrTest, Assign) {
   SkRefCnt* ref = new SkRefCnt();
-  EXPECT_EQ(1, ref->getRefCnt());
+  EXPECT_TRUE(ref->unique());
 
   // Adopt the reference from the caller on creation.
   RefPtr<SkRefCnt> refptr1;
   refptr1 = AdoptRef(ref);
-  EXPECT_EQ(1, ref->getRefCnt());
-  EXPECT_EQ(1, refptr1->getRefCnt());
+  EXPECT_TRUE(ref->unique());
+  EXPECT_TRUE(refptr1->unique());
 
   EXPECT_EQ(ref, &*refptr1);
   EXPECT_EQ(ref, refptr1.get());
 
   RefPtr<SkRefCnt> refptr2;
   refptr2 = refptr1;
-  EXPECT_EQ(2, ref->getRefCnt());
+  EXPECT_FALSE(ref->unique());
 }
 
 class Subclass : public SkRefCnt {};
 
 TEST(RefPtrTest, Upcast) {
   RefPtr<Subclass> child = AdoptRef(new Subclass());
-  EXPECT_EQ(1, child->getRefCnt());
+  EXPECT_TRUE(child->unique());
 
   RefPtr<SkRefCnt> parent = child;
   EXPECT_TRUE(child);
   EXPECT_TRUE(parent);
 
-  EXPECT_EQ(2, child->getRefCnt());
-  EXPECT_EQ(2, parent->getRefCnt());
+  EXPECT_FALSE(child->unique());
+  EXPECT_FALSE(parent->unique());
 }
 
 }  // namespace
diff --git a/skia/ext/skia_trace_shim.h b/skia/ext/skia_trace_shim.h
deleted file mode 100644
index 62bdecc..0000000
--- a/skia/ext/skia_trace_shim.h
+++ /dev/null
@@ -1,17 +0,0 @@
-// Copyright (c) 2012 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.
-
-#ifndef SKIA_EXT_SKIA_TRACE_SHIM_H_
-#define SKIA_EXT_SKIA_TRACE_SHIM_H_
-
-#include "base/debug/trace_event.h"
-
-#define SK_TRACE_EVENT0(name) \
-    TRACE_EVENT0("skia", name)
-#define SK_TRACE_EVENT1(name, arg1_name, arg1_val) \
-    TRACE_EVENT1("skia", name, arg1_name, arg1_val)
-#define SK_TRACE_EVENT2(name, arg1_name, arg1_val, arg2_name, arg2_val) \
-    TRACE_EVENT1("skia", name, arg1_name, arg1_val, arg2_name, arg2_val)
-
-#endif
diff --git a/skia/skia_chrome.gypi b/skia/skia_chrome.gypi
index 7db9009..cff4e3c 100644
--- a/skia/skia_chrome.gypi
+++ b/skia/skia_chrome.gypi
@@ -71,7 +71,6 @@
     'ext/SkDiscardableMemory_chrome.h',
     'ext/SkDiscardableMemory_chrome.cc',
     'ext/SkMemory_new_handler.cpp',
-    'ext/skia_trace_shim.h',
     'ext/skia_utils_base.cc',
     'ext/skia_utils_base.h',
     'ext/skia_utils_ios.mm',
diff --git a/sky/engine/platform/graphics/GraphicsContextTest.cpp b/sky/engine/platform/graphics/GraphicsContextTest.cpp
index fa5e713..f8f6c25 100644
--- a/sky/engine/platform/graphics/GraphicsContextTest.cpp
+++ b/sky/engine/platform/graphics/GraphicsContextTest.cpp
@@ -1179,7 +1179,7 @@
     EXPECT_TRUE(canvas2);
 
     EXPECT_NE(canvas1, canvas2);
-    EXPECT_EQ(1, canvas1->getRefCnt());
+    EXPECT_TRUE(canvas1->unique());
     canvas1->unref();
 
     EXPECT_TRUE(dl->isRecording());
@@ -1192,7 +1192,7 @@
     dl->endRecording();
     pic = dl->picture();
     EXPECT_TRUE(pic);
-    EXPECT_EQ(1, pic->getRefCnt());
+    EXPECT_TRUE(pic->unique());
 }
 
 } // namespace
diff --git a/sky_viewer.trace b/sky_viewer.trace
new file mode 100644
index 0000000..62ec65b
--- /dev/null
+++ b/sky_viewer.trace
@@ -0,0 +1 @@
+{"traceEvents":[{"cat":"__metadata","pid":25863,"tid":0,"ts":0,"ph":"M","name":"num_cpus","args":{"number":32}},{"cat":"toplevel","pid":25863,"tid":25865,"ts":531358152433,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":65,"tdur":44,"tts":2488},{"cat":"trace_event_overhead","pid":25863,"tid":25865,"ts":531358152433,"ph":"X","name":"overhead","args":{},"dur":57,"tdur":35,"tts":2488},{"cat":"__metadata","pid":25863,"tid":25865,"ts":0,"ph":"M","name":"overhead","args":{"average_overhead":0.057}},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358199769,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":21,"tdur":20,"tts":568268},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358201740,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":569794},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358203446,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":571219},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358204957,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":572493},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358290436,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":62,"tdur":42,"tts":577712},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358292236,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":579115},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358293651,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":580338},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358295878,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":582351},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358355949,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":25,"tts":584829},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358357739,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":586231},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358359433,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":12,"tts":587655},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358361126,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":589120},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358421634,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":24,"tts":591404},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358423543,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":13,"tts":592923},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358426570,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":13,"tts":595677},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358428238,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":597004},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358489211,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":599178},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358490938,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":600564},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358492514,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":601836},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358493911,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":603078},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358554642,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":604476},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358556457,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":605927},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358558045,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":607253},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358559573,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":13,"tts":608561},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358609909,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":59,"tdur":58,"tts":610964},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358612166,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":612806},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358613764,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":12,"tts":614061},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358616318,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":17,"tdur":15,"tts":616236},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358671902,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":28,"tdur":27,"tts":618461},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358674475,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":14,"tts":620620},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358676282,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":622098},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358677929,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":623537},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358737491,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":36,"tdur":34,"tts":625692},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358739145,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":626959},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358740693,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":12,"tts":628233},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358742154,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":629477},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358822851,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":29,"tdur":27,"tts":632368},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358824525,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":633671},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358826582,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":635441},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358827982,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":636610},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358903414,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":19,"tdur":19,"tts":638234},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358905015,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":639447},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358906400,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":640581},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358907735,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":641719},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358973794,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":36,"tdur":34,"tts":644895},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358975629,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":646337},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358977247,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":647635},{"cat":"gpu","pid":25863,"tid":25913,"ts":531358978769,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":648888},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359107759,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":33,"tdur":31,"tts":651356},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359111101,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":28,"tdur":26,"tts":654069},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359114311,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":656794},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359117181,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":659155},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359188850,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":28,"tdur":26,"tts":661682},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359193360,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":665694},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359196623,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":25,"tts":668453},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359199757,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":28,"tdur":26,"tts":671165},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359254350,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":27,"tts":672740},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359256070,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":674032},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359257523,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":675239},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359258934,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":676454},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359339144,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":678727},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359340873,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":680075},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359342333,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":681228},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359343715,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":682364},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359405091,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":61,"tdur":60,"tts":684432},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359408456,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":25,"tts":687233},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359412345,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":690631},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359415313,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":25,"tdur":25,"tts":693109},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359472824,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":696435},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359474463,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":697679},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359475858,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":698901},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359477353,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":700116},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359554728,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":701509},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359556256,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":702797},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359557622,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":703997},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359558921,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":10,"tts":705182},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359622513,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":707512},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359625838,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":710278},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359629067,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":713004},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359632150,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":715734},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359671969,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":717191},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359676048,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":25,"tdur":24,"tts":720696},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359679192,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":25,"tts":723325},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359681508,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":725435},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359753850,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":24,"tts":727951},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359756039,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":16,"tdur":15,"tts":729904},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359758106,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":731725},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359760046,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":733528},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359833873,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":36,"tdur":34,"tts":736508},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359836678,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":738677},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359838567,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":740105},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359840372,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":741565},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359904543,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":743547},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359906229,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":744868},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359907697,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":12,"tts":746072},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359909153,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":747282},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359971798,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":38,"tdur":36,"tts":749659},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359975153,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":752399},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359979399,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":25,"tts":756105},{"cat":"gpu","pid":25863,"tid":25913,"ts":531359982428,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":758799},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360064242,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":17,"tdur":17,"tts":760719},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360065950,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":762091},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360067777,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":10,"tts":763462},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360068970,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":10,"tdur":10,"tts":764522},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360070079,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":10,"tdur":9,"tts":765520},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360154085,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":766834},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360155705,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":768090},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360157434,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":14,"tts":769553},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360159112,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":770964},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360222844,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":773442},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360226960,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":25,"tts":777007},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360230945,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":780455},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360234074,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":27,"tts":783113},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360291661,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":33,"tdur":28,"tts":787635},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360293453,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":789018},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360294988,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":790273},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360296435,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":11,"tts":791553},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360354708,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":792846},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360356260,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":794161},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360358003,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":795629},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360359691,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":797077},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360422417,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":26,"tts":799171},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360424849,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":12,"tts":801170},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360426438,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":802501},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360427937,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":803778},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360489079,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":14,"tdur":13,"tts":806004},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360491044,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":807634},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360492727,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":12,"tts":808992},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360494255,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":18,"tdur":18,"tts":810316},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360555644,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":29,"tdur":28,"tts":812531},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360558821,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":815218},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360562003,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":817951},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360565170,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":820588},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360623088,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":12,"tts":822799},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360624641,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":824030},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360626044,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":11,"tts":825253},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360627367,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":826388},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360690421,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":829628},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360693676,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":832394},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360696992,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":835199},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360700117,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":12,"tts":837810},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360773512,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":840241},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360776838,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":28,"tdur":26,"tts":843015},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360780118,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":845767},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360783252,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":848449},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360840060,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":12,"tdur":12,"tts":851059},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360841558,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":10,"tdur":10,"tts":852201},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360842909,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":853346},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360844299,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":11,"tdur":10,"tts":854479},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360904932,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":856610},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360908197,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":859356},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360911417,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":26,"tts":862088},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360915813,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":865984},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360972661,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":26,"tts":867850},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360975813,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":27,"tdur":25,"tts":870506},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360978942,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":26,"tdur":25,"tts":873078},{"cat":"gpu","pid":25863,"tid":25913,"ts":531360981344,"ph":"X","name":"GLES2::GenMailboxCHROMIUM","args":{},"dur":13,"tdur":13,"tts":874976},{"cat":"__metadata","pid":25863,"tid":0,"ts":0,"ph":"M","name":"num_cpus","args":{"number":32}},{"cat":"__metadata","pid":25863,"tid":25865,"ts":0,"ph":"M","name":"thread_name","args":{"name":"handle-watcher-thread"}},{"cat":"__metadata","pid":25863,"tid":25913,"ts":0,"ph":"M","name":"thread_name","args":{"name":"app_thread/25913"}},{"cat":"toplevel","pid":25863,"tid":25863,"ts":531361002103,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"tdur":0,"tts":10390},{"cat":"__metadata","pid":25863,"tid":25863,"ts":0,"ph":"M","name":"overhead","args":{"average_overhead":0.032}},{"cat":"sky","pid":25863,"tid":25913,"ts":531358198686,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1402,"tdur":1223,"tts":567190},{"cat":"blink","pid":25863,"tid":25913,"ts":531358198720,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":127,"tdur":126,"tts":567218},{"cat":"blink","pid":25863,"tid":25913,"ts":531358198724,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":567222},{"cat":"blink","pid":25863,"tid":25913,"ts":531358198729,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":44,"tdur":44,"tts":567227},{"cat":"blink","pid":25863,"tid":25913,"ts":531358198735,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":38,"tdur":36,"tts":567234},{"cat":"v8","pid":25863,"tid":25913,"ts":531358198755,"ph":"X","name":"v8.callFunction","args":{},"dur":14,"tdur":14,"tts":567253},{"cat":"v8","pid":25863,"tid":25913,"ts":531358198757,"ph":"B","name":"V8.Execute","args":{},"tts":567255},{"cat":"v8","pid":25863,"tid":25913,"ts":531358198767,"ph":"E","name":"V8.Execute","args":{},"tts":567265},{"cat":"v8","pid":25863,"tid":25913,"ts":531358198775,"ph":"X","name":"v8.callFunction","args":{},"dur":69,"tdur":68,"tts":567274},{"cat":"v8","pid":25863,"tid":25913,"ts":531358198777,"ph":"B","name":"V8.Execute","args":{},"tts":567275},{"cat":"blink","pid":25863,"tid":25913,"ts":531358198781,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":12,"tdur":12,"tts":567279},{"cat":"v8","pid":25863,"tid":25913,"ts":531358198841,"ph":"E","name":"V8.Execute","args":{},"tts":567340},{"cat":"blink","pid":25863,"tid":25913,"ts":531358198847,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":45,"tdur":45,"tts":567345},{"cat":"blink","pid":25863,"tid":25913,"ts":531358198849,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":567347},{"cat":"blink","pid":25863,"tid":25913,"ts":531358198850,"ph":"X","name":"Document::updateStyle","args":{},"dur":26,"tdur":25,"tts":567349},{"cat":"blink","pid":25863,"tid":25913,"ts":531358198876,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":567375},{"cat":"blink","pid":25863,"tid":25913,"ts":531358198887,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":5,"tts":567385},{"cat":"sky","pid":25863,"tid":25913,"ts":531358198893,"ph":"X","name":"Layer::Display","args":{},"dur":868,"tdur":866,"tts":567392},{"cat":"sky","pid":25863,"tid":25913,"ts":531358199762,"ph":"X","name":"LayerHost::Upload","args":{},"dur":325,"tdur":152,"tts":568260},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358200107,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":97,"tdur":97,"tts":568432},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200129,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":70,"tdur":69,"tts":568455},{"cat":"v8","pid":25863,"tid":25913,"ts":531358200135,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":62,"tdur":61,"tts":568461},{"cat":"v8","pid":25863,"tid":25913,"ts":531358200141,"ph":"X","name":"v8.callFunction","args":{},"dur":55,"tdur":54,"tts":568467},{"cat":"v8","pid":25863,"tid":25913,"ts":531358200145,"ph":"B","name":"V8.Execute","args":{},"tts":568470},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200166,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":27,"tdur":26,"tts":568492},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200189,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":568514},{"cat":"v8","pid":25863,"tid":25913,"ts":531358200194,"ph":"E","name":"V8.Execute","args":{},"tts":568519},{"cat":"sky","pid":25863,"tid":25913,"ts":531358200677,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1236,"tdur":1157,"tts":568731},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200681,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":109,"tdur":108,"tts":568735},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200685,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":568738},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200688,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":38,"tdur":37,"tts":568742},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200696,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":30,"tdur":29,"tts":568750},{"cat":"v8","pid":25863,"tid":25913,"ts":531358200711,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":568764},{"cat":"v8","pid":25863,"tid":25913,"ts":531358200713,"ph":"B","name":"V8.Execute","args":{},"tts":568766},{"cat":"v8","pid":25863,"tid":25913,"ts":531358200720,"ph":"E","name":"V8.Execute","args":{},"tts":568774},{"cat":"v8","pid":25863,"tid":25913,"ts":531358200729,"ph":"X","name":"v8.callFunction","args":{},"dur":59,"tdur":59,"tts":568782},{"cat":"v8","pid":25863,"tid":25913,"ts":531358200731,"ph":"B","name":"V8.Execute","args":{},"tts":568784},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200735,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":10,"tts":568788},{"cat":"v8","pid":25863,"tid":25913,"ts":531358200784,"ph":"E","name":"V8.Execute","args":{},"tts":568838},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200790,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":33,"tdur":32,"tts":568844},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200793,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":568846},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200794,"ph":"X","name":"Document::updateStyle","args":{},"dur":20,"tdur":19,"tts":568848},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200814,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":568868},{"cat":"blink","pid":25863,"tid":25913,"ts":531358200819,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":568872},{"cat":"sky","pid":25863,"tid":25913,"ts":531358200824,"ph":"X","name":"Layer::Display","args":{},"dur":908,"tdur":907,"tts":568878},{"cat":"sky","pid":25863,"tid":25913,"ts":531358201733,"ph":"X","name":"LayerHost::Upload","args":{},"dur":179,"tdur":99,"tts":569787},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358201926,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":43,"tdur":43,"tts":569901},{"cat":"blink","pid":25863,"tid":25913,"ts":531358201932,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":33,"tts":569906},{"cat":"v8","pid":25863,"tid":25913,"ts":531358201934,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":29,"tdur":28,"tts":569909},{"cat":"v8","pid":25863,"tid":25913,"ts":531358201937,"ph":"X","name":"v8.callFunction","args":{},"dur":25,"tdur":24,"tts":569912},{"cat":"v8","pid":25863,"tid":25913,"ts":531358201939,"ph":"B","name":"V8.Execute","args":{},"tts":569914},{"cat":"blink","pid":25863,"tid":25913,"ts":531358201948,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":11,"tdur":10,"tts":569923},{"cat":"blink","pid":25863,"tid":25913,"ts":531358201955,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":569930},{"cat":"v8","pid":25863,"tid":25913,"ts":531358201960,"ph":"E","name":"V8.Execute","args":{},"tts":569935},{"cat":"sky","pid":25863,"tid":25913,"ts":531358202363,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1212,"tdur":1154,"tts":570136},{"cat":"blink","pid":25863,"tid":25913,"ts":531358202368,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":122,"tdur":122,"tts":570140},{"cat":"blink","pid":25863,"tid":25913,"ts":531358202371,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":570144},{"cat":"blink","pid":25863,"tid":25913,"ts":531358202375,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":46,"tdur":46,"tts":570147},{"cat":"blink","pid":25863,"tid":25913,"ts":531358202391,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":30,"tdur":29,"tts":570164},{"cat":"v8","pid":25863,"tid":25913,"ts":531358202406,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":570178},{"cat":"v8","pid":25863,"tid":25913,"ts":531358202408,"ph":"B","name":"V8.Execute","args":{},"tts":570180},{"cat":"v8","pid":25863,"tid":25913,"ts":531358202415,"ph":"E","name":"V8.Execute","args":{},"tts":570188},{"cat":"v8","pid":25863,"tid":25913,"ts":531358202424,"ph":"X","name":"v8.callFunction","args":{},"dur":63,"tdur":64,"tts":570196},{"cat":"v8","pid":25863,"tid":25913,"ts":531358202425,"ph":"B","name":"V8.Execute","args":{},"tts":570198},{"cat":"blink","pid":25863,"tid":25913,"ts":531358202430,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":15,"tdur":15,"tts":570202},{"cat":"v8","pid":25863,"tid":25913,"ts":531358202484,"ph":"E","name":"V8.Execute","args":{},"tts":570257},{"cat":"blink","pid":25863,"tid":25913,"ts":531358202491,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":33,"tdur":33,"tts":570263},{"cat":"blink","pid":25863,"tid":25913,"ts":531358202493,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":570265},{"cat":"blink","pid":25863,"tid":25913,"ts":531358202494,"ph":"X","name":"Document::updateStyle","args":{},"dur":20,"tdur":19,"tts":570267},{"cat":"blink","pid":25863,"tid":25913,"ts":531358202515,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":570287},{"cat":"blink","pid":25863,"tid":25913,"ts":531358202519,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":570292},{"cat":"sky","pid":25863,"tid":25913,"ts":531358202524,"ph":"X","name":"Layer::Display","args":{},"dur":915,"tdur":913,"tts":570297},{"cat":"sky","pid":25863,"tid":25913,"ts":531358203440,"ph":"X","name":"LayerHost::Upload","args":{},"dur":134,"tdur":76,"tts":571213},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358203587,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":41,"tdur":40,"tts":571303},{"cat":"blink","pid":25863,"tid":25913,"ts":531358203592,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":31,"tdur":31,"tts":571307},{"cat":"v8","pid":25863,"tid":25913,"ts":531358203595,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":27,"tts":571310},{"cat":"v8","pid":25863,"tid":25913,"ts":531358203598,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":23,"tts":571313},{"cat":"v8","pid":25863,"tid":25913,"ts":531358203599,"ph":"B","name":"V8.Execute","args":{},"tts":571315},{"cat":"blink","pid":25863,"tid":25913,"ts":531358203608,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":571323},{"cat":"blink","pid":25863,"tid":25913,"ts":531358203615,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":571330},{"cat":"v8","pid":25863,"tid":25913,"ts":531358203619,"ph":"E","name":"V8.Execute","args":{},"tts":571334},{"cat":"sky","pid":25863,"tid":25913,"ts":531358203908,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1160,"tdur":1088,"tts":571458},{"cat":"blink","pid":25863,"tid":25913,"ts":531358203911,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":125,"tdur":111,"tts":571460},{"cat":"blink","pid":25863,"tid":25913,"ts":531358203913,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":571463},{"cat":"blink","pid":25863,"tid":25913,"ts":531358203916,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":32,"tdur":31,"tts":571466},{"cat":"blink","pid":25863,"tid":25913,"ts":531358203923,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":24,"tts":571473},{"cat":"v8","pid":25863,"tid":25913,"ts":531358203934,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":571484},{"cat":"v8","pid":25863,"tid":25913,"ts":531358203936,"ph":"B","name":"V8.Execute","args":{},"tts":571486},{"cat":"v8","pid":25863,"tid":25913,"ts":531358203943,"ph":"E","name":"V8.Execute","args":{},"tts":571492},{"cat":"v8","pid":25863,"tid":25913,"ts":531358203950,"ph":"X","name":"v8.callFunction","args":{},"dur":84,"tdur":69,"tts":571500},{"cat":"v8","pid":25863,"tid":25913,"ts":531358203952,"ph":"B","name":"V8.Execute","args":{},"tts":571502},{"cat":"blink","pid":25863,"tid":25913,"ts":531358203956,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":571506},{"cat":"v8","pid":25863,"tid":25913,"ts":531358204030,"ph":"E","name":"V8.Execute","args":{},"tts":571566},{"cat":"blink","pid":25863,"tid":25913,"ts":531358204037,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":30,"tdur":31,"tts":571572},{"cat":"blink","pid":25863,"tid":25913,"ts":531358204039,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":571575},{"cat":"blink","pid":25863,"tid":25913,"ts":531358204040,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":18,"tts":571576},{"cat":"blink","pid":25863,"tid":25913,"ts":531358204059,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":571595},{"cat":"blink","pid":25863,"tid":25913,"ts":531358204063,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":571599},{"cat":"sky","pid":25863,"tid":25913,"ts":531358204068,"ph":"X","name":"Layer::Display","args":{},"dur":882,"tdur":880,"tts":571604},{"cat":"sky","pid":25863,"tid":25913,"ts":531358204951,"ph":"X","name":"LayerHost::Upload","args":{},"dur":116,"tdur":58,"tts":572487},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358206073,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":54,"tdur":54,"tts":572749},{"cat":"blink","pid":25863,"tid":25913,"ts":531358206086,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":36,"tdur":35,"tts":572762},{"cat":"v8","pid":25863,"tid":25913,"ts":531358206089,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":32,"tdur":31,"tts":572765},{"cat":"v8","pid":25863,"tid":25913,"ts":531358206092,"ph":"X","name":"v8.callFunction","args":{},"dur":27,"tdur":27,"tts":572768},{"cat":"v8","pid":25863,"tid":25913,"ts":531358206095,"ph":"B","name":"V8.Execute","args":{},"tts":572770},{"cat":"blink","pid":25863,"tid":25913,"ts":531358206104,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":12,"tdur":12,"tts":572780},{"cat":"blink","pid":25863,"tid":25913,"ts":531358206112,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":3,"tts":572788},{"cat":"v8","pid":25863,"tid":25913,"ts":531358206117,"ph":"E","name":"V8.Execute","args":{},"tts":572793},{"cat":"sky","pid":25863,"tid":25913,"ts":531358285846,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":4979,"tdur":4787,"tts":573135},{"cat":"blink","pid":25863,"tid":25913,"ts":531358285894,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":1281,"tdur":1279,"tts":573178},{"cat":"blink","pid":25863,"tid":25913,"ts":531358285942,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":6,"tdur":5,"tts":573225},{"cat":"blink","pid":25863,"tid":25913,"ts":531358285976,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":402,"tdur":401,"tts":573260},{"cat":"blink","pid":25863,"tid":25913,"ts":531358286028,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":349,"tdur":349,"tts":573311},{"cat":"v8","pid":25863,"tid":25913,"ts":531358286174,"ph":"X","name":"v8.callFunction","args":{},"dur":193,"tdur":192,"tts":573457},{"cat":"v8","pid":25863,"tid":25913,"ts":531358286180,"ph":"B","name":"V8.Execute","args":{},"tts":573464},{"cat":"v8","pid":25863,"tid":25913,"ts":531358286361,"ph":"E","name":"V8.Execute","args":{},"tts":573644},{"cat":"v8","pid":25863,"tid":25913,"ts":531358286403,"ph":"X","name":"v8.callFunction","args":{},"dur":766,"tdur":766,"tts":573686},{"cat":"v8","pid":25863,"tid":25913,"ts":531358286407,"ph":"B","name":"V8.Execute","args":{},"tts":573690},{"cat":"blink","pid":25863,"tid":25913,"ts":531358286435,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":108,"tdur":107,"tts":573718},{"cat":"v8","pid":25863,"tid":25913,"ts":531358287162,"ph":"E","name":"V8.Execute","args":{},"tts":574446},{"cat":"blink","pid":25863,"tid":25913,"ts":531358287176,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":173,"tdur":172,"tts":574459},{"cat":"blink","pid":25863,"tid":25913,"ts":531358287181,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":574464},{"cat":"blink","pid":25863,"tid":25913,"ts":531358287184,"ph":"X","name":"Document::updateStyle","args":{},"dur":141,"tdur":139,"tts":574467},{"cat":"blink","pid":25863,"tid":25913,"ts":531358287326,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":574609},{"cat":"blink","pid":25863,"tid":25913,"ts":531358287337,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":11,"tdur":10,"tts":574620},{"cat":"sky","pid":25863,"tid":25913,"ts":531358287355,"ph":"X","name":"Layer::Display","args":{},"dur":3072,"tdur":3045,"tts":574638},{"cat":"sky","pid":25863,"tid":25913,"ts":531358290428,"ph":"X","name":"LayerHost::Upload","args":{},"dur":397,"tdur":235,"tts":577685},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358290871,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":82,"tdur":81,"tts":577968},{"cat":"blink","pid":25863,"tid":25913,"ts":531358290878,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":69,"tdur":69,"tts":577974},{"cat":"v8","pid":25863,"tid":25913,"ts":531358290899,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":47,"tdur":46,"tts":577996},{"cat":"v8","pid":25863,"tid":25913,"ts":531358290902,"ph":"X","name":"v8.callFunction","args":{},"dur":43,"tdur":43,"tts":577998},{"cat":"v8","pid":25863,"tid":25913,"ts":531358290903,"ph":"B","name":"V8.Execute","args":{},"tts":578000},{"cat":"blink","pid":25863,"tid":25913,"ts":531358290934,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":7,"tts":578031},{"cat":"blink","pid":25863,"tid":25913,"ts":531358290939,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":578036},{"cat":"v8","pid":25863,"tid":25913,"ts":531358290943,"ph":"E","name":"V8.Execute","args":{},"tts":578040},{"cat":"sky","pid":25863,"tid":25913,"ts":531358291321,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1047,"tdur":989,"tts":578206},{"cat":"blink","pid":25863,"tid":25913,"ts":531358291325,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":101,"tdur":100,"tts":578209},{"cat":"blink","pid":25863,"tid":25913,"ts":531358291328,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":578211},{"cat":"blink","pid":25863,"tid":25913,"ts":531358291331,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":41,"tdur":41,"tts":578214},{"cat":"blink","pid":25863,"tid":25913,"ts":531358291346,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":578230},{"cat":"v8","pid":25863,"tid":25913,"ts":531358291359,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":9,"tts":578243},{"cat":"v8","pid":25863,"tid":25913,"ts":531358291360,"ph":"B","name":"V8.Execute","args":{},"tts":578244},{"cat":"v8","pid":25863,"tid":25913,"ts":531358291367,"ph":"E","name":"V8.Execute","args":{},"tts":578251},{"cat":"v8","pid":25863,"tid":25913,"ts":531358291374,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":49,"tts":578258},{"cat":"v8","pid":25863,"tid":25913,"ts":531358291375,"ph":"B","name":"V8.Execute","args":{},"tts":578259},{"cat":"blink","pid":25863,"tid":25913,"ts":531358291379,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":578263},{"cat":"v8","pid":25863,"tid":25913,"ts":531358291421,"ph":"E","name":"V8.Execute","args":{},"tts":578305},{"cat":"blink","pid":25863,"tid":25913,"ts":531358291426,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":27,"tts":578310},{"cat":"blink","pid":25863,"tid":25913,"ts":531358291428,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":578312},{"cat":"blink","pid":25863,"tid":25913,"ts":531358291429,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":578313},{"cat":"blink","pid":25863,"tid":25913,"ts":531358291446,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":578330},{"cat":"blink","pid":25863,"tid":25913,"ts":531358291450,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":578334},{"cat":"sky","pid":25863,"tid":25913,"ts":531358291454,"ph":"X","name":"Layer::Display","args":{},"dur":776,"tdur":769,"tts":578338},{"cat":"sky","pid":25863,"tid":25913,"ts":531358292230,"ph":"X","name":"LayerHost::Upload","args":{},"dur":137,"tdur":85,"tts":579109},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358292445,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":36,"tdur":36,"tts":579250},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292450,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":26,"tts":579255},{"cat":"v8","pid":25863,"tid":25913,"ts":531358292452,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":24,"tdur":23,"tts":579257},{"cat":"v8","pid":25863,"tid":25913,"ts":531358292455,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":20,"tts":579259},{"cat":"v8","pid":25863,"tid":25913,"ts":531358292456,"ph":"B","name":"V8.Execute","args":{},"tts":579261},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292464,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":9,"tts":579268},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292469,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":579274},{"cat":"v8","pid":25863,"tid":25913,"ts":531358292473,"ph":"E","name":"V8.Execute","args":{},"tts":579278},{"cat":"sky","pid":25863,"tid":25913,"ts":531358292745,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1018,"tdur":983,"tts":579432},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292749,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":113,"tdur":113,"tts":579435},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292751,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":579438},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292754,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":30,"tts":579441},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292760,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":24,"tdur":24,"tts":579447},{"cat":"v8","pid":25863,"tid":25913,"ts":531358292772,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":9,"tts":579459},{"cat":"v8","pid":25863,"tid":25913,"ts":531358292774,"ph":"B","name":"V8.Execute","args":{},"tts":579460},{"cat":"v8","pid":25863,"tid":25913,"ts":531358292780,"ph":"E","name":"V8.Execute","args":{},"tts":579466},{"cat":"v8","pid":25863,"tid":25913,"ts":531358292787,"ph":"X","name":"v8.callFunction","args":{},"dur":73,"tdur":73,"tts":579473},{"cat":"v8","pid":25863,"tid":25913,"ts":531358292788,"ph":"B","name":"V8.Execute","args":{},"tts":579475},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292792,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":8,"tdur":9,"tts":579478},{"cat":"v8","pid":25863,"tid":25913,"ts":531358292857,"ph":"E","name":"V8.Execute","args":{},"tts":579544},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292862,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":27,"tts":579549},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292864,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":579551},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292865,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":579552},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292882,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":579569},{"cat":"blink","pid":25863,"tid":25913,"ts":531358292886,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":579573},{"cat":"sky","pid":25863,"tid":25913,"ts":531358292891,"ph":"X","name":"Layer::Display","args":{},"dur":754,"tdur":753,"tts":579577},{"cat":"sky","pid":25863,"tid":25913,"ts":531358293646,"ph":"X","name":"LayerHost::Upload","args":{},"dur":117,"tdur":82,"tts":580332},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358293913,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":37,"tdur":36,"tts":580493},{"cat":"blink","pid":25863,"tid":25913,"ts":531358293917,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":28,"tdur":28,"tts":580497},{"cat":"v8","pid":25863,"tid":25913,"ts":531358293920,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":24,"tdur":24,"tts":580500},{"cat":"v8","pid":25863,"tid":25913,"ts":531358293922,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":580502},{"cat":"v8","pid":25863,"tid":25913,"ts":531358293924,"ph":"B","name":"V8.Execute","args":{},"tts":580504},{"cat":"blink","pid":25863,"tid":25913,"ts":531358293932,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":580512},{"cat":"blink","pid":25863,"tid":25913,"ts":531358293938,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":580518},{"cat":"v8","pid":25863,"tid":25913,"ts":531358293942,"ph":"E","name":"V8.Execute","args":{},"tts":580521},{"cat":"sky","pid":25863,"tid":25913,"ts":531358294138,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1857,"tdur":1785,"tts":580612},{"cat":"blink","pid":25863,"tid":25913,"ts":531358294142,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":967,"tdur":966,"tts":580615},{"cat":"blink","pid":25863,"tid":25913,"ts":531358294145,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":580618},{"cat":"blink","pid":25863,"tid":25913,"ts":531358294148,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":51,"tdur":52,"tts":580620},{"cat":"blink","pid":25863,"tid":25913,"ts":531358294174,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":24,"tts":580647},{"cat":"v8","pid":25863,"tid":25913,"ts":531358294186,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":580659},{"cat":"v8","pid":25863,"tid":25913,"ts":531358294188,"ph":"B","name":"V8.Execute","args":{},"tts":580661},{"cat":"v8","pid":25863,"tid":25913,"ts":531358294194,"ph":"E","name":"V8.Execute","args":{},"tts":580667},{"cat":"v8","pid":25863,"tid":25913,"ts":531358294201,"ph":"X","name":"v8.callFunction","args":{},"dur":906,"tdur":905,"tts":580674},{"cat":"v8","pid":25863,"tid":25913,"ts":531358294202,"ph":"B","name":"V8.Execute","args":{},"tts":580675},{"cat":"blink","pid":25863,"tid":25913,"ts":531358294206,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":580679},{"cat":"v8","pid":25863,"tid":25913,"ts":531358294245,"ph":"B","name":"V8.ParseLazy","args":{},"tts":580718},{"cat":"v8","pid":25863,"tid":25913,"ts":531358294447,"ph":"E","name":"V8.ParseLazy","args":{},"tts":580920},{"cat":"v8","pid":25863,"tid":25913,"ts":531358294470,"ph":"B","name":"V8.RecompileSynchronous","args":{},"tts":580942},{"cat":"v8","pid":25863,"tid":25913,"ts":531358294472,"ph":"B","name":"V8.CompileFullCode","args":{},"tts":580945},{"cat":"v8","pid":25863,"tid":25913,"ts":531358294618,"ph":"E","name":"V8.CompileFullCode","args":{},"tts":581092},{"cat":"v8","pid":25863,"tid":25913,"ts":531358295076,"ph":"E","name":"V8.RecompileSynchronous","args":{},"tts":581550},{"cat":"v8","pid":25863,"tid":25913,"ts":531358295104,"ph":"E","name":"V8.Execute","args":{},"tts":581577},{"cat":"blink","pid":25863,"tid":25913,"ts":531358295109,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":28,"tts":581582},{"cat":"blink","pid":25863,"tid":25913,"ts":531358295111,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":581584},{"cat":"blink","pid":25863,"tid":25913,"ts":531358295112,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":581585},{"cat":"blink","pid":25863,"tid":25913,"ts":531358295129,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":581602},{"cat":"blink","pid":25863,"tid":25913,"ts":531358295133,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":581606},{"cat":"sky","pid":25863,"tid":25913,"ts":531358295138,"ph":"X","name":"Layer::Display","args":{},"dur":733,"tdur":732,"tts":581611},{"cat":"sky","pid":25863,"tid":25913,"ts":531358295872,"ph":"X","name":"LayerHost::Upload","args":{},"dur":123,"tdur":51,"tts":582345},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358297167,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":344,"tdur":344,"tts":582529},{"cat":"blink","pid":25863,"tid":25913,"ts":531358297171,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":335,"tdur":335,"tts":582533},{"cat":"v8","pid":25863,"tid":25913,"ts":531358297174,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":331,"tdur":330,"tts":582536},{"cat":"v8","pid":25863,"tid":25913,"ts":531358297176,"ph":"X","name":"v8.callFunction","args":{},"dur":327,"tdur":327,"tts":582538},{"cat":"v8","pid":25863,"tid":25913,"ts":531358297178,"ph":"B","name":"V8.Execute","args":{},"tts":582540},{"cat":"v8","pid":25863,"tid":25913,"ts":531358297183,"ph":"B","name":"V8.RecompileSynchronous","args":{},"tts":582545},{"cat":"v8","pid":25863,"tid":25913,"ts":531358297440,"ph":"E","name":"V8.RecompileSynchronous","args":{},"tts":582803},{"cat":"blink","pid":25863,"tid":25913,"ts":531358297492,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":582854},{"cat":"blink","pid":25863,"tid":25913,"ts":531358297498,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":582860},{"cat":"v8","pid":25863,"tid":25913,"ts":531358297502,"ph":"E","name":"V8.Execute","args":{},"tts":582864},{"cat":"sky","pid":25863,"tid":25913,"ts":531358354084,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2165,"tdur":1989,"tts":582965},{"cat":"blink","pid":25863,"tid":25913,"ts":531358354094,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":171,"tdur":171,"tts":582973},{"cat":"blink","pid":25863,"tid":25913,"ts":531358354100,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":2,"tts":582980},{"cat":"blink","pid":25863,"tid":25913,"ts":531358354107,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":76,"tdur":75,"tts":582987},{"cat":"blink","pid":25863,"tid":25913,"ts":531358354123,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":59,"tts":583002},{"cat":"v8","pid":25863,"tid":25913,"ts":531358354151,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":22,"tts":583031},{"cat":"v8","pid":25863,"tid":25913,"ts":531358354156,"ph":"B","name":"V8.Execute","args":{},"tts":583035},{"cat":"v8","pid":25863,"tid":25913,"ts":531358354170,"ph":"E","name":"V8.Execute","args":{},"tts":583050},{"cat":"v8","pid":25863,"tid":25913,"ts":531358354188,"ph":"X","name":"v8.callFunction","args":{},"dur":74,"tdur":74,"tts":583067},{"cat":"v8","pid":25863,"tid":25913,"ts":531358354191,"ph":"B","name":"V8.Execute","args":{},"tts":583070},{"cat":"blink","pid":25863,"tid":25913,"ts":531358354211,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":583090},{"cat":"v8","pid":25863,"tid":25913,"ts":531358354259,"ph":"E","name":"V8.Execute","args":{},"tts":583139},{"cat":"blink","pid":25863,"tid":25913,"ts":531358354265,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":66,"tts":583144},{"cat":"blink","pid":25863,"tid":25913,"ts":531358354267,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":583146},{"cat":"blink","pid":25863,"tid":25913,"ts":531358354269,"ph":"X","name":"Document::updateStyle","args":{},"dur":42,"tdur":41,"tts":583148},{"cat":"blink","pid":25863,"tid":25913,"ts":531358354312,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":583192},{"cat":"blink","pid":25863,"tid":25913,"ts":531358354322,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":583201},{"cat":"sky","pid":25863,"tid":25913,"ts":531358354333,"ph":"X","name":"Layer::Display","args":{},"dur":1600,"tdur":1598,"tts":583212},{"cat":"sky","pid":25863,"tid":25913,"ts":531358355935,"ph":"X","name":"LayerHost::Upload","args":{},"dur":313,"tdur":136,"tts":584815},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358356276,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":79,"tdur":77,"tts":584982},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356287,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":62,"tdur":62,"tts":584992},{"cat":"v8","pid":25863,"tid":25913,"ts":531358356293,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":55,"tdur":55,"tts":584998},{"cat":"v8","pid":25863,"tid":25913,"ts":531358356299,"ph":"X","name":"v8.callFunction","args":{},"dur":48,"tdur":48,"tts":585004},{"cat":"v8","pid":25863,"tid":25913,"ts":531358356302,"ph":"B","name":"V8.Execute","args":{},"tts":585008},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356333,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":11,"tdur":11,"tts":585038},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356340,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":585046},{"cat":"v8","pid":25863,"tid":25913,"ts":531358356345,"ph":"E","name":"V8.Execute","args":{},"tts":585050},{"cat":"sky","pid":25863,"tid":25913,"ts":531358356752,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1133,"tdur":1073,"tts":585244},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356757,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":104,"tdur":104,"tts":585248},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356760,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":585251},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356763,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":38,"tdur":38,"tts":585255},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356770,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":31,"tdur":30,"tts":585262},{"cat":"v8","pid":25863,"tid":25915,"ts":531358295202,"ph":"B","name":"V8.RecompileConcurrent","args":{},"tts":13642},{"cat":"v8","pid":25863,"tid":25915,"ts":531358297035,"ph":"E","name":"V8.RecompileConcurrent","args":{},"tts":15452},{"cat":"v8","pid":25863,"tid":25915,"ts":531360913097,"ph":"B","name":"V8.RecompileConcurrent","args":{},"tts":15515},{"cat":"v8","pid":25863,"tid":25915,"ts":531360913323,"ph":"E","name":"V8.RecompileConcurrent","args":{},"tts":15735},{"cat":"__metadata","pid":25863,"tid":0,"ts":0,"ph":"M","name":"num_cpus","args":{"number":32}},{"cat":"v8","pid":25863,"tid":25913,"ts":531358356784,"ph":"X","name":"v8.callFunction","args":{},"dur":13,"tdur":12,"tts":585276},{"cat":"v8","pid":25863,"tid":25913,"ts":531358356788,"ph":"B","name":"V8.Execute","args":{},"tts":585280},{"cat":"v8","pid":25863,"tid":25913,"ts":531358356795,"ph":"E","name":"V8.Execute","args":{},"tts":585287},{"cat":"v8","pid":25863,"tid":25913,"ts":531358356804,"ph":"X","name":"v8.callFunction","args":{},"dur":54,"tdur":55,"tts":585295},{"cat":"v8","pid":25863,"tid":25913,"ts":531358356805,"ph":"B","name":"V8.Execute","args":{},"tts":585297},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356809,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":585301},{"cat":"v8","pid":25863,"tid":25913,"ts":531358356855,"ph":"E","name":"V8.Execute","args":{},"tts":585347},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356861,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":31,"tts":585353},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356864,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":585355},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356865,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":18,"tts":585357},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356884,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":585376},{"cat":"blink","pid":25863,"tid":25913,"ts":531358356889,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":4,"tts":585380},{"cat":"sky","pid":25863,"tid":25913,"ts":531358356894,"ph":"X","name":"Layer::Display","args":{},"dur":838,"tdur":837,"tts":585385},{"cat":"sky","pid":25863,"tid":25913,"ts":531358357733,"ph":"X","name":"LayerHost::Upload","args":{},"dur":151,"tdur":92,"tts":586224},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358357897,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":42,"tdur":41,"tts":586330},{"cat":"blink","pid":25863,"tid":25913,"ts":531358357902,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":31,"tts":586335},{"cat":"v8","pid":25863,"tid":25913,"ts":531358357905,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":27,"tts":586338},{"cat":"v8","pid":25863,"tid":25913,"ts":531358357908,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":23,"tts":586341},{"cat":"v8","pid":25863,"tid":25913,"ts":531358357910,"ph":"B","name":"V8.Execute","args":{},"tts":586343},{"cat":"blink","pid":25863,"tid":25913,"ts":531358357918,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":586351},{"cat":"blink","pid":25863,"tid":25913,"ts":531358357925,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":586358},{"cat":"v8","pid":25863,"tid":25913,"ts":531358357929,"ph":"E","name":"V8.Execute","args":{},"tts":586362},{"cat":"sky","pid":25863,"tid":25913,"ts":531358358336,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1258,"tdur":1184,"tts":586558},{"cat":"blink","pid":25863,"tid":25913,"ts":531358358340,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":103,"tdur":102,"tts":586562},{"cat":"blink","pid":25863,"tid":25913,"ts":531358358343,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":586565},{"cat":"blink","pid":25863,"tid":25913,"ts":531358358347,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":36,"tdur":36,"tts":586568},{"cat":"blink","pid":25863,"tid":25913,"ts":531358358354,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":29,"tdur":28,"tts":586576},{"cat":"v8","pid":25863,"tid":25913,"ts":531358358368,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":586590},{"cat":"v8","pid":25863,"tid":25913,"ts":531358358370,"ph":"B","name":"V8.Execute","args":{},"tts":586592},{"cat":"v8","pid":25863,"tid":25913,"ts":531358358377,"ph":"E","name":"V8.Execute","args":{},"tts":586599},{"cat":"v8","pid":25863,"tid":25913,"ts":531358358385,"ph":"X","name":"v8.callFunction","args":{},"dur":55,"tdur":55,"tts":586607},{"cat":"v8","pid":25863,"tid":25913,"ts":531358358387,"ph":"B","name":"V8.Execute","args":{},"tts":586609},{"cat":"blink","pid":25863,"tid":25913,"ts":531358358391,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":586613},{"cat":"v8","pid":25863,"tid":25913,"ts":531358358437,"ph":"E","name":"V8.Execute","args":{},"tts":586659},{"cat":"blink","pid":25863,"tid":25913,"ts":531358358443,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":31,"tts":586665},{"cat":"blink","pid":25863,"tid":25913,"ts":531358358445,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":586667},{"cat":"blink","pid":25863,"tid":25913,"ts":531358358447,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":18,"tts":586669},{"cat":"blink","pid":25863,"tid":25913,"ts":531358358466,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":586688},{"cat":"blink","pid":25863,"tid":25913,"ts":531358358470,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":586692},{"cat":"sky","pid":25863,"tid":25913,"ts":531358358476,"ph":"X","name":"Layer::Display","args":{},"dur":949,"tdur":949,"tts":586697},{"cat":"sky","pid":25863,"tid":25913,"ts":531358359426,"ph":"X","name":"LayerHost::Upload","args":{},"dur":168,"tdur":92,"tts":587648},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358359607,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":41,"tdur":40,"tts":587755},{"cat":"blink","pid":25863,"tid":25913,"ts":531358359612,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":31,"tdur":31,"tts":587760},{"cat":"v8","pid":25863,"tid":25913,"ts":531358359615,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":26,"tts":587763},{"cat":"v8","pid":25863,"tid":25913,"ts":531358359618,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":23,"tts":587765},{"cat":"v8","pid":25863,"tid":25913,"ts":531358359619,"ph":"B","name":"V8.Execute","args":{},"tts":587767},{"cat":"blink","pid":25863,"tid":25913,"ts":531358359628,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":587776},{"cat":"blink","pid":25863,"tid":25913,"ts":531358359634,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":587782},{"cat":"v8","pid":25863,"tid":25913,"ts":531358359639,"ph":"E","name":"V8.Execute","args":{},"tts":587787},{"cat":"sky","pid":25863,"tid":25913,"ts":531358359978,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1242,"tdur":1192,"tts":587981},{"cat":"blink","pid":25863,"tid":25913,"ts":531358359983,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":136,"tdur":127,"tts":587985},{"cat":"blink","pid":25863,"tid":25913,"ts":531358359986,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":587988},{"cat":"blink","pid":25863,"tid":25913,"ts":531358359989,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":69,"tdur":60,"tts":587991},{"cat":"blink","pid":25863,"tid":25913,"ts":531358359996,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":62,"tdur":51,"tts":587999},{"cat":"v8","pid":25863,"tid":25913,"ts":531358360027,"ph":"X","name":"v8.callFunction","args":{},"dur":27,"tdur":26,"tts":588021},{"cat":"v8","pid":25863,"tid":25913,"ts":531358360030,"ph":"B","name":"V8.Execute","args":{},"tts":588023},{"cat":"v8","pid":25863,"tid":25913,"ts":531358360051,"ph":"E","name":"V8.Execute","args":{},"tts":588045},{"cat":"v8","pid":25863,"tid":25913,"ts":531358360061,"ph":"X","name":"v8.callFunction","args":{},"dur":56,"tdur":56,"tts":588054},{"cat":"v8","pid":25863,"tid":25913,"ts":531358360062,"ph":"B","name":"V8.Execute","args":{},"tts":588056},{"cat":"blink","pid":25863,"tid":25913,"ts":531358360066,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":9,"tts":588060},{"cat":"v8","pid":25863,"tid":25913,"ts":531358360114,"ph":"E","name":"V8.Execute","args":{},"tts":588108},{"cat":"blink","pid":25863,"tid":25913,"ts":531358360120,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":34,"tdur":34,"tts":588113},{"cat":"blink","pid":25863,"tid":25913,"ts":531358360122,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":588115},{"cat":"blink","pid":25863,"tid":25913,"ts":531358360123,"ph":"X","name":"Document::updateStyle","args":{},"dur":20,"tdur":18,"tts":588117},{"cat":"blink","pid":25863,"tid":25913,"ts":531358360143,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":588136},{"cat":"blink","pid":25863,"tid":25913,"ts":531358360149,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":588143},{"cat":"sky","pid":25863,"tid":25913,"ts":531358360155,"ph":"X","name":"Layer::Display","args":{},"dur":963,"tdur":962,"tts":588148},{"cat":"sky","pid":25863,"tid":25913,"ts":531358361119,"ph":"X","name":"LayerHost::Upload","args":{},"dur":100,"tdur":59,"tts":589113},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358361242,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":40,"tdur":39,"tts":589196},{"cat":"blink","pid":25863,"tid":25913,"ts":531358361247,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":30,"tdur":30,"tts":589200},{"cat":"v8","pid":25863,"tid":25913,"ts":531358361249,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":26,"tdur":25,"tts":589203},{"cat":"v8","pid":25863,"tid":25913,"ts":531358361252,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":22,"tts":589205},{"cat":"v8","pid":25863,"tid":25913,"ts":531358361254,"ph":"B","name":"V8.Execute","args":{},"tts":589207},{"cat":"blink","pid":25863,"tid":25913,"ts":531358361262,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":10,"tts":589215},{"cat":"blink","pid":25863,"tid":25913,"ts":531358361268,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":589222},{"cat":"v8","pid":25863,"tid":25913,"ts":531358361273,"ph":"E","name":"V8.Execute","args":{},"tts":589226},{"cat":"sky","pid":25863,"tid":25913,"ts":531358419666,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2286,"tdur":2111,"tts":589451},{"cat":"blink","pid":25863,"tid":25913,"ts":531358419673,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":140,"tdur":139,"tts":589457},{"cat":"blink","pid":25863,"tid":25913,"ts":531358419677,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":2,"tts":589461},{"cat":"blink","pid":25863,"tid":25913,"ts":531358419682,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":50,"tdur":49,"tts":589466},{"cat":"blink","pid":25863,"tid":25913,"ts":531358419692,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":40,"tdur":39,"tts":589476},{"cat":"v8","pid":25863,"tid":25913,"ts":531358419711,"ph":"X","name":"v8.callFunction","args":{},"dur":16,"tdur":15,"tts":589495},{"cat":"v8","pid":25863,"tid":25913,"ts":531358419714,"ph":"B","name":"V8.Execute","args":{},"tts":589498},{"cat":"v8","pid":25863,"tid":25913,"ts":531358419724,"ph":"E","name":"V8.Execute","args":{},"tts":589508},{"cat":"v8","pid":25863,"tid":25913,"ts":531358419735,"ph":"X","name":"v8.callFunction","args":{},"dur":76,"tdur":75,"tts":589519},{"cat":"v8","pid":25863,"tid":25913,"ts":531358419738,"ph":"B","name":"V8.Execute","args":{},"tts":589521},{"cat":"blink","pid":25863,"tid":25913,"ts":531358419743,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":26,"tdur":26,"tts":589527},{"cat":"v8","pid":25863,"tid":25913,"ts":531358419808,"ph":"E","name":"V8.Execute","args":{},"tts":589592},{"cat":"blink","pid":25863,"tid":25913,"ts":531358419814,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":55,"tdur":56,"tts":589597},{"cat":"blink","pid":25863,"tid":25913,"ts":531358419816,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":589600},{"cat":"blink","pid":25863,"tid":25913,"ts":531358419829,"ph":"X","name":"Document::updateStyle","args":{},"dur":27,"tdur":26,"tts":589613},{"cat":"blink","pid":25863,"tid":25913,"ts":531358419857,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":589641},{"cat":"blink","pid":25863,"tid":25913,"ts":531358419863,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":5,"tts":589647},{"cat":"sky","pid":25863,"tid":25913,"ts":531358419871,"ph":"X","name":"Layer::Display","args":{},"dur":1747,"tdur":1731,"tts":589654},{"cat":"sky","pid":25863,"tid":25913,"ts":531358421620,"ph":"X","name":"LayerHost::Upload","args":{},"dur":330,"tdur":169,"tts":591390},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358421978,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":62,"tdur":61,"tts":591589},{"cat":"blink","pid":25863,"tid":25913,"ts":531358421989,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":45,"tdur":33,"tts":591611},{"cat":"v8","pid":25863,"tid":25913,"ts":531358422004,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":29,"tdur":28,"tts":591615},{"cat":"v8","pid":25863,"tid":25913,"ts":531358422007,"ph":"X","name":"v8.callFunction","args":{},"dur":25,"tdur":24,"tts":591618},{"cat":"v8","pid":25863,"tid":25913,"ts":531358422009,"ph":"B","name":"V8.Execute","args":{},"tts":591619},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422019,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":591629},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422025,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":2,"tts":591636},{"cat":"v8","pid":25863,"tid":25913,"ts":531358422030,"ph":"E","name":"V8.Execute","args":{},"tts":591640},{"cat":"sky","pid":25863,"tid":25913,"ts":531358422480,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1227,"tdur":1153,"tts":591860},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422484,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":107,"tdur":107,"tts":591864},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422487,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":591868},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422491,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":38,"tdur":38,"tts":591871},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422499,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":29,"tdur":29,"tts":591879},{"cat":"v8","pid":25863,"tid":25913,"ts":531358422513,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":12,"tts":591893},{"cat":"v8","pid":25863,"tid":25913,"ts":531358422515,"ph":"B","name":"V8.Execute","args":{},"tts":591896},{"cat":"v8","pid":25863,"tid":25913,"ts":531358422523,"ph":"E","name":"V8.Execute","args":{},"tts":591903},{"cat":"v8","pid":25863,"tid":25913,"ts":531358422531,"ph":"X","name":"v8.callFunction","args":{},"dur":58,"tdur":58,"tts":591911},{"cat":"v8","pid":25863,"tid":25913,"ts":531358422533,"ph":"B","name":"V8.Execute","args":{},"tts":591913},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422537,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":591917},{"cat":"v8","pid":25863,"tid":25913,"ts":531358422586,"ph":"E","name":"V8.Execute","args":{},"tts":591966},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422592,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":33,"tdur":33,"tts":591972},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422594,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":591974},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422596,"ph":"X","name":"Document::updateStyle","args":{},"dur":20,"tdur":19,"tts":591976},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422616,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":591996},{"cat":"blink","pid":25863,"tid":25913,"ts":531358422620,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":3,"tts":592001},{"cat":"sky","pid":25863,"tid":25913,"ts":531358422626,"ph":"X","name":"Layer::Display","args":{},"dur":909,"tdur":908,"tts":592006},{"cat":"sky","pid":25863,"tid":25913,"ts":531358423536,"ph":"X","name":"LayerHost::Upload","args":{},"dur":170,"tdur":95,"tts":592916},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358423720,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":57,"tdur":57,"tts":593026},{"cat":"blink","pid":25863,"tid":25913,"ts":531358423725,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":46,"tdur":46,"tts":593031},{"cat":"v8","pid":25863,"tid":25913,"ts":531358423728,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":42,"tdur":42,"tts":593034},{"cat":"v8","pid":25863,"tid":25913,"ts":531358423731,"ph":"X","name":"v8.callFunction","args":{},"dur":38,"tdur":38,"tts":593037},{"cat":"v8","pid":25863,"tid":25913,"ts":531358423733,"ph":"B","name":"V8.Execute","args":{},"tts":593039},{"cat":"blink","pid":25863,"tid":25913,"ts":531358423742,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":23,"tdur":23,"tts":593048},{"cat":"blink","pid":25863,"tid":25913,"ts":531358423760,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":5,"tdur":5,"tts":593066},{"cat":"v8","pid":25863,"tid":25913,"ts":531358423767,"ph":"E","name":"V8.Execute","args":{},"tts":593073},{"cat":"sky","pid":25863,"tid":25913,"ts":531358424183,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2574,"tdur":2479,"tts":593290},{"cat":"blink","pid":25863,"tid":25913,"ts":531358424187,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":773,"tdur":772,"tts":593294},{"cat":"blink","pid":25863,"tid":25913,"ts":531358424191,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":593297},{"cat":"blink","pid":25863,"tid":25913,"ts":531358424194,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":38,"tdur":37,"tts":593301},{"cat":"blink","pid":25863,"tid":25913,"ts":531358424202,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":29,"tdur":28,"tts":593309},{"cat":"v8","pid":25863,"tid":25913,"ts":531358424216,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":11,"tts":593323},{"cat":"v8","pid":25863,"tid":25913,"ts":531358424218,"ph":"B","name":"V8.Execute","args":{},"tts":593325},{"cat":"v8","pid":25863,"tid":25913,"ts":531358424226,"ph":"E","name":"V8.Execute","args":{},"tts":593332},{"cat":"v8","pid":25863,"tid":25913,"ts":531358424234,"ph":"X","name":"v8.callFunction","args":{},"dur":722,"tdur":720,"tts":593341},{"cat":"v8","pid":25863,"tid":25913,"ts":531358424236,"ph":"B","name":"V8.Execute","args":{},"tts":593342},{"cat":"blink","pid":25863,"tid":25913,"ts":531358424240,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":593347},{"cat":"blink","pid":25863,"tid":25913,"ts":531358424296,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":8,"tdur":7,"tts":593403},{"cat":"v8","pid":25863,"tid":25913,"ts":531358424693,"ph":"E","name":"V8.Execute","args":{},"tts":593800},{"cat":"blink","pid":25863,"tid":25913,"ts":531358424960,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":708,"tdur":708,"tts":594067},{"cat":"blink","pid":25863,"tid":25913,"ts":531358424963,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":594070},{"cat":"blink","pid":25863,"tid":25913,"ts":531358424965,"ph":"X","name":"Document::updateStyle","args":{},"dur":123,"tdur":122,"tts":594072},{"cat":"blink","pid":25863,"tid":25913,"ts":531358425089,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":594196},{"cat":"blink","pid":25863,"tid":25913,"ts":531358425092,"ph":"X","name":"FrameView::layout","args":{},"dur":230,"tdur":230,"tts":594198},{"cat":"blink","pid":25863,"tid":25913,"ts":531358425094,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":2,"tdur":2,"tts":594200},{"cat":"blink","pid":25863,"tid":25913,"ts":531358425097,"ph":"X","name":"FrameView::performLayout","args":{},"dur":208,"tdur":207,"tts":594203},{"cat":"blink","pid":25863,"tid":25913,"ts":531358425306,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":3,"tdur":3,"tts":594412},{"cat":"blink","pid":25863,"tid":25913,"ts":531358425309,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":11,"tdur":10,"tts":594416},{"cat":"blink","pid":25863,"tid":25913,"ts":531358425325,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":343,"tdur":341,"tts":594432},{"cat":"sky","pid":25863,"tid":25913,"ts":531358425670,"ph":"X","name":"Layer::Display","args":{},"dur":893,"tdur":892,"tts":594776},{"cat":"sky","pid":25863,"tid":25913,"ts":531358426564,"ph":"X","name":"LayerHost::Upload","args":{},"dur":192,"tdur":97,"tts":595671},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358426770,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":43,"tdur":42,"tts":595783},{"cat":"blink","pid":25863,"tid":25913,"ts":531358426776,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":32,"tts":595788},{"cat":"v8","pid":25863,"tid":25913,"ts":531358426779,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":28,"tts":595791},{"cat":"v8","pid":25863,"tid":25913,"ts":531358426782,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":24,"tts":595794},{"cat":"v8","pid":25863,"tid":25913,"ts":531358426783,"ph":"B","name":"V8.Execute","args":{},"tts":595796},{"cat":"blink","pid":25863,"tid":25913,"ts":531358426793,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":595805},{"cat":"blink","pid":25863,"tid":25913,"ts":531358426799,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":595812},{"cat":"v8","pid":25863,"tid":25913,"ts":531358426804,"ph":"E","name":"V8.Execute","args":{},"tts":595816},{"cat":"sky","pid":25863,"tid":25913,"ts":531358427175,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1177,"tdur":1119,"tts":595940},{"cat":"blink","pid":25863,"tid":25913,"ts":531358427177,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":101,"tdur":100,"tts":595943},{"cat":"blink","pid":25863,"tid":25913,"ts":531358427181,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":595946},{"cat":"blink","pid":25863,"tid":25913,"ts":531358427184,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":33,"tdur":33,"tts":595949},{"cat":"blink","pid":25863,"tid":25913,"ts":531358427190,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":27,"tdur":27,"tts":595955},{"cat":"v8","pid":25863,"tid":25913,"ts":531358427203,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":595968},{"cat":"v8","pid":25863,"tid":25913,"ts":531358427205,"ph":"B","name":"V8.Execute","args":{},"tts":595970},{"cat":"v8","pid":25863,"tid":25913,"ts":531358427212,"ph":"E","name":"V8.Execute","args":{},"tts":595977},{"cat":"v8","pid":25863,"tid":25913,"ts":531358427219,"ph":"X","name":"v8.callFunction","args":{},"dur":56,"tdur":55,"tts":595985},{"cat":"v8","pid":25863,"tid":25913,"ts":531358427221,"ph":"B","name":"V8.Execute","args":{},"tts":595986},{"cat":"blink","pid":25863,"tid":25913,"ts":531358427225,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":595991},{"cat":"v8","pid":25863,"tid":25913,"ts":531358427272,"ph":"E","name":"V8.Execute","args":{},"tts":596038},{"cat":"blink","pid":25863,"tid":25913,"ts":531358427278,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":33,"tdur":33,"tts":596043},{"cat":"blink","pid":25863,"tid":25913,"ts":531358427280,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":596046},{"cat":"blink","pid":25863,"tid":25913,"ts":531358427282,"ph":"X","name":"Document::updateStyle","args":{},"dur":20,"tdur":19,"tts":596047},{"cat":"blink","pid":25863,"tid":25913,"ts":531358427302,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":596067},{"cat":"blink","pid":25863,"tid":25913,"ts":531358427306,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":596072},{"cat":"sky","pid":25863,"tid":25913,"ts":531358427312,"ph":"X","name":"Layer::Display","args":{},"dur":918,"tdur":918,"tts":596077},{"cat":"sky","pid":25863,"tid":25913,"ts":531358428231,"ph":"X","name":"LayerHost::Upload","args":{},"dur":120,"tdur":61,"tts":596997},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358428363,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":39,"tdur":38,"tts":597071},{"cat":"blink","pid":25863,"tid":25913,"ts":531358428367,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":30,"tdur":30,"tts":597075},{"cat":"v8","pid":25863,"tid":25913,"ts":531358428370,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":26,"tdur":26,"tts":597078},{"cat":"v8","pid":25863,"tid":25913,"ts":531358428373,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":22,"tts":597080},{"cat":"v8","pid":25863,"tid":25913,"ts":531358428375,"ph":"B","name":"V8.Execute","args":{},"tts":597082},{"cat":"blink","pid":25863,"tid":25913,"ts":531358428383,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":10,"tts":597090},{"cat":"blink","pid":25863,"tid":25913,"ts":531358428389,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":597097},{"cat":"v8","pid":25863,"tid":25913,"ts":531358428393,"ph":"E","name":"V8.Execute","args":{},"tts":597101},{"cat":"sky","pid":25863,"tid":25913,"ts":531358487275,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2261,"tdur":2084,"tts":597258},{"cat":"blink","pid":25863,"tid":25913,"ts":531358487279,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":171,"tdur":171,"tts":597261},{"cat":"blink","pid":25863,"tid":25913,"ts":531358487282,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":5,"tdur":5,"tts":597264},{"cat":"blink","pid":25863,"tid":25913,"ts":531358487289,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":69,"tdur":68,"tts":597271},{"cat":"blink","pid":25863,"tid":25913,"ts":531358487294,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":63,"tdur":62,"tts":597276},{"cat":"v8","pid":25863,"tid":25913,"ts":531358487326,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":22,"tts":597309},{"cat":"v8","pid":25863,"tid":25913,"ts":531358487331,"ph":"B","name":"V8.Execute","args":{},"tts":597313},{"cat":"v8","pid":25863,"tid":25913,"ts":531358487346,"ph":"E","name":"V8.Execute","args":{},"tts":597328},{"cat":"v8","pid":25863,"tid":25913,"ts":531358487363,"ph":"X","name":"v8.callFunction","args":{},"dur":85,"tdur":85,"tts":597345},{"cat":"v8","pid":25863,"tid":25913,"ts":531358487366,"ph":"B","name":"V8.Execute","args":{},"tts":597348},{"cat":"blink","pid":25863,"tid":25913,"ts":531358487375,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":597357},{"cat":"v8","pid":25863,"tid":25913,"ts":531358487445,"ph":"E","name":"V8.Execute","args":{},"tts":597428},{"cat":"blink","pid":25863,"tid":25913,"ts":531358487451,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":63,"tdur":62,"tts":597433},{"cat":"blink","pid":25863,"tid":25913,"ts":531358487453,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":597435},{"cat":"blink","pid":25863,"tid":25913,"ts":531358487454,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":39,"tts":597436},{"cat":"blink","pid":25863,"tid":25913,"ts":531358487495,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":597478},{"cat":"blink","pid":25863,"tid":25913,"ts":531358487505,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":597487},{"cat":"sky","pid":25863,"tid":25913,"ts":531358487516,"ph":"X","name":"Layer::Display","args":{},"dur":1680,"tdur":1662,"tts":597498},{"cat":"sky","pid":25863,"tid":25913,"ts":531358489198,"ph":"X","name":"LayerHost::Upload","args":{},"dur":337,"tdur":175,"tts":599164},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358489563,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":72,"tdur":71,"tts":599370},{"cat":"blink","pid":25863,"tid":25913,"ts":531358489574,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":56,"tdur":55,"tts":599381},{"cat":"v8","pid":25863,"tid":25913,"ts":531358489580,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":49,"tdur":49,"tts":599386},{"cat":"v8","pid":25863,"tid":25913,"ts":531358489586,"ph":"X","name":"v8.callFunction","args":{},"dur":42,"tdur":42,"tts":599392},{"cat":"v8","pid":25863,"tid":25913,"ts":531358489589,"ph":"B","name":"V8.Execute","args":{},"tts":599396},{"cat":"blink","pid":25863,"tid":25913,"ts":531358489615,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":599422},{"cat":"blink","pid":25863,"tid":25913,"ts":531358489622,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":599428},{"cat":"v8","pid":25863,"tid":25913,"ts":531358489626,"ph":"E","name":"V8.Execute","args":{},"tts":599432},{"cat":"sky","pid":25863,"tid":25913,"ts":531358489999,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1127,"tdur":1022,"tts":599625},{"cat":"blink","pid":25863,"tid":25913,"ts":531358490004,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":94,"tdur":94,"tts":599629},{"cat":"blink","pid":25863,"tid":25913,"ts":531358490006,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":599632},{"cat":"blink","pid":25863,"tid":25913,"ts":531358490010,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":33,"tdur":33,"tts":599635},{"cat":"blink","pid":25863,"tid":25913,"ts":531358490017,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":26,"tdur":25,"tts":599642},{"cat":"v8","pid":25863,"tid":25913,"ts":531358490029,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":599654},{"cat":"v8","pid":25863,"tid":25913,"ts":531358490031,"ph":"B","name":"V8.Execute","args":{},"tts":599656},{"cat":"v8","pid":25863,"tid":25913,"ts":531358490037,"ph":"E","name":"V8.Execute","args":{},"tts":599663},{"cat":"v8","pid":25863,"tid":25913,"ts":531358490045,"ph":"X","name":"v8.callFunction","args":{},"dur":51,"tdur":51,"tts":599670},{"cat":"v8","pid":25863,"tid":25913,"ts":531358490047,"ph":"B","name":"V8.Execute","args":{},"tts":599672},{"cat":"blink","pid":25863,"tid":25913,"ts":531358490050,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":599676},{"cat":"v8","pid":25863,"tid":25913,"ts":531358490093,"ph":"E","name":"V8.Execute","args":{},"tts":599718},{"cat":"blink","pid":25863,"tid":25913,"ts":531358490098,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":30,"tdur":30,"tts":599723},{"cat":"blink","pid":25863,"tid":25913,"ts":531358490100,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":599725},{"cat":"blink","pid":25863,"tid":25913,"ts":531358490101,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":599727},{"cat":"blink","pid":25863,"tid":25913,"ts":531358490120,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":599745},{"cat":"blink","pid":25863,"tid":25913,"ts":531358490124,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":599749},{"cat":"sky","pid":25863,"tid":25913,"ts":531358490128,"ph":"X","name":"Layer::Display","args":{},"dur":803,"tdur":802,"tts":599754},{"cat":"sky","pid":25863,"tid":25913,"ts":531358490932,"ph":"X","name":"LayerHost::Upload","args":{},"dur":193,"tdur":89,"tts":600557},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358491138,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":38,"tdur":38,"tts":600659},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491142,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":28,"tts":600664},{"cat":"v8","pid":25863,"tid":25913,"ts":531358491145,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":25,"tts":600666},{"cat":"v8","pid":25863,"tid":25913,"ts":531358491148,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":600669},{"cat":"v8","pid":25863,"tid":25913,"ts":531358491149,"ph":"B","name":"V8.Execute","args":{},"tts":600671},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491157,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":600679},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491163,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":600685},{"cat":"v8","pid":25863,"tid":25913,"ts":531358491167,"ph":"E","name":"V8.Execute","args":{},"tts":600689},{"cat":"sky","pid":25863,"tid":25913,"ts":531358491541,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1107,"tdur":1044,"tts":600873},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491546,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":100,"tdur":100,"tts":600876},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491548,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":600879},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491552,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":40,"tdur":40,"tts":600882},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491565,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":26,"tdur":25,"tts":600896},{"cat":"v8","pid":25863,"tid":25913,"ts":531358491578,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":600908},{"cat":"v8","pid":25863,"tid":25913,"ts":531358491580,"ph":"B","name":"V8.Execute","args":{},"tts":600910},{"cat":"v8","pid":25863,"tid":25913,"ts":531358491586,"ph":"E","name":"V8.Execute","args":{},"tts":600917},{"cat":"v8","pid":25863,"tid":25913,"ts":531358491594,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":50,"tts":600924},{"cat":"v8","pid":25863,"tid":25913,"ts":531358491595,"ph":"B","name":"V8.Execute","args":{},"tts":600926},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491599,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":600929},{"cat":"v8","pid":25863,"tid":25913,"ts":531358491641,"ph":"E","name":"V8.Execute","args":{},"tts":600972},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491646,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":34,"tdur":33,"tts":600977},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491653,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":600983},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491654,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":600985},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491672,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":601003},{"cat":"blink","pid":25863,"tid":25913,"ts":531358491676,"ph":"X","name":"FrameView::invalidateTree","args":{"root":"X�ף&+"},"dur":4,"tdur":3,"tts":601007},{"cat":"sky","pid":25863,"tid":25913,"ts":531358491681,"ph":"X","name":"Layer::Display","args":{},"dur":826,"tdur":815,"tts":601012},{"cat":"sky","pid":25863,"tid":25913,"ts":531358492507,"ph":"X","name":"LayerHost::Upload","args":{},"dur":140,"tdur":86,"tts":601829},{"cat":"sky","pid":25863,"tid":25913,"ts":531358492982,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1032,"tdur":979,"tts":602150},{"cat":"blink","pid":25863,"tid":25913,"ts":531358492986,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":90,"tdur":89,"tts":602154},{"cat":"blink","pid":25863,"tid":25913,"ts":531358492989,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":602157},{"cat":"blink","pid":25863,"tid":25913,"ts":531358492993,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":33,"tdur":33,"tts":602160},{"cat":"blink","pid":25863,"tid":25913,"ts":531358493000,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":26,"tdur":25,"tts":602167},{"cat":"v8","pid":25863,"tid":25913,"ts":531358493012,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":602179},{"cat":"v8","pid":25863,"tid":25913,"ts":531358493014,"ph":"B","name":"V8.Execute","args":{},"tts":602181},{"cat":"v8","pid":25863,"tid":25913,"ts":531358493021,"ph":"E","name":"V8.Execute","args":{},"tts":602188},{"cat":"v8","pid":25863,"tid":25913,"ts":531358493028,"ph":"X","name":"v8.callFunction","args":{},"dur":46,"tdur":46,"tts":602195},{"cat":"v8","pid":25863,"tid":25913,"ts":531358493030,"ph":"B","name":"V8.Execute","args":{},"tts":602197},{"cat":"blink","pid":25863,"tid":25913,"ts":531358493033,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":10,"tts":602200},{"cat":"v8","pid":25863,"tid":25913,"ts":531358493071,"ph":"E","name":"V8.Execute","args":{},"tts":602239},{"cat":"blink","pid":25863,"tid":25913,"ts":531358493077,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":29,"tts":602244},{"cat":"blink","pid":25863,"tid":25913,"ts":531358493079,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":602246},{"cat":"blink","pid":25863,"tid":25913,"ts":531358493080,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":602247},{"cat":"blink","pid":25863,"tid":25913,"ts":531358493098,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":602265},{"cat":"blink","pid":25863,"tid":25913,"ts":531358493102,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":602269},{"cat":"sky","pid":25863,"tid":25913,"ts":531358493107,"ph":"X","name":"Layer::Display","args":{},"dur":797,"tdur":796,"tts":602274},{"cat":"sky","pid":25863,"tid":25913,"ts":531358493905,"ph":"X","name":"LayerHost::Upload","args":{},"dur":108,"tdur":56,"tts":603072},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358494024,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":36,"tdur":35,"tts":603139},{"cat":"blink","pid":25863,"tid":25913,"ts":531358494028,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":27,"tts":603143},{"cat":"v8","pid":25863,"tid":25913,"ts":531358494030,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":24,"tdur":24,"tts":603145},{"cat":"v8","pid":25863,"tid":25913,"ts":531358494033,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":20,"tts":603148},{"cat":"v8","pid":25863,"tid":25913,"ts":531358494034,"ph":"B","name":"V8.Execute","args":{},"tts":603149},{"cat":"blink","pid":25863,"tid":25913,"ts":531358494042,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":8,"tts":603157},{"cat":"blink","pid":25863,"tid":25913,"ts":531358494047,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":603162},{"cat":"v8","pid":25863,"tid":25913,"ts":531358494051,"ph":"E","name":"V8.Execute","args":{},"tts":603166},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358495124,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":39,"tdur":39,"tts":603269},{"cat":"blink","pid":25863,"tid":25913,"ts":531358495127,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":32,"tts":603272},{"cat":"v8","pid":25863,"tid":25913,"ts":531358495130,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":28,"tts":603275},{"cat":"v8","pid":25863,"tid":25913,"ts":531358495132,"ph":"X","name":"v8.callFunction","args":{},"dur":25,"tdur":25,"tts":603277},{"cat":"v8","pid":25863,"tid":25913,"ts":531358495134,"ph":"B","name":"V8.Execute","args":{},"tts":603278},{"cat":"blink","pid":25863,"tid":25913,"ts":531358495140,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":15,"tdur":14,"tts":603285},{"cat":"blink","pid":25863,"tid":25913,"ts":531358495152,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":603297},{"cat":"v8","pid":25863,"tid":25913,"ts":531358495156,"ph":"E","name":"V8.Execute","args":{},"tts":603300},{"cat":"sky","pid":25863,"tid":25913,"ts":531358553540,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1393,"tdur":1227,"tts":603375},{"cat":"blink","pid":25863,"tid":25913,"ts":531358553547,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":129,"tdur":129,"tts":603380},{"cat":"blink","pid":25863,"tid":25913,"ts":531358553552,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":603386},{"cat":"blink","pid":25863,"tid":25913,"ts":531358553558,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":50,"tdur":49,"tts":603392},{"cat":"blink","pid":25863,"tid":25913,"ts":531358553581,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":26,"tdur":25,"tts":603415},{"cat":"v8","pid":25863,"tid":25913,"ts":531358553593,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":603427},{"cat":"v8","pid":25863,"tid":25913,"ts":531358553595,"ph":"B","name":"V8.Execute","args":{},"tts":603429},{"cat":"v8","pid":25863,"tid":25913,"ts":531358553602,"ph":"E","name":"V8.Execute","args":{},"tts":603436},{"cat":"v8","pid":25863,"tid":25913,"ts":531358553610,"ph":"X","name":"v8.callFunction","args":{},"dur":64,"tdur":64,"tts":603443},{"cat":"v8","pid":25863,"tid":25913,"ts":531358553612,"ph":"B","name":"V8.Execute","args":{},"tts":603445},{"cat":"blink","pid":25863,"tid":25913,"ts":531358553616,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":603449},{"cat":"v8","pid":25863,"tid":25913,"ts":531358553671,"ph":"E","name":"V8.Execute","args":{},"tts":603504},{"cat":"blink","pid":25863,"tid":25913,"ts":531358553676,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":55,"tdur":54,"tts":603510},{"cat":"blink","pid":25863,"tid":25913,"ts":531358553678,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":603512},{"cat":"blink","pid":25863,"tid":25913,"ts":531358553680,"ph":"X","name":"Document::updateStyle","args":{},"dur":30,"tdur":30,"tts":603513},{"cat":"blink","pid":25863,"tid":25913,"ts":531358553711,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":603544},{"cat":"blink","pid":25863,"tid":25913,"ts":531358553715,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":15,"tdur":15,"tts":603548},{"cat":"sky","pid":25863,"tid":25913,"ts":531358553732,"ph":"X","name":"Layer::Display","args":{},"dur":903,"tdur":902,"tts":603565},{"cat":"sky","pid":25863,"tid":25913,"ts":531358554636,"ph":"X","name":"LayerHost::Upload","args":{},"dur":296,"tdur":131,"tts":604469},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358554962,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":83,"tdur":72,"tts":604632},{"cat":"blink","pid":25863,"tid":25913,"ts":531358554968,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":71,"tdur":61,"tts":604637},{"cat":"v8","pid":25863,"tid":25913,"ts":531358554988,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":49,"tdur":39,"tts":604657},{"cat":"v8","pid":25863,"tid":25913,"ts":531358554991,"ph":"X","name":"v8.callFunction","args":{},"dur":45,"tdur":35,"tts":604660},{"cat":"v8","pid":25863,"tid":25913,"ts":531358555014,"ph":"B","name":"V8.Execute","args":{},"tts":604674},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555024,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":604684},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555029,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":604689},{"cat":"v8","pid":25863,"tid":25913,"ts":531358555034,"ph":"E","name":"V8.Execute","args":{},"tts":604694},{"cat":"sky","pid":25863,"tid":25913,"ts":531358555414,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1201,"tdur":1119,"tts":604895},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555419,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":112,"tdur":112,"tts":604899},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555422,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":604902},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555425,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":36,"tdur":36,"tts":604906},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555433,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":28,"tdur":28,"tts":604913},{"cat":"v8","pid":25863,"tid":25913,"ts":531358555446,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":604927},{"cat":"v8","pid":25863,"tid":25913,"ts":531358555448,"ph":"B","name":"V8.Execute","args":{},"tts":604929},{"cat":"v8","pid":25863,"tid":25913,"ts":531358555455,"ph":"E","name":"V8.Execute","args":{},"tts":604936},{"cat":"v8","pid":25863,"tid":25913,"ts":531358555464,"ph":"X","name":"v8.callFunction","args":{},"dur":65,"tdur":65,"tts":604944},{"cat":"v8","pid":25863,"tid":25913,"ts":531358555465,"ph":"B","name":"V8.Execute","args":{},"tts":604946},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555469,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":16,"tdur":15,"tts":604950},{"cat":"v8","pid":25863,"tid":25913,"ts":531358555525,"ph":"E","name":"V8.Execute","args":{},"tts":605006},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555532,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":32,"tts":605012},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555534,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":605014},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555535,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":18,"tts":605016},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555555,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":605035},{"cat":"blink","pid":25863,"tid":25913,"ts":531358555559,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":605040},{"cat":"sky","pid":25863,"tid":25913,"ts":531358555564,"ph":"X","name":"Layer::Display","args":{},"dur":886,"tdur":873,"tts":605045},{"cat":"sky","pid":25863,"tid":25913,"ts":531358556451,"ph":"X","name":"LayerHost::Upload","args":{},"dur":163,"tdur":92,"tts":605920},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358556628,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":56,"tdur":56,"tts":606027},{"cat":"blink","pid":25863,"tid":25913,"ts":531358556633,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":46,"tdur":46,"tts":606032},{"cat":"v8","pid":25863,"tid":25913,"ts":531358556636,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":42,"tdur":41,"tts":606035},{"cat":"v8","pid":25863,"tid":25913,"ts":531358556639,"ph":"X","name":"v8.callFunction","args":{},"dur":37,"tdur":37,"tts":606038},{"cat":"v8","pid":25863,"tid":25913,"ts":531358556640,"ph":"B","name":"V8.Execute","args":{},"tts":606039},{"cat":"blink","pid":25863,"tid":25913,"ts":531358556663,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":606062},{"cat":"blink","pid":25863,"tid":25913,"ts":531358556670,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":606069},{"cat":"v8","pid":25863,"tid":25913,"ts":531358556674,"ph":"E","name":"V8.Execute","args":{},"tts":606074},{"cat":"sky","pid":25863,"tid":25913,"ts":531358557073,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1113,"tdur":1058,"tts":606281},{"cat":"blink","pid":25863,"tid":25913,"ts":531358557078,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":101,"tdur":101,"tts":606285},{"cat":"blink","pid":25863,"tid":25913,"ts":531358557081,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":606288},{"cat":"blink","pid":25863,"tid":25913,"ts":531358557084,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":36,"tdur":35,"tts":606292},{"cat":"blink","pid":25863,"tid":25913,"ts":531358557091,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":29,"tdur":27,"tts":606299},{"cat":"v8","pid":25863,"tid":25913,"ts":531358557105,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":606312},{"cat":"v8","pid":25863,"tid":25913,"ts":531358557107,"ph":"B","name":"V8.Execute","args":{},"tts":606314},{"cat":"v8","pid":25863,"tid":25913,"ts":531358557114,"ph":"E","name":"V8.Execute","args":{},"tts":606321},{"cat":"v8","pid":25863,"tid":25913,"ts":531358557122,"ph":"X","name":"v8.callFunction","args":{},"dur":54,"tdur":53,"tts":606330},{"cat":"v8","pid":25863,"tid":25913,"ts":531358557124,"ph":"B","name":"V8.Execute","args":{},"tts":606331},{"cat":"blink","pid":25863,"tid":25913,"ts":531358557128,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":10,"tts":606335},{"cat":"v8","pid":25863,"tid":25913,"ts":531358557173,"ph":"E","name":"V8.Execute","args":{},"tts":606381},{"cat":"blink","pid":25863,"tid":25913,"ts":531358557179,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":32,"tts":606386},{"cat":"blink","pid":25863,"tid":25913,"ts":531358557181,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":606388},{"cat":"blink","pid":25863,"tid":25913,"ts":531358557183,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":18,"tts":606390},{"cat":"blink","pid":25863,"tid":25913,"ts":531358557202,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":606409},{"cat":"blink","pid":25863,"tid":25913,"ts":531358557206,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":606413},{"cat":"sky","pid":25863,"tid":25913,"ts":531358557211,"ph":"X","name":"Layer::Display","args":{},"dur":827,"tdur":825,"tts":606419},{"cat":"sky","pid":25863,"tid":25913,"ts":531358558039,"ph":"X","name":"LayerHost::Upload","args":{},"dur":146,"tdur":91,"tts":607246},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358558199,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":41,"tdur":41,"tts":607352},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558204,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":31,"tdur":31,"tts":607357},{"cat":"v8","pid":25863,"tid":25913,"ts":531358558207,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":27,"tts":607360},{"cat":"v8","pid":25863,"tid":25913,"ts":531358558209,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":607363},{"cat":"v8","pid":25863,"tid":25913,"ts":531358558211,"ph":"B","name":"V8.Execute","args":{},"tts":607365},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558220,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":607373},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558226,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":607380},{"cat":"v8","pid":25863,"tid":25913,"ts":531358558231,"ph":"E","name":"V8.Execute","args":{},"tts":607384},{"cat":"sky","pid":25863,"tid":25913,"ts":531358558592,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1069,"tdur":1034,"tts":607581},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558596,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":106,"tdur":105,"tts":607584},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558599,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":607588},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558603,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":39,"tdur":39,"tts":607591},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558610,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":32,"tdur":31,"tts":607598},{"cat":"v8","pid":25863,"tid":25913,"ts":531358558624,"ph":"X","name":"v8.callFunction","args":{},"dur":14,"tdur":14,"tts":607612},{"cat":"v8","pid":25863,"tid":25913,"ts":531358558629,"ph":"B","name":"V8.Execute","args":{},"tts":607617},{"cat":"v8","pid":25863,"tid":25913,"ts":531358558636,"ph":"E","name":"V8.Execute","args":{},"tts":607624},{"cat":"v8","pid":25863,"tid":25913,"ts":531358558645,"ph":"X","name":"v8.callFunction","args":{},"dur":54,"tdur":54,"tts":607633},{"cat":"v8","pid":25863,"tid":25913,"ts":531358558646,"ph":"B","name":"V8.Execute","args":{},"tts":607634},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558650,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":607638},{"cat":"v8","pid":25863,"tid":25913,"ts":531358558696,"ph":"E","name":"V8.Execute","args":{},"tts":607685},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558702,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":32,"tts":607690},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558704,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":607692},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558706,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":18,"tts":607694},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558725,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":607713},{"cat":"blink","pid":25863,"tid":25913,"ts":531358558729,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":607718},{"cat":"sky","pid":25863,"tid":25913,"ts":531358558735,"ph":"X","name":"Layer::Display","args":{},"dur":831,"tdur":830,"tts":607723},{"cat":"sky","pid":25863,"tid":25913,"ts":531358559567,"ph":"X","name":"LayerHost::Upload","args":{},"dur":93,"tdur":59,"tts":608555},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358560770,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":44,"tdur":43,"tts":608784},{"cat":"blink","pid":25863,"tid":25913,"ts":531358560776,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":33,"tdur":33,"tts":608789},{"cat":"v8","pid":25863,"tid":25913,"ts":531358560779,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":29,"tts":608792},{"cat":"v8","pid":25863,"tid":25913,"ts":531358560782,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":25,"tts":608795},{"cat":"v8","pid":25863,"tid":25913,"ts":531358560783,"ph":"B","name":"V8.Execute","args":{},"tts":608797},{"cat":"blink","pid":25863,"tid":25913,"ts":531358560792,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":11,"tdur":11,"tts":608806},{"cat":"blink","pid":25863,"tid":25913,"ts":531358560799,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":3,"tts":608813},{"cat":"v8","pid":25863,"tid":25913,"ts":531358560804,"ph":"E","name":"V8.Execute","args":{},"tts":608818},{"cat":"sky","pid":25863,"tid":25913,"ts":531358607863,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2402,"tdur":2225,"tts":608936},{"cat":"blink","pid":25863,"tid":25913,"ts":531358607882,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":273,"tdur":255,"tts":608954},{"cat":"blink","pid":25863,"tid":25913,"ts":531358607891,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":608963},{"cat":"blink","pid":25863,"tid":25913,"ts":531358607899,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":82,"tdur":81,"tts":608971},{"cat":"blink","pid":25863,"tid":25913,"ts":531358607916,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":64,"tdur":63,"tts":608988},{"cat":"v8","pid":25863,"tid":25913,"ts":531358607947,"ph":"X","name":"v8.callFunction","args":{},"dur":25,"tdur":24,"tts":609019},{"cat":"v8","pid":25863,"tid":25913,"ts":531358607951,"ph":"B","name":"V8.Execute","args":{},"tts":609023},{"cat":"v8","pid":25863,"tid":25913,"ts":531358607968,"ph":"E","name":"V8.Execute","args":{},"tts":609040},{"cat":"v8","pid":25863,"tid":25913,"ts":531358607985,"ph":"X","name":"v8.callFunction","args":{},"dur":165,"tdur":147,"tts":609057},{"cat":"v8","pid":25863,"tid":25913,"ts":531358607989,"ph":"B","name":"V8.Execute","args":{},"tts":609061},{"cat":"blink","pid":25863,"tid":25913,"ts":531358607998,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":61,"tdur":42,"tts":609070},{"cat":"v8","pid":25863,"tid":25913,"ts":531358608143,"ph":"E","name":"V8.Execute","args":{},"tts":609198},{"cat":"blink","pid":25863,"tid":25913,"ts":531358608156,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":59,"tdur":58,"tts":609210},{"cat":"blink","pid":25863,"tid":25913,"ts":531358608172,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":609226},{"cat":"blink","pid":25863,"tid":25913,"ts":531358608174,"ph":"X","name":"Document::updateStyle","args":{},"dur":27,"tdur":27,"tts":609228},{"cat":"blink","pid":25863,"tid":25913,"ts":531358608202,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":609256},{"cat":"blink","pid":25863,"tid":25913,"ts":531358608209,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":4,"tts":609263},{"cat":"sky","pid":25863,"tid":25913,"ts":531358608216,"ph":"X","name":"Layer::Display","args":{},"dur":1677,"tdur":1675,"tts":609270},{"cat":"sky","pid":25863,"tid":25913,"ts":531358609895,"ph":"X","name":"LayerHost::Upload","args":{},"dur":369,"tdur":209,"tts":610949},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358610298,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":75,"tdur":75,"tts":611194},{"cat":"blink","pid":25863,"tid":25913,"ts":531358610309,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":58,"tdur":57,"tts":611205},{"cat":"v8","pid":25863,"tid":25913,"ts":531358610315,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":50,"tdur":50,"tts":611211},{"cat":"v8","pid":25863,"tid":25913,"ts":531358610332,"ph":"X","name":"v8.callFunction","args":{},"dur":32,"tdur":31,"tts":611228},{"cat":"v8","pid":25863,"tid":25913,"ts":531358610335,"ph":"B","name":"V8.Execute","args":{},"tts":611230},{"cat":"blink","pid":25863,"tid":25913,"ts":531358610348,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":12,"tdur":12,"tts":611244},{"cat":"blink","pid":25863,"tid":25913,"ts":531358610356,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":3,"tts":611252},{"cat":"v8","pid":25863,"tid":25913,"ts":531358610362,"ph":"E","name":"V8.Execute","args":{},"tts":611257},{"cat":"sky","pid":25863,"tid":25913,"ts":531358610855,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1487,"tdur":1407,"tts":611508},{"cat":"blink","pid":25863,"tid":25913,"ts":531358610861,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":145,"tdur":145,"tts":611512},{"cat":"blink","pid":25863,"tid":25913,"ts":531358610865,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":611516},{"cat":"blink","pid":25863,"tid":25913,"ts":531358610869,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":45,"tdur":45,"tts":611520},{"cat":"blink","pid":25863,"tid":25913,"ts":531358610878,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":35,"tdur":35,"tts":611529},{"cat":"v8","pid":25863,"tid":25913,"ts":531358610895,"ph":"X","name":"v8.callFunction","args":{},"dur":14,"tdur":13,"tts":611547},{"cat":"v8","pid":25863,"tid":25913,"ts":531358610898,"ph":"B","name":"V8.Execute","args":{},"tts":611549},{"cat":"v8","pid":25863,"tid":25913,"ts":531358610906,"ph":"E","name":"V8.Execute","args":{},"tts":611558},{"cat":"v8","pid":25863,"tid":25913,"ts":531358610916,"ph":"X","name":"v8.callFunction","args":{},"dur":87,"tdur":86,"tts":611568},{"cat":"v8","pid":25863,"tid":25913,"ts":531358610919,"ph":"B","name":"V8.Execute","args":{},"tts":611570},{"cat":"blink","pid":25863,"tid":25913,"ts":531358610924,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":12,"tdur":12,"tts":611575},{"cat":"v8","pid":25863,"tid":25913,"ts":531358610999,"ph":"E","name":"V8.Execute","args":{},"tts":611651},{"cat":"blink","pid":25863,"tid":25913,"ts":531358611007,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":45,"tdur":44,"tts":611659},{"cat":"blink","pid":25863,"tid":25913,"ts":531358611010,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":611661},{"cat":"blink","pid":25863,"tid":25913,"ts":531358611012,"ph":"X","name":"Document::updateStyle","args":{},"dur":24,"tdur":23,"tts":611663},{"cat":"blink","pid":25863,"tid":25913,"ts":531358611036,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":611688},{"cat":"blink","pid":25863,"tid":25913,"ts":531358611046,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":4,"tts":611698},{"cat":"sky","pid":25863,"tid":25913,"ts":531358611053,"ph":"X","name":"Layer::Display","args":{},"dur":1106,"tdur":1093,"tts":611705},{"cat":"sky","pid":25863,"tid":25913,"ts":531358612160,"ph":"X","name":"LayerHost::Upload","args":{},"dur":181,"tdur":113,"tts":612800},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358612354,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":55,"tdur":46,"tts":612927},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612359,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":46,"tdur":36,"tts":612932},{"cat":"v8","pid":25863,"tid":25913,"ts":531358612361,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":42,"tdur":33,"tts":612934},{"cat":"v8","pid":25863,"tid":25913,"ts":531358612364,"ph":"X","name":"v8.callFunction","args":{},"dur":38,"tdur":29,"tts":612937},{"cat":"v8","pid":25863,"tid":25913,"ts":531358612366,"ph":"B","name":"V8.Execute","args":{},"tts":612938},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612374,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":25,"tdur":16,"tts":612947},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612396,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":612960},{"cat":"v8","pid":25863,"tid":25913,"ts":531358612400,"ph":"E","name":"V8.Execute","args":{},"tts":612964},{"cat":"sky","pid":25863,"tid":25913,"ts":531358612853,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1068,"tdur":987,"tts":613150},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612856,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":91,"tdur":91,"tts":613153},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612859,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":613156},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612862,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":31,"tts":613159},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612868,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":613165},{"cat":"v8","pid":25863,"tid":25913,"ts":531358612880,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":613177},{"cat":"v8","pid":25863,"tid":25913,"ts":531358612882,"ph":"B","name":"V8.Execute","args":{},"tts":613179},{"cat":"v8","pid":25863,"tid":25913,"ts":531358612888,"ph":"E","name":"V8.Execute","args":{},"tts":613185},{"cat":"v8","pid":25863,"tid":25913,"ts":531358612895,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":49,"tts":613192},{"cat":"v8","pid":25863,"tid":25913,"ts":531358612896,"ph":"B","name":"V8.Execute","args":{},"tts":613194},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612900,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":613197},{"cat":"v8","pid":25863,"tid":25913,"ts":531358612942,"ph":"E","name":"V8.Execute","args":{},"tts":613239},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612947,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":29,"tts":613244},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612949,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":613246},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612950,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":613248},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612968,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":613265},{"cat":"blink","pid":25863,"tid":25913,"ts":531358612972,"ph":"X","name":"FrameView::invalidateTree","args":{"root":"\u0018�ף&+"},"dur":4,"tdur":4,"tts":613269},{"cat":"sky","pid":25863,"tid":25913,"ts":531358612977,"ph":"X","name":"Layer::Display","args":{},"dur":780,"tdur":780,"tts":613274},{"cat":"sky","pid":25863,"tid":25913,"ts":531358613758,"ph":"X","name":"LayerHost::Upload","args":{},"dur":162,"tdur":79,"tts":614056},{"cat":"sky","pid":25863,"tid":25913,"ts":531358614492,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2008,"tdur":1942,"tts":614409},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614497,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":240,"tdur":240,"tts":614414},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614501,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":614418},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614506,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":44,"tdur":44,"tts":614422},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614514,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":35,"tdur":34,"tts":614431},{"cat":"v8","pid":25863,"tid":25913,"ts":531358614531,"ph":"X","name":"v8.callFunction","args":{},"dur":14,"tdur":13,"tts":614448},{"cat":"v8","pid":25863,"tid":25913,"ts":531358614534,"ph":"B","name":"V8.Execute","args":{},"tts":614450},{"cat":"v8","pid":25863,"tid":25913,"ts":531358614542,"ph":"E","name":"V8.Execute","args":{},"tts":614459},{"cat":"v8","pid":25863,"tid":25913,"ts":531358614553,"ph":"X","name":"v8.callFunction","args":{},"dur":181,"tdur":182,"tts":614469},{"cat":"v8","pid":25863,"tid":25913,"ts":531358614555,"ph":"B","name":"V8.Execute","args":{},"tts":614471},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614560,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":12,"tdur":12,"tts":614476},{"cat":"v8","pid":25863,"tid":25913,"ts":531358614730,"ph":"E","name":"V8.Execute","args":{},"tts":614647},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614738,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":457,"tdur":456,"tts":614655},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614741,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":614657},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614743,"ph":"X","name":"Document::updateStyle","args":{},"dur":113,"tdur":113,"tts":614659},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614857,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":614774},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614860,"ph":"X","name":"FrameView::layout","args":{},"dur":41,"tdur":41,"tts":614777},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614862,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":2,"tdur":2,"tts":614779},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614865,"ph":"X","name":"FrameView::performLayout","args":{},"dur":23,"tdur":21,"tts":614782},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614888,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":3,"tdur":2,"tts":614805},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614892,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":8,"tdur":8,"tts":614808},{"cat":"blink","pid":25863,"tid":25913,"ts":531358614905,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":289,"tdur":288,"tts":614822},{"cat":"sky","pid":25863,"tid":25913,"ts":531358615196,"ph":"X","name":"Layer::Display","args":{},"dur":1113,"tdur":1111,"tts":615113},{"cat":"sky","pid":25863,"tid":25913,"ts":531358616310,"ph":"X","name":"LayerHost::Upload","args":{},"dur":189,"tdur":123,"tts":616227},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358616521,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":116,"tdur":116,"tts":616370},{"cat":"blink","pid":25863,"tid":25913,"ts":531358616526,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":64,"tdur":63,"tts":616375},{"cat":"v8","pid":25863,"tid":25913,"ts":531358616529,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":58,"tts":616378},{"cat":"v8","pid":25863,"tid":25913,"ts":531358616532,"ph":"X","name":"v8.callFunction","args":{},"dur":53,"tdur":53,"tts":616381},{"cat":"v8","pid":25863,"tid":25913,"ts":531358616534,"ph":"B","name":"V8.Execute","args":{},"tts":616383},{"cat":"blink","pid":25863,"tid":25913,"ts":531358616562,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":18,"tdur":17,"tts":616412},{"cat":"blink","pid":25863,"tid":25913,"ts":531358616574,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":5,"tdur":5,"tts":616423},{"cat":"v8","pid":25863,"tid":25913,"ts":531358616582,"ph":"E","name":"V8.Execute","args":{},"tts":616431},{"cat":"blink","pid":25863,"tid":25913,"ts":531358616591,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":40,"tdur":40,"tts":616440},{"cat":"v8","pid":25863,"tid":25913,"ts":531358616594,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":36,"tdur":35,"tts":616444},{"cat":"v8","pid":25863,"tid":25913,"ts":531358616615,"ph":"X","name":"v8.callFunction","args":{},"dur":14,"tdur":14,"tts":616464},{"cat":"v8","pid":25863,"tid":25913,"ts":531358616617,"ph":"B","name":"V8.Execute","args":{},"tts":616466},{"cat":"blink","pid":25863,"tid":25913,"ts":531358616621,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":6,"tdur":6,"tts":616470},{"cat":"blink","pid":25863,"tid":25913,"ts":531358616624,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":1,"tts":616474},{"cat":"v8","pid":25863,"tid":25913,"ts":531358616627,"ph":"E","name":"V8.Execute","args":{},"tts":616477},{"cat":"sky","pid":25863,"tid":25913,"ts":531358670127,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2112,"tdur":1926,"tts":616686},{"cat":"blink","pid":25863,"tid":25913,"ts":531358670131,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":158,"tdur":157,"tts":616690},{"cat":"blink","pid":25863,"tid":25913,"ts":531358670134,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":616692},{"cat":"blink","pid":25863,"tid":25913,"ts":531358670137,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":50,"tdur":49,"tts":616696},{"cat":"blink","pid":25863,"tid":25913,"ts":531358670144,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":42,"tdur":41,"tts":616703},{"cat":"v8","pid":25863,"tid":25913,"ts":531358670158,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":23,"tts":616717},{"cat":"v8","pid":25863,"tid":25913,"ts":531358670160,"ph":"B","name":"V8.Execute","args":{},"tts":616719},{"cat":"v8","pid":25863,"tid":25913,"ts":531358670180,"ph":"E","name":"V8.Execute","args":{},"tts":616738},{"cat":"v8","pid":25863,"tid":25913,"ts":531358670189,"ph":"X","name":"v8.callFunction","args":{},"dur":95,"tdur":94,"tts":616748},{"cat":"v8","pid":25863,"tid":25913,"ts":531358670191,"ph":"B","name":"V8.Execute","args":{},"tts":616749},{"cat":"blink","pid":25863,"tid":25913,"ts":531358670195,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":12,"tdur":11,"tts":616754},{"cat":"v8","pid":25863,"tid":25913,"ts":531358670278,"ph":"E","name":"V8.Execute","args":{},"tts":616837},{"cat":"blink","pid":25863,"tid":25913,"ts":531358670290,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":69,"tdur":68,"tts":616849},{"cat":"blink","pid":25863,"tid":25913,"ts":531358670294,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":616853},{"cat":"blink","pid":25863,"tid":25913,"ts":531358670297,"ph":"X","name":"Document::updateStyle","args":{},"dur":51,"tdur":50,"tts":616856},{"cat":"blink","pid":25863,"tid":25913,"ts":531358670348,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":616907},{"cat":"blink","pid":25863,"tid":25913,"ts":531358670353,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":4,"tts":616912},{"cat":"sky","pid":25863,"tid":25913,"ts":531358670360,"ph":"X","name":"Layer::Display","args":{},"dur":1527,"tdur":1526,"tts":616918},{"cat":"sky","pid":25863,"tid":25913,"ts":531358671889,"ph":"X","name":"LayerHost::Upload","args":{},"dur":349,"tdur":162,"tts":618448},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358672262,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":68,"tdur":67,"tts":618636},{"cat":"blink","pid":25863,"tid":25913,"ts":531358672271,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":54,"tdur":53,"tts":618644},{"cat":"v8","pid":25863,"tid":25913,"ts":531358672276,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":47,"tdur":47,"tts":618649},{"cat":"v8","pid":25863,"tid":25913,"ts":531358672281,"ph":"X","name":"v8.callFunction","args":{},"dur":41,"tdur":41,"tts":618654},{"cat":"v8","pid":25863,"tid":25913,"ts":531358672284,"ph":"B","name":"V8.Execute","args":{},"tts":618657},{"cat":"blink","pid":25863,"tid":25913,"ts":531358672308,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":11,"tdur":10,"tts":618682},{"cat":"blink","pid":25863,"tid":25913,"ts":531358672315,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":618688},{"cat":"v8","pid":25863,"tid":25913,"ts":531358672320,"ph":"E","name":"V8.Execute","args":{},"tts":618693},{"cat":"sky","pid":25863,"tid":25913,"ts":531358672756,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1907,"tdur":1810,"tts":618902},{"cat":"blink","pid":25863,"tid":25913,"ts":531358672761,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":330,"tdur":330,"tts":618906},{"cat":"blink","pid":25863,"tid":25913,"ts":531358672764,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":618910},{"cat":"blink","pid":25863,"tid":25913,"ts":531358672768,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":39,"tdur":39,"tts":618913},{"cat":"blink","pid":25863,"tid":25913,"ts":531358672776,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":31,"tdur":30,"tts":618921},{"cat":"v8","pid":25863,"tid":25913,"ts":531358672791,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":12,"tts":618936},{"cat":"v8","pid":25863,"tid":25913,"ts":531358672793,"ph":"B","name":"V8.Execute","args":{},"tts":618938},{"cat":"v8","pid":25863,"tid":25913,"ts":531358672801,"ph":"E","name":"V8.Execute","args":{},"tts":618946},{"cat":"v8","pid":25863,"tid":25913,"ts":531358672809,"ph":"X","name":"v8.callFunction","args":{},"dur":278,"tdur":277,"tts":618955},{"cat":"v8","pid":25863,"tid":25913,"ts":531358672811,"ph":"B","name":"V8.Execute","args":{},"tts":618956},{"cat":"blink","pid":25863,"tid":25913,"ts":531358672816,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":618961},{"cat":"v8","pid":25863,"tid":25913,"ts":531358672999,"ph":"E","name":"V8.Execute","args":{},"tts":619145},{"cat":"blink","pid":25863,"tid":25913,"ts":531358673092,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":454,"tdur":454,"tts":619237},{"cat":"blink","pid":25863,"tid":25913,"ts":531358673095,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":619240},{"cat":"blink","pid":25863,"tid":25913,"ts":531358673097,"ph":"X","name":"Document::updateStyle","args":{},"dur":83,"tdur":82,"tts":619242},{"cat":"blink","pid":25863,"tid":25913,"ts":531358673180,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":4},"tts":619326},{"cat":"blink","pid":25863,"tid":25913,"ts":531358673183,"ph":"X","name":"FrameView::layout","args":{},"dur":112,"tdur":110,"tts":619329},{"cat":"blink","pid":25863,"tid":25913,"ts":531358673185,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":2,"tdur":2,"tts":619330},{"cat":"blink","pid":25863,"tid":25913,"ts":531358673188,"ph":"X","name":"FrameView::performLayout","args":{},"dur":96,"tdur":95,"tts":619333},{"cat":"blink","pid":25863,"tid":25913,"ts":531358673284,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":3,"tdur":3,"tts":619429},{"cat":"blink","pid":25863,"tid":25913,"ts":531358673288,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":5,"tdur":5,"tts":619433},{"cat":"blink","pid":25863,"tid":25913,"ts":531358673298,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":247,"tdur":246,"tts":619443},{"cat":"sky","pid":25863,"tid":25913,"ts":531358673547,"ph":"X","name":"Layer::Display","args":{},"dur":920,"tdur":919,"tts":619692},{"cat":"sky","pid":25863,"tid":25913,"ts":531358674468,"ph":"X","name":"LayerHost::Upload","args":{},"dur":194,"tdur":98,"tts":620613},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358674691,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":49,"tdur":48,"tts":620740},{"cat":"blink","pid":25863,"tid":25913,"ts":531358674697,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":37,"tdur":37,"tts":620746},{"cat":"v8","pid":25863,"tid":25913,"ts":531358674700,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":33,"tdur":33,"tts":620749},{"cat":"v8","pid":25863,"tid":25913,"ts":531358674703,"ph":"X","name":"v8.callFunction","args":{},"dur":29,"tdur":28,"tts":620752},{"cat":"v8","pid":25863,"tid":25913,"ts":531358674705,"ph":"B","name":"V8.Execute","args":{},"tts":620754},{"cat":"blink","pid":25863,"tid":25913,"ts":531358674714,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":620763},{"cat":"blink","pid":25863,"tid":25913,"ts":531358674721,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":620770},{"cat":"v8","pid":25863,"tid":25913,"ts":531358674726,"ph":"E","name":"V8.Execute","args":{},"tts":620775},{"cat":"sky","pid":25863,"tid":25913,"ts":531358675162,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1266,"tdur":1203,"tts":620989},{"cat":"blink","pid":25863,"tid":25913,"ts":531358675167,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":109,"tdur":109,"tts":620993},{"cat":"blink","pid":25863,"tid":25913,"ts":531358675170,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":620996},{"cat":"blink","pid":25863,"tid":25913,"ts":531358675174,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":39,"tdur":38,"tts":621000},{"cat":"blink","pid":25863,"tid":25913,"ts":531358675182,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":31,"tdur":30,"tts":621008},{"cat":"v8","pid":25863,"tid":25913,"ts":531358675197,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":11,"tts":621023},{"cat":"v8","pid":25863,"tid":25913,"ts":531358675199,"ph":"B","name":"V8.Execute","args":{},"tts":621025},{"cat":"v8","pid":25863,"tid":25913,"ts":531358675207,"ph":"E","name":"V8.Execute","args":{},"tts":621032},{"cat":"v8","pid":25863,"tid":25913,"ts":531358675215,"ph":"X","name":"v8.callFunction","args":{},"dur":59,"tdur":58,"tts":621041},{"cat":"v8","pid":25863,"tid":25913,"ts":531358675217,"ph":"B","name":"V8.Execute","args":{},"tts":621043},{"cat":"blink","pid":25863,"tid":25913,"ts":531358675222,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":11,"tts":621047},{"cat":"v8","pid":25863,"tid":25913,"ts":531358675270,"ph":"E","name":"V8.Execute","args":{},"tts":621097},{"cat":"blink","pid":25863,"tid":25913,"ts":531358675277,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":47,"tdur":47,"tts":621103},{"cat":"blink","pid":25863,"tid":25913,"ts":531358675279,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":621105},{"cat":"blink","pid":25863,"tid":25913,"ts":531358675281,"ph":"X","name":"Document::updateStyle","args":{},"dur":33,"tdur":33,"tts":621106},{"cat":"blink","pid":25863,"tid":25913,"ts":531358675314,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":621140},{"cat":"blink","pid":25863,"tid":25913,"ts":531358675319,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":4,"tts":621145},{"cat":"sky","pid":25863,"tid":25913,"ts":531358675325,"ph":"X","name":"Layer::Display","args":{},"dur":949,"tdur":937,"tts":621151},{"cat":"sky","pid":25863,"tid":25913,"ts":531358676276,"ph":"X","name":"LayerHost::Upload","args":{},"dur":152,"tdur":100,"tts":622090},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358676442,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":45,"tdur":45,"tts":622206},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676448,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":34,"tdur":33,"tts":622212},{"cat":"v8","pid":25863,"tid":25913,"ts":531358676451,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":29,"tdur":30,"tts":622214},{"cat":"v8","pid":25863,"tid":25913,"ts":531358676454,"ph":"X","name":"v8.callFunction","args":{},"dur":25,"tdur":24,"tts":622218},{"cat":"v8","pid":25863,"tid":25913,"ts":531358676456,"ph":"B","name":"V8.Execute","args":{},"tts":622220},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676465,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":11,"tdur":10,"tts":622229},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676472,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":622236},{"cat":"v8","pid":25863,"tid":25913,"ts":531358676477,"ph":"E","name":"V8.Execute","args":{},"tts":622241},{"cat":"sky","pid":25863,"tid":25913,"ts":531358676815,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1210,"tdur":1170,"tts":622424},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676820,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":110,"tdur":110,"tts":622428},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676823,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":622431},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676827,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":39,"tdur":38,"tts":622435},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676835,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":30,"tdur":30,"tts":622443},{"cat":"v8","pid":25863,"tid":25913,"ts":531358676850,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":11,"tts":622458},{"cat":"v8","pid":25863,"tid":25913,"ts":531358676852,"ph":"B","name":"V8.Execute","args":{},"tts":622460},{"cat":"v8","pid":25863,"tid":25913,"ts":531358676860,"ph":"E","name":"V8.Execute","args":{},"tts":622468},{"cat":"v8","pid":25863,"tid":25913,"ts":531358676868,"ph":"X","name":"v8.callFunction","args":{},"dur":60,"tdur":59,"tts":622476},{"cat":"v8","pid":25863,"tid":25913,"ts":531358676870,"ph":"B","name":"V8.Execute","args":{},"tts":622478},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676874,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":12,"tdur":11,"tts":622482},{"cat":"v8","pid":25863,"tid":25913,"ts":531358676924,"ph":"E","name":"V8.Execute","args":{},"tts":622533},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676931,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":34,"tdur":34,"tts":622538},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676933,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":622541},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676934,"ph":"X","name":"Document::updateStyle","args":{},"dur":21,"tdur":20,"tts":622542},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676955,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":622563},{"cat":"blink","pid":25863,"tid":25913,"ts":531358676960,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":622568},{"cat":"sky","pid":25863,"tid":25913,"ts":531358676966,"ph":"X","name":"Layer::Display","args":{},"dur":955,"tdur":954,"tts":622574},{"cat":"sky","pid":25863,"tid":25913,"ts":531358677922,"ph":"X","name":"LayerHost::Upload","args":{},"dur":102,"tdur":63,"tts":623530},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358678038,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":41,"tdur":41,"tts":623607},{"cat":"blink","pid":25863,"tid":25913,"ts":531358678042,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":32,"tts":623611},{"cat":"v8","pid":25863,"tid":25913,"ts":531358678045,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":28,"tts":623614},{"cat":"v8","pid":25863,"tid":25913,"ts":531358678048,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":23,"tts":623617},{"cat":"v8","pid":25863,"tid":25913,"ts":531358678050,"ph":"B","name":"V8.Execute","args":{},"tts":623619},{"cat":"blink","pid":25863,"tid":25913,"ts":531358678058,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":11,"tdur":9,"tts":623628},{"cat":"blink","pid":25863,"tid":25913,"ts":531358678065,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":623634},{"cat":"v8","pid":25863,"tid":25913,"ts":531358678070,"ph":"E","name":"V8.Execute","args":{},"tts":623639},{"cat":"sky","pid":25863,"tid":25913,"ts":531358735602,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2183,"tdur":2002,"tts":623802},{"cat":"blink","pid":25863,"tid":25913,"ts":531358735606,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":108,"tdur":108,"tts":623806},{"cat":"blink","pid":25863,"tid":25913,"ts":531358735609,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":623809},{"cat":"blink","pid":25863,"tid":25913,"ts":531358735613,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":38,"tdur":37,"tts":623813},{"cat":"blink","pid":25863,"tid":25913,"ts":531358735621,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":30,"tdur":29,"tts":623821},{"cat":"v8","pid":25863,"tid":25913,"ts":531358735637,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":623836},{"cat":"v8","pid":25863,"tid":25913,"ts":531358735639,"ph":"B","name":"V8.Execute","args":{},"tts":623838},{"cat":"v8","pid":25863,"tid":25913,"ts":531358735645,"ph":"E","name":"V8.Execute","args":{},"tts":623845},{"cat":"v8","pid":25863,"tid":25913,"ts":531358735653,"ph":"X","name":"v8.callFunction","args":{},"dur":59,"tdur":58,"tts":623853},{"cat":"v8","pid":25863,"tid":25913,"ts":531358735655,"ph":"B","name":"V8.Execute","args":{},"tts":623855},{"cat":"blink","pid":25863,"tid":25913,"ts":531358735663,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":11,"tts":623862},{"cat":"v8","pid":25863,"tid":25913,"ts":531358735709,"ph":"E","name":"V8.Execute","args":{},"tts":623909},{"cat":"blink","pid":25863,"tid":25913,"ts":531358735715,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":31,"tdur":31,"tts":623914},{"cat":"blink","pid":25863,"tid":25913,"ts":531358735717,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":623916},{"cat":"blink","pid":25863,"tid":25913,"ts":531358735718,"ph":"X","name":"Document::updateStyle","args":{},"dur":20,"tdur":18,"tts":623918},{"cat":"blink","pid":25863,"tid":25913,"ts":531358735738,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":623938},{"cat":"blink","pid":25863,"tid":25913,"ts":531358735742,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":4,"tts":623941},{"cat":"sky","pid":25863,"tid":25913,"ts":531358735747,"ph":"X","name":"Layer::Display","args":{},"dur":1728,"tdur":1727,"tts":623946},{"cat":"sky","pid":25863,"tid":25913,"ts":531358737477,"ph":"X","name":"LayerHost::Upload","args":{},"dur":308,"tdur":126,"tts":625677},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358737798,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":40,"tdur":39,"tts":625818},{"cat":"blink","pid":25863,"tid":25913,"ts":531358737803,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":30,"tdur":29,"tts":625823},{"cat":"v8","pid":25863,"tid":25913,"ts":531358737806,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":26,"tdur":26,"tts":625825},{"cat":"v8","pid":25863,"tid":25913,"ts":531358737808,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":625828},{"cat":"v8","pid":25863,"tid":25913,"ts":531358737810,"ph":"B","name":"V8.Execute","args":{},"tts":625829},{"cat":"blink","pid":25863,"tid":25913,"ts":531358737819,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":625839},{"cat":"blink","pid":25863,"tid":25913,"ts":531358737825,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":625844},{"cat":"v8","pid":25863,"tid":25913,"ts":531358737829,"ph":"E","name":"V8.Execute","args":{},"tts":625849},{"cat":"sky","pid":25863,"tid":25913,"ts":531358738217,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1091,"tdur":1015,"tts":626031},{"cat":"blink","pid":25863,"tid":25913,"ts":531358738221,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":96,"tdur":95,"tts":626035},{"cat":"blink","pid":25863,"tid":25913,"ts":531358738224,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":626038},{"cat":"blink","pid":25863,"tid":25913,"ts":531358738228,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":34,"tdur":34,"tts":626041},{"cat":"blink","pid":25863,"tid":25913,"ts":531358738234,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":27,"tdur":27,"tts":626048},{"cat":"v8","pid":25863,"tid":25913,"ts":531358738248,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":626062},{"cat":"v8","pid":25863,"tid":25913,"ts":531358738250,"ph":"B","name":"V8.Execute","args":{},"tts":626063},{"cat":"v8","pid":25863,"tid":25913,"ts":531358738256,"ph":"E","name":"V8.Execute","args":{},"tts":626070},{"cat":"v8","pid":25863,"tid":25913,"ts":531358738264,"ph":"X","name":"v8.callFunction","args":{},"dur":51,"tdur":50,"tts":626078},{"cat":"v8","pid":25863,"tid":25913,"ts":531358738265,"ph":"B","name":"V8.Execute","args":{},"tts":626079},{"cat":"blink","pid":25863,"tid":25913,"ts":531358738269,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":626083},{"cat":"v8","pid":25863,"tid":25913,"ts":531358738312,"ph":"E","name":"V8.Execute","args":{},"tts":626126},{"cat":"blink","pid":25863,"tid":25913,"ts":531358738317,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":30,"tdur":29,"tts":626131},{"cat":"blink","pid":25863,"tid":25913,"ts":531358738319,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":626133},{"cat":"blink","pid":25863,"tid":25913,"ts":531358738320,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":626134},{"cat":"blink","pid":25863,"tid":25913,"ts":531358738339,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":626152},{"cat":"blink","pid":25863,"tid":25913,"ts":531358738343,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":626156},{"cat":"sky","pid":25863,"tid":25913,"ts":531358738347,"ph":"X","name":"Layer::Display","args":{},"dur":791,"tdur":790,"tts":626161},{"cat":"sky","pid":25863,"tid":25913,"ts":531358739139,"ph":"X","name":"LayerHost::Upload","args":{},"dur":168,"tdur":92,"tts":626953},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358739319,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":41,"tdur":41,"tts":627058},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739324,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":31,"tts":627063},{"cat":"v8","pid":25863,"tid":25913,"ts":531358739327,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":28,"tts":627065},{"cat":"v8","pid":25863,"tid":25913,"ts":531358739329,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":24,"tts":627068},{"cat":"v8","pid":25863,"tid":25913,"ts":531358739331,"ph":"B","name":"V8.Execute","args":{},"tts":627070},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739340,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":11,"tdur":10,"tts":627079},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739347,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":627086},{"cat":"v8","pid":25863,"tid":25913,"ts":531358739352,"ph":"E","name":"V8.Execute","args":{},"tts":627090},{"cat":"sky","pid":25863,"tid":25913,"ts":531358739724,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1110,"tdur":1052,"tts":627273},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739728,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":111,"tdur":110,"tts":627277},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739731,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":627280},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739734,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":49,"tdur":48,"tts":627283},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739741,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":42,"tdur":41,"tts":627290},{"cat":"v8","pid":25863,"tid":25913,"ts":531358739754,"ph":"X","name":"v8.callFunction","args":{},"dur":25,"tdur":24,"tts":627303},{"cat":"v8","pid":25863,"tid":25913,"ts":531358739756,"ph":"B","name":"V8.Execute","args":{},"tts":627305},{"cat":"v8","pid":25863,"tid":25913,"ts":531358739777,"ph":"E","name":"V8.Execute","args":{},"tts":627325},{"cat":"v8","pid":25863,"tid":25913,"ts":531358739785,"ph":"X","name":"v8.callFunction","args":{},"dur":52,"tdur":51,"tts":627334},{"cat":"v8","pid":25863,"tid":25913,"ts":531358739787,"ph":"B","name":"V8.Execute","args":{},"tts":627335},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739791,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":627339},{"cat":"v8","pid":25863,"tid":25913,"ts":531358739834,"ph":"E","name":"V8.Execute","args":{},"tts":627382},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739839,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":30,"tdur":29,"tts":627388},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739841,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":627389},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739842,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":627391},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739861,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":627409},{"cat":"blink","pid":25863,"tid":25913,"ts":531358739864,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":627413},{"cat":"sky","pid":25863,"tid":25913,"ts":531358739869,"ph":"X","name":"Layer::Display","args":{},"dur":817,"tdur":807,"tts":627418},{"cat":"sky","pid":25863,"tid":25913,"ts":531358740687,"ph":"X","name":"LayerHost::Upload","args":{},"dur":146,"tdur":96,"tts":628227},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358740846,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":42,"tdur":41,"tts":628337},{"cat":"blink","pid":25863,"tid":25913,"ts":531358740855,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":28,"tts":628346},{"cat":"v8","pid":25863,"tid":25913,"ts":531358740857,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":25,"tts":628348},{"cat":"v8","pid":25863,"tid":25913,"ts":531358740860,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":628351},{"cat":"v8","pid":25863,"tid":25913,"ts":531358740862,"ph":"B","name":"V8.Execute","args":{},"tts":628353},{"cat":"blink","pid":25863,"tid":25913,"ts":531358740870,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":628361},{"cat":"blink","pid":25863,"tid":25913,"ts":531358740875,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":628366},{"cat":"v8","pid":25863,"tid":25913,"ts":531358740880,"ph":"E","name":"V8.Execute","args":{},"tts":628370},{"cat":"sky","pid":25863,"tid":25913,"ts":531358741225,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1046,"tdur":1011,"tts":628548},{"cat":"blink","pid":25863,"tid":25913,"ts":531358741229,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":95,"tdur":94,"tts":628551},{"cat":"blink","pid":25863,"tid":25913,"ts":531358741232,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":628554},{"cat":"blink","pid":25863,"tid":25913,"ts":531358741235,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":34,"tdur":34,"tts":628557},{"cat":"blink","pid":25863,"tid":25913,"ts":531358741242,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":27,"tdur":26,"tts":628564},{"cat":"v8","pid":25863,"tid":25913,"ts":531358741255,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":628577},{"cat":"v8","pid":25863,"tid":25913,"ts":531358741257,"ph":"B","name":"V8.Execute","args":{},"tts":628579},{"cat":"v8","pid":25863,"tid":25913,"ts":531358741263,"ph":"E","name":"V8.Execute","args":{},"tts":628586},{"cat":"v8","pid":25863,"tid":25913,"ts":531358741271,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":50,"tts":628593},{"cat":"v8","pid":25863,"tid":25913,"ts":531358741272,"ph":"B","name":"V8.Execute","args":{},"tts":628595},{"cat":"blink","pid":25863,"tid":25913,"ts":531358741276,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":628598},{"cat":"v8","pid":25863,"tid":25913,"ts":531358741319,"ph":"E","name":"V8.Execute","args":{},"tts":628641},{"cat":"blink","pid":25863,"tid":25913,"ts":531358741324,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":29,"tts":628646},{"cat":"blink","pid":25863,"tid":25913,"ts":531358741326,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":628648},{"cat":"blink","pid":25863,"tid":25913,"ts":531358741327,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":628649},{"cat":"blink","pid":25863,"tid":25913,"ts":531358741345,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":628667},{"cat":"blink","pid":25863,"tid":25913,"ts":531358741349,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":628671},{"cat":"sky","pid":25863,"tid":25913,"ts":531358741354,"ph":"X","name":"Layer::Display","args":{},"dur":793,"tdur":792,"tts":628676},{"cat":"sky","pid":25863,"tid":25913,"ts":531358742148,"ph":"X","name":"LayerHost::Upload","args":{},"dur":122,"tdur":87,"tts":629471},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358742317,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":40,"tdur":39,"tts":629607},{"cat":"blink","pid":25863,"tid":25913,"ts":531358742322,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":30,"tdur":29,"tts":629612},{"cat":"v8","pid":25863,"tid":25913,"ts":531358742325,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":26,"tdur":26,"tts":629614},{"cat":"v8","pid":25863,"tid":25913,"ts":531358742327,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":629617},{"cat":"v8","pid":25863,"tid":25913,"ts":531358742329,"ph":"B","name":"V8.Execute","args":{},"tts":629618},{"cat":"blink","pid":25863,"tid":25913,"ts":531358742337,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":629627},{"cat":"blink","pid":25863,"tid":25913,"ts":531358742344,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":629633},{"cat":"v8","pid":25863,"tid":25913,"ts":531358742348,"ph":"E","name":"V8.Execute","args":{},"tts":629637},{"cat":"sky","pid":25863,"tid":25913,"ts":531358820252,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2930,"tdur":2772,"tts":629769},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820257,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":258,"tdur":258,"tts":629772},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820260,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":629775},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820263,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":82,"tdur":82,"tts":629778},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820270,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":74,"tdur":74,"tts":629785},{"cat":"v8","pid":25863,"tid":25913,"ts":531358820311,"ph":"X","name":"v8.callFunction","args":{},"dur":26,"tdur":25,"tts":629827},{"cat":"v8","pid":25863,"tid":25913,"ts":531358820316,"ph":"B","name":"V8.Execute","args":{},"tts":629831},{"cat":"v8","pid":25863,"tid":25913,"ts":531358820333,"ph":"E","name":"V8.Execute","args":{},"tts":629848},{"cat":"v8","pid":25863,"tid":25913,"ts":531358820350,"ph":"X","name":"v8.callFunction","args":{},"dur":162,"tdur":162,"tts":629866},{"cat":"v8","pid":25863,"tid":25913,"ts":531358820353,"ph":"B","name":"V8.Execute","args":{},"tts":629869},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820362,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":23,"tdur":22,"tts":629878},{"cat":"v8","pid":25863,"tid":25913,"ts":531358820509,"ph":"E","name":"V8.Execute","args":{},"tts":630025},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820515,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":652,"tdur":652,"tts":630030},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820517,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":630032},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820518,"ph":"X","name":"Document::updateStyle","args":{},"dur":111,"tdur":109,"tts":630034},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820631,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":630147},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820636,"ph":"X","name":"FrameView::layout","args":{},"dur":56,"tdur":55,"tts":630152},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820639,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":4,"tdur":3,"tts":630155},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820645,"ph":"X","name":"FrameView::performLayout","args":{},"dur":35,"tdur":35,"tts":630160},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820680,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":3,"tdur":2,"tts":630196},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820683,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":7,"tdur":7,"tts":630198},{"cat":"blink","pid":25863,"tid":25913,"ts":531358820695,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":470,"tdur":469,"tts":630210},{"cat":"sky","pid":25863,"tid":25913,"ts":531358821169,"ph":"X","name":"Layer::Display","args":{},"dur":1666,"tdur":1663,"tts":630685},{"cat":"sky","pid":25863,"tid":25913,"ts":531358822837,"ph":"X","name":"LayerHost::Upload","args":{},"dur":343,"tdur":185,"tts":632353},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358823209,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":73,"tdur":72,"tts":632569},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823220,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":57,"tdur":56,"tts":632580},{"cat":"v8","pid":25863,"tid":25913,"ts":531358823226,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":50,"tdur":49,"tts":632586},{"cat":"v8","pid":25863,"tid":25913,"ts":531358823232,"ph":"X","name":"v8.callFunction","args":{},"dur":43,"tdur":42,"tts":632592},{"cat":"v8","pid":25863,"tid":25913,"ts":531358823236,"ph":"B","name":"V8.Execute","args":{},"tts":632595},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823260,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":12,"tdur":11,"tts":632620},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823269,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":632628},{"cat":"v8","pid":25863,"tid":25913,"ts":531358823273,"ph":"E","name":"V8.Execute","args":{},"tts":632633},{"cat":"sky","pid":25863,"tid":25913,"ts":531358823650,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1043,"tdur":953,"tts":632803},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823654,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":88,"tdur":88,"tts":632806},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823657,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":632809},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823660,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":31,"tts":632812},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823666,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":23,"tts":632819},{"cat":"v8","pid":25863,"tid":25913,"ts":531358823678,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":632830},{"cat":"v8","pid":25863,"tid":25913,"ts":531358823680,"ph":"B","name":"V8.Execute","args":{},"tts":632832},{"cat":"v8","pid":25863,"tid":25913,"ts":531358823686,"ph":"E","name":"V8.Execute","args":{},"tts":632838},{"cat":"v8","pid":25863,"tid":25913,"ts":531358823693,"ph":"X","name":"v8.callFunction","args":{},"dur":47,"tdur":47,"tts":632845},{"cat":"v8","pid":25863,"tid":25913,"ts":531358823694,"ph":"B","name":"V8.Execute","args":{},"tts":632847},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823698,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":8,"tdur":8,"tts":632850},{"cat":"v8","pid":25863,"tid":25913,"ts":531358823738,"ph":"E","name":"V8.Execute","args":{},"tts":632890},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823743,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":27,"tdur":27,"tts":632895},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823744,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":632897},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823746,"ph":"X","name":"Document::updateStyle","args":{},"dur":16,"tdur":16,"tts":632898},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823762,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":632915},{"cat":"blink","pid":25863,"tid":25913,"ts":531358823766,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":2,"tts":632919},{"cat":"sky","pid":25863,"tid":25913,"ts":531358823771,"ph":"X","name":"Layer::Display","args":{},"dur":748,"tdur":740,"tts":632923},{"cat":"sky","pid":25863,"tid":25913,"ts":531358824520,"ph":"X","name":"LayerHost::Upload","args":{},"dur":172,"tdur":90,"tts":633665},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358824767,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":37,"tdur":36,"tts":633809},{"cat":"blink","pid":25863,"tid":25913,"ts":531358824772,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":28,"tdur":27,"tts":633814},{"cat":"v8","pid":25863,"tid":25913,"ts":531358824774,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":24,"tts":633816},{"cat":"v8","pid":25863,"tid":25913,"ts":531358824777,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":633818},{"cat":"v8","pid":25863,"tid":25913,"ts":531358824778,"ph":"B","name":"V8.Execute","args":{},"tts":633820},{"cat":"blink","pid":25863,"tid":25913,"ts":531358824786,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":633828},{"cat":"blink","pid":25863,"tid":25913,"ts":531358824792,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":633834},{"cat":"v8","pid":25863,"tid":25913,"ts":531358824796,"ph":"E","name":"V8.Execute","args":{},"tts":633838},{"cat":"sky","pid":25863,"tid":25913,"ts":531358825133,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1598,"tdur":1532,"tts":633993},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825137,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":280,"tdur":279,"tts":633996},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825140,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":633998},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825143,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":31,"tts":634001},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825149,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":24,"tts":634008},{"cat":"v8","pid":25863,"tid":25913,"ts":531358825161,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":9,"tts":634020},{"cat":"v8","pid":25863,"tid":25913,"ts":531358825163,"ph":"B","name":"V8.Execute","args":{},"tts":634021},{"cat":"v8","pid":25863,"tid":25913,"ts":531358825169,"ph":"E","name":"V8.Execute","args":{},"tts":634027},{"cat":"v8","pid":25863,"tid":25913,"ts":531358825176,"ph":"X","name":"v8.callFunction","args":{},"dur":238,"tdur":237,"tts":634034},{"cat":"v8","pid":25863,"tid":25913,"ts":531358825177,"ph":"B","name":"V8.Execute","args":{},"tts":634036},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825181,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":634039},{"cat":"v8","pid":25863,"tid":25913,"ts":531358825329,"ph":"E","name":"V8.Execute","args":{},"tts":634188},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825417,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":420,"tdur":419,"tts":634276},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825420,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":634278},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825421,"ph":"X","name":"Document::updateStyle","args":{},"dur":83,"tdur":82,"tts":634280},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825505,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":6},"tts":634364},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825507,"ph":"X","name":"FrameView::layout","args":{},"dur":130,"tdur":129,"tts":634366},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825509,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":1,"tdur":1,"tts":634367},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825511,"ph":"X","name":"FrameView::performLayout","args":{},"dur":117,"tdur":117,"tts":634369},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825629,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":3,"tdur":2,"tts":634488},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825632,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":4,"tdur":3,"tts":634491},{"cat":"blink","pid":25863,"tid":25913,"ts":531358825639,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":197,"tdur":196,"tts":634498},{"cat":"sky","pid":25863,"tid":25913,"ts":531358825838,"ph":"X","name":"Layer::Display","args":{},"dur":737,"tdur":737,"tts":634696},{"cat":"sky","pid":25863,"tid":25913,"ts":531358826576,"ph":"X","name":"LayerHost::Upload","args":{},"dur":154,"tdur":88,"tts":635435},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358826742,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":36,"tdur":35,"tts":635536},{"cat":"blink","pid":25863,"tid":25913,"ts":531358826746,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":27,"tts":635540},{"cat":"v8","pid":25863,"tid":25913,"ts":531358826749,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":23,"tdur":23,"tts":635543},{"cat":"v8","pid":25863,"tid":25913,"ts":531358826751,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":20,"tts":635545},{"cat":"v8","pid":25863,"tid":25913,"ts":531358826753,"ph":"B","name":"V8.Execute","args":{},"tts":635547},{"cat":"blink","pid":25863,"tid":25913,"ts":531358826760,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":635554},{"cat":"blink","pid":25863,"tid":25913,"ts":531358826766,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":635560},{"cat":"v8","pid":25863,"tid":25913,"ts":531358826770,"ph":"E","name":"V8.Execute","args":{},"tts":635564},{"cat":"sky","pid":25863,"tid":25913,"ts":531358827111,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1015,"tdur":958,"tts":635740},{"cat":"blink","pid":25863,"tid":25913,"ts":531358827115,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":95,"tdur":94,"tts":635743},{"cat":"blink","pid":25863,"tid":25913,"ts":531358827117,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":11,"tdur":10,"tts":635745},{"cat":"blink","pid":25863,"tid":25913,"ts":531358827129,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":30,"tdur":29,"tts":635757},{"cat":"blink","pid":25863,"tid":25913,"ts":531358827134,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":24,"tdur":24,"tts":635762},{"cat":"v8","pid":25863,"tid":25913,"ts":531358827146,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":9,"tts":635774},{"cat":"v8","pid":25863,"tid":25913,"ts":531358827147,"ph":"B","name":"V8.Execute","args":{},"tts":635775},{"cat":"v8","pid":25863,"tid":25913,"ts":531358827153,"ph":"E","name":"V8.Execute","args":{},"tts":635782},{"cat":"v8","pid":25863,"tid":25913,"ts":531358827160,"ph":"X","name":"v8.callFunction","args":{},"dur":48,"tdur":47,"tts":635788},{"cat":"v8","pid":25863,"tid":25913,"ts":531358827162,"ph":"B","name":"V8.Execute","args":{},"tts":635790},{"cat":"blink","pid":25863,"tid":25913,"ts":531358827165,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":635793},{"cat":"v8","pid":25863,"tid":25913,"ts":531358827205,"ph":"E","name":"V8.Execute","args":{},"tts":635833},{"cat":"blink","pid":25863,"tid":25913,"ts":531358827210,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":32,"tts":635838},{"cat":"blink","pid":25863,"tid":25913,"ts":531358827212,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":635840},{"cat":"blink","pid":25863,"tid":25913,"ts":531358827213,"ph":"X","name":"Document::updateStyle","args":{},"dur":21,"tdur":20,"tts":635841},{"cat":"blink","pid":25863,"tid":25913,"ts":531358827234,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":635862},{"cat":"blink","pid":25863,"tid":25913,"ts":531358827238,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":635866},{"cat":"sky","pid":25863,"tid":25913,"ts":531358827243,"ph":"X","name":"Layer::Display","args":{},"dur":732,"tdur":731,"tts":635871},{"cat":"sky","pid":25863,"tid":25913,"ts":531358827976,"ph":"X","name":"LayerHost::Upload","args":{},"dur":149,"tdur":93,"tts":636604},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358828263,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":37,"tdur":36,"tts":636761},{"cat":"blink","pid":25863,"tid":25913,"ts":531358828268,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":28,"tts":636765},{"cat":"v8","pid":25863,"tid":25913,"ts":531358828270,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":24,"tdur":24,"tts":636767},{"cat":"v8","pid":25863,"tid":25913,"ts":531358828273,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":20,"tts":636770},{"cat":"v8","pid":25863,"tid":25913,"ts":531358828274,"ph":"B","name":"V8.Execute","args":{},"tts":636772},{"cat":"blink","pid":25863,"tid":25913,"ts":531358828282,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":636779},{"cat":"blink","pid":25863,"tid":25913,"ts":531358828288,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":3,"tts":636785},{"cat":"v8","pid":25863,"tid":25913,"ts":531358828292,"ph":"E","name":"V8.Execute","args":{},"tts":636789},{"cat":"sky","pid":25863,"tid":25913,"ts":531358902089,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1531,"tdur":1443,"tts":636910},{"cat":"blink","pid":25863,"tid":25913,"ts":531358902099,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":245,"tdur":244,"tts":636919},{"cat":"blink","pid":25863,"tid":25913,"ts":531358902107,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":636927},{"cat":"blink","pid":25863,"tid":25913,"ts":531358902116,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":91,"tdur":92,"tts":636935},{"cat":"blink","pid":25863,"tid":25913,"ts":531358902134,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":73,"tdur":72,"tts":636954},{"cat":"v8","pid":25863,"tid":25913,"ts":531358902176,"ph":"X","name":"v8.callFunction","args":{},"dur":27,"tdur":26,"tts":636996},{"cat":"v8","pid":25863,"tid":25913,"ts":531358902179,"ph":"B","name":"V8.Execute","args":{},"tts":636999},{"cat":"v8","pid":25863,"tid":25913,"ts":531358902200,"ph":"E","name":"V8.Execute","args":{},"tts":637019},{"cat":"v8","pid":25863,"tid":25913,"ts":531358902211,"ph":"X","name":"v8.callFunction","args":{},"dur":130,"tdur":130,"tts":637031},{"cat":"v8","pid":25863,"tid":25913,"ts":531358902213,"ph":"B","name":"V8.Execute","args":{},"tts":637033},{"cat":"blink","pid":25863,"tid":25913,"ts":531358902223,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":28,"tdur":29,"tts":637042},{"cat":"v8","pid":25863,"tid":25913,"ts":531358902338,"ph":"E","name":"V8.Execute","args":{},"tts":637159},{"cat":"blink","pid":25863,"tid":25913,"ts":531358902344,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":73,"tdur":73,"tts":637164},{"cat":"blink","pid":25863,"tid":25913,"ts":531358902347,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":637167},{"cat":"blink","pid":25863,"tid":25913,"ts":531358902348,"ph":"X","name":"Document::updateStyle","args":{},"dur":53,"tdur":52,"tts":637168},{"cat":"blink","pid":25863,"tid":25913,"ts":531358902402,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":637221},{"cat":"blink","pid":25863,"tid":25913,"ts":531358902410,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":7,"tdur":6,"tts":637230},{"cat":"sky","pid":25863,"tid":25913,"ts":531358902419,"ph":"X","name":"Layer::Display","args":{},"dur":983,"tdur":982,"tts":637239},{"cat":"sky","pid":25863,"tid":25913,"ts":531358903403,"ph":"X","name":"LayerHost::Upload","args":{},"dur":216,"tdur":129,"tts":638223},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358903638,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":47,"tdur":46,"tts":638372},{"cat":"blink","pid":25863,"tid":25913,"ts":531358903644,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":36,"tdur":36,"tts":638377},{"cat":"v8","pid":25863,"tid":25913,"ts":531358903647,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":32,"tdur":32,"tts":638380},{"cat":"v8","pid":25863,"tid":25913,"ts":531358903650,"ph":"X","name":"v8.callFunction","args":{},"dur":28,"tdur":28,"tts":638383},{"cat":"v8","pid":25863,"tid":25913,"ts":531358903651,"ph":"B","name":"V8.Execute","args":{},"tts":638385},{"cat":"blink","pid":25863,"tid":25913,"ts":531358903666,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":638400},{"cat":"blink","pid":25863,"tid":25913,"ts":531358903672,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":638405},{"cat":"v8","pid":25863,"tid":25913,"ts":531358903676,"ph":"E","name":"V8.Execute","args":{},"tts":638409},{"cat":"sky","pid":25863,"tid":25913,"ts":531358904153,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1016,"tdur":947,"tts":638586},{"cat":"blink","pid":25863,"tid":25913,"ts":531358904157,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":89,"tdur":88,"tts":638589},{"cat":"blink","pid":25863,"tid":25913,"ts":531358904160,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":638592},{"cat":"blink","pid":25863,"tid":25913,"ts":531358904163,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":31,"tts":638595},{"cat":"blink","pid":25863,"tid":25913,"ts":531358904169,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":638601},{"cat":"v8","pid":25863,"tid":25913,"ts":531358904181,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":638613},{"cat":"v8","pid":25863,"tid":25913,"ts":531358904183,"ph":"B","name":"V8.Execute","args":{},"tts":638615},{"cat":"v8","pid":25863,"tid":25913,"ts":531358904189,"ph":"E","name":"V8.Execute","args":{},"tts":638621},{"cat":"v8","pid":25863,"tid":25913,"ts":531358904196,"ph":"X","name":"v8.callFunction","args":{},"dur":48,"tdur":48,"tts":638628},{"cat":"v8","pid":25863,"tid":25913,"ts":531358904198,"ph":"B","name":"V8.Execute","args":{},"tts":638630},{"cat":"blink","pid":25863,"tid":25913,"ts":531358904201,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":638633},{"cat":"v8","pid":25863,"tid":25913,"ts":531358904241,"ph":"E","name":"V8.Execute","args":{},"tts":638674},{"cat":"blink","pid":25863,"tid":25913,"ts":531358904246,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":36,"tdur":36,"tts":638678},{"cat":"blink","pid":25863,"tid":25913,"ts":531358904256,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":638688},{"cat":"blink","pid":25863,"tid":25913,"ts":531358904257,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":17,"tts":638689},{"cat":"blink","pid":25863,"tid":25913,"ts":531358904274,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":638706},{"cat":"blink","pid":25863,"tid":25913,"ts":531358904278,"ph":"X","name":"FrameView::invalidateTree","args":{"root":"��ף&+"},"dur":4,"tdur":3,"tts":638710},{"cat":"sky","pid":25863,"tid":25913,"ts":531358904283,"ph":"X","name":"Layer::Display","args":{},"dur":725,"tdur":724,"tts":638715},{"cat":"sky","pid":25863,"tid":25913,"ts":531358905009,"ph":"X","name":"LayerHost::Upload","args":{},"dur":159,"tdur":91,"tts":639441},{"cat":"sky","pid":25863,"tid":25913,"ts":531358905550,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":977,"tdur":927,"tts":639731},{"cat":"blink","pid":25863,"tid":25913,"ts":531358905554,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":84,"tdur":83,"tts":639734},{"cat":"blink","pid":25863,"tid":25913,"ts":531358905556,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":639737},{"cat":"blink","pid":25863,"tid":25913,"ts":531358905559,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":31,"tts":639739},{"cat":"blink","pid":25863,"tid":25913,"ts":531358905565,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":24,"tts":639746},{"cat":"v8","pid":25863,"tid":25913,"ts":531358905577,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":639758},{"cat":"v8","pid":25863,"tid":25913,"ts":531358905579,"ph":"B","name":"V8.Execute","args":{},"tts":639759},{"cat":"v8","pid":25863,"tid":25913,"ts":531358905585,"ph":"E","name":"V8.Execute","args":{},"tts":639765},{"cat":"v8","pid":25863,"tid":25913,"ts":531358905592,"ph":"X","name":"v8.callFunction","args":{},"dur":44,"tdur":43,"tts":639772},{"cat":"v8","pid":25863,"tid":25913,"ts":531358905594,"ph":"B","name":"V8.Execute","args":{},"tts":639774},{"cat":"blink","pid":25863,"tid":25913,"ts":531358905597,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":639777},{"cat":"v8","pid":25863,"tid":25913,"ts":531358905633,"ph":"E","name":"V8.Execute","args":{},"tts":639813},{"cat":"blink","pid":25863,"tid":25913,"ts":531358905638,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":27,"tdur":27,"tts":639818},{"cat":"blink","pid":25863,"tid":25913,"ts":531358905640,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":639820},{"cat":"blink","pid":25863,"tid":25913,"ts":531358905641,"ph":"X","name":"Document::updateStyle","args":{},"dur":16,"tdur":16,"tts":639821},{"cat":"blink","pid":25863,"tid":25913,"ts":531358905658,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":639838},{"cat":"blink","pid":25863,"tid":25913,"ts":531358905661,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":639842},{"cat":"sky","pid":25863,"tid":25913,"ts":531358905666,"ph":"X","name":"Layer::Display","args":{},"dur":728,"tdur":727,"tts":639846},{"cat":"sky","pid":25863,"tid":25913,"ts":531358906395,"ph":"X","name":"LayerHost::Upload","args":{},"dur":131,"tdur":82,"tts":640575},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358906537,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":35,"tdur":35,"tts":640669},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906541,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":27,"tts":640673},{"cat":"v8","pid":25863,"tid":25913,"ts":531358906544,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":23,"tdur":23,"tts":640676},{"cat":"v8","pid":25863,"tid":25913,"ts":531358906546,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":20,"tts":640678},{"cat":"v8","pid":25863,"tid":25913,"ts":531358906548,"ph":"B","name":"V8.Execute","args":{},"tts":640680},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906555,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":8,"tts":640687},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906560,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":640693},{"cat":"v8","pid":25863,"tid":25913,"ts":531358906564,"ph":"E","name":"V8.Execute","args":{},"tts":640696},{"cat":"sky","pid":25863,"tid":25913,"ts":531358906884,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":979,"tdur":927,"tts":640868},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906888,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":89,"tdur":89,"tts":640871},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906890,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":640873},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906893,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":32,"tdur":31,"tts":640876},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906900,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":24,"tdur":24,"tts":640883},{"cat":"v8","pid":25863,"tid":25913,"ts":531358906912,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":9,"tts":640895},{"cat":"v8","pid":25863,"tid":25913,"ts":531358906913,"ph":"B","name":"V8.Execute","args":{},"tts":640896},{"cat":"v8","pid":25863,"tid":25913,"ts":531358906919,"ph":"E","name":"V8.Execute","args":{},"tts":640902},{"cat":"v8","pid":25863,"tid":25913,"ts":531358906926,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":640910},{"cat":"v8","pid":25863,"tid":25913,"ts":531358906928,"ph":"B","name":"V8.Execute","args":{},"tts":640911},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906931,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":14,"tdur":14,"tts":640914},{"cat":"v8","pid":25863,"tid":25913,"ts":531358906972,"ph":"E","name":"V8.Execute","args":{},"tts":640955},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906977,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":27,"tts":640960},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906979,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":640962},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906980,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":640963},{"cat":"blink","pid":25863,"tid":25913,"ts":531358906997,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":640980},{"cat":"blink","pid":25863,"tid":25913,"ts":531358907001,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":640984},{"cat":"sky","pid":25863,"tid":25913,"ts":531358907005,"ph":"X","name":"Layer::Display","args":{},"dur":724,"tdur":723,"tts":640988},{"cat":"sky","pid":25863,"tid":25913,"ts":531358907730,"ph":"X","name":"LayerHost::Upload","args":{},"dur":132,"tdur":81,"tts":641713},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358907873,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":36,"tdur":36,"tts":641806},{"cat":"blink","pid":25863,"tid":25913,"ts":531358907877,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":27,"tts":641810},{"cat":"v8","pid":25863,"tid":25913,"ts":531358907880,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":23,"tdur":23,"tts":641813},{"cat":"v8","pid":25863,"tid":25913,"ts":531358907882,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":20,"tts":641815},{"cat":"v8","pid":25863,"tid":25913,"ts":531358907884,"ph":"B","name":"V8.Execute","args":{},"tts":641817},{"cat":"blink","pid":25863,"tid":25913,"ts":531358907892,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":8,"tts":641825},{"cat":"blink","pid":25863,"tid":25913,"ts":531358907897,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":641830},{"cat":"v8","pid":25863,"tid":25913,"ts":531358907901,"ph":"E","name":"V8.Execute","args":{},"tts":641834},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358908986,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":46,"tdur":46,"tts":641983},{"cat":"blink","pid":25863,"tid":25913,"ts":531358908991,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":36,"tdur":35,"tts":641988},{"cat":"v8","pid":25863,"tid":25913,"ts":531358908994,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":31,"tdur":31,"tts":641991},{"cat":"v8","pid":25863,"tid":25913,"ts":531358908996,"ph":"X","name":"v8.callFunction","args":{},"dur":28,"tdur":28,"tts":641993},{"cat":"v8","pid":25863,"tid":25913,"ts":531358909007,"ph":"B","name":"V8.Execute","args":{},"tts":642004},{"cat":"blink","pid":25863,"tid":25913,"ts":531358909014,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":8,"tts":642011},{"cat":"blink","pid":25863,"tid":25913,"ts":531358909019,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":642016},{"cat":"v8","pid":25863,"tid":25913,"ts":531358909023,"ph":"E","name":"V8.Execute","args":{},"tts":642020},{"cat":"sky","pid":25863,"tid":25913,"ts":531358971040,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":3082,"tdur":2904,"tts":642158},{"cat":"blink","pid":25863,"tid":25913,"ts":531358971051,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":387,"tdur":387,"tts":642167},{"cat":"blink","pid":25863,"tid":25913,"ts":531358971060,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":2,"tts":642177},{"cat":"blink","pid":25863,"tid":25913,"ts":531358971069,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":146,"tdur":147,"tts":642185},{"cat":"blink","pid":25863,"tid":25913,"ts":531358971099,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":116,"tdur":115,"tts":642216},{"cat":"v8","pid":25863,"tid":25913,"ts":531358971163,"ph":"X","name":"v8.callFunction","args":{},"dur":42,"tdur":42,"tts":642280},{"cat":"v8","pid":25863,"tid":25913,"ts":531358971168,"ph":"B","name":"V8.Execute","args":{},"tts":642285},{"cat":"v8","pid":25863,"tid":25913,"ts":531358971200,"ph":"E","name":"V8.Execute","args":{},"tts":642317},{"cat":"v8","pid":25863,"tid":25913,"ts":531358971223,"ph":"X","name":"v8.callFunction","args":{},"dur":209,"tdur":208,"tts":642340},{"cat":"v8","pid":25863,"tid":25913,"ts":531358971227,"ph":"B","name":"V8.Execute","args":{},"tts":642343},{"cat":"blink","pid":25863,"tid":25913,"ts":531358971242,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":44,"tdur":43,"tts":642359},{"cat":"v8","pid":25863,"tid":25913,"ts":531358971426,"ph":"E","name":"V8.Execute","args":{},"tts":642543},{"cat":"blink","pid":25863,"tid":25913,"ts":531358971439,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":117,"tdur":116,"tts":642556},{"cat":"blink","pid":25863,"tid":25913,"ts":531358971444,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":642561},{"cat":"blink","pid":25863,"tid":25913,"ts":531358971447,"ph":"X","name":"Document::updateStyle","args":{},"dur":80,"tdur":79,"tts":642564},{"cat":"blink","pid":25863,"tid":25913,"ts":531358971528,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":642645},{"cat":"blink","pid":25863,"tid":25913,"ts":531358971542,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":12,"tdur":12,"tts":642659},{"cat":"sky","pid":25863,"tid":25913,"ts":531358971559,"ph":"X","name":"Layer::Display","args":{},"dur":2213,"tdur":2194,"tts":642676},{"cat":"sky","pid":25863,"tid":25913,"ts":531358973775,"ph":"X","name":"LayerHost::Upload","args":{},"dur":345,"tdur":185,"tts":644875},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358974149,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":70,"tdur":68,"tts":645091},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974159,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":54,"tdur":55,"tts":645099},{"cat":"v8","pid":25863,"tid":25913,"ts":531358974164,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":48,"tdur":47,"tts":645105},{"cat":"v8","pid":25863,"tid":25913,"ts":531358974181,"ph":"X","name":"v8.callFunction","args":{},"dur":30,"tdur":29,"tts":645122},{"cat":"v8","pid":25863,"tid":25913,"ts":531358974183,"ph":"B","name":"V8.Execute","args":{},"tts":645124},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974199,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":645139},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974205,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":645145},{"cat":"v8","pid":25863,"tid":25913,"ts":531358974209,"ph":"E","name":"V8.Execute","args":{},"tts":645150},{"cat":"sky","pid":25863,"tid":25913,"ts":531358974685,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1110,"tdur":1025,"tts":645394},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974689,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":118,"tdur":118,"tts":645397},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974692,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":645400},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974695,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":35,"tdur":34,"tts":645403},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974702,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":27,"tdur":26,"tts":645411},{"cat":"v8","pid":25863,"tid":25913,"ts":531358974715,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":645424},{"cat":"v8","pid":25863,"tid":25913,"ts":531358974718,"ph":"B","name":"V8.Execute","args":{},"tts":645426},{"cat":"v8","pid":25863,"tid":25913,"ts":531358974724,"ph":"E","name":"V8.Execute","args":{},"tts":645432},{"cat":"v8","pid":25863,"tid":25913,"ts":531358974732,"ph":"X","name":"v8.callFunction","args":{},"dur":73,"tdur":73,"tts":645440},{"cat":"v8","pid":25863,"tid":25913,"ts":531358974733,"ph":"B","name":"V8.Execute","args":{},"tts":645441},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974737,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":645445},{"cat":"v8","pid":25863,"tid":25913,"ts":531358974801,"ph":"E","name":"V8.Execute","args":{},"tts":645510},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974807,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":31,"tdur":30,"tts":645516},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974810,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":645518},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974811,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":18,"tts":645519},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974829,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":645538},{"cat":"blink","pid":25863,"tid":25913,"ts":531358974833,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":3,"tts":645542},{"cat":"sky","pid":25863,"tid":25913,"ts":531358974839,"ph":"X","name":"Layer::Display","args":{},"dur":783,"tdur":782,"tts":645547},{"cat":"sky","pid":25863,"tid":25913,"ts":531358975623,"ph":"X","name":"LayerHost::Upload","args":{},"dur":171,"tdur":87,"tts":646331},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358975807,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":44,"tdur":43,"tts":646431},{"cat":"blink","pid":25863,"tid":25913,"ts":531358975812,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":34,"tdur":34,"tts":646436},{"cat":"v8","pid":25863,"tid":25913,"ts":531358975814,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":31,"tdur":31,"tts":646438},{"cat":"v8","pid":25863,"tid":25913,"ts":531358975817,"ph":"X","name":"v8.callFunction","args":{},"dur":27,"tdur":26,"tts":646441},{"cat":"v8","pid":25863,"tid":25913,"ts":531358975819,"ph":"B","name":"V8.Execute","args":{},"tts":646443},{"cat":"blink","pid":25863,"tid":25913,"ts":531358975827,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":14,"tdur":14,"tts":646451},{"cat":"blink","pid":25863,"tid":25913,"ts":531358975837,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":646462},{"cat":"v8","pid":25863,"tid":25913,"ts":531358975842,"ph":"E","name":"V8.Execute","args":{},"tts":646466},{"cat":"sky","pid":25863,"tid":25913,"ts":531358976244,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1155,"tdur":1081,"tts":646633},{"cat":"blink","pid":25863,"tid":25913,"ts":531358976248,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":105,"tdur":104,"tts":646636},{"cat":"blink","pid":25863,"tid":25913,"ts":531358976251,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":646639},{"cat":"blink","pid":25863,"tid":25913,"ts":531358976255,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":43,"tdur":43,"tts":646642},{"cat":"blink","pid":25863,"tid":25913,"ts":531358976262,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":35,"tdur":35,"tts":646649},{"cat":"v8","pid":25863,"tid":25913,"ts":531358976274,"ph":"X","name":"v8.callFunction","args":{},"dur":19,"tdur":19,"tts":646662},{"cat":"v8","pid":25863,"tid":25913,"ts":531358976285,"ph":"B","name":"V8.Execute","args":{},"tts":646672},{"cat":"v8","pid":25863,"tid":25913,"ts":531358976291,"ph":"E","name":"V8.Execute","args":{},"tts":646679},{"cat":"v8","pid":25863,"tid":25913,"ts":531358976300,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":51,"tts":646687},{"cat":"v8","pid":25863,"tid":25913,"ts":531358976301,"ph":"B","name":"V8.Execute","args":{},"tts":646689},{"cat":"blink","pid":25863,"tid":25913,"ts":531358976305,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":646693},{"cat":"v8","pid":25863,"tid":25913,"ts":531358976347,"ph":"E","name":"V8.Execute","args":{},"tts":646736},{"cat":"blink","pid":25863,"tid":25913,"ts":531358976353,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":29,"tts":646741},{"cat":"blink","pid":25863,"tid":25913,"ts":531358976355,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":646743},{"cat":"blink","pid":25863,"tid":25913,"ts":531358976356,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":646744},{"cat":"blink","pid":25863,"tid":25913,"ts":531358976374,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":646762},{"cat":"blink","pid":25863,"tid":25913,"ts":531358976378,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":646766},{"cat":"sky","pid":25863,"tid":25913,"ts":531358976383,"ph":"X","name":"Layer::Display","args":{},"dur":857,"tdur":856,"tts":646771},{"cat":"sky","pid":25863,"tid":25913,"ts":531358977241,"ph":"X","name":"LayerHost::Upload","args":{},"dur":157,"tdur":84,"tts":647629},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358977421,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":39,"tdur":38,"tts":647737},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977426,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":29,"tts":647742},{"cat":"v8","pid":25863,"tid":25913,"ts":531358977428,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":26,"tdur":26,"tts":647744},{"cat":"v8","pid":25863,"tid":25913,"ts":531358977431,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":22,"tts":647747},{"cat":"v8","pid":25863,"tid":25913,"ts":531358977433,"ph":"B","name":"V8.Execute","args":{},"tts":647749},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977441,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":647757},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977447,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":647763},{"cat":"v8","pid":25863,"tid":25913,"ts":531358977451,"ph":"E","name":"V8.Execute","args":{},"tts":647767},{"cat":"sky","pid":25863,"tid":25913,"ts":531358977779,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1091,"tdur":1037,"tts":647898},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977782,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":93,"tdur":93,"tts":647900},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977785,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":647903},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977787,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":35,"tdur":34,"tts":647906},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977797,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":647915},{"cat":"v8","pid":25863,"tid":25913,"ts":531358977809,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":647928},{"cat":"v8","pid":25863,"tid":25913,"ts":531358977811,"ph":"B","name":"V8.Execute","args":{},"tts":647929},{"cat":"v8","pid":25863,"tid":25913,"ts":531358977817,"ph":"E","name":"V8.Execute","args":{},"tts":647936},{"cat":"v8","pid":25863,"tid":25913,"ts":531358977824,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":49,"tts":647942},{"cat":"v8","pid":25863,"tid":25913,"ts":531358977826,"ph":"B","name":"V8.Execute","args":{},"tts":647944},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977829,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":647948},{"cat":"v8","pid":25863,"tid":25913,"ts":531358977870,"ph":"E","name":"V8.Execute","args":{},"tts":647989},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977876,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":29,"tts":647994},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977878,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":647996},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977879,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":647997},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977897,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":648015},{"cat":"blink","pid":25863,"tid":25913,"ts":531358977901,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":648019},{"cat":"sky","pid":25863,"tid":25913,"ts":531358977906,"ph":"X","name":"Layer::Display","args":{},"dur":856,"tdur":855,"tts":648024},{"cat":"sky","pid":25863,"tid":25913,"ts":531358978763,"ph":"X","name":"LayerHost::Upload","args":{},"dur":106,"tdur":52,"tts":648882},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531358978880,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":34,"tdur":34,"tts":648946},{"cat":"blink","pid":25863,"tid":25913,"ts":531358978883,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":26,"tts":648949},{"cat":"v8","pid":25863,"tid":25913,"ts":531358978886,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":23,"tdur":22,"tts":648952},{"cat":"v8","pid":25863,"tid":25913,"ts":531358978888,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":19,"tts":648954},{"cat":"v8","pid":25863,"tid":25913,"ts":531358978890,"ph":"B","name":"V8.Execute","args":{},"tts":648956},{"cat":"blink","pid":25863,"tid":25913,"ts":531358978897,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":8,"tts":648963},{"cat":"blink","pid":25863,"tid":25913,"ts":531358978902,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":648968},{"cat":"v8","pid":25863,"tid":25913,"ts":531358978906,"ph":"E","name":"V8.Execute","args":{},"tts":648972},{"cat":"sky","pid":25863,"tid":25913,"ts":531359105541,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2531,"tdur":2388,"tts":649138},{"cat":"blink","pid":25863,"tid":25913,"ts":531359105550,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":337,"tdur":324,"tts":649158},{"cat":"blink","pid":25863,"tid":25913,"ts":531359105574,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":4,"tts":649169},{"cat":"blink","pid":25863,"tid":25913,"ts":531359105585,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":117,"tdur":116,"tts":649181},{"cat":"blink","pid":25863,"tid":25913,"ts":531359105607,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":94,"tdur":92,"tts":649203},{"cat":"v8","pid":25863,"tid":25913,"ts":531359105656,"ph":"X","name":"v8.callFunction","args":{},"dur":36,"tdur":35,"tts":649252},{"cat":"v8","pid":25863,"tid":25913,"ts":531359105661,"ph":"B","name":"V8.Execute","args":{},"tts":649257},{"cat":"v8","pid":25863,"tid":25913,"ts":531359105687,"ph":"E","name":"V8.Execute","args":{},"tts":649283},{"cat":"v8","pid":25863,"tid":25913,"ts":531359105708,"ph":"X","name":"v8.callFunction","args":{},"dur":174,"tdur":173,"tts":649304},{"cat":"v8","pid":25863,"tid":25913,"ts":531359105712,"ph":"B","name":"V8.Execute","args":{},"tts":649307},{"cat":"blink","pid":25863,"tid":25913,"ts":531359105724,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":38,"tdur":36,"tts":649320},{"cat":"v8","pid":25863,"tid":25913,"ts":531359105875,"ph":"E","name":"V8.Execute","args":{},"tts":649472},{"cat":"blink","pid":25863,"tid":25913,"ts":531359105888,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":116,"tdur":115,"tts":649484},{"cat":"blink","pid":25863,"tid":25913,"ts":531359105893,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":649489},{"cat":"blink","pid":25863,"tid":25913,"ts":531359105896,"ph":"X","name":"Document::updateStyle","args":{},"dur":63,"tdur":61,"tts":649492},{"cat":"blink","pid":25863,"tid":25913,"ts":531359105960,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":649556},{"cat":"blink","pid":25863,"tid":25913,"ts":531359105991,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":11,"tdur":10,"tts":649587},{"cat":"sky","pid":25863,"tid":25913,"ts":531359106006,"ph":"X","name":"Layer::Display","args":{},"dur":1730,"tdur":1729,"tts":649602},{"cat":"sky","pid":25863,"tid":25913,"ts":531359107737,"ph":"X","name":"LayerHost::Upload","args":{},"dur":334,"tdur":192,"tts":651333},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359108088,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":88,"tdur":86,"tts":651544},{"cat":"blink","pid":25863,"tid":25913,"ts":531359108093,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":71,"tdur":71,"tts":651548},{"cat":"v8","pid":25863,"tid":25913,"ts":531359108096,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":66,"tdur":65,"tts":651551},{"cat":"v8","pid":25863,"tid":25913,"ts":531359108099,"ph":"X","name":"v8.callFunction","args":{},"dur":60,"tdur":60,"tts":651554},{"cat":"v8","pid":25863,"tid":25913,"ts":531359108100,"ph":"B","name":"V8.Execute","args":{},"tts":651556},{"cat":"blink","pid":25863,"tid":25913,"ts":531359108132,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":21,"tts":651587},{"cat":"blink","pid":25863,"tid":25913,"ts":531359108145,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":7,"tdur":6,"tts":651601},{"cat":"v8","pid":25863,"tid":25913,"ts":531359108155,"ph":"E","name":"V8.Execute","args":{},"tts":651611},{"cat":"sky","pid":25863,"tid":25913,"ts":531359109045,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2366,"tdur":2219,"tts":652014},{"cat":"blink","pid":25863,"tid":25913,"ts":531359109054,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":211,"tdur":210,"tts":652021},{"cat":"blink","pid":25863,"tid":25913,"ts":531359109061,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":652028},{"cat":"blink","pid":25863,"tid":25913,"ts":531359109068,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":75,"tdur":74,"tts":652035},{"cat":"blink","pid":25863,"tid":25913,"ts":531359109083,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":652050},{"cat":"v8","pid":25863,"tid":25913,"ts":531359109111,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":652078},{"cat":"v8","pid":25863,"tid":25913,"ts":531359109115,"ph":"B","name":"V8.Execute","args":{},"tts":652082},{"cat":"v8","pid":25863,"tid":25913,"ts":531359109130,"ph":"E","name":"V8.Execute","args":{},"tts":652097},{"cat":"v8","pid":25863,"tid":25913,"ts":531359109147,"ph":"X","name":"v8.callFunction","args":{},"dur":113,"tdur":113,"tts":652114},{"cat":"v8","pid":25863,"tid":25913,"ts":531359109151,"ph":"B","name":"V8.Execute","args":{},"tts":652118},{"cat":"blink","pid":25863,"tid":25913,"ts":531359109159,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":652126},{"cat":"v8","pid":25863,"tid":25913,"ts":531359109254,"ph":"E","name":"V8.Execute","args":{},"tts":652222},{"cat":"blink","pid":25863,"tid":25913,"ts":531359109266,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":652233},{"cat":"blink","pid":25863,"tid":25913,"ts":531359109270,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":652237},{"cat":"blink","pid":25863,"tid":25913,"ts":531359109273,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":38,"tts":652240},{"cat":"blink","pid":25863,"tid":25913,"ts":531359109314,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":652281},{"cat":"blink","pid":25863,"tid":25913,"ts":531359109322,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":9,"tdur":7,"tts":652290},{"cat":"sky","pid":25863,"tid":25913,"ts":531359109333,"ph":"X","name":"Layer::Display","args":{},"dur":1753,"tdur":1750,"tts":652301},{"cat":"sky","pid":25863,"tid":25913,"ts":531359111088,"ph":"X","name":"LayerHost::Upload","args":{},"dur":321,"tdur":175,"tts":654055},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359111437,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":87,"tdur":87,"tts":654260},{"cat":"blink","pid":25863,"tid":25913,"ts":531359111447,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":65,"tdur":64,"tts":654270},{"cat":"v8","pid":25863,"tid":25913,"ts":531359111453,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":57,"tdur":56,"tts":654276},{"cat":"v8","pid":25863,"tid":25913,"ts":531359111459,"ph":"X","name":"v8.callFunction","args":{},"dur":48,"tdur":47,"tts":654282},{"cat":"v8","pid":25863,"tid":25913,"ts":531359111463,"ph":"B","name":"V8.Execute","args":{},"tts":654286},{"cat":"blink","pid":25863,"tid":25913,"ts":531359111481,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":654304},{"cat":"blink","pid":25863,"tid":25913,"ts":531359111494,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":654317},{"cat":"v8","pid":25863,"tid":25913,"ts":531359111503,"ph":"E","name":"V8.Execute","args":{},"tts":654326},{"cat":"sky","pid":25863,"tid":25913,"ts":531359112235,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2351,"tdur":2233,"tts":654719},{"cat":"blink","pid":25863,"tid":25913,"ts":531359112245,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":221,"tdur":222,"tts":654726},{"cat":"blink","pid":25863,"tid":25913,"ts":531359112251,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":654733},{"cat":"blink","pid":25863,"tid":25913,"ts":531359112258,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":85,"tdur":84,"tts":654740},{"cat":"blink","pid":25863,"tid":25913,"ts":531359112284,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":58,"tdur":57,"tts":654766},{"cat":"v8","pid":25863,"tid":25913,"ts":531359112312,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":21,"tts":654795},{"cat":"v8","pid":25863,"tid":25913,"ts":531359112317,"ph":"B","name":"V8.Execute","args":{},"tts":654798},{"cat":"v8","pid":25863,"tid":25913,"ts":531359112331,"ph":"E","name":"V8.Execute","args":{},"tts":654813},{"cat":"v8","pid":25863,"tid":25913,"ts":531359112348,"ph":"X","name":"v8.callFunction","args":{},"dur":114,"tdur":113,"tts":654830},{"cat":"v8","pid":25863,"tid":25913,"ts":531359112351,"ph":"B","name":"V8.Execute","args":{},"tts":654833},{"cat":"blink","pid":25863,"tid":25913,"ts":531359112360,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":21,"tts":654841},{"cat":"v8","pid":25863,"tid":25913,"ts":531359112455,"ph":"E","name":"V8.Execute","args":{},"tts":654938},{"cat":"blink","pid":25863,"tid":25913,"ts":531359112468,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":65,"tdur":66,"tts":654949},{"cat":"blink","pid":25863,"tid":25913,"ts":531359112472,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":654954},{"cat":"blink","pid":25863,"tid":25913,"ts":531359112475,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":38,"tts":654957},{"cat":"blink","pid":25863,"tid":25913,"ts":531359112515,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":654997},{"cat":"blink","pid":25863,"tid":25913,"ts":531359112524,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":655006},{"cat":"sky","pid":25863,"tid":25913,"ts":531359112535,"ph":"X","name":"Layer::Display","args":{},"dur":1761,"tdur":1758,"tts":655017},{"cat":"sky","pid":25863,"tid":25913,"ts":531359114298,"ph":"X","name":"LayerHost::Upload","args":{},"dur":287,"tdur":169,"tts":656780},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359114613,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":111,"tdur":110,"tts":656979},{"cat":"blink","pid":25863,"tid":25913,"ts":531359114623,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":90,"tdur":89,"tts":656989},{"cat":"v8","pid":25863,"tid":25913,"ts":531359114629,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":81,"tdur":80,"tts":656995},{"cat":"v8","pid":25863,"tid":25913,"ts":531359114635,"ph":"X","name":"v8.callFunction","args":{},"dur":72,"tdur":71,"tts":657001},{"cat":"v8","pid":25863,"tid":25913,"ts":531359114639,"ph":"B","name":"V8.Execute","args":{},"tts":657005},{"cat":"blink","pid":25863,"tid":25913,"ts":531359114657,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":43,"tdur":43,"tts":657023},{"cat":"blink","pid":25863,"tid":25913,"ts":531359114670,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":29,"tdur":29,"tts":657036},{"cat":"v8","pid":25863,"tid":25913,"ts":531359114703,"ph":"E","name":"V8.Execute","args":{},"tts":657069},{"cat":"sky","pid":25863,"tid":25913,"ts":531359115365,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2061,"tdur":1921,"tts":657363},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115372,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":237,"tdur":237,"tts":657369},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115378,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":657375},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115384,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":70,"tdur":69,"tts":657382},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115397,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":56,"tdur":55,"tts":657395},{"cat":"v8","pid":25863,"tid":25913,"ts":531359115424,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":657422},{"cat":"v8","pid":25863,"tid":25913,"ts":531359115429,"ph":"B","name":"V8.Execute","args":{},"tts":657426},{"cat":"v8","pid":25863,"tid":25913,"ts":531359115443,"ph":"E","name":"V8.Execute","args":{},"tts":657441},{"cat":"v8","pid":25863,"tid":25913,"ts":531359115459,"ph":"X","name":"v8.callFunction","args":{},"dur":145,"tdur":145,"tts":657456},{"cat":"v8","pid":25863,"tid":25913,"ts":531359115462,"ph":"B","name":"V8.Execute","args":{},"tts":657460},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115470,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":657468},{"cat":"v8","pid":25863,"tid":25913,"ts":531359115597,"ph":"E","name":"V8.Execute","args":{},"tts":657596},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115610,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":660,"tdur":636,"tts":657607},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115614,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":657612},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115617,"ph":"X","name":"Document::updateStyle","args":{},"dur":197,"tdur":194,"tts":657615},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115815,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":657813},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115820,"ph":"X","name":"FrameView::layout","args":{},"dur":75,"tdur":74,"tts":657818},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115824,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":4,"tdur":3,"tts":657822},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115830,"ph":"X","name":"FrameView::performLayout","args":{},"dur":40,"tdur":40,"tts":657827},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115871,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":5,"tdur":4,"tts":657869},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115877,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":15,"tdur":15,"tts":657874},{"cat":"blink","pid":25863,"tid":25913,"ts":531359115901,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":368,"tdur":342,"tts":657899},{"cat":"sky","pid":25863,"tid":25913,"ts":531359116271,"ph":"X","name":"Layer::Display","args":{},"dur":902,"tdur":902,"tts":658244},{"cat":"sky","pid":25863,"tid":25913,"ts":531359117174,"ph":"X","name":"LayerHost::Upload","args":{},"dur":251,"tdur":135,"tts":659148},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359117439,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":46,"tdur":46,"tts":659298},{"cat":"blink","pid":25863,"tid":25913,"ts":531359117444,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":36,"tdur":36,"tts":659303},{"cat":"v8","pid":25863,"tid":25913,"ts":531359117447,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":31,"tdur":31,"tts":659306},{"cat":"v8","pid":25863,"tid":25913,"ts":531359117450,"ph":"X","name":"v8.callFunction","args":{},"dur":27,"tdur":27,"tts":659309},{"cat":"v8","pid":25863,"tid":25913,"ts":531359117452,"ph":"B","name":"V8.Execute","args":{},"tts":659311},{"cat":"blink","pid":25863,"tid":25913,"ts":531359117461,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":13,"tdur":13,"tts":659320},{"cat":"blink","pid":25863,"tid":25913,"ts":531359117471,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":659330},{"cat":"v8","pid":25863,"tid":25913,"ts":531359117475,"ph":"E","name":"V8.Execute","args":{},"tts":659334},{"cat":"sky","pid":25863,"tid":25913,"ts":531359186777,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2405,"tdur":2218,"tts":659625},{"cat":"blink","pid":25863,"tid":25913,"ts":531359186786,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":200,"tdur":199,"tts":659633},{"cat":"blink","pid":25863,"tid":25913,"ts":531359186793,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":659640},{"cat":"blink","pid":25863,"tid":25913,"ts":531359186800,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":89,"tdur":76,"tts":659647},{"cat":"blink","pid":25863,"tid":25913,"ts":531359186815,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":61,"tdur":60,"tts":659662},{"cat":"v8","pid":25863,"tid":25913,"ts":531359186845,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":659692},{"cat":"v8","pid":25863,"tid":25913,"ts":531359186849,"ph":"B","name":"V8.Execute","args":{},"tts":659696},{"cat":"v8","pid":25863,"tid":25913,"ts":531359186864,"ph":"E","name":"V8.Execute","args":{},"tts":659711},{"cat":"v8","pid":25863,"tid":25913,"ts":531359186892,"ph":"X","name":"v8.callFunction","args":{},"dur":89,"tdur":90,"tts":659738},{"cat":"v8","pid":25863,"tid":25913,"ts":531359186894,"ph":"B","name":"V8.Execute","args":{},"tts":659740},{"cat":"blink","pid":25863,"tid":25913,"ts":531359186899,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":12,"tts":659745},{"cat":"v8","pid":25863,"tid":25913,"ts":531359186975,"ph":"E","name":"V8.Execute","args":{},"tts":659823},{"cat":"blink","pid":25863,"tid":25913,"ts":531359186987,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":67,"tdur":66,"tts":659834},{"cat":"blink","pid":25863,"tid":25913,"ts":531359186992,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":659839},{"cat":"blink","pid":25863,"tid":25913,"ts":531359186995,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":40,"tts":659841},{"cat":"blink","pid":25863,"tid":25913,"ts":531359187036,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":659883},{"cat":"blink","pid":25863,"tid":25913,"ts":531359187045,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":659892},{"cat":"sky","pid":25863,"tid":25913,"ts":531359187056,"ph":"X","name":"Layer::Display","args":{},"dur":1779,"tdur":1760,"tts":659903},{"cat":"sky","pid":25863,"tid":25913,"ts":531359188837,"ph":"X","name":"LayerHost::Upload","args":{},"dur":343,"tdur":172,"tts":661668},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359189208,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":86,"tdur":85,"tts":661870},{"cat":"blink","pid":25863,"tid":25913,"ts":531359189219,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":65,"tdur":65,"tts":661880},{"cat":"v8","pid":25863,"tid":25913,"ts":531359189224,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":57,"tts":661886},{"cat":"v8","pid":25863,"tid":25913,"ts":531359189230,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":661892},{"cat":"v8","pid":25863,"tid":25913,"ts":531359189234,"ph":"B","name":"V8.Execute","args":{},"tts":661896},{"cat":"blink","pid":25863,"tid":25913,"ts":531359189252,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":661914},{"cat":"blink","pid":25863,"tid":25913,"ts":531359189266,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":661928},{"cat":"v8","pid":25863,"tid":25913,"ts":531359189275,"ph":"E","name":"V8.Execute","args":{},"tts":661937},{"cat":"sky","pid":25863,"tid":25913,"ts":531359189997,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":3675,"tdur":3528,"tts":662332},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190006,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":616,"tdur":615,"tts":662339},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190013,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":662346},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190020,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":91,"tdur":91,"tts":662353},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190051,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":59,"tts":662384},{"cat":"v8","pid":25863,"tid":25913,"ts":531359190080,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":23,"tts":662413},{"cat":"v8","pid":25863,"tid":25913,"ts":531359190084,"ph":"B","name":"V8.Execute","args":{},"tts":662417},{"cat":"v8","pid":25863,"tid":25913,"ts":531359190099,"ph":"E","name":"V8.Execute","args":{},"tts":662432},{"cat":"v8","pid":25863,"tid":25913,"ts":531359190116,"ph":"X","name":"v8.callFunction","args":{},"dur":499,"tdur":497,"tts":662449},{"cat":"v8","pid":25863,"tid":25913,"ts":531359190120,"ph":"B","name":"V8.Execute","args":{},"tts":662453},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190128,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":662461},{"cat":"v8","pid":25863,"tid":25913,"ts":531359190443,"ph":"E","name":"V8.Execute","args":{},"tts":662777},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190624,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":912,"tdur":910,"tts":662958},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190630,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":662963},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190634,"ph":"X","name":"Document::updateStyle","args":{},"dur":145,"tdur":143,"tts":662967},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190780,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":6},"tts":663114},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190786,"ph":"X","name":"FrameView::layout","args":{},"dur":267,"tdur":267,"tts":663119},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190789,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":3,"tdur":3,"tts":663122},{"cat":"blink","pid":25863,"tid":25913,"ts":531359190793,"ph":"X","name":"FrameView::performLayout","args":{},"dur":240,"tdur":237,"tts":663127},{"cat":"blink","pid":25863,"tid":25913,"ts":531359191034,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":6,"tdur":6,"tts":663367},{"cat":"blink","pid":25863,"tid":25913,"ts":531359191041,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":9,"tdur":8,"tts":663375},{"cat":"blink","pid":25863,"tid":25913,"ts":531359191059,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":475,"tdur":473,"tts":663393},{"cat":"sky","pid":25863,"tid":25913,"ts":531359191538,"ph":"X","name":"Layer::Display","args":{},"dur":1807,"tdur":1805,"tts":663871},{"cat":"sky","pid":25863,"tid":25913,"ts":531359193347,"ph":"X","name":"LayerHost::Upload","args":{},"dur":323,"tdur":178,"tts":665680},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359193698,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":86,"tdur":84,"tts":665888},{"cat":"blink","pid":25863,"tid":25913,"ts":531359193709,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":65,"tdur":65,"tts":665898},{"cat":"v8","pid":25863,"tid":25913,"ts":531359193714,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":57,"tdur":56,"tts":665904},{"cat":"v8","pid":25863,"tid":25913,"ts":531359193720,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":665910},{"cat":"v8","pid":25863,"tid":25913,"ts":531359193724,"ph":"B","name":"V8.Execute","args":{},"tts":665914},{"cat":"blink","pid":25863,"tid":25913,"ts":531359193742,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":665932},{"cat":"blink","pid":25863,"tid":25913,"ts":531359193756,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":6,"tts":665945},{"cat":"v8","pid":25863,"tid":25913,"ts":531359193765,"ph":"E","name":"V8.Execute","args":{},"tts":665955},{"cat":"sky","pid":25863,"tid":25913,"ts":531359194507,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2423,"tdur":2274,"tts":666338},{"cat":"blink","pid":25863,"tid":25913,"ts":531359194517,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":222,"tdur":222,"tts":666346},{"cat":"blink","pid":25863,"tid":25913,"ts":531359194524,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":666353},{"cat":"blink","pid":25863,"tid":25913,"ts":531359194531,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":85,"tdur":85,"tts":666360},{"cat":"blink","pid":25863,"tid":25913,"ts":531359194556,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":666386},{"cat":"v8","pid":25863,"tid":25913,"ts":531359194585,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":666415},{"cat":"v8","pid":25863,"tid":25913,"ts":531359194590,"ph":"B","name":"V8.Execute","args":{},"tts":666419},{"cat":"v8","pid":25863,"tid":25913,"ts":531359194604,"ph":"E","name":"V8.Execute","args":{},"tts":666434},{"cat":"v8","pid":25863,"tid":25913,"ts":531359194621,"ph":"X","name":"v8.callFunction","args":{},"dur":114,"tdur":114,"tts":666450},{"cat":"v8","pid":25863,"tid":25913,"ts":531359194624,"ph":"B","name":"V8.Execute","args":{},"tts":666454},{"cat":"blink","pid":25863,"tid":25913,"ts":531359194633,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":666462},{"cat":"v8","pid":25863,"tid":25913,"ts":531359194728,"ph":"E","name":"V8.Execute","args":{},"tts":666559},{"cat":"blink","pid":25863,"tid":25913,"ts":531359194740,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":666570},{"cat":"blink","pid":25863,"tid":25913,"ts":531359194745,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":666574},{"cat":"blink","pid":25863,"tid":25913,"ts":531359194748,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":38,"tts":666577},{"cat":"blink","pid":25863,"tid":25913,"ts":531359194788,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":666618},{"cat":"blink","pid":25863,"tid":25913,"ts":531359194797,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":666627},{"cat":"sky","pid":25863,"tid":25913,"ts":531359194808,"ph":"X","name":"Layer::Display","args":{},"dur":1799,"tdur":1797,"tts":666638},{"cat":"sky","pid":25863,"tid":25913,"ts":531359196609,"ph":"X","name":"LayerHost::Upload","args":{},"dur":319,"tdur":171,"tts":668439},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359196956,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":85,"tdur":84,"tts":668640},{"cat":"blink","pid":25863,"tid":25913,"ts":531359196967,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":65,"tdur":64,"tts":668650},{"cat":"v8","pid":25863,"tid":25913,"ts":531359196972,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":57,"tdur":57,"tts":668655},{"cat":"v8","pid":25863,"tid":25913,"ts":531359196978,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":47,"tts":668662},{"cat":"v8","pid":25863,"tid":25913,"ts":531359196982,"ph":"B","name":"V8.Execute","args":{},"tts":668665},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197000,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":19,"tts":668684},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197014,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":668697},{"cat":"v8","pid":25863,"tid":25913,"ts":531359197023,"ph":"E","name":"V8.Execute","args":{},"tts":668706},{"cat":"sky","pid":25863,"tid":25913,"ts":531359197633,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2456,"tdur":2284,"tts":669041},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197641,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":250,"tdur":249,"tts":669049},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197648,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":669055},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197655,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":98,"tdur":98,"tts":669062},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197669,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":83,"tdur":82,"tts":669077},{"cat":"v8","pid":25863,"tid":25913,"ts":531359197697,"ph":"X","name":"v8.callFunction","args":{},"dur":47,"tdur":45,"tts":669105},{"cat":"v8","pid":25863,"tid":25913,"ts":531359197702,"ph":"B","name":"V8.Execute","args":{},"tts":669109},{"cat":"v8","pid":25863,"tid":25913,"ts":531359197739,"ph":"E","name":"V8.Execute","args":{},"tts":669147},{"cat":"v8","pid":25863,"tid":25913,"ts":531359197758,"ph":"X","name":"v8.callFunction","args":{},"dur":128,"tdur":127,"tts":669166},{"cat":"v8","pid":25863,"tid":25913,"ts":531359197775,"ph":"B","name":"V8.Execute","args":{},"tts":669182},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197784,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":21,"tts":669191},{"cat":"v8","pid":25863,"tid":25913,"ts":531359197880,"ph":"E","name":"V8.Execute","args":{},"tts":669288},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197893,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":669300},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197897,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":669304},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197900,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":39,"tts":669307},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197941,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":669348},{"cat":"blink","pid":25863,"tid":25913,"ts":531359197949,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":669357},{"cat":"sky","pid":25863,"tid":25913,"ts":531359197960,"ph":"X","name":"Layer::Display","args":{},"dur":1782,"tdur":1781,"tts":669367},{"cat":"sky","pid":25863,"tid":25913,"ts":531359199744,"ph":"X","name":"LayerHost::Upload","args":{},"dur":344,"tdur":171,"tts":671152},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359200101,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":42,"tdur":41,"tts":671338},{"cat":"blink","pid":25863,"tid":25913,"ts":531359200107,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":31,"tdur":31,"tts":671343},{"cat":"v8","pid":25863,"tid":25913,"ts":531359200109,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":26,"tts":671346},{"cat":"v8","pid":25863,"tid":25913,"ts":531359200112,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":671349},{"cat":"v8","pid":25863,"tid":25913,"ts":531359200114,"ph":"B","name":"V8.Execute","args":{},"tts":671351},{"cat":"blink","pid":25863,"tid":25913,"ts":531359200123,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":10,"tts":671359},{"cat":"blink","pid":25863,"tid":25913,"ts":531359200129,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":671365},{"cat":"v8","pid":25863,"tid":25913,"ts":531359200133,"ph":"E","name":"V8.Execute","args":{},"tts":671370},{"cat":"sky","pid":25863,"tid":25913,"ts":531359253297,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1354,"tdur":1195,"tts":671688},{"cat":"blink","pid":25863,"tid":25913,"ts":531359253301,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":114,"tdur":114,"tts":671691},{"cat":"blink","pid":25863,"tid":25913,"ts":531359253304,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":671694},{"cat":"blink","pid":25863,"tid":25913,"ts":531359253307,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":48,"tdur":48,"tts":671697},{"cat":"blink","pid":25863,"tid":25913,"ts":531359253314,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":40,"tdur":40,"tts":671704},{"cat":"v8","pid":25863,"tid":25913,"ts":531359253339,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":10,"tts":671730},{"cat":"v8","pid":25863,"tid":25913,"ts":531359253342,"ph":"B","name":"V8.Execute","args":{},"tts":671732},{"cat":"v8","pid":25863,"tid":25913,"ts":531359253349,"ph":"E","name":"V8.Execute","args":{},"tts":671739},{"cat":"v8","pid":25863,"tid":25913,"ts":531359253357,"ph":"X","name":"v8.callFunction","args":{},"dur":56,"tdur":55,"tts":671747},{"cat":"v8","pid":25863,"tid":25913,"ts":531359253359,"ph":"B","name":"V8.Execute","args":{},"tts":671749},{"cat":"blink","pid":25863,"tid":25913,"ts":531359253363,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":10,"tts":671753},{"cat":"v8","pid":25863,"tid":25913,"ts":531359253409,"ph":"E","name":"V8.Execute","args":{},"tts":671800},{"cat":"blink","pid":25863,"tid":25913,"ts":531359253415,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":31,"tts":671806},{"cat":"blink","pid":25863,"tid":25913,"ts":531359253417,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":671808},{"cat":"blink","pid":25863,"tid":25913,"ts":531359253419,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":19,"tts":671809},{"cat":"blink","pid":25863,"tid":25913,"ts":531359253438,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":671829},{"cat":"blink","pid":25863,"tid":25913,"ts":531359253443,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":671833},{"cat":"sky","pid":25863,"tid":25913,"ts":531359253448,"ph":"X","name":"Layer::Display","args":{},"dur":894,"tdur":893,"tts":671838},{"cat":"sky","pid":25863,"tid":25913,"ts":531359254343,"ph":"X","name":"LayerHost::Upload","args":{},"dur":307,"tdur":149,"tts":672733},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359254664,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":43,"tdur":42,"tts":672897},{"cat":"blink","pid":25863,"tid":25913,"ts":531359254669,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":33,"tdur":32,"tts":672902},{"cat":"v8","pid":25863,"tid":25913,"ts":531359254672,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":29,"tts":672904},{"cat":"v8","pid":25863,"tid":25913,"ts":531359254675,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":25,"tts":672907},{"cat":"v8","pid":25863,"tid":25913,"ts":531359254676,"ph":"B","name":"V8.Execute","args":{},"tts":672909},{"cat":"blink","pid":25863,"tid":25913,"ts":531359254685,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":672918},{"cat":"blink","pid":25863,"tid":25913,"ts":531359254691,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":672924},{"cat":"v8","pid":25863,"tid":25913,"ts":531359254697,"ph":"E","name":"V8.Execute","args":{},"tts":672930},{"cat":"sky","pid":25863,"tid":25913,"ts":531359255147,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1074,"tdur":997,"tts":673118},{"cat":"blink","pid":25863,"tid":25913,"ts":531359255151,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":91,"tdur":90,"tts":673122},{"cat":"blink","pid":25863,"tid":25913,"ts":531359255154,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":673124},{"cat":"blink","pid":25863,"tid":25913,"ts":531359255157,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":32,"tdur":32,"tts":673127},{"cat":"blink","pid":25863,"tid":25913,"ts":531359255163,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":673134},{"cat":"v8","pid":25863,"tid":25913,"ts":531359255175,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":673146},{"cat":"v8","pid":25863,"tid":25913,"ts":531359255177,"ph":"B","name":"V8.Execute","args":{},"tts":673148},{"cat":"v8","pid":25863,"tid":25913,"ts":531359255183,"ph":"E","name":"V8.Execute","args":{},"tts":673154},{"cat":"v8","pid":25863,"tid":25913,"ts":531359255191,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":673162},{"cat":"v8","pid":25863,"tid":25913,"ts":531359255192,"ph":"B","name":"V8.Execute","args":{},"tts":673163},{"cat":"blink","pid":25863,"tid":25913,"ts":531359255196,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":673167},{"cat":"v8","pid":25863,"tid":25913,"ts":531359255237,"ph":"E","name":"V8.Execute","args":{},"tts":673208},{"cat":"blink","pid":25863,"tid":25913,"ts":531359255242,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":28,"tts":673213},{"cat":"blink","pid":25863,"tid":25913,"ts":531359255244,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":673215},{"cat":"blink","pid":25863,"tid":25913,"ts":531359255245,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":673216},{"cat":"blink","pid":25863,"tid":25913,"ts":531359255263,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":673233},{"cat":"blink","pid":25863,"tid":25913,"ts":531359255266,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":673237},{"cat":"sky","pid":25863,"tid":25913,"ts":531359255271,"ph":"X","name":"Layer::Display","args":{},"dur":785,"tdur":774,"tts":673242},{"cat":"sky","pid":25863,"tid":25913,"ts":531359256057,"ph":"X","name":"LayerHost::Upload","args":{},"dur":164,"tdur":96,"tts":674018},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359256233,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":42,"tdur":42,"tts":674127},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256238,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":32,"tts":674132},{"cat":"v8","pid":25863,"tid":25913,"ts":531359256240,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":29,"tdur":29,"tts":674134},{"cat":"v8","pid":25863,"tid":25913,"ts":531359256242,"ph":"X","name":"v8.callFunction","args":{},"dur":26,"tdur":25,"tts":674137},{"cat":"v8","pid":25863,"tid":25913,"ts":531359256244,"ph":"B","name":"V8.Execute","args":{},"tts":674138},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256252,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":13,"tdur":13,"tts":674146},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256262,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":674156},{"cat":"v8","pid":25863,"tid":25913,"ts":531359256266,"ph":"E","name":"V8.Execute","args":{},"tts":674161},{"cat":"sky","pid":25863,"tid":25913,"ts":531359256625,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1027,"tdur":975,"tts":674341},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256629,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":91,"tdur":90,"tts":674345},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256632,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":674347},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256635,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":32,"tdur":32,"tts":674350},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256642,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":674357},{"cat":"v8","pid":25863,"tid":25913,"ts":531359256654,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":674369},{"cat":"v8","pid":25863,"tid":25913,"ts":531359256656,"ph":"B","name":"V8.Execute","args":{},"tts":674371},{"cat":"v8","pid":25863,"tid":25913,"ts":531359256662,"ph":"E","name":"V8.Execute","args":{},"tts":674377},{"cat":"v8","pid":25863,"tid":25913,"ts":531359256669,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":49,"tts":674384},{"cat":"v8","pid":25863,"tid":25913,"ts":531359256671,"ph":"B","name":"V8.Execute","args":{},"tts":674386},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256674,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":674389},{"cat":"v8","pid":25863,"tid":25913,"ts":531359256715,"ph":"E","name":"V8.Execute","args":{},"tts":674431},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256720,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":34,"tdur":33,"tts":674436},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256722,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":674438},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256724,"ph":"X","name":"Document::updateStyle","args":{},"dur":22,"tdur":21,"tts":674439},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256746,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":674461},{"cat":"blink","pid":25863,"tid":25913,"ts":531359256750,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":674465},{"cat":"sky","pid":25863,"tid":25913,"ts":531359256755,"ph":"X","name":"Layer::Display","args":{},"dur":762,"tdur":761,"tts":674470},{"cat":"sky","pid":25863,"tid":25913,"ts":531359257518,"ph":"X","name":"LayerHost::Upload","args":{},"dur":133,"tdur":82,"tts":675233},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359257725,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":38,"tdur":38,"tts":675370},{"cat":"blink","pid":25863,"tid":25913,"ts":531359257730,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":28,"tts":675375},{"cat":"v8","pid":25863,"tid":25913,"ts":531359257732,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":25,"tts":675377},{"cat":"v8","pid":25863,"tid":25913,"ts":531359257735,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":21,"tts":675380},{"cat":"v8","pid":25863,"tid":25913,"ts":531359257737,"ph":"B","name":"V8.Execute","args":{},"tts":675382},{"cat":"blink","pid":25863,"tid":25913,"ts":531359257745,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":675390},{"cat":"blink","pid":25863,"tid":25913,"ts":531359257751,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":675396},{"cat":"v8","pid":25863,"tid":25913,"ts":531359257755,"ph":"E","name":"V8.Execute","args":{},"tts":675400},{"cat":"sky","pid":25863,"tid":25913,"ts":531359258037,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1025,"tdur":974,"tts":675558},{"cat":"blink","pid":25863,"tid":25913,"ts":531359258041,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":96,"tdur":96,"tts":675561},{"cat":"blink","pid":25863,"tid":25913,"ts":531359258044,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":675564},{"cat":"blink","pid":25863,"tid":25913,"ts":531359258047,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":38,"tdur":37,"tts":675567},{"cat":"blink","pid":25863,"tid":25913,"ts":531359258059,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":675579},{"cat":"v8","pid":25863,"tid":25913,"ts":531359258071,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":675592},{"cat":"v8","pid":25863,"tid":25913,"ts":531359258073,"ph":"B","name":"V8.Execute","args":{},"tts":675593},{"cat":"v8","pid":25863,"tid":25913,"ts":531359258079,"ph":"E","name":"V8.Execute","args":{},"tts":675600},{"cat":"v8","pid":25863,"tid":25913,"ts":531359258087,"ph":"X","name":"v8.callFunction","args":{},"dur":48,"tdur":48,"tts":675607},{"cat":"v8","pid":25863,"tid":25913,"ts":531359258088,"ph":"B","name":"V8.Execute","args":{},"tts":675608},{"cat":"blink","pid":25863,"tid":25913,"ts":531359258092,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":675612},{"cat":"v8","pid":25863,"tid":25913,"ts":531359258132,"ph":"E","name":"V8.Execute","args":{},"tts":675653},{"cat":"blink","pid":25863,"tid":25913,"ts":531359258137,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":28,"tts":675657},{"cat":"blink","pid":25863,"tid":25913,"ts":531359258139,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":675659},{"cat":"blink","pid":25863,"tid":25913,"ts":531359258140,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":675661},{"cat":"blink","pid":25863,"tid":25913,"ts":531359258158,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":675678},{"cat":"blink","pid":25863,"tid":25913,"ts":531359258161,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":675682},{"cat":"sky","pid":25863,"tid":25913,"ts":531359258166,"ph":"X","name":"Layer::Display","args":{},"dur":762,"tdur":761,"tts":675686},{"cat":"sky","pid":25863,"tid":25913,"ts":531359258928,"ph":"X","name":"LayerHost::Upload","args":{},"dur":134,"tdur":81,"tts":676449},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359259190,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":38,"tdur":37,"tts":676604},{"cat":"blink","pid":25863,"tid":25913,"ts":531359259195,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":28,"tdur":29,"tts":676608},{"cat":"v8","pid":25863,"tid":25913,"ts":531359259197,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":24,"tts":676611},{"cat":"v8","pid":25863,"tid":25913,"ts":531359259200,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":676613},{"cat":"v8","pid":25863,"tid":25913,"ts":531359259201,"ph":"B","name":"V8.Execute","args":{},"tts":676615},{"cat":"blink","pid":25863,"tid":25913,"ts":531359259209,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":676623},{"cat":"blink","pid":25863,"tid":25913,"ts":531359259215,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":676629},{"cat":"v8","pid":25863,"tid":25913,"ts":531359259220,"ph":"E","name":"V8.Execute","args":{},"tts":676633},{"cat":"sky","pid":25863,"tid":25913,"ts":531359337181,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2290,"tdur":2129,"tts":676766},{"cat":"blink","pid":25863,"tid":25913,"ts":531359337191,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":197,"tdur":196,"tts":676774},{"cat":"blink","pid":25863,"tid":25913,"ts":531359337219,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":676802},{"cat":"blink","pid":25863,"tid":25913,"ts":531359337227,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":73,"tdur":72,"tts":676810},{"cat":"blink","pid":25863,"tid":25913,"ts":531359337238,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":61,"tdur":60,"tts":676821},{"cat":"v8","pid":25863,"tid":25913,"ts":531359337268,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":23,"tts":676851},{"cat":"v8","pid":25863,"tid":25913,"ts":531359337273,"ph":"B","name":"V8.Execute","args":{},"tts":676855},{"cat":"v8","pid":25863,"tid":25913,"ts":531359337288,"ph":"E","name":"V8.Execute","args":{},"tts":676871},{"cat":"v8","pid":25863,"tid":25913,"ts":531359337305,"ph":"X","name":"v8.callFunction","args":{},"dur":81,"tdur":80,"tts":676888},{"cat":"v8","pid":25863,"tid":25913,"ts":531359337308,"ph":"B","name":"V8.Execute","args":{},"tts":676891},{"cat":"blink","pid":25863,"tid":25913,"ts":531359337317,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":31,"tdur":30,"tts":676900},{"cat":"v8","pid":25863,"tid":25913,"ts":531359337383,"ph":"E","name":"V8.Execute","args":{},"tts":676966},{"cat":"blink","pid":25863,"tid":25913,"ts":531359337388,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":75,"tdur":74,"tts":676971},{"cat":"blink","pid":25863,"tid":25913,"ts":531359337390,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":676973},{"cat":"blink","pid":25863,"tid":25913,"ts":531359337391,"ph":"X","name":"Document::updateStyle","args":{},"dur":52,"tdur":50,"tts":676974},{"cat":"blink","pid":25863,"tid":25913,"ts":531359337444,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":677027},{"cat":"blink","pid":25863,"tid":25913,"ts":531359337453,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":677036},{"cat":"sky","pid":25863,"tid":25913,"ts":531359337465,"ph":"X","name":"Layer::Display","args":{},"dur":1663,"tdur":1662,"tts":677047},{"cat":"sky","pid":25863,"tid":25913,"ts":531359339130,"ph":"X","name":"LayerHost::Upload","args":{},"dur":339,"tdur":180,"tts":678713},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359339498,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":56,"tdur":56,"tts":678924},{"cat":"blink","pid":25863,"tid":25913,"ts":531359339509,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":41,"tdur":41,"tts":678934},{"cat":"v8","pid":25863,"tid":25913,"ts":531359339524,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":24,"tts":678950},{"cat":"v8","pid":25863,"tid":25913,"ts":531359339527,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":678952},{"cat":"v8","pid":25863,"tid":25913,"ts":531359339529,"ph":"B","name":"V8.Execute","args":{},"tts":678954},{"cat":"blink","pid":25863,"tid":25913,"ts":531359339537,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":678963},{"cat":"blink","pid":25863,"tid":25913,"ts":531359339543,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":678968},{"cat":"v8","pid":25863,"tid":25913,"ts":531359339546,"ph":"E","name":"V8.Execute","args":{},"tts":678972},{"cat":"sky","pid":25863,"tid":25913,"ts":531359339939,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1098,"tdur":1011,"tts":679148},{"cat":"blink","pid":25863,"tid":25913,"ts":531359339942,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":104,"tdur":96,"tts":679151},{"cat":"blink","pid":25863,"tid":25913,"ts":531359339945,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":679154},{"cat":"blink","pid":25863,"tid":25913,"ts":531359339948,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":31,"tts":679157},{"cat":"blink","pid":25863,"tid":25913,"ts":531359339954,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":24,"tts":679163},{"cat":"v8","pid":25863,"tid":25913,"ts":531359339966,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":679175},{"cat":"v8","pid":25863,"tid":25913,"ts":531359339968,"ph":"B","name":"V8.Execute","args":{},"tts":679177},{"cat":"v8","pid":25863,"tid":25913,"ts":531359339974,"ph":"E","name":"V8.Execute","args":{},"tts":679183},{"cat":"v8","pid":25863,"tid":25913,"ts":531359339981,"ph":"X","name":"v8.callFunction","args":{},"dur":63,"tdur":55,"tts":679190},{"cat":"v8","pid":25863,"tid":25913,"ts":531359339982,"ph":"B","name":"V8.Execute","args":{},"tts":679191},{"cat":"blink","pid":25863,"tid":25913,"ts":531359339986,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":679195},{"cat":"v8","pid":25863,"tid":25913,"ts":531359340041,"ph":"E","name":"V8.Execute","args":{},"tts":679243},{"cat":"blink","pid":25863,"tid":25913,"ts":531359340046,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":27,"tts":679248},{"cat":"blink","pid":25863,"tid":25913,"ts":531359340048,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":679250},{"cat":"blink","pid":25863,"tid":25913,"ts":531359340049,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":679251},{"cat":"blink","pid":25863,"tid":25913,"ts":531359340066,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":679268},{"cat":"blink","pid":25863,"tid":25913,"ts":531359340070,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":679272},{"cat":"sky","pid":25863,"tid":25913,"ts":531359340074,"ph":"X","name":"Layer::Display","args":{},"dur":793,"tdur":791,"tts":679276},{"cat":"sky","pid":25863,"tid":25913,"ts":531359340868,"ph":"X","name":"LayerHost::Upload","args":{},"dur":168,"tdur":88,"tts":680070},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359341048,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":35,"tdur":35,"tts":680170},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341052,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":27,"tts":680174},{"cat":"v8","pid":25863,"tid":25913,"ts":531359341054,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":24,"tdur":23,"tts":680177},{"cat":"v8","pid":25863,"tid":25913,"ts":531359341057,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":20,"tts":680179},{"cat":"v8","pid":25863,"tid":25913,"ts":531359341058,"ph":"B","name":"V8.Execute","args":{},"tts":680181},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341066,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":8,"tts":680188},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341071,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":680194},{"cat":"v8","pid":25863,"tid":25913,"ts":531359341075,"ph":"E","name":"V8.Execute","args":{},"tts":680198},{"cat":"sky","pid":25863,"tid":25913,"ts":531359341472,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1004,"tdur":935,"tts":680368},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341476,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":96,"tdur":95,"tts":680371},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341479,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":680374},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341482,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":30,"tts":680377},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341488,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":24,"tts":680383},{"cat":"v8","pid":25863,"tid":25913,"ts":531359341500,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":680395},{"cat":"v8","pid":25863,"tid":25913,"ts":531359341502,"ph":"B","name":"V8.Execute","args":{},"tts":680396},{"cat":"v8","pid":25863,"tid":25913,"ts":531359341508,"ph":"E","name":"V8.Execute","args":{},"tts":680402},{"cat":"v8","pid":25863,"tid":25913,"ts":531359341515,"ph":"X","name":"v8.callFunction","args":{},"dur":54,"tdur":54,"tts":680410},{"cat":"v8","pid":25863,"tid":25913,"ts":531359341516,"ph":"B","name":"V8.Execute","args":{},"tts":680411},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341520,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":680414},{"cat":"v8","pid":25863,"tid":25913,"ts":531359341560,"ph":"E","name":"V8.Execute","args":{},"tts":680454},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341572,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":27,"tdur":27,"tts":680467},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341574,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":680468},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341575,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":680470},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341592,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":680486},{"cat":"blink","pid":25863,"tid":25913,"ts":531359341596,"ph":"X","name":"FrameView::invalidateTree","args":{"root":"x�ף&+"},"dur":3,"tdur":3,"tts":680490},{"cat":"sky","pid":25863,"tid":25913,"ts":531359341600,"ph":"X","name":"Layer::Display","args":{},"dur":727,"tdur":725,"tts":680495},{"cat":"sky","pid":25863,"tid":25913,"ts":531359342327,"ph":"X","name":"LayerHost::Upload","args":{},"dur":148,"tdur":80,"tts":681222},{"cat":"sky","pid":25863,"tid":25913,"ts":531359342846,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":994,"tdur":945,"tts":681495},{"cat":"blink","pid":25863,"tid":25913,"ts":531359342850,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":97,"tdur":96,"tts":681498},{"cat":"blink","pid":25863,"tid":25913,"ts":531359342853,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":681500},{"cat":"blink","pid":25863,"tid":25913,"ts":531359342855,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":31,"tts":681503},{"cat":"blink","pid":25863,"tid":25913,"ts":531359342862,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":24,"tdur":24,"tts":681509},{"cat":"v8","pid":25863,"tid":25913,"ts":531359342873,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":681521},{"cat":"v8","pid":25863,"tid":25913,"ts":531359342875,"ph":"B","name":"V8.Execute","args":{},"tts":681523},{"cat":"v8","pid":25863,"tid":25913,"ts":531359342881,"ph":"E","name":"V8.Execute","args":{},"tts":681529},{"cat":"v8","pid":25863,"tid":25913,"ts":531359342888,"ph":"X","name":"v8.callFunction","args":{},"dur":57,"tdur":56,"tts":681536},{"cat":"v8","pid":25863,"tid":25913,"ts":531359342889,"ph":"B","name":"V8.Execute","args":{},"tts":681537},{"cat":"blink","pid":25863,"tid":25913,"ts":531359342893,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":681541},{"cat":"v8","pid":25863,"tid":25913,"ts":531359342942,"ph":"E","name":"V8.Execute","args":{},"tts":681590},{"cat":"blink","pid":25863,"tid":25913,"ts":531359342947,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":27,"tdur":27,"tts":681595},{"cat":"blink","pid":25863,"tid":25913,"ts":531359342949,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":681597},{"cat":"blink","pid":25863,"tid":25913,"ts":531359342950,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":681598},{"cat":"blink","pid":25863,"tid":25913,"ts":531359342967,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":681615},{"cat":"blink","pid":25863,"tid":25913,"ts":531359342971,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":681618},{"cat":"sky","pid":25863,"tid":25913,"ts":531359342975,"ph":"X","name":"Layer::Display","args":{},"dur":734,"tdur":733,"tts":681623},{"cat":"sky","pid":25863,"tid":25913,"ts":531359343710,"ph":"X","name":"LayerHost::Upload","args":{},"dur":130,"tdur":81,"tts":682358},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359343851,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":35,"tdur":35,"tts":682451},{"cat":"blink","pid":25863,"tid":25913,"ts":531359343855,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":27,"tts":682455},{"cat":"v8","pid":25863,"tid":25913,"ts":531359343857,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":24,"tdur":23,"tts":682458},{"cat":"v8","pid":25863,"tid":25913,"ts":531359343860,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":20,"tts":682460},{"cat":"v8","pid":25863,"tid":25913,"ts":531359343862,"ph":"B","name":"V8.Execute","args":{},"tts":682462},{"cat":"blink","pid":25863,"tid":25913,"ts":531359343869,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":8,"tts":682469},{"cat":"blink","pid":25863,"tid":25913,"ts":531359343874,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":682475},{"cat":"v8","pid":25863,"tid":25913,"ts":531359343878,"ph":"E","name":"V8.Execute","args":{},"tts":682478},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359344968,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":39,"tdur":37,"tts":682608},{"cat":"blink","pid":25863,"tid":25913,"ts":531359344974,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":28,"tdur":29,"tts":682612},{"cat":"v8","pid":25863,"tid":25913,"ts":531359344976,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":24,"tts":682615},{"cat":"v8","pid":25863,"tid":25913,"ts":531359344979,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":20,"tts":682618},{"cat":"v8","pid":25863,"tid":25913,"ts":531359344981,"ph":"B","name":"V8.Execute","args":{},"tts":682620},{"cat":"blink","pid":25863,"tid":25913,"ts":531359344988,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":682627},{"cat":"blink","pid":25863,"tid":25913,"ts":531359344994,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":682633},{"cat":"v8","pid":25863,"tid":25913,"ts":531359344998,"ph":"E","name":"V8.Execute","args":{},"tts":682637},{"cat":"sky","pid":25863,"tid":25913,"ts":531359403401,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2057,"tdur":1862,"tts":682762},{"cat":"blink","pid":25863,"tid":25913,"ts":531359403410,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":156,"tdur":156,"tts":682769},{"cat":"blink","pid":25863,"tid":25913,"ts":531359403426,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":682785},{"cat":"blink","pid":25863,"tid":25913,"ts":531359403430,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":45,"tdur":45,"tts":682789},{"cat":"blink","pid":25863,"tid":25913,"ts":531359403444,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":30,"tdur":29,"tts":682804},{"cat":"v8","pid":25863,"tid":25913,"ts":531359403459,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":12,"tts":682818},{"cat":"v8","pid":25863,"tid":25913,"ts":531359403461,"ph":"B","name":"V8.Execute","args":{},"tts":682820},{"cat":"v8","pid":25863,"tid":25913,"ts":531359403469,"ph":"E","name":"V8.Execute","args":{},"tts":682828},{"cat":"v8","pid":25863,"tid":25913,"ts":531359403477,"ph":"X","name":"v8.callFunction","args":{},"dur":87,"tdur":86,"tts":682837},{"cat":"v8","pid":25863,"tid":25913,"ts":531359403479,"ph":"B","name":"V8.Execute","args":{},"tts":682838},{"cat":"blink","pid":25863,"tid":25913,"ts":531359403495,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":16,"tdur":16,"tts":682854},{"cat":"v8","pid":25863,"tid":25913,"ts":531359403561,"ph":"E","name":"V8.Execute","args":{},"tts":682920},{"cat":"blink","pid":25863,"tid":25913,"ts":531359403567,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":33,"tdur":33,"tts":682926},{"cat":"blink","pid":25863,"tid":25913,"ts":531359403569,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":682928},{"cat":"blink","pid":25863,"tid":25913,"ts":531359403571,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":19,"tts":682930},{"cat":"blink","pid":25863,"tid":25913,"ts":531359403591,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":682950},{"cat":"blink","pid":25863,"tid":25913,"ts":531359403595,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":682955},{"cat":"sky","pid":25863,"tid":25913,"ts":531359403601,"ph":"X","name":"Layer::Display","args":{},"dur":1475,"tdur":1454,"tts":682960},{"cat":"sky","pid":25863,"tid":25913,"ts":531359405078,"ph":"X","name":"LayerHost::Upload","args":{},"dur":379,"tdur":203,"tts":684418},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359405484,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":129,"tdur":127,"tts":684652},{"cat":"blink","pid":25863,"tid":25913,"ts":531359405495,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":107,"tdur":106,"tts":684662},{"cat":"v8","pid":25863,"tid":25913,"ts":531359405501,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":98,"tdur":98,"tts":684667},{"cat":"v8","pid":25863,"tid":25913,"ts":531359405525,"ph":"X","name":"v8.callFunction","args":{},"dur":72,"tdur":72,"tts":684691},{"cat":"v8","pid":25863,"tid":25913,"ts":531359405529,"ph":"B","name":"V8.Execute","args":{},"tts":684695},{"cat":"blink","pid":25863,"tid":25913,"ts":531359405548,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":42,"tdur":41,"tts":684715},{"cat":"blink","pid":25863,"tid":25913,"ts":531359405583,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":684750},{"cat":"v8","pid":25863,"tid":25913,"ts":531359405593,"ph":"E","name":"V8.Execute","args":{},"tts":684759},{"cat":"sky","pid":25863,"tid":25913,"ts":531359406378,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2407,"tdur":2244,"tts":685157},{"cat":"blink","pid":25863,"tid":25913,"ts":531359406388,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":210,"tdur":210,"tts":685164},{"cat":"blink","pid":25863,"tid":25913,"ts":531359406394,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":685171},{"cat":"blink","pid":25863,"tid":25913,"ts":531359406401,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":75,"tdur":74,"tts":685178},{"cat":"blink","pid":25863,"tid":25913,"ts":531359406416,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":685193},{"cat":"v8","pid":25863,"tid":25913,"ts":531359406444,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":685221},{"cat":"v8","pid":25863,"tid":25913,"ts":531359406449,"ph":"B","name":"V8.Execute","args":{},"tts":685225},{"cat":"v8","pid":25863,"tid":25913,"ts":531359406463,"ph":"E","name":"V8.Execute","args":{},"tts":685240},{"cat":"v8","pid":25863,"tid":25913,"ts":531359406480,"ph":"X","name":"v8.callFunction","args":{},"dur":113,"tdur":112,"tts":685257},{"cat":"v8","pid":25863,"tid":25913,"ts":531359406484,"ph":"B","name":"V8.Execute","args":{},"tts":685261},{"cat":"blink","pid":25863,"tid":25913,"ts":531359406492,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":685269},{"cat":"v8","pid":25863,"tid":25913,"ts":531359406587,"ph":"E","name":"V8.Execute","args":{},"tts":685364},{"cat":"blink","pid":25863,"tid":25913,"ts":531359406599,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":65,"tdur":64,"tts":685376},{"cat":"blink","pid":25863,"tid":25913,"ts":531359406603,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":685380},{"cat":"blink","pid":25863,"tid":25913,"ts":531359406606,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":38,"tts":685383},{"cat":"blink","pid":25863,"tid":25913,"ts":531359406646,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":685423},{"cat":"blink","pid":25863,"tid":25913,"ts":531359406655,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":685432},{"cat":"sky","pid":25863,"tid":25913,"ts":531359406666,"ph":"X","name":"Layer::Display","args":{},"dur":1775,"tdur":1772,"tts":685443},{"cat":"sky","pid":25863,"tid":25913,"ts":531359408443,"ph":"X","name":"LayerHost::Upload","args":{},"dur":340,"tdur":178,"tts":687220},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359408811,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":86,"tdur":85,"tts":687428},{"cat":"blink","pid":25863,"tid":25913,"ts":531359408822,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":65,"tdur":65,"tts":687438},{"cat":"v8","pid":25863,"tid":25913,"ts":531359408827,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":56,"tts":687444},{"cat":"v8","pid":25863,"tid":25913,"ts":531359408833,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":687450},{"cat":"v8","pid":25863,"tid":25913,"ts":531359408837,"ph":"B","name":"V8.Execute","args":{},"tts":687454},{"cat":"blink","pid":25863,"tid":25913,"ts":531359408855,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":687472},{"cat":"blink","pid":25863,"tid":25913,"ts":531359408869,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":687486},{"cat":"v8","pid":25863,"tid":25913,"ts":531359408879,"ph":"E","name":"V8.Execute","args":{},"tts":687495},{"cat":"sky","pid":25863,"tid":25913,"ts":531359409601,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":3021,"tdur":2855,"tts":687888},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409610,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":248,"tdur":247,"tts":687895},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409617,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":2,"tts":687902},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409624,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":86,"tdur":85,"tts":687909},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409649,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":60,"tdur":58,"tts":687935},{"cat":"v8","pid":25863,"tid":25913,"ts":531359409678,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":687964},{"cat":"v8","pid":25863,"tid":25913,"ts":531359409683,"ph":"B","name":"V8.Execute","args":{},"tts":687968},{"cat":"v8","pid":25863,"tid":25913,"ts":531359409697,"ph":"E","name":"V8.Execute","args":{},"tts":687982},{"cat":"v8","pid":25863,"tid":25913,"ts":531359409714,"ph":"X","name":"v8.callFunction","args":{},"dur":139,"tdur":138,"tts":687999},{"cat":"v8","pid":25863,"tid":25913,"ts":531359409718,"ph":"B","name":"V8.Execute","args":{},"tts":688003},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409726,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":688011},{"cat":"v8","pid":25863,"tid":25913,"ts":531359409846,"ph":"E","name":"V8.Execute","args":{},"tts":688132},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409859,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":670,"tdur":670,"tts":688144},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409863,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":688148},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409866,"ph":"X","name":"Document::updateStyle","args":{},"dur":120,"tdur":118,"tts":688151},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409988,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":688273},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409993,"ph":"X","name":"FrameView::layout","args":{},"dur":61,"tdur":60,"tts":688278},{"cat":"blink","pid":25863,"tid":25913,"ts":531359409996,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":4,"tdur":3,"tts":688281},{"cat":"blink","pid":25863,"tid":25913,"ts":531359410001,"ph":"X","name":"FrameView::performLayout","args":{},"dur":34,"tdur":33,"tts":688286},{"cat":"blink","pid":25863,"tid":25913,"ts":531359410036,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":5,"tdur":4,"tts":688321},{"cat":"blink","pid":25863,"tid":25913,"ts":531359410041,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":10,"tdur":8,"tts":688327},{"cat":"blink","pid":25863,"tid":25913,"ts":531359410060,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":468,"tdur":467,"tts":688345},{"cat":"sky","pid":25863,"tid":25913,"ts":531359410531,"ph":"X","name":"Layer::Display","args":{},"dur":1799,"tdur":1796,"tts":688817},{"cat":"sky","pid":25863,"tid":25913,"ts":531359412332,"ph":"X","name":"LayerHost::Upload","args":{},"dur":288,"tdur":124,"tts":690617},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359412646,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":95,"tdur":94,"tts":690768},{"cat":"blink","pid":25863,"tid":25913,"ts":531359412655,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":76,"tdur":75,"tts":690777},{"cat":"v8","pid":25863,"tid":25913,"ts":531359412660,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":68,"tdur":67,"tts":690782},{"cat":"v8","pid":25863,"tid":25913,"ts":531359412666,"ph":"X","name":"v8.callFunction","args":{},"dur":60,"tdur":59,"tts":690788},{"cat":"v8","pid":25863,"tid":25913,"ts":531359412670,"ph":"B","name":"V8.Execute","args":{},"tts":690791},{"cat":"blink","pid":25863,"tid":25913,"ts":531359412686,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":690808},{"cat":"blink","pid":25863,"tid":25913,"ts":531359412699,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":690821},{"cat":"v8","pid":25863,"tid":25913,"ts":531359412708,"ph":"E","name":"V8.Execute","args":{},"tts":690830},{"cat":"sky","pid":25863,"tid":25913,"ts":531359413299,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2274,"tdur":2120,"tts":691096},{"cat":"blink","pid":25863,"tid":25913,"ts":531359413305,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":188,"tdur":187,"tts":691101},{"cat":"blink","pid":25863,"tid":25913,"ts":531359413310,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":691106},{"cat":"blink","pid":25863,"tid":25913,"ts":531359413316,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":65,"tdur":64,"tts":691112},{"cat":"blink","pid":25863,"tid":25913,"ts":531359413329,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":51,"tdur":50,"tts":691125},{"cat":"v8","pid":25863,"tid":25913,"ts":531359413352,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":691148},{"cat":"v8","pid":25863,"tid":25913,"ts":531359413356,"ph":"B","name":"V8.Execute","args":{},"tts":691152},{"cat":"v8","pid":25863,"tid":25913,"ts":531359413369,"ph":"E","name":"V8.Execute","args":{},"tts":691165},{"cat":"v8","pid":25863,"tid":25913,"ts":531359413385,"ph":"X","name":"v8.callFunction","args":{},"dur":103,"tdur":102,"tts":691181},{"cat":"v8","pid":25863,"tid":25913,"ts":531359413388,"ph":"B","name":"V8.Execute","args":{},"tts":691184},{"cat":"blink","pid":25863,"tid":25913,"ts":531359413396,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":19,"tdur":18,"tts":691192},{"cat":"v8","pid":25863,"tid":25913,"ts":531359413482,"ph":"E","name":"V8.Execute","args":{},"tts":691278},{"cat":"blink","pid":25863,"tid":25913,"ts":531359413494,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":60,"tdur":59,"tts":691290},{"cat":"blink","pid":25863,"tid":25913,"ts":531359413498,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":691294},{"cat":"blink","pid":25863,"tid":25913,"ts":531359413501,"ph":"X","name":"Document::updateStyle","args":{},"dur":36,"tdur":34,"tts":691297},{"cat":"blink","pid":25863,"tid":25913,"ts":531359413537,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":691333},{"cat":"blink","pid":25863,"tid":25913,"ts":531359413545,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":691341},{"cat":"sky","pid":25863,"tid":25913,"ts":531359413556,"ph":"X","name":"Layer::Display","args":{},"dur":1742,"tdur":1740,"tts":691351},{"cat":"sky","pid":25863,"tid":25913,"ts":531359415300,"ph":"X","name":"LayerHost::Upload","args":{},"dur":272,"tdur":119,"tts":693096},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359415595,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":78,"tdur":77,"tts":693239},{"cat":"blink","pid":25863,"tid":25913,"ts":531359415604,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":60,"tdur":59,"tts":693248},{"cat":"v8","pid":25863,"tid":25913,"ts":531359415609,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":52,"tdur":52,"tts":693253},{"cat":"v8","pid":25863,"tid":25913,"ts":531359415615,"ph":"X","name":"v8.callFunction","args":{},"dur":44,"tdur":44,"tts":693259},{"cat":"v8","pid":25863,"tid":25913,"ts":531359415618,"ph":"B","name":"V8.Execute","args":{},"tts":693262},{"cat":"blink","pid":25863,"tid":25913,"ts":531359415634,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":18,"tts":693279},{"cat":"blink","pid":25863,"tid":25913,"ts":531359415647,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":5,"tdur":5,"tts":693291},{"cat":"v8","pid":25863,"tid":25913,"ts":531359415656,"ph":"E","name":"V8.Execute","args":{},"tts":693300},{"cat":"sky","pid":25863,"tid":25913,"ts":531359469894,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":3207,"tdur":3022,"tts":693519},{"cat":"blink","pid":25863,"tid":25913,"ts":531359469897,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":392,"tdur":392,"tts":693521},{"cat":"blink","pid":25863,"tid":25913,"ts":531359469899,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":693524},{"cat":"blink","pid":25863,"tid":25913,"ts":531359469902,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":63,"tdur":63,"tts":693526},{"cat":"blink","pid":25863,"tid":25913,"ts":531359469907,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":57,"tdur":56,"tts":693532},{"cat":"v8","pid":25863,"tid":25913,"ts":531359469935,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":20,"tts":693561},{"cat":"v8","pid":25863,"tid":25913,"ts":531359469940,"ph":"B","name":"V8.Execute","args":{},"tts":693565},{"cat":"v8","pid":25863,"tid":25913,"ts":531359469953,"ph":"E","name":"V8.Execute","args":{},"tts":693578},{"cat":"v8","pid":25863,"tid":25913,"ts":531359469969,"ph":"X","name":"v8.callFunction","args":{},"dur":313,"tdur":311,"tts":693594},{"cat":"v8","pid":25863,"tid":25913,"ts":531359469972,"ph":"B","name":"V8.Execute","args":{},"tts":693597},{"cat":"blink","pid":25863,"tid":25913,"ts":531359469980,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":19,"tdur":18,"tts":693605},{"cat":"v8","pid":25863,"tid":25913,"ts":531359470193,"ph":"E","name":"V8.Execute","args":{},"tts":693818},{"cat":"blink","pid":25863,"tid":25913,"ts":531359470290,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":741,"tdur":740,"tts":693915},{"cat":"blink","pid":25863,"tid":25913,"ts":531359470296,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":693921},{"cat":"blink","pid":25863,"tid":25913,"ts":531359470299,"ph":"X","name":"Document::updateStyle","args":{},"dur":122,"tdur":120,"tts":693924},{"cat":"blink","pid":25863,"tid":25913,"ts":531359470423,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":6},"tts":694048},{"cat":"blink","pid":25863,"tid":25913,"ts":531359470428,"ph":"X","name":"FrameView::layout","args":{},"dur":210,"tdur":209,"tts":694053},{"cat":"blink","pid":25863,"tid":25913,"ts":531359470431,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":3,"tdur":3,"tts":694055},{"cat":"blink","pid":25863,"tid":25913,"ts":531359470435,"ph":"X","name":"FrameView::performLayout","args":{},"dur":182,"tdur":180,"tts":694060},{"cat":"blink","pid":25863,"tid":25913,"ts":531359470619,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":6,"tdur":5,"tts":694244},{"cat":"blink","pid":25863,"tid":25913,"ts":531359470626,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":9,"tdur":8,"tts":694251},{"cat":"blink","pid":25863,"tid":25913,"ts":531359470643,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":386,"tdur":385,"tts":694268},{"cat":"sky","pid":25863,"tid":25913,"ts":531359471034,"ph":"X","name":"Layer::Display","args":{},"dur":1775,"tdur":1758,"tts":694659},{"cat":"sky","pid":25863,"tid":25913,"ts":531359472811,"ph":"X","name":"LayerHost::Upload","args":{},"dur":289,"tdur":119,"tts":696421},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359473125,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":80,"tdur":79,"tts":696566},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473134,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":61,"tdur":60,"tts":696575},{"cat":"v8","pid":25863,"tid":25913,"ts":531359473139,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":54,"tdur":53,"tts":696580},{"cat":"v8","pid":25863,"tid":25913,"ts":531359473145,"ph":"X","name":"v8.callFunction","args":{},"dur":46,"tdur":45,"tts":696586},{"cat":"v8","pid":25863,"tid":25913,"ts":531359473148,"ph":"B","name":"V8.Execute","args":{},"tts":696589},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473165,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":696606},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473178,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":696619},{"cat":"v8","pid":25863,"tid":25913,"ts":531359473187,"ph":"E","name":"V8.Execute","args":{},"tts":696628},{"cat":"sky","pid":25863,"tid":25913,"ts":531359473566,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":997,"tdur":944,"tts":696782},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473569,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":91,"tdur":91,"tts":696784},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473571,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":696787},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473574,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":35,"tdur":36,"tts":696789},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473579,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":30,"tdur":29,"tts":696795},{"cat":"v8","pid":25863,"tid":25913,"ts":531359473597,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":10,"tts":696812},{"cat":"v8","pid":25863,"tid":25913,"ts":531359473599,"ph":"B","name":"V8.Execute","args":{},"tts":696814},{"cat":"v8","pid":25863,"tid":25913,"ts":531359473605,"ph":"E","name":"V8.Execute","args":{},"tts":696820},{"cat":"v8","pid":25863,"tid":25913,"ts":531359473612,"ph":"X","name":"v8.callFunction","args":{},"dur":46,"tdur":46,"tts":696827},{"cat":"v8","pid":25863,"tid":25913,"ts":531359473613,"ph":"B","name":"V8.Execute","args":{},"tts":696829},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473617,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":8,"tdur":8,"tts":696832},{"cat":"v8","pid":25863,"tid":25913,"ts":531359473655,"ph":"E","name":"V8.Execute","args":{},"tts":696871},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473660,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":27,"tdur":27,"tts":696876},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473662,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":696878},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473664,"ph":"X","name":"Document::updateStyle","args":{},"dur":15,"tdur":16,"tts":696879},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473680,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":696896},{"cat":"blink","pid":25863,"tid":25913,"ts":531359473683,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":696899},{"cat":"sky","pid":25863,"tid":25913,"ts":531359473688,"ph":"X","name":"Layer::Display","args":{},"dur":768,"tdur":767,"tts":696904},{"cat":"sky","pid":25863,"tid":25913,"ts":531359474457,"ph":"X","name":"LayerHost::Upload","args":{},"dur":106,"tdur":52,"tts":697673},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359474649,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":37,"tdur":36,"tts":697789},{"cat":"blink","pid":25863,"tid":25913,"ts":531359474654,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":26,"tdur":26,"tts":697793},{"cat":"v8","pid":25863,"tid":25913,"ts":531359474656,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":23,"tdur":23,"tts":697795},{"cat":"v8","pid":25863,"tid":25913,"ts":531359474658,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":19,"tts":697798},{"cat":"v8","pid":25863,"tid":25913,"ts":531359474660,"ph":"B","name":"V8.Execute","args":{},"tts":697799},{"cat":"blink","pid":25863,"tid":25913,"ts":531359474667,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":697806},{"cat":"blink","pid":25863,"tid":25913,"ts":531359474673,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":697812},{"cat":"v8","pid":25863,"tid":25913,"ts":531359474677,"ph":"E","name":"V8.Execute","args":{},"tts":697816},{"cat":"sky","pid":25863,"tid":25913,"ts":531359474928,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1068,"tdur":1012,"tts":697973},{"cat":"blink","pid":25863,"tid":25913,"ts":531359474933,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":98,"tdur":98,"tts":697976},{"cat":"blink","pid":25863,"tid":25913,"ts":531359474936,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":697980},{"cat":"blink","pid":25863,"tid":25913,"ts":531359474939,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":38,"tdur":37,"tts":697983},{"cat":"blink","pid":25863,"tid":25913,"ts":531359474951,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":26,"tdur":25,"tts":697995},{"cat":"v8","pid":25863,"tid":25913,"ts":531359474964,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":698007},{"cat":"v8","pid":25863,"tid":25913,"ts":531359474965,"ph":"B","name":"V8.Execute","args":{},"tts":698009},{"cat":"v8","pid":25863,"tid":25913,"ts":531359474972,"ph":"E","name":"V8.Execute","args":{},"tts":698015},{"cat":"v8","pid":25863,"tid":25913,"ts":531359474979,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":50,"tts":698022},{"cat":"v8","pid":25863,"tid":25913,"ts":531359474981,"ph":"B","name":"V8.Execute","args":{},"tts":698024},{"cat":"blink","pid":25863,"tid":25913,"ts":531359474984,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":698028},{"cat":"v8","pid":25863,"tid":25913,"ts":531359475026,"ph":"E","name":"V8.Execute","args":{},"tts":698070},{"cat":"blink","pid":25863,"tid":25913,"ts":531359475032,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":29,"tts":698075},{"cat":"blink","pid":25863,"tid":25913,"ts":531359475034,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":698077},{"cat":"blink","pid":25863,"tid":25913,"ts":531359475035,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":17,"tts":698078},{"cat":"blink","pid":25863,"tid":25913,"ts":531359475053,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":698096},{"cat":"blink","pid":25863,"tid":25913,"ts":531359475057,"ph":"X","name":"FrameView::invalidateTree","args":{"root":"8�ף&+"},"dur":3,"tdur":3,"tts":698100},{"cat":"sky","pid":25863,"tid":25913,"ts":531359475061,"ph":"X","name":"Layer::Display","args":{},"dur":790,"tdur":788,"tts":698105},{"cat":"sky","pid":25863,"tid":25913,"ts":531359475851,"ph":"X","name":"LayerHost::Upload","args":{},"dur":144,"tdur":88,"tts":698895},{"cat":"sky","pid":25863,"tid":25913,"ts":531359476427,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1076,"tdur":1006,"tts":699190},{"cat":"blink","pid":25863,"tid":25913,"ts":531359476431,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":89,"tdur":88,"tts":699194},{"cat":"blink","pid":25863,"tid":25913,"ts":531359476434,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":699196},{"cat":"blink","pid":25863,"tid":25913,"ts":531359476437,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":33,"tdur":33,"tts":699199},{"cat":"blink","pid":25863,"tid":25913,"ts":531359476444,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":26,"tdur":26,"tts":699206},{"cat":"v8","pid":25863,"tid":25913,"ts":531359476456,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":699219},{"cat":"v8","pid":25863,"tid":25913,"ts":531359476458,"ph":"B","name":"V8.Execute","args":{},"tts":699221},{"cat":"v8","pid":25863,"tid":25913,"ts":531359476465,"ph":"E","name":"V8.Execute","args":{},"tts":699227},{"cat":"v8","pid":25863,"tid":25913,"ts":531359476472,"ph":"X","name":"v8.callFunction","args":{},"dur":46,"tdur":45,"tts":699235},{"cat":"v8","pid":25863,"tid":25913,"ts":531359476474,"ph":"B","name":"V8.Execute","args":{},"tts":699236},{"cat":"blink","pid":25863,"tid":25913,"ts":531359476477,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":699240},{"cat":"v8","pid":25863,"tid":25913,"ts":531359476515,"ph":"E","name":"V8.Execute","args":{},"tts":699278},{"cat":"blink","pid":25863,"tid":25913,"ts":531359476520,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":28,"tts":699283},{"cat":"blink","pid":25863,"tid":25913,"ts":531359476522,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":699285},{"cat":"blink","pid":25863,"tid":25913,"ts":531359476523,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":699286},{"cat":"blink","pid":25863,"tid":25913,"ts":531359476541,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":699304},{"cat":"blink","pid":25863,"tid":25913,"ts":531359476545,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":699308},{"cat":"sky","pid":25863,"tid":25913,"ts":531359476550,"ph":"X","name":"Layer::Display","args":{},"dur":796,"tdur":795,"tts":699312},{"cat":"sky","pid":25863,"tid":25913,"ts":531359477347,"ph":"X","name":"LayerHost::Upload","args":{},"dur":155,"tdur":86,"tts":700109},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359477514,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":68,"tdur":68,"tts":700207},{"cat":"blink","pid":25863,"tid":25913,"ts":531359477519,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":41,"tdur":41,"tts":700212},{"cat":"v8","pid":25863,"tid":25913,"ts":531359477521,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":37,"tdur":37,"tts":700214},{"cat":"v8","pid":25863,"tid":25913,"ts":531359477524,"ph":"X","name":"v8.callFunction","args":{},"dur":33,"tdur":33,"tts":700217},{"cat":"v8","pid":25863,"tid":25913,"ts":531359477532,"ph":"B","name":"V8.Execute","args":{},"tts":700226},{"cat":"blink","pid":25863,"tid":25913,"ts":531359477541,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":13,"tdur":13,"tts":700234},{"cat":"blink","pid":25863,"tid":25913,"ts":531359477551,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":700244},{"cat":"v8","pid":25863,"tid":25913,"ts":531359477555,"ph":"E","name":"V8.Execute","args":{},"tts":700249},{"cat":"blink","pid":25863,"tid":25913,"ts":531359477560,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":18,"tdur":17,"tts":700253},{"cat":"v8","pid":25863,"tid":25913,"ts":531359477562,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":15,"tdur":15,"tts":700255},{"cat":"v8","pid":25863,"tid":25913,"ts":531359477564,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":12,"tts":700257},{"cat":"v8","pid":25863,"tid":25913,"ts":531359477565,"ph":"B","name":"V8.Execute","args":{},"tts":700258},{"cat":"blink","pid":25863,"tid":25913,"ts":531359477569,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":5,"tdur":5,"tts":700262},{"cat":"blink","pid":25863,"tid":25913,"ts":531359477571,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":1,"tts":700265},{"cat":"v8","pid":25863,"tid":25913,"ts":531359477574,"ph":"E","name":"V8.Execute","args":{},"tts":700268},{"cat":"sky","pid":25863,"tid":25913,"ts":531359553667,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1340,"tdur":1190,"tts":700448},{"cat":"blink","pid":25863,"tid":25913,"ts":531359553671,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":111,"tdur":111,"tts":700451},{"cat":"blink","pid":25863,"tid":25913,"ts":531359553673,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":700454},{"cat":"blink","pid":25863,"tid":25913,"ts":531359553677,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":37,"tdur":38,"tts":700457},{"cat":"blink","pid":25863,"tid":25913,"ts":531359553688,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":26,"tdur":25,"tts":700469},{"cat":"v8","pid":25863,"tid":25913,"ts":531359553700,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":700481},{"cat":"v8","pid":25863,"tid":25913,"ts":531359553702,"ph":"B","name":"V8.Execute","args":{},"tts":700483},{"cat":"v8","pid":25863,"tid":25913,"ts":531359553709,"ph":"E","name":"V8.Execute","args":{},"tts":700490},{"cat":"v8","pid":25863,"tid":25913,"ts":531359553716,"ph":"X","name":"v8.callFunction","args":{},"dur":64,"tdur":63,"tts":700497},{"cat":"v8","pid":25863,"tid":25913,"ts":531359553718,"ph":"B","name":"V8.Execute","args":{},"tts":700499},{"cat":"blink","pid":25863,"tid":25913,"ts":531359553721,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":700502},{"cat":"v8","pid":25863,"tid":25913,"ts":531359553776,"ph":"E","name":"V8.Execute","args":{},"tts":700558},{"cat":"blink","pid":25863,"tid":25913,"ts":531359553782,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":32,"tts":700563},{"cat":"blink","pid":25863,"tid":25913,"ts":531359553784,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":700565},{"cat":"blink","pid":25863,"tid":25913,"ts":531359553786,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":18,"tts":700567},{"cat":"blink","pid":25863,"tid":25913,"ts":531359553805,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":700586},{"cat":"blink","pid":25863,"tid":25913,"ts":531359553810,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":700591},{"cat":"sky","pid":25863,"tid":25913,"ts":531359553831,"ph":"X","name":"Layer::Display","args":{},"dur":889,"tdur":887,"tts":700613},{"cat":"sky","pid":25863,"tid":25913,"ts":531359554721,"ph":"X","name":"LayerHost::Upload","args":{},"dur":285,"tdur":135,"tts":701502},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359555021,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":52,"tdur":52,"tts":701653},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555026,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":43,"tdur":42,"tts":701658},{"cat":"v8","pid":25863,"tid":25913,"ts":531359555029,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":39,"tdur":39,"tts":701660},{"cat":"v8","pid":25863,"tid":25913,"ts":531359555032,"ph":"X","name":"v8.callFunction","args":{},"dur":35,"tdur":35,"tts":701663},{"cat":"v8","pid":25863,"tid":25913,"ts":531359555034,"ph":"B","name":"V8.Execute","args":{},"tts":701665},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555042,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":22,"tdur":21,"tts":701674},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555049,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":14,"tdur":14,"tts":701681},{"cat":"v8","pid":25863,"tid":25913,"ts":531359555065,"ph":"E","name":"V8.Execute","args":{},"tts":701696},{"cat":"sky","pid":25863,"tid":25913,"ts":531359555318,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1099,"tdur":1006,"tts":701869},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555322,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":104,"tdur":104,"tts":701872},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555324,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":701875},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555327,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":33,"tdur":32,"tts":701878},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555334,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":701884},{"cat":"v8","pid":25863,"tid":25913,"ts":531359555346,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":701897},{"cat":"v8","pid":25863,"tid":25913,"ts":531359555348,"ph":"B","name":"V8.Execute","args":{},"tts":701898},{"cat":"v8","pid":25863,"tid":25913,"ts":531359555354,"ph":"E","name":"V8.Execute","args":{},"tts":701905},{"cat":"v8","pid":25863,"tid":25913,"ts":531359555361,"ph":"X","name":"v8.callFunction","args":{},"dur":63,"tdur":62,"tts":701912},{"cat":"v8","pid":25863,"tid":25913,"ts":531359555363,"ph":"B","name":"V8.Execute","args":{},"tts":701913},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555366,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":701917},{"cat":"v8","pid":25863,"tid":25913,"ts":531359555421,"ph":"E","name":"V8.Execute","args":{},"tts":701972},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555426,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":28,"tts":701977},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555428,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":701979},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555430,"ph":"X","name":"Document::updateStyle","args":{},"dur":16,"tdur":16,"tts":701980},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555447,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":701997},{"cat":"blink","pid":25863,"tid":25913,"ts":531359555450,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":702001},{"cat":"sky","pid":25863,"tid":25913,"ts":531359555455,"ph":"X","name":"Layer::Display","args":{},"dur":794,"tdur":783,"tts":702006},{"cat":"sky","pid":25863,"tid":25913,"ts":531359556250,"ph":"X","name":"LayerHost::Upload","args":{},"dur":167,"tdur":82,"tts":702791},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359556429,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":44,"tdur":44,"tts":702887},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556433,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":36,"tdur":35,"tts":702891},{"cat":"v8","pid":25863,"tid":25913,"ts":531359556436,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":32,"tdur":32,"tts":702893},{"cat":"v8","pid":25863,"tid":25913,"ts":531359556438,"ph":"X","name":"v8.callFunction","args":{},"dur":29,"tdur":28,"tts":702896},{"cat":"v8","pid":25863,"tid":25913,"ts":531359556440,"ph":"B","name":"V8.Execute","args":{},"tts":702897},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556448,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":16,"tdur":16,"tts":702905},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556453,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":10,"tdur":9,"tts":702911},{"cat":"v8","pid":25863,"tid":25913,"ts":531359556465,"ph":"E","name":"V8.Execute","args":{},"tts":702922},{"cat":"sky","pid":25863,"tid":25913,"ts":531359556731,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":999,"tdur":964,"tts":703106},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556735,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":90,"tdur":89,"tts":703110},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556737,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":703112},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556740,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":32,"tdur":32,"tts":703115},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556747,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":703122},{"cat":"v8","pid":25863,"tid":25913,"ts":531359556759,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":703134},{"cat":"v8","pid":25863,"tid":25913,"ts":531359556761,"ph":"B","name":"V8.Execute","args":{},"tts":703136},{"cat":"v8","pid":25863,"tid":25913,"ts":531359556767,"ph":"E","name":"V8.Execute","args":{},"tts":703142},{"cat":"v8","pid":25863,"tid":25913,"ts":531359556774,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":703149},{"cat":"v8","pid":25863,"tid":25913,"ts":531359556776,"ph":"B","name":"V8.Execute","args":{},"tts":703151},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556779,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":703154},{"cat":"v8","pid":25863,"tid":25913,"ts":531359556820,"ph":"E","name":"V8.Execute","args":{},"tts":703195},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556825,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":28,"tts":703200},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556827,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":703202},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556828,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":703203},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556845,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":703220},{"cat":"blink","pid":25863,"tid":25913,"ts":531359556849,"ph":"X","name":"FrameView::invalidateTree","args":{"root":"��ף&+"},"dur":4,"tdur":3,"tts":703224},{"cat":"sky","pid":25863,"tid":25913,"ts":531359556854,"ph":"X","name":"Layer::Display","args":{},"dur":761,"tdur":760,"tts":703229},{"cat":"sky","pid":25863,"tid":25913,"ts":531359557616,"ph":"X","name":"LayerHost::Upload","args":{},"dur":114,"tdur":78,"tts":703991},{"cat":"sky","pid":25863,"tid":25913,"ts":531359557907,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1096,"tdur":1061,"tts":704168},{"cat":"blink","pid":25863,"tid":25913,"ts":531359557911,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":103,"tdur":102,"tts":704171},{"cat":"blink","pid":25863,"tid":25913,"ts":531359557913,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":704173},{"cat":"blink","pid":25863,"tid":25913,"ts":531359557916,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":32,"tdur":31,"tts":704176},{"cat":"blink","pid":25863,"tid":25913,"ts":531359557923,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":24,"tdur":24,"tts":704183},{"cat":"v8","pid":25863,"tid":25913,"ts":531359557935,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":704195},{"cat":"v8","pid":25863,"tid":25913,"ts":531359557937,"ph":"B","name":"V8.Execute","args":{},"tts":704197},{"cat":"v8","pid":25863,"tid":25913,"ts":531359557943,"ph":"E","name":"V8.Execute","args":{},"tts":704203},{"cat":"v8","pid":25863,"tid":25913,"ts":531359557950,"ph":"X","name":"v8.callFunction","args":{},"dur":61,"tdur":60,"tts":704210},{"cat":"v8","pid":25863,"tid":25913,"ts":531359557951,"ph":"B","name":"V8.Execute","args":{},"tts":704211},{"cat":"blink","pid":25863,"tid":25913,"ts":531359557955,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":13,"tdur":12,"tts":704215},{"cat":"v8","pid":25863,"tid":25913,"ts":531359558006,"ph":"E","name":"V8.Execute","args":{},"tts":704267},{"cat":"blink","pid":25863,"tid":25913,"ts":531359558014,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":40,"tdur":40,"tts":704274},{"cat":"blink","pid":25863,"tid":25913,"ts":531359558017,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":704277},{"cat":"blink","pid":25863,"tid":25913,"ts":531359558020,"ph":"X","name":"Document::updateStyle","args":{},"dur":22,"tdur":21,"tts":704280},{"cat":"blink","pid":25863,"tid":25913,"ts":531359558042,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":704302},{"cat":"blink","pid":25863,"tid":25913,"ts":531359558048,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":5,"tts":704308},{"cat":"sky","pid":25863,"tid":25913,"ts":531359558055,"ph":"X","name":"Layer::Display","args":{},"dur":860,"tdur":859,"tts":704315},{"cat":"sky","pid":25863,"tid":25913,"ts":531359558916,"ph":"X","name":"LayerHost::Upload","args":{},"dur":87,"tdur":52,"tts":705176},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359559012,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":52,"tdur":51,"tts":705239},{"cat":"blink","pid":25863,"tid":25913,"ts":531359559016,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":26,"tts":705243},{"cat":"v8","pid":25863,"tid":25913,"ts":531359559019,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":23,"tdur":23,"tts":705245},{"cat":"v8","pid":25863,"tid":25913,"ts":531359559021,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":20,"tts":705247},{"cat":"v8","pid":25863,"tid":25913,"ts":531359559023,"ph":"B","name":"V8.Execute","args":{},"tts":705249},{"cat":"blink","pid":25863,"tid":25913,"ts":531359559030,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":8,"tts":705256},{"cat":"blink","pid":25863,"tid":25913,"ts":531359559035,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":705262},{"cat":"v8","pid":25863,"tid":25913,"ts":531359559039,"ph":"E","name":"V8.Execute","args":{},"tts":705266},{"cat":"blink","pid":25863,"tid":25913,"ts":531359559044,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":16,"tdur":16,"tts":705270},{"cat":"v8","pid":25863,"tid":25913,"ts":531359559045,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":14,"tdur":13,"tts":705272},{"cat":"v8","pid":25863,"tid":25913,"ts":531359559047,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":705273},{"cat":"v8","pid":25863,"tid":25913,"ts":531359559048,"ph":"B","name":"V8.Execute","args":{},"tts":705274},{"cat":"blink","pid":25863,"tid":25913,"ts":531359559051,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":5,"tdur":4,"tts":705278},{"cat":"blink","pid":25863,"tid":25913,"ts":531359559054,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":705280},{"cat":"v8","pid":25863,"tid":25913,"ts":531359559057,"ph":"E","name":"V8.Execute","args":{},"tts":705283},{"cat":"sky","pid":25863,"tid":25913,"ts":531359620425,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2419,"tdur":2246,"tts":705424},{"cat":"blink","pid":25863,"tid":25913,"ts":531359620434,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":242,"tdur":241,"tts":705432},{"cat":"blink","pid":25863,"tid":25913,"ts":531359620440,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":705438},{"cat":"blink","pid":25863,"tid":25913,"ts":531359620447,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":86,"tdur":84,"tts":705445},{"cat":"blink","pid":25863,"tid":25913,"ts":531359620473,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":57,"tts":705471},{"cat":"v8","pid":25863,"tid":25913,"ts":531359620502,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":22,"tts":705499},{"cat":"v8","pid":25863,"tid":25913,"ts":531359620506,"ph":"B","name":"V8.Execute","args":{},"tts":705503},{"cat":"v8","pid":25863,"tid":25913,"ts":531359620520,"ph":"E","name":"V8.Execute","args":{},"tts":705518},{"cat":"v8","pid":25863,"tid":25913,"ts":531359620537,"ph":"X","name":"v8.callFunction","args":{},"dur":134,"tdur":133,"tts":705535},{"cat":"v8","pid":25863,"tid":25913,"ts":531359620541,"ph":"B","name":"V8.Execute","args":{},"tts":705538},{"cat":"blink","pid":25863,"tid":25913,"ts":531359620557,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":21,"tts":705555},{"cat":"v8","pid":25863,"tid":25913,"ts":531359620664,"ph":"E","name":"V8.Execute","args":{},"tts":705663},{"cat":"blink","pid":25863,"tid":25913,"ts":531359620677,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":705675},{"cat":"blink","pid":25863,"tid":25913,"ts":531359620682,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":705679},{"cat":"blink","pid":25863,"tid":25913,"ts":531359620685,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":38,"tts":705682},{"cat":"blink","pid":25863,"tid":25913,"ts":531359620725,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":705722},{"cat":"blink","pid":25863,"tid":25913,"ts":531359620734,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":7,"tdur":7,"tts":705731},{"cat":"sky","pid":25863,"tid":25913,"ts":531359620744,"ph":"X","name":"Layer::Display","args":{},"dur":1754,"tdur":1751,"tts":705742},{"cat":"sky","pid":25863,"tid":25913,"ts":531359622500,"ph":"X","name":"LayerHost::Upload","args":{},"dur":342,"tdur":169,"tts":707498},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359622870,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":87,"tdur":85,"tts":707698},{"cat":"blink","pid":25863,"tid":25913,"ts":531359622881,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":65,"tts":707708},{"cat":"v8","pid":25863,"tid":25913,"ts":531359622887,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":57,"tdur":56,"tts":707714},{"cat":"v8","pid":25863,"tid":25913,"ts":531359622893,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":707720},{"cat":"v8","pid":25863,"tid":25913,"ts":531359622897,"ph":"B","name":"V8.Execute","args":{},"tts":707724},{"cat":"blink","pid":25863,"tid":25913,"ts":531359622915,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":707742},{"cat":"blink","pid":25863,"tid":25913,"ts":531359622928,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":7,"tdur":5,"tts":707756},{"cat":"v8","pid":25863,"tid":25913,"ts":531359622938,"ph":"E","name":"V8.Execute","args":{},"tts":707765},{"cat":"sky","pid":25863,"tid":25913,"ts":531359623703,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2447,"tdur":2277,"tts":708161},{"cat":"blink","pid":25863,"tid":25913,"ts":531359623713,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":211,"tdur":210,"tts":708169},{"cat":"blink","pid":25863,"tid":25913,"ts":531359623719,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":708175},{"cat":"blink","pid":25863,"tid":25913,"ts":531359623726,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":75,"tdur":74,"tts":708182},{"cat":"blink","pid":25863,"tid":25913,"ts":531359623741,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":708197},{"cat":"v8","pid":25863,"tid":25913,"ts":531359623769,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":708226},{"cat":"v8","pid":25863,"tid":25913,"ts":531359623774,"ph":"B","name":"V8.Execute","args":{},"tts":708230},{"cat":"v8","pid":25863,"tid":25913,"ts":531359623788,"ph":"E","name":"V8.Execute","args":{},"tts":708244},{"cat":"v8","pid":25863,"tid":25913,"ts":531359623805,"ph":"X","name":"v8.callFunction","args":{},"dur":114,"tdur":113,"tts":708261},{"cat":"v8","pid":25863,"tid":25913,"ts":531359623809,"ph":"B","name":"V8.Execute","args":{},"tts":708265},{"cat":"blink","pid":25863,"tid":25913,"ts":531359623817,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":708273},{"cat":"v8","pid":25863,"tid":25913,"ts":531359623913,"ph":"E","name":"V8.Execute","args":{},"tts":708370},{"cat":"blink","pid":25863,"tid":25913,"ts":531359623925,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":124,"tdur":105,"tts":708381},{"cat":"blink","pid":25863,"tid":25913,"ts":531359623929,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":708385},{"cat":"blink","pid":25863,"tid":25913,"ts":531359623932,"ph":"X","name":"Document::updateStyle","args":{},"dur":57,"tdur":56,"tts":708388},{"cat":"blink","pid":25863,"tid":25913,"ts":531359623990,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":708446},{"cat":"blink","pid":25863,"tid":25913,"ts":531359623999,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":48,"tdur":30,"tts":708455},{"cat":"sky","pid":25863,"tid":25913,"ts":531359624051,"ph":"X","name":"Layer::Display","args":{},"dur":1772,"tdur":1770,"tts":708489},{"cat":"sky","pid":25863,"tid":25913,"ts":531359625825,"ph":"X","name":"LayerHost::Upload","args":{},"dur":323,"tdur":172,"tts":710264},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359626176,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":86,"tdur":85,"tts":710465},{"cat":"blink","pid":25863,"tid":25913,"ts":531359626187,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":65,"tdur":64,"tts":710476},{"cat":"v8","pid":25863,"tid":25913,"ts":531359626192,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":57,"tdur":56,"tts":710481},{"cat":"v8","pid":25863,"tid":25913,"ts":531359626199,"ph":"X","name":"v8.callFunction","args":{},"dur":48,"tdur":48,"tts":710487},{"cat":"v8","pid":25863,"tid":25913,"ts":531359626202,"ph":"B","name":"V8.Execute","args":{},"tts":710491},{"cat":"blink","pid":25863,"tid":25913,"ts":531359626221,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":710510},{"cat":"blink","pid":25863,"tid":25913,"ts":531359626234,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":710523},{"cat":"v8","pid":25863,"tid":25913,"ts":531359626243,"ph":"E","name":"V8.Execute","args":{},"tts":710532},{"cat":"sky","pid":25863,"tid":25913,"ts":531359627003,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2342,"tdur":2237,"tts":710940},{"cat":"blink","pid":25863,"tid":25913,"ts":531359627012,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":211,"tdur":210,"tts":710948},{"cat":"blink","pid":25863,"tid":25913,"ts":531359627019,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":710954},{"cat":"blink","pid":25863,"tid":25913,"ts":531359627026,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":75,"tdur":75,"tts":710961},{"cat":"blink","pid":25863,"tid":25913,"ts":531359627042,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":58,"tdur":58,"tts":710977},{"cat":"v8","pid":25863,"tid":25913,"ts":531359627070,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":711006},{"cat":"v8","pid":25863,"tid":25913,"ts":531359627074,"ph":"B","name":"V8.Execute","args":{},"tts":711010},{"cat":"v8","pid":25863,"tid":25913,"ts":531359627089,"ph":"E","name":"V8.Execute","args":{},"tts":711025},{"cat":"v8","pid":25863,"tid":25913,"ts":531359627106,"ph":"X","name":"v8.callFunction","args":{},"dur":112,"tdur":112,"tts":711041},{"cat":"v8","pid":25863,"tid":25913,"ts":531359627109,"ph":"B","name":"V8.Execute","args":{},"tts":711044},{"cat":"blink","pid":25863,"tid":25913,"ts":531359627117,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":711053},{"cat":"v8","pid":25863,"tid":25913,"ts":531359627212,"ph":"E","name":"V8.Execute","args":{},"tts":711148},{"cat":"blink","pid":25863,"tid":25913,"ts":531359627224,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":67,"tdur":66,"tts":711160},{"cat":"blink","pid":25863,"tid":25913,"ts":531359627228,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":711164},{"cat":"blink","pid":25863,"tid":25913,"ts":531359627231,"ph":"X","name":"Document::updateStyle","args":{},"dur":41,"tdur":39,"tts":711167},{"cat":"blink","pid":25863,"tid":25913,"ts":531359627273,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":711208},{"cat":"blink","pid":25863,"tid":25913,"ts":531359627282,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":711217},{"cat":"sky","pid":25863,"tid":25913,"ts":531359627293,"ph":"X","name":"Layer::Display","args":{},"dur":1759,"tdur":1758,"tts":711228},{"cat":"sky","pid":25863,"tid":25913,"ts":531359629054,"ph":"X","name":"LayerHost::Upload","args":{},"dur":289,"tdur":184,"tts":712990},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359629372,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":103,"tdur":102,"tts":713205},{"cat":"blink","pid":25863,"tid":25913,"ts":531359629402,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":63,"tdur":63,"tts":713234},{"cat":"v8","pid":25863,"tid":25913,"ts":531359629408,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":54,"tdur":54,"tts":713240},{"cat":"v8","pid":25863,"tid":25913,"ts":531359629414,"ph":"X","name":"v8.callFunction","args":{},"dur":46,"tdur":45,"tts":713246},{"cat":"v8","pid":25863,"tid":25913,"ts":531359629417,"ph":"B","name":"V8.Execute","args":{},"tts":713250},{"cat":"blink","pid":25863,"tid":25913,"ts":531359629436,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":18,"tdur":17,"tts":713268},{"cat":"blink","pid":25863,"tid":25913,"ts":531359629447,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":713279},{"cat":"v8","pid":25863,"tid":25913,"ts":531359629456,"ph":"E","name":"V8.Execute","args":{},"tts":713288},{"cat":"sky","pid":25863,"tid":25913,"ts":531359630080,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2319,"tdur":2180,"tts":713683},{"cat":"blink","pid":25863,"tid":25913,"ts":531359630090,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":228,"tdur":227,"tts":713691},{"cat":"blink","pid":25863,"tid":25913,"ts":531359630096,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":713697},{"cat":"blink","pid":25863,"tid":25913,"ts":531359630103,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":93,"tdur":92,"tts":713704},{"cat":"blink","pid":25863,"tid":25913,"ts":531359630129,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":66,"tdur":65,"tts":713730},{"cat":"v8","pid":25863,"tid":25913,"ts":531359630158,"ph":"X","name":"v8.callFunction","args":{},"dur":30,"tdur":29,"tts":713759},{"cat":"v8","pid":25863,"tid":25913,"ts":531359630162,"ph":"B","name":"V8.Execute","args":{},"tts":713763},{"cat":"v8","pid":25863,"tid":25913,"ts":531359630184,"ph":"E","name":"V8.Execute","args":{},"tts":713784},{"cat":"v8","pid":25863,"tid":25913,"ts":531359630200,"ph":"X","name":"v8.callFunction","args":{},"dur":114,"tdur":113,"tts":713801},{"cat":"v8","pid":25863,"tid":25913,"ts":531359630204,"ph":"B","name":"V8.Execute","args":{},"tts":713804},{"cat":"blink","pid":25863,"tid":25913,"ts":531359630212,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":713813},{"cat":"v8","pid":25863,"tid":25913,"ts":531359630307,"ph":"E","name":"V8.Execute","args":{},"tts":713909},{"cat":"blink","pid":25863,"tid":25913,"ts":531359630319,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":713920},{"cat":"blink","pid":25863,"tid":25913,"ts":531359630324,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":713925},{"cat":"blink","pid":25863,"tid":25913,"ts":531359630327,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":38,"tts":713927},{"cat":"blink","pid":25863,"tid":25913,"ts":531359630367,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":713968},{"cat":"blink","pid":25863,"tid":25913,"ts":531359630376,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":713977},{"cat":"sky","pid":25863,"tid":25913,"ts":531359630387,"ph":"X","name":"Layer::Display","args":{},"dur":1756,"tdur":1738,"tts":713987},{"cat":"sky","pid":25863,"tid":25913,"ts":531359632144,"ph":"X","name":"LayerHost::Upload","args":{},"dur":254,"tdur":135,"tts":715727},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359632411,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":38,"tdur":38,"tts":715875},{"cat":"blink","pid":25863,"tid":25913,"ts":531359632415,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":29,"tts":715880},{"cat":"v8","pid":25863,"tid":25913,"ts":531359632418,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":25,"tts":715882},{"cat":"v8","pid":25863,"tid":25913,"ts":531359632421,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":715885},{"cat":"v8","pid":25863,"tid":25913,"ts":531359632422,"ph":"B","name":"V8.Execute","args":{},"tts":715887},{"cat":"blink","pid":25863,"tid":25913,"ts":531359632430,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":715895},{"cat":"blink","pid":25863,"tid":25913,"ts":531359632436,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":715901},{"cat":"v8","pid":25863,"tid":25913,"ts":531359632440,"ph":"E","name":"V8.Execute","args":{},"tts":715905},{"cat":"sky","pid":25863,"tid":25913,"ts":531359670947,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1290,"tdur":1160,"tts":716169},{"cat":"blink","pid":25863,"tid":25913,"ts":531359670953,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":120,"tdur":120,"tts":716174},{"cat":"blink","pid":25863,"tid":25913,"ts":531359670957,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":716179},{"cat":"blink","pid":25863,"tid":25913,"ts":531359670961,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":43,"tdur":42,"tts":716183},{"cat":"blink","pid":25863,"tid":25913,"ts":531359670970,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":34,"tdur":34,"tts":716191},{"cat":"v8","pid":25863,"tid":25913,"ts":531359670988,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":12,"tts":716209},{"cat":"v8","pid":25863,"tid":25913,"ts":531359670990,"ph":"B","name":"V8.Execute","args":{},"tts":716211},{"cat":"v8","pid":25863,"tid":25913,"ts":531359670998,"ph":"E","name":"V8.Execute","args":{},"tts":716219},{"cat":"v8","pid":25863,"tid":25913,"ts":531359671007,"ph":"X","name":"v8.callFunction","args":{},"dur":64,"tdur":64,"tts":716228},{"cat":"v8","pid":25863,"tid":25913,"ts":531359671008,"ph":"B","name":"V8.Execute","args":{},"tts":716230},{"cat":"blink","pid":25863,"tid":25913,"ts":531359671013,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":13,"tdur":12,"tts":716235},{"cat":"v8","pid":25863,"tid":25913,"ts":531359671068,"ph":"E","name":"V8.Execute","args":{},"tts":716290},{"cat":"blink","pid":25863,"tid":25913,"ts":531359671074,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":37,"tdur":37,"tts":716295},{"cat":"blink","pid":25863,"tid":25913,"ts":531359671076,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":716297},{"cat":"blink","pid":25863,"tid":25913,"ts":531359671077,"ph":"X","name":"Document::updateStyle","args":{},"dur":24,"tdur":23,"tts":716299},{"cat":"blink","pid":25863,"tid":25913,"ts":531359671102,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":716323},{"cat":"blink","pid":25863,"tid":25913,"ts":531359671107,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":716328},{"cat":"sky","pid":25863,"tid":25913,"ts":531359671112,"ph":"X","name":"Layer::Display","args":{},"dur":849,"tdur":847,"tts":716334},{"cat":"sky","pid":25863,"tid":25913,"ts":531359671962,"ph":"X","name":"LayerHost::Upload","args":{},"dur":273,"tdur":144,"tts":717183},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359672254,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":88,"tdur":87,"tts":717348},{"cat":"blink","pid":25863,"tid":25913,"ts":531359672261,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":71,"tdur":70,"tts":717354},{"cat":"v8","pid":25863,"tid":25913,"ts":531359672265,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":64,"tdur":64,"tts":717358},{"cat":"v8","pid":25863,"tid":25913,"ts":531359672268,"ph":"X","name":"v8.callFunction","args":{},"dur":59,"tdur":57,"tts":717362},{"cat":"v8","pid":25863,"tid":25913,"ts":531359672271,"ph":"B","name":"V8.Execute","args":{},"tts":717364},{"cat":"blink","pid":25863,"tid":25913,"ts":531359672298,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":22,"tdur":21,"tts":717392},{"cat":"blink","pid":25863,"tid":25913,"ts":531359672313,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":6,"tts":717406},{"cat":"v8","pid":25863,"tid":25913,"ts":531359672323,"ph":"E","name":"V8.Execute","args":{},"tts":717416},{"cat":"sky","pid":25863,"tid":25913,"ts":531359673179,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":3246,"tdur":3048,"tts":717828},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673188,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":272,"tdur":271,"tts":717835},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673194,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":24,"tdur":23,"tts":717842},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673222,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":70,"tdur":70,"tts":717869},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673233,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":58,"tdur":58,"tts":717880},{"cat":"v8","pid":25863,"tid":25913,"ts":531359673261,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":717909},{"cat":"v8","pid":25863,"tid":25913,"ts":531359673265,"ph":"B","name":"V8.Execute","args":{},"tts":717913},{"cat":"v8","pid":25863,"tid":25913,"ts":531359673280,"ph":"E","name":"V8.Execute","args":{},"tts":717927},{"cat":"v8","pid":25863,"tid":25913,"ts":531359673297,"ph":"X","name":"v8.callFunction","args":{},"dur":158,"tdur":157,"tts":717944},{"cat":"v8","pid":25863,"tid":25913,"ts":531359673300,"ph":"B","name":"V8.Execute","args":{},"tts":717948},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673308,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":20,"tts":717956},{"cat":"v8","pid":25863,"tid":25913,"ts":531359673448,"ph":"E","name":"V8.Execute","args":{},"tts":718096},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673461,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":724,"tdur":723,"tts":718109},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673466,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":718113},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673469,"ph":"X","name":"Document::updateStyle","args":{},"dur":161,"tdur":160,"tts":718116},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673632,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":718279},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673637,"ph":"X","name":"FrameView::layout","args":{},"dur":66,"tdur":66,"tts":718284},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673640,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":5,"tdur":3,"tts":718288},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673646,"ph":"X","name":"FrameView::performLayout","args":{},"dur":37,"tdur":36,"tts":718293},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673684,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":5,"tdur":4,"tts":718331},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673689,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":12,"tdur":10,"tts":718337},{"cat":"blink","pid":25863,"tid":25913,"ts":531359673709,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":475,"tdur":473,"tts":718357},{"cat":"sky","pid":25863,"tid":25913,"ts":531359674188,"ph":"X","name":"Layer::Display","args":{},"dur":1810,"tdur":1808,"tts":718835},{"cat":"sky","pid":25863,"tid":25913,"ts":531359676021,"ph":"X","name":"LayerHost::Upload","args":{},"dur":402,"tdur":204,"tts":720669},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359676452,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":85,"tdur":84,"tts":720904},{"cat":"blink","pid":25863,"tid":25913,"ts":531359676462,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":64,"tts":720914},{"cat":"v8","pid":25863,"tid":25913,"ts":531359676468,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":57,"tdur":56,"tts":720919},{"cat":"v8","pid":25863,"tid":25913,"ts":531359676474,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":47,"tts":720926},{"cat":"v8","pid":25863,"tid":25913,"ts":531359676478,"ph":"B","name":"V8.Execute","args":{},"tts":720929},{"cat":"blink","pid":25863,"tid":25913,"ts":531359676496,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":19,"tts":720948},{"cat":"blink","pid":25863,"tid":25913,"ts":531359676509,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":720961},{"cat":"v8","pid":25863,"tid":25913,"ts":531359676519,"ph":"E","name":"V8.Execute","args":{},"tts":720970},{"cat":"sky","pid":25863,"tid":25913,"ts":531359677128,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2237,"tdur":2171,"tts":721262},{"cat":"blink","pid":25863,"tid":25913,"ts":531359677134,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":212,"tdur":210,"tts":721267},{"cat":"blink","pid":25863,"tid":25913,"ts":531359677138,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":1,"tts":721271},{"cat":"blink","pid":25863,"tid":25913,"ts":531359677143,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":78,"tdur":78,"tts":721275},{"cat":"blink","pid":25863,"tid":25913,"ts":531359677152,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":68,"tdur":67,"tts":721285},{"cat":"v8","pid":25863,"tid":25913,"ts":531359677190,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":23,"tts":721322},{"cat":"v8","pid":25863,"tid":25913,"ts":531359677195,"ph":"B","name":"V8.Execute","args":{},"tts":721327},{"cat":"v8","pid":25863,"tid":25913,"ts":531359677209,"ph":"E","name":"V8.Execute","args":{},"tts":721342},{"cat":"v8","pid":25863,"tid":25913,"ts":531359677226,"ph":"X","name":"v8.callFunction","args":{},"dur":115,"tdur":115,"tts":721358},{"cat":"v8","pid":25863,"tid":25913,"ts":531359677229,"ph":"B","name":"V8.Execute","args":{},"tts":721362},{"cat":"blink","pid":25863,"tid":25913,"ts":531359677238,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":721370},{"cat":"v8","pid":25863,"tid":25913,"ts":531359677335,"ph":"E","name":"V8.Execute","args":{},"tts":721468},{"cat":"blink","pid":25863,"tid":25913,"ts":531359677346,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":721479},{"cat":"blink","pid":25863,"tid":25913,"ts":531359677351,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":721483},{"cat":"blink","pid":25863,"tid":25913,"ts":531359677354,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":38,"tts":721486},{"cat":"blink","pid":25863,"tid":25913,"ts":531359677394,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":721526},{"cat":"blink","pid":25863,"tid":25913,"ts":531359677403,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":721535},{"cat":"sky","pid":25863,"tid":25913,"ts":531359677414,"ph":"X","name":"Layer::Display","args":{},"dur":1763,"tdur":1761,"tts":721546},{"cat":"sky","pid":25863,"tid":25913,"ts":531359679179,"ph":"X","name":"LayerHost::Upload","args":{},"dur":184,"tdur":121,"tts":723311},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359679390,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":75,"tdur":74,"tts":723460},{"cat":"blink","pid":25863,"tid":25913,"ts":531359679398,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":60,"tdur":59,"tts":723468},{"cat":"v8","pid":25863,"tid":25913,"ts":531359679404,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":53,"tdur":53,"tts":723473},{"cat":"v8","pid":25863,"tid":25913,"ts":531359679409,"ph":"X","name":"v8.callFunction","args":{},"dur":46,"tdur":45,"tts":723479},{"cat":"v8","pid":25863,"tid":25913,"ts":531359679413,"ph":"B","name":"V8.Execute","args":{},"tts":723483},{"cat":"blink","pid":25863,"tid":25913,"ts":531359679439,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":12,"tdur":12,"tts":723508},{"cat":"blink","pid":25863,"tid":25913,"ts":531359679447,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":3,"tts":723517},{"cat":"v8","pid":25863,"tid":25913,"ts":531359679453,"ph":"E","name":"V8.Execute","args":{},"tts":723522},{"cat":"sky","pid":25863,"tid":25913,"ts":531359679740,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2056,"tdur":1866,"tts":723701},{"cat":"blink","pid":25863,"tid":25913,"ts":531359679744,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":459,"tdur":424,"tts":723705},{"cat":"blink","pid":25863,"tid":25913,"ts":531359679747,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":723708},{"cat":"blink","pid":25863,"tid":25913,"ts":531359679751,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":80,"tdur":79,"tts":723712},{"cat":"blink","pid":25863,"tid":25913,"ts":531359679765,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":65,"tdur":64,"tts":723726},{"cat":"v8","pid":25863,"tid":25913,"ts":531359679780,"ph":"X","name":"v8.callFunction","args":{},"dur":41,"tdur":41,"tts":723741},{"cat":"v8","pid":25863,"tid":25913,"ts":531359679783,"ph":"B","name":"V8.Execute","args":{},"tts":723743},{"cat":"v8","pid":25863,"tid":25913,"ts":531359679791,"ph":"E","name":"V8.Execute","args":{},"tts":723752},{"cat":"v8","pid":25863,"tid":25913,"ts":531359679836,"ph":"X","name":"v8.callFunction","args":{},"dur":364,"tdur":328,"tts":723797},{"cat":"v8","pid":25863,"tid":25913,"ts":531359679840,"ph":"B","name":"V8.Execute","args":{},"tts":723801},{"cat":"blink","pid":25863,"tid":25913,"ts":531359679860,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":723821},{"cat":"v8","pid":25863,"tid":25913,"ts":531359680115,"ph":"E","name":"V8.Execute","args":{},"tts":724042},{"cat":"blink","pid":25863,"tid":25913,"ts":531359680204,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":452,"tdur":452,"tts":724130},{"cat":"blink","pid":25863,"tid":25913,"ts":531359680207,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":724133},{"cat":"blink","pid":25863,"tid":25913,"ts":531359680208,"ph":"X","name":"Document::updateStyle","args":{},"dur":83,"tdur":82,"tts":724134},{"cat":"blink","pid":25863,"tid":25913,"ts":531359680292,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":6},"tts":724218},{"cat":"blink","pid":25863,"tid":25913,"ts":531359680294,"ph":"X","name":"FrameView::layout","args":{},"dur":130,"tdur":130,"tts":724220},{"cat":"blink","pid":25863,"tid":25913,"ts":531359680296,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":1,"tdur":1,"tts":724222},{"cat":"blink","pid":25863,"tid":25913,"ts":531359680298,"ph":"X","name":"FrameView::performLayout","args":{},"dur":116,"tdur":115,"tts":724224},{"cat":"blink","pid":25863,"tid":25913,"ts":531359680415,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":3,"tdur":3,"tts":724341},{"cat":"blink","pid":25863,"tid":25913,"ts":531359680419,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":4,"tdur":3,"tts":724345},{"cat":"blink","pid":25863,"tid":25913,"ts":531359680427,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":228,"tdur":228,"tts":724353},{"cat":"sky","pid":25863,"tid":25913,"ts":531359680657,"ph":"X","name":"Layer::Display","args":{},"dur":844,"tdur":843,"tts":724583},{"cat":"sky","pid":25863,"tid":25913,"ts":531359681502,"ph":"X","name":"LayerHost::Upload","args":{},"dur":293,"tdur":137,"tts":725428},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359681809,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":41,"tdur":40,"tts":725581},{"cat":"blink","pid":25863,"tid":25913,"ts":531359681814,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":31,"tts":725586},{"cat":"v8","pid":25863,"tid":25913,"ts":531359681817,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":26,"tts":725589},{"cat":"v8","pid":25863,"tid":25913,"ts":531359681820,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":725592},{"cat":"v8","pid":25863,"tid":25913,"ts":531359681822,"ph":"B","name":"V8.Execute","args":{},"tts":725594},{"cat":"blink","pid":25863,"tid":25913,"ts":531359681831,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":10,"tts":725602},{"cat":"blink","pid":25863,"tid":25913,"ts":531359681837,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":725608},{"cat":"v8","pid":25863,"tid":25913,"ts":531359681841,"ph":"E","name":"V8.Execute","args":{},"tts":725613},{"cat":"sky","pid":25863,"tid":25913,"ts":531359751718,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2312,"tdur":2210,"tts":725832},{"cat":"blink","pid":25863,"tid":25913,"ts":531359751731,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":293,"tdur":280,"tts":725843},{"cat":"blink","pid":25863,"tid":25913,"ts":531359751742,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":725854},{"cat":"blink","pid":25863,"tid":25913,"ts":531359751751,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":99,"tdur":98,"tts":725863},{"cat":"blink","pid":25863,"tid":25913,"ts":531359751770,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":80,"tdur":79,"tts":725882},{"cat":"v8","pid":25863,"tid":25913,"ts":531359751814,"ph":"X","name":"v8.callFunction","args":{},"dur":30,"tdur":29,"tts":725926},{"cat":"v8","pid":25863,"tid":25913,"ts":531359751818,"ph":"B","name":"V8.Execute","args":{},"tts":725930},{"cat":"v8","pid":25863,"tid":25913,"ts":531359751840,"ph":"E","name":"V8.Execute","args":{},"tts":725952},{"cat":"v8","pid":25863,"tid":25913,"ts":531359751855,"ph":"X","name":"v8.callFunction","args":{},"dur":143,"tdur":143,"tts":725967},{"cat":"v8","pid":25863,"tid":25913,"ts":531359751858,"ph":"B","name":"V8.Execute","args":{},"tts":725970},{"cat":"blink","pid":25863,"tid":25913,"ts":531359751869,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":30,"tdur":29,"tts":725981},{"cat":"v8","pid":25863,"tid":25913,"ts":531359751995,"ph":"E","name":"V8.Execute","args":{},"tts":726107},{"cat":"blink","pid":25863,"tid":25913,"ts":531359752024,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":86,"tdur":85,"tts":726124},{"cat":"blink","pid":25863,"tid":25913,"ts":531359752028,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":726128},{"cat":"blink","pid":25863,"tid":25913,"ts":531359752030,"ph":"X","name":"Document::updateStyle","args":{},"dur":59,"tdur":58,"tts":726130},{"cat":"blink","pid":25863,"tid":25913,"ts":531359752090,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":726190},{"cat":"blink","pid":25863,"tid":25913,"ts":531359752099,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":9,"tdur":8,"tts":726200},{"cat":"sky","pid":25863,"tid":25913,"ts":531359752112,"ph":"X","name":"Layer::Display","args":{},"dur":1722,"tdur":1721,"tts":726212},{"cat":"sky","pid":25863,"tid":25913,"ts":531359753836,"ph":"X","name":"LayerHost::Upload","args":{},"dur":193,"tdur":105,"tts":727936},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359754053,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":62,"tdur":62,"tts":728066},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754059,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":49,"tdur":49,"tts":728072},{"cat":"v8","pid":25863,"tid":25913,"ts":531359754064,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":42,"tdur":42,"tts":728077},{"cat":"v8","pid":25863,"tid":25913,"ts":531359754067,"ph":"X","name":"v8.callFunction","args":{},"dur":37,"tdur":36,"tts":728081},{"cat":"v8","pid":25863,"tid":25913,"ts":531359754070,"ph":"B","name":"V8.Execute","args":{},"tts":728083},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754087,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":13,"tdur":12,"tts":728101},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754096,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":3,"tts":728109},{"cat":"v8","pid":25863,"tid":25913,"ts":531359754102,"ph":"E","name":"V8.Execute","args":{},"tts":728115},{"cat":"sky","pid":25863,"tid":25913,"ts":531359754432,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1759,"tdur":1674,"tts":728297},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754437,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":122,"tdur":122,"tts":728301},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754441,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":728305},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754445,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":42,"tdur":42,"tts":728309},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754453,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":33,"tdur":33,"tts":728317},{"cat":"v8","pid":25863,"tid":25913,"ts":531359754467,"ph":"X","name":"v8.callFunction","args":{},"dur":14,"tdur":14,"tts":728331},{"cat":"v8","pid":25863,"tid":25913,"ts":531359754470,"ph":"B","name":"V8.Execute","args":{},"tts":728334},{"cat":"v8","pid":25863,"tid":25913,"ts":531359754478,"ph":"E","name":"V8.Execute","args":{},"tts":728342},{"cat":"v8","pid":25863,"tid":25913,"ts":531359754490,"ph":"X","name":"v8.callFunction","args":{},"dur":66,"tdur":65,"tts":728354},{"cat":"v8","pid":25863,"tid":25913,"ts":531359754492,"ph":"B","name":"V8.Execute","args":{},"tts":728357},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754498,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":12,"tdur":11,"tts":728362},{"cat":"v8","pid":25863,"tid":25913,"ts":531359754552,"ph":"E","name":"V8.Execute","args":{},"tts":728416},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754560,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":54,"tdur":54,"tts":728424},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754579,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":728444},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754582,"ph":"X","name":"Document::updateStyle","args":{},"dur":20,"tdur":20,"tts":728446},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754603,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":728467},{"cat":"blink","pid":25863,"tid":25913,"ts":531359754609,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":4,"tts":728473},{"cat":"sky","pid":25863,"tid":25913,"ts":531359754615,"ph":"X","name":"Layer::Display","args":{},"dur":1415,"tdur":1413,"tts":728480},{"cat":"sky","pid":25863,"tid":25913,"ts":531359756031,"ph":"X","name":"LayerHost::Upload","args":{},"dur":159,"tdur":74,"tts":729896},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359756205,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":47,"tdur":47,"tts":729986},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756210,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":36,"tdur":36,"tts":729991},{"cat":"v8","pid":25863,"tid":25913,"ts":531359756213,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":31,"tdur":31,"tts":729994},{"cat":"v8","pid":25863,"tid":25913,"ts":531359756216,"ph":"X","name":"v8.callFunction","args":{},"dur":27,"tdur":25,"tts":729998},{"cat":"v8","pid":25863,"tid":25913,"ts":531359756219,"ph":"B","name":"V8.Execute","args":{},"tts":730000},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756228,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":11,"tdur":11,"tts":730009},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756235,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":3,"tts":730016},{"cat":"v8","pid":25863,"tid":25913,"ts":531359756240,"ph":"E","name":"V8.Execute","args":{},"tts":730022},{"cat":"sky","pid":25863,"tid":25913,"ts":531359756572,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1644,"tdur":1590,"tts":730191},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756577,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":121,"tdur":120,"tts":730195},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756581,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":730199},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756585,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":43,"tdur":42,"tts":730203},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756593,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":34,"tdur":33,"tts":730211},{"cat":"v8","pid":25863,"tid":25913,"ts":531359756608,"ph":"X","name":"v8.callFunction","args":{},"dur":14,"tdur":14,"tts":730226},{"cat":"v8","pid":25863,"tid":25913,"ts":531359756611,"ph":"B","name":"V8.Execute","args":{},"tts":730229},{"cat":"v8","pid":25863,"tid":25913,"ts":531359756619,"ph":"E","name":"V8.Execute","args":{},"tts":730237},{"cat":"v8","pid":25863,"tid":25913,"ts":531359756631,"ph":"X","name":"v8.callFunction","args":{},"dur":64,"tdur":63,"tts":730249},{"cat":"v8","pid":25863,"tid":25913,"ts":531359756634,"ph":"B","name":"V8.Execute","args":{},"tts":730252},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756639,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":12,"tdur":11,"tts":730257},{"cat":"v8","pid":25863,"tid":25913,"ts":531359756691,"ph":"E","name":"V8.Execute","args":{},"tts":730309},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756698,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":35,"tdur":35,"tts":730316},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756701,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":730319},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756703,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":18,"tts":730321},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756723,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":730341},{"cat":"blink","pid":25863,"tid":25913,"ts":531359756728,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":730346},{"cat":"sky","pid":25863,"tid":25913,"ts":531359756734,"ph":"X","name":"Layer::Display","args":{},"dur":1363,"tdur":1362,"tts":730352},{"cat":"sky","pid":25863,"tid":25913,"ts":531359758098,"ph":"X","name":"LayerHost::Upload","args":{},"dur":117,"tdur":63,"tts":731717},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359758230,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":63,"tdur":63,"tts":731795},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758235,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":51,"tdur":51,"tts":731800},{"cat":"v8","pid":25863,"tid":25913,"ts":531359758238,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":46,"tdur":45,"tts":731804},{"cat":"v8","pid":25863,"tid":25913,"ts":531359758241,"ph":"X","name":"v8.callFunction","args":{},"dur":42,"tdur":41,"tts":731807},{"cat":"v8","pid":25863,"tid":25913,"ts":531359758244,"ph":"B","name":"V8.Execute","args":{},"tts":731809},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758253,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":25,"tdur":24,"tts":731819},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758273,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":3,"tts":731839},{"cat":"v8","pid":25863,"tid":25913,"ts":531359758279,"ph":"E","name":"V8.Execute","args":{},"tts":731845},{"cat":"sky","pid":25863,"tid":25913,"ts":531359758531,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1630,"tdur":1580,"tts":732013},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758535,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":119,"tdur":118,"tts":732016},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758538,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":732019},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758541,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":42,"tdur":41,"tts":732023},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758550,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":33,"tdur":32,"tts":732031},{"cat":"v8","pid":25863,"tid":25913,"ts":531359758563,"ph":"X","name":"v8.callFunction","args":{},"dur":15,"tdur":14,"tts":732045},{"cat":"v8","pid":25863,"tid":25913,"ts":531359758567,"ph":"B","name":"V8.Execute","args":{},"tts":732048},{"cat":"v8","pid":25863,"tid":25913,"ts":531359758575,"ph":"E","name":"V8.Execute","args":{},"tts":732057},{"cat":"v8","pid":25863,"tid":25913,"ts":531359758586,"ph":"X","name":"v8.callFunction","args":{},"dur":65,"tdur":64,"tts":732068},{"cat":"v8","pid":25863,"tid":25913,"ts":531359758589,"ph":"B","name":"V8.Execute","args":{},"tts":732070},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758595,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":12,"tdur":11,"tts":732076},{"cat":"v8","pid":25863,"tid":25913,"ts":531359758647,"ph":"E","name":"V8.Execute","args":{},"tts":732129},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758654,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":38,"tdur":37,"tts":732136},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758657,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":732139},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758659,"ph":"X","name":"Document::updateStyle","args":{},"dur":21,"tdur":19,"tts":732141},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758681,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":732162},{"cat":"blink","pid":25863,"tid":25913,"ts":531359758686,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":4,"tts":732167},{"cat":"sky","pid":25863,"tid":25913,"ts":531359758693,"ph":"X","name":"Layer::Display","args":{},"dur":1343,"tdur":1342,"tts":732174},{"cat":"sky","pid":25863,"tid":25913,"ts":531359760037,"ph":"X","name":"LayerHost::Upload","args":{},"dur":123,"tdur":73,"tts":733519},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359760175,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":69,"tdur":69,"tts":733608},{"cat":"blink","pid":25863,"tid":25913,"ts":531359760181,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":57,"tdur":56,"tts":733614},{"cat":"v8","pid":25863,"tid":25913,"ts":531359760184,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":51,"tdur":50,"tts":733617},{"cat":"v8","pid":25863,"tid":25913,"ts":531359760188,"ph":"X","name":"v8.callFunction","args":{},"dur":46,"tdur":45,"tts":733621},{"cat":"v8","pid":25863,"tid":25913,"ts":531359760200,"ph":"B","name":"V8.Execute","args":{},"tts":733632},{"cat":"blink","pid":25863,"tid":25913,"ts":531359760213,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":16,"tdur":16,"tts":733646},{"cat":"blink","pid":25863,"tid":25913,"ts":531359760225,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":3,"tts":733658},{"cat":"v8","pid":25863,"tid":25913,"ts":531359760231,"ph":"E","name":"V8.Execute","args":{},"tts":733664},{"cat":"sky","pid":25863,"tid":25913,"ts":531359831303,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2971,"tdur":2736,"tts":733960},{"cat":"blink","pid":25863,"tid":25913,"ts":531359831319,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":383,"tdur":382,"tts":733974},{"cat":"blink","pid":25863,"tid":25913,"ts":531359831333,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":5,"tdur":4,"tts":733988},{"cat":"blink","pid":25863,"tid":25913,"ts":531359831345,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":140,"tdur":139,"tts":734000},{"cat":"blink","pid":25863,"tid":25913,"ts":531359831372,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":112,"tdur":111,"tts":734027},{"cat":"v8","pid":25863,"tid":25913,"ts":531359831434,"ph":"X","name":"v8.callFunction","args":{},"dur":41,"tdur":40,"tts":734089},{"cat":"v8","pid":25863,"tid":25913,"ts":531359831439,"ph":"B","name":"V8.Execute","args":{},"tts":734094},{"cat":"v8","pid":25863,"tid":25913,"ts":531359831470,"ph":"E","name":"V8.Execute","args":{},"tts":734125},{"cat":"v8","pid":25863,"tid":25913,"ts":531359831492,"ph":"X","name":"v8.callFunction","args":{},"dur":204,"tdur":203,"tts":734147},{"cat":"v8","pid":25863,"tid":25913,"ts":531359831496,"ph":"B","name":"V8.Execute","args":{},"tts":734151},{"cat":"blink","pid":25863,"tid":25913,"ts":531359831511,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":42,"tdur":41,"tts":734166},{"cat":"v8","pid":25863,"tid":25913,"ts":531359831690,"ph":"E","name":"V8.Execute","args":{},"tts":734346},{"cat":"blink","pid":25863,"tid":25913,"ts":531359831703,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":113,"tdur":112,"tts":734358},{"cat":"blink","pid":25863,"tid":25913,"ts":531359831708,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":734363},{"cat":"blink","pid":25863,"tid":25913,"ts":531359831711,"ph":"X","name":"Document::updateStyle","args":{},"dur":75,"tdur":74,"tts":734366},{"cat":"blink","pid":25863,"tid":25913,"ts":531359831787,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":734442},{"cat":"blink","pid":25863,"tid":25913,"ts":531359831802,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":12,"tdur":11,"tts":734457},{"cat":"sky","pid":25863,"tid":25913,"ts":531359831818,"ph":"X","name":"Layer::Display","args":{},"dur":2034,"tdur":2010,"tts":734473},{"cat":"sky","pid":25863,"tid":25913,"ts":531359833854,"ph":"X","name":"LayerHost::Upload","args":{},"dur":419,"tdur":207,"tts":736488},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359834292,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":95,"tdur":95,"tts":736714},{"cat":"blink","pid":25863,"tid":25913,"ts":531359834298,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":77,"tdur":76,"tts":736720},{"cat":"v8","pid":25863,"tid":25913,"ts":531359834302,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":70,"tdur":69,"tts":736724},{"cat":"v8","pid":25863,"tid":25913,"ts":531359834304,"ph":"X","name":"v8.callFunction","args":{},"dur":65,"tdur":65,"tts":736726},{"cat":"v8","pid":25863,"tid":25913,"ts":531359834306,"ph":"B","name":"V8.Execute","args":{},"tts":736728},{"cat":"blink","pid":25863,"tid":25913,"ts":531359834341,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":22,"tdur":21,"tts":736763},{"cat":"blink","pid":25863,"tid":25913,"ts":531359834355,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":7,"tdur":5,"tts":736778},{"cat":"v8","pid":25863,"tid":25913,"ts":531359834365,"ph":"E","name":"V8.Execute","args":{},"tts":736788},{"cat":"sky","pid":25863,"tid":25913,"ts":531359835116,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1803,"tdur":1643,"tts":737159},{"cat":"blink","pid":25863,"tid":25913,"ts":531359835138,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":214,"tdur":213,"tts":737167},{"cat":"blink","pid":25863,"tid":25913,"ts":531359835145,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":4,"tts":737173},{"cat":"blink","pid":25863,"tid":25913,"ts":531359835152,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":77,"tdur":76,"tts":737181},{"cat":"blink","pid":25863,"tid":25913,"ts":531359835169,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":59,"tts":737197},{"cat":"v8","pid":25863,"tid":25913,"ts":531359835197,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":737226},{"cat":"v8","pid":25863,"tid":25913,"ts":531359835202,"ph":"B","name":"V8.Execute","args":{},"tts":737230},{"cat":"v8","pid":25863,"tid":25913,"ts":531359835216,"ph":"E","name":"V8.Execute","args":{},"tts":737245},{"cat":"v8","pid":25863,"tid":25913,"ts":531359835233,"ph":"X","name":"v8.callFunction","args":{},"dur":114,"tdur":113,"tts":737262},{"cat":"v8","pid":25863,"tid":25913,"ts":531359835237,"ph":"B","name":"V8.Execute","args":{},"tts":737265},{"cat":"blink","pid":25863,"tid":25913,"ts":531359835245,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":737274},{"cat":"v8","pid":25863,"tid":25913,"ts":531359835340,"ph":"E","name":"V8.Execute","args":{},"tts":737370},{"cat":"blink","pid":25863,"tid":25913,"ts":531359835353,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":737382},{"cat":"blink","pid":25863,"tid":25913,"ts":531359835357,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":737386},{"cat":"blink","pid":25863,"tid":25913,"ts":531359835361,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":39,"tts":737389},{"cat":"blink","pid":25863,"tid":25913,"ts":531359835401,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":737430},{"cat":"blink","pid":25863,"tid":25913,"ts":531359835410,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":737439},{"cat":"sky","pid":25863,"tid":25913,"ts":531359835421,"ph":"X","name":"Layer::Display","args":{},"dur":1249,"tdur":1218,"tts":737450},{"cat":"sky","pid":25863,"tid":25913,"ts":531359836671,"ph":"X","name":"LayerHost::Upload","args":{},"dur":248,"tdur":131,"tts":738670},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359836931,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":39,"tdur":38,"tts":738815},{"cat":"blink","pid":25863,"tid":25913,"ts":531359836936,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":30,"tdur":29,"tts":738819},{"cat":"v8","pid":25863,"tid":25913,"ts":531359836938,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":26,"tdur":26,"tts":738821},{"cat":"v8","pid":25863,"tid":25913,"ts":531359836941,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":22,"tts":738824},{"cat":"v8","pid":25863,"tid":25913,"ts":531359836943,"ph":"B","name":"V8.Execute","args":{},"tts":738826},{"cat":"blink","pid":25863,"tid":25913,"ts":531359836951,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":738834},{"cat":"blink","pid":25863,"tid":25913,"ts":531359836957,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":738840},{"cat":"v8","pid":25863,"tid":25913,"ts":531359836961,"ph":"E","name":"V8.Execute","args":{},"tts":738844},{"cat":"sky","pid":25863,"tid":25913,"ts":531359837530,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1270,"tdur":1170,"tts":739069},{"cat":"blink","pid":25863,"tid":25913,"ts":531359837549,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":113,"tdur":112,"tts":739087},{"cat":"blink","pid":25863,"tid":25913,"ts":531359837553,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":739090},{"cat":"blink","pid":25863,"tid":25913,"ts":531359837556,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":47,"tdur":46,"tts":739094},{"cat":"blink","pid":25863,"tid":25913,"ts":531359837564,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":38,"tdur":38,"tts":739101},{"cat":"v8","pid":25863,"tid":25913,"ts":531359837578,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":20,"tts":739115},{"cat":"v8","pid":25863,"tid":25913,"ts":531359837589,"ph":"B","name":"V8.Execute","args":{},"tts":739126},{"cat":"v8","pid":25863,"tid":25913,"ts":531359837596,"ph":"E","name":"V8.Execute","args":{},"tts":739134},{"cat":"v8","pid":25863,"tid":25913,"ts":531359837605,"ph":"X","name":"v8.callFunction","args":{},"dur":54,"tdur":54,"tts":739142},{"cat":"v8","pid":25863,"tid":25913,"ts":531359837607,"ph":"B","name":"V8.Execute","args":{},"tts":739144},{"cat":"blink","pid":25863,"tid":25913,"ts":531359837611,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":10,"tts":739148},{"cat":"v8","pid":25863,"tid":25913,"ts":531359837656,"ph":"E","name":"V8.Execute","args":{},"tts":739194},{"cat":"blink","pid":25863,"tid":25913,"ts":531359837662,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":31,"tts":739200},{"cat":"blink","pid":25863,"tid":25913,"ts":531359837664,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":739202},{"cat":"blink","pid":25863,"tid":25913,"ts":531359837666,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":19,"tts":739203},{"cat":"blink","pid":25863,"tid":25913,"ts":531359837685,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":739223},{"cat":"blink","pid":25863,"tid":25913,"ts":531359837690,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":739227},{"cat":"sky","pid":25863,"tid":25913,"ts":531359837695,"ph":"X","name":"Layer::Display","args":{},"dur":865,"tdur":864,"tts":739232},{"cat":"sky","pid":25863,"tid":25913,"ts":531359838561,"ph":"X","name":"LayerHost::Upload","args":{},"dur":238,"tdur":139,"tts":740098},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359838812,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":42,"tdur":41,"tts":740252},{"cat":"blink","pid":25863,"tid":25913,"ts":531359838818,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":31,"tdur":31,"tts":740257},{"cat":"v8","pid":25863,"tid":25913,"ts":531359838820,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":27,"tts":740260},{"cat":"v8","pid":25863,"tid":25913,"ts":531359838823,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":23,"tts":740263},{"cat":"v8","pid":25863,"tid":25913,"ts":531359838825,"ph":"B","name":"V8.Execute","args":{},"tts":740265},{"cat":"blink","pid":25863,"tid":25913,"ts":531359838834,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":740273},{"cat":"blink","pid":25863,"tid":25913,"ts":531359838840,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":740280},{"cat":"v8","pid":25863,"tid":25913,"ts":531359838845,"ph":"E","name":"V8.Execute","args":{},"tts":740284},{"cat":"sky","pid":25863,"tid":25913,"ts":531359839384,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1144,"tdur":1114,"tts":740577},{"cat":"blink","pid":25863,"tid":25913,"ts":531359839388,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":101,"tdur":101,"tts":740580},{"cat":"blink","pid":25863,"tid":25913,"ts":531359839392,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":740583},{"cat":"blink","pid":25863,"tid":25913,"ts":531359839395,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":36,"tdur":35,"tts":740587},{"cat":"blink","pid":25863,"tid":25913,"ts":531359839402,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":29,"tdur":28,"tts":740594},{"cat":"v8","pid":25863,"tid":25913,"ts":531359839416,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":740608},{"cat":"v8","pid":25863,"tid":25913,"ts":531359839418,"ph":"B","name":"V8.Execute","args":{},"tts":740610},{"cat":"v8","pid":25863,"tid":25913,"ts":531359839425,"ph":"E","name":"V8.Execute","args":{},"tts":740617},{"cat":"v8","pid":25863,"tid":25913,"ts":531359839433,"ph":"X","name":"v8.callFunction","args":{},"dur":54,"tdur":53,"tts":740625},{"cat":"v8","pid":25863,"tid":25913,"ts":531359839435,"ph":"B","name":"V8.Execute","args":{},"tts":740626},{"cat":"blink","pid":25863,"tid":25913,"ts":531359839439,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":10,"tts":740630},{"cat":"v8","pid":25863,"tid":25913,"ts":531359839484,"ph":"E","name":"V8.Execute","args":{},"tts":740676},{"cat":"blink","pid":25863,"tid":25913,"ts":531359839490,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":31,"tdur":32,"tts":740681},{"cat":"blink","pid":25863,"tid":25913,"ts":531359839492,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":740684},{"cat":"blink","pid":25863,"tid":25913,"ts":531359839493,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":18,"tts":740685},{"cat":"blink","pid":25863,"tid":25913,"ts":531359839513,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":740704},{"cat":"blink","pid":25863,"tid":25913,"ts":531359839517,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":740709},{"cat":"sky","pid":25863,"tid":25913,"ts":531359839522,"ph":"X","name":"Layer::Display","args":{},"dur":843,"tdur":841,"tts":740714},{"cat":"sky","pid":25863,"tid":25913,"ts":531359840366,"ph":"X","name":"LayerHost::Upload","args":{},"dur":161,"tdur":131,"tts":741558},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359841579,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":58,"tdur":57,"tts":742044},{"cat":"blink","pid":25863,"tid":25913,"ts":531359841585,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":46,"tdur":46,"tts":742050},{"cat":"v8","pid":25863,"tid":25913,"ts":531359841587,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":43,"tdur":42,"tts":742052},{"cat":"v8","pid":25863,"tid":25913,"ts":531359841590,"ph":"X","name":"v8.callFunction","args":{},"dur":39,"tdur":38,"tts":742055},{"cat":"v8","pid":25863,"tid":25913,"ts":531359841592,"ph":"B","name":"V8.Execute","args":{},"tts":742057},{"cat":"blink","pid":25863,"tid":25913,"ts":531359841614,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":12,"tdur":11,"tts":742079},{"cat":"blink","pid":25863,"tid":25913,"ts":531359841622,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":742087},{"cat":"v8","pid":25863,"tid":25913,"ts":531359841627,"ph":"E","name":"V8.Execute","args":{},"tts":742092},{"cat":"sky","pid":25863,"tid":25913,"ts":531359903173,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1684,"tdur":1495,"tts":742199},{"cat":"blink","pid":25863,"tid":25913,"ts":531359903178,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":127,"tdur":127,"tts":742203},{"cat":"blink","pid":25863,"tid":25913,"ts":531359903181,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":742206},{"cat":"blink","pid":25863,"tid":25913,"ts":531359903184,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":53,"tdur":53,"tts":742209},{"cat":"blink","pid":25863,"tid":25913,"ts":531359903197,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":40,"tdur":40,"tts":742222},{"cat":"v8","pid":25863,"tid":25913,"ts":531359903211,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":22,"tts":742236},{"cat":"v8","pid":25863,"tid":25913,"ts":531359903213,"ph":"B","name":"V8.Execute","args":{},"tts":742238},{"cat":"v8","pid":25863,"tid":25913,"ts":531359903231,"ph":"E","name":"V8.Execute","args":{},"tts":742256},{"cat":"v8","pid":25863,"tid":25913,"ts":531359903239,"ph":"X","name":"v8.callFunction","args":{},"dur":63,"tdur":62,"tts":742265},{"cat":"v8","pid":25863,"tid":25913,"ts":531359903241,"ph":"B","name":"V8.Execute","args":{},"tts":742266},{"cat":"blink","pid":25863,"tid":25913,"ts":531359903245,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":742270},{"cat":"v8","pid":25863,"tid":25913,"ts":531359903299,"ph":"E","name":"V8.Execute","args":{},"tts":742325},{"cat":"blink","pid":25863,"tid":25913,"ts":531359903305,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":37,"tdur":37,"tts":742330},{"cat":"blink","pid":25863,"tid":25913,"ts":531359903307,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":742332},{"cat":"blink","pid":25863,"tid":25913,"ts":531359903309,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":18,"tts":742334},{"cat":"blink","pid":25863,"tid":25913,"ts":531359903328,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":742353},{"cat":"blink","pid":25863,"tid":25913,"ts":531359903338,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":742363},{"cat":"sky","pid":25863,"tid":25913,"ts":531359903344,"ph":"X","name":"Layer::Display","args":{},"dur":1183,"tdur":1159,"tts":742369},{"cat":"sky","pid":25863,"tid":25913,"ts":531359904530,"ph":"X","name":"LayerHost::Upload","args":{},"dur":325,"tdur":159,"tts":743533},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359904880,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":68,"tdur":68,"tts":743718},{"cat":"blink","pid":25863,"tid":25913,"ts":531359904889,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":54,"tdur":54,"tts":743727},{"cat":"v8","pid":25863,"tid":25913,"ts":531359904894,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":48,"tdur":48,"tts":743732},{"cat":"v8","pid":25863,"tid":25913,"ts":531359904899,"ph":"X","name":"v8.callFunction","args":{},"dur":42,"tdur":42,"tts":743737},{"cat":"v8","pid":25863,"tid":25913,"ts":531359904902,"ph":"B","name":"V8.Execute","args":{},"tts":743741},{"cat":"blink","pid":25863,"tid":25913,"ts":531359904929,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":743767},{"cat":"blink","pid":25863,"tid":25913,"ts":531359904935,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":743773},{"cat":"v8","pid":25863,"tid":25913,"ts":531359904939,"ph":"E","name":"V8.Execute","args":{},"tts":743777},{"cat":"sky","pid":25863,"tid":25913,"ts":531359905322,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1078,"tdur":992,"tts":743961},{"cat":"blink","pid":25863,"tid":25913,"ts":531359905326,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":93,"tdur":92,"tts":743965},{"cat":"blink","pid":25863,"tid":25913,"ts":531359905329,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":743968},{"cat":"blink","pid":25863,"tid":25913,"ts":531359905332,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":33,"tdur":32,"tts":743971},{"cat":"blink","pid":25863,"tid":25913,"ts":531359905339,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":26,"tdur":26,"tts":743977},{"cat":"v8","pid":25863,"tid":25913,"ts":531359905351,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":743990},{"cat":"v8","pid":25863,"tid":25913,"ts":531359905353,"ph":"B","name":"V8.Execute","args":{},"tts":743992},{"cat":"v8","pid":25863,"tid":25913,"ts":531359905360,"ph":"E","name":"V8.Execute","args":{},"tts":743998},{"cat":"v8","pid":25863,"tid":25913,"ts":531359905367,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":49,"tts":744006},{"cat":"v8","pid":25863,"tid":25913,"ts":531359905369,"ph":"B","name":"V8.Execute","args":{},"tts":744007},{"cat":"blink","pid":25863,"tid":25913,"ts":531359905372,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":744011},{"cat":"v8","pid":25863,"tid":25913,"ts":531359905414,"ph":"E","name":"V8.Execute","args":{},"tts":744053},{"cat":"blink","pid":25863,"tid":25913,"ts":531359905420,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":29,"tts":744058},{"cat":"blink","pid":25863,"tid":25913,"ts":531359905422,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":744060},{"cat":"blink","pid":25863,"tid":25913,"ts":531359905423,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":17,"tts":744061},{"cat":"blink","pid":25863,"tid":25913,"ts":531359905441,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":744079},{"cat":"blink","pid":25863,"tid":25913,"ts":531359905445,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":744083},{"cat":"sky","pid":25863,"tid":25913,"ts":531359905449,"ph":"X","name":"Layer::Display","args":{},"dur":773,"tdur":772,"tts":744088},{"cat":"sky","pid":25863,"tid":25913,"ts":531359906223,"ph":"X","name":"LayerHost::Upload","args":{},"dur":176,"tdur":90,"tts":744862},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359906411,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":39,"tdur":38,"tts":744965},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906416,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":29,"tts":744970},{"cat":"v8","pid":25863,"tid":25913,"ts":531359906419,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":25,"tts":744972},{"cat":"v8","pid":25863,"tid":25913,"ts":531359906421,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":21,"tts":744975},{"cat":"v8","pid":25863,"tid":25913,"ts":531359906423,"ph":"B","name":"V8.Execute","args":{},"tts":744977},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906431,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":744985},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906437,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":744991},{"cat":"v8","pid":25863,"tid":25913,"ts":531359906441,"ph":"E","name":"V8.Execute","args":{},"tts":744995},{"cat":"sky","pid":25863,"tid":25913,"ts":531359906769,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1027,"tdur":974,"tts":745145},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906772,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":91,"tdur":91,"tts":745148},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906775,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":745151},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906778,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":31,"tts":745153},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906784,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":24,"tts":745160},{"cat":"v8","pid":25863,"tid":25913,"ts":531359906796,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":745172},{"cat":"v8","pid":25863,"tid":25913,"ts":531359906798,"ph":"B","name":"V8.Execute","args":{},"tts":745173},{"cat":"v8","pid":25863,"tid":25913,"ts":531359906804,"ph":"E","name":"V8.Execute","args":{},"tts":745180},{"cat":"v8","pid":25863,"tid":25913,"ts":531359906811,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":50,"tts":745187},{"cat":"v8","pid":25863,"tid":25913,"ts":531359906813,"ph":"B","name":"V8.Execute","args":{},"tts":745188},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906816,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":745192},{"cat":"v8","pid":25863,"tid":25913,"ts":531359906859,"ph":"E","name":"V8.Execute","args":{},"tts":745234},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906864,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":29,"tts":745239},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906866,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":745241},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906867,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":745243},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906885,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":745261},{"cat":"blink","pid":25863,"tid":25913,"ts":531359906889,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":745265},{"cat":"sky","pid":25863,"tid":25913,"ts":531359906894,"ph":"X","name":"Layer::Display","args":{},"dur":796,"tdur":795,"tts":745269},{"cat":"sky","pid":25863,"tid":25913,"ts":531359907691,"ph":"X","name":"LayerHost::Upload","args":{},"dur":105,"tdur":53,"tts":746066},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359907871,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":44,"tdur":42,"tts":746171},{"cat":"blink","pid":25863,"tid":25913,"ts":531359907875,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":35,"tdur":34,"tts":746175},{"cat":"v8","pid":25863,"tid":25913,"ts":531359907878,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":31,"tdur":31,"tts":746177},{"cat":"v8","pid":25863,"tid":25913,"ts":531359907880,"ph":"X","name":"v8.callFunction","args":{},"dur":28,"tdur":28,"tts":746179},{"cat":"v8","pid":25863,"tid":25913,"ts":531359907882,"ph":"B","name":"V8.Execute","args":{},"tts":746181},{"cat":"blink","pid":25863,"tid":25913,"ts":531359907889,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":16,"tdur":16,"tts":746188},{"cat":"blink","pid":25863,"tid":25913,"ts":531359907895,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":10,"tdur":9,"tts":746194},{"cat":"v8","pid":25863,"tid":25913,"ts":531359907906,"ph":"E","name":"V8.Execute","args":{},"tts":746205},{"cat":"sky","pid":25863,"tid":25913,"ts":531359908238,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1046,"tdur":998,"tts":746367},{"cat":"blink","pid":25863,"tid":25913,"ts":531359908242,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":94,"tdur":93,"tts":746371},{"cat":"blink","pid":25863,"tid":25913,"ts":531359908245,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":746374},{"cat":"blink","pid":25863,"tid":25913,"ts":531359908248,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":34,"tdur":33,"tts":746377},{"cat":"blink","pid":25863,"tid":25913,"ts":531359908255,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":26,"tdur":26,"tts":746383},{"cat":"v8","pid":25863,"tid":25913,"ts":531359908268,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":746396},{"cat":"v8","pid":25863,"tid":25913,"ts":531359908269,"ph":"B","name":"V8.Execute","args":{},"tts":746398},{"cat":"v8","pid":25863,"tid":25913,"ts":531359908276,"ph":"E","name":"V8.Execute","args":{},"tts":746404},{"cat":"v8","pid":25863,"tid":25913,"ts":531359908284,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":50,"tts":746412},{"cat":"v8","pid":25863,"tid":25913,"ts":531359908285,"ph":"B","name":"V8.Execute","args":{},"tts":746413},{"cat":"blink","pid":25863,"tid":25913,"ts":531359908289,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":746417},{"cat":"v8","pid":25863,"tid":25913,"ts":531359908331,"ph":"E","name":"V8.Execute","args":{},"tts":746460},{"cat":"blink","pid":25863,"tid":25913,"ts":531359908336,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":30,"tdur":29,"tts":746465},{"cat":"blink","pid":25863,"tid":25913,"ts":531359908338,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":746467},{"cat":"blink","pid":25863,"tid":25913,"ts":531359908340,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":17,"tts":746468},{"cat":"blink","pid":25863,"tid":25913,"ts":531359908358,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":746486},{"cat":"blink","pid":25863,"tid":25913,"ts":531359908362,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":746490},{"cat":"sky","pid":25863,"tid":25913,"ts":531359908366,"ph":"X","name":"Layer::Display","args":{},"dur":780,"tdur":778,"tts":746495},{"cat":"sky","pid":25863,"tid":25913,"ts":531359909147,"ph":"X","name":"LayerHost::Upload","args":{},"dur":136,"tdur":89,"tts":747275},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359910400,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":41,"tdur":41,"tts":747483},{"cat":"blink","pid":25863,"tid":25913,"ts":531359910406,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":30,"tdur":30,"tts":747488},{"cat":"v8","pid":25863,"tid":25913,"ts":531359910408,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":26,"tts":747491},{"cat":"v8","pid":25863,"tid":25913,"ts":531359910411,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":747494},{"cat":"v8","pid":25863,"tid":25913,"ts":531359910413,"ph":"B","name":"V8.Execute","args":{},"tts":747495},{"cat":"blink","pid":25863,"tid":25913,"ts":531359910421,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":747503},{"cat":"blink","pid":25863,"tid":25913,"ts":531359910428,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":747510},{"cat":"v8","pid":25863,"tid":25913,"ts":531359910432,"ph":"E","name":"V8.Execute","args":{},"tts":747515},{"cat":"sky","pid":25863,"tid":25913,"ts":531359969760,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2418,"tdur":2226,"tts":747621},{"cat":"blink","pid":25863,"tid":25913,"ts":531359969770,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":276,"tdur":276,"tts":747630},{"cat":"blink","pid":25863,"tid":25913,"ts":531359969779,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":2,"tts":747639},{"cat":"blink","pid":25863,"tid":25913,"ts":531359969788,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":98,"tdur":97,"tts":747648},{"cat":"blink","pid":25863,"tid":25913,"ts":531359969811,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":75,"tdur":75,"tts":747670},{"cat":"v8","pid":25863,"tid":25913,"ts":531359969854,"ph":"X","name":"v8.callFunction","args":{},"dur":27,"tdur":27,"tts":747713},{"cat":"v8","pid":25863,"tid":25913,"ts":531359969857,"ph":"B","name":"V8.Execute","args":{},"tts":747717},{"cat":"v8","pid":25863,"tid":25913,"ts":531359969878,"ph":"E","name":"V8.Execute","args":{},"tts":747738},{"cat":"v8","pid":25863,"tid":25913,"ts":531359969891,"ph":"X","name":"v8.callFunction","args":{},"dur":153,"tdur":153,"tts":747750},{"cat":"v8","pid":25863,"tid":25913,"ts":531359969892,"ph":"B","name":"V8.Execute","args":{},"tts":747752},{"cat":"blink","pid":25863,"tid":25913,"ts":531359969902,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":28,"tdur":28,"tts":747762},{"cat":"v8","pid":25863,"tid":25913,"ts":531359970041,"ph":"E","name":"V8.Execute","args":{},"tts":747901},{"cat":"blink","pid":25863,"tid":25913,"ts":531359970047,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":601,"tdur":601,"tts":747906},{"cat":"blink","pid":25863,"tid":25913,"ts":531359970049,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":747909},{"cat":"blink","pid":25863,"tid":25913,"ts":531359970051,"ph":"X","name":"Document::updateStyle","args":{},"dur":161,"tdur":160,"tts":747910},{"cat":"blink","pid":25863,"tid":25913,"ts":531359970214,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":748074},{"cat":"blink","pid":25863,"tid":25913,"ts":531359970219,"ph":"X","name":"FrameView::layout","args":{},"dur":86,"tdur":85,"tts":748079},{"cat":"blink","pid":25863,"tid":25913,"ts":531359970223,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":4,"tdur":4,"tts":748082},{"cat":"blink","pid":25863,"tid":25913,"ts":531359970229,"ph":"X","name":"FrameView::performLayout","args":{},"dur":50,"tdur":49,"tts":748088},{"cat":"blink","pid":25863,"tid":25913,"ts":531359970280,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":4,"tdur":3,"tts":748140},{"cat":"blink","pid":25863,"tid":25913,"ts":531359970285,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":16,"tdur":15,"tts":748145},{"cat":"blink","pid":25863,"tid":25913,"ts":531359970316,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":331,"tdur":330,"tts":748176},{"cat":"sky","pid":25863,"tid":25913,"ts":531359970650,"ph":"X","name":"Layer::Display","args":{},"dur":1126,"tdur":1125,"tts":748509},{"cat":"sky","pid":25863,"tid":25913,"ts":531359971779,"ph":"X","name":"LayerHost::Upload","args":{},"dur":397,"tdur":205,"tts":749639},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359972212,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":99,"tdur":98,"tts":749882},{"cat":"blink","pid":25863,"tid":25913,"ts":531359972225,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":75,"tdur":75,"tts":749894},{"cat":"v8","pid":25863,"tid":25913,"ts":531359972232,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":66,"tdur":65,"tts":749901},{"cat":"v8","pid":25863,"tid":25913,"ts":531359972238,"ph":"X","name":"v8.callFunction","args":{},"dur":57,"tdur":57,"tts":749907},{"cat":"v8","pid":25863,"tid":25913,"ts":531359972242,"ph":"B","name":"V8.Execute","args":{},"tts":749911},{"cat":"blink","pid":25863,"tid":25913,"ts":531359972268,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":21,"tts":749937},{"cat":"blink","pid":25863,"tid":25913,"ts":531359972282,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":6,"tts":749951},{"cat":"v8","pid":25863,"tid":25913,"ts":531359972292,"ph":"E","name":"V8.Execute","args":{},"tts":749961},{"cat":"sky","pid":25863,"tid":25913,"ts":531359973095,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2380,"tdur":2225,"tts":750343},{"cat":"blink","pid":25863,"tid":25913,"ts":531359973105,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":234,"tdur":233,"tts":750351},{"cat":"blink","pid":25863,"tid":25913,"ts":531359973112,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":750357},{"cat":"blink","pid":25863,"tid":25913,"ts":531359973119,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":97,"tdur":97,"tts":750364},{"cat":"blink","pid":25863,"tid":25913,"ts":531359973157,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":58,"tdur":57,"tts":750403},{"cat":"v8","pid":25863,"tid":25913,"ts":531359973185,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":750431},{"cat":"v8","pid":25863,"tid":25913,"ts":531359973190,"ph":"B","name":"V8.Execute","args":{},"tts":750435},{"cat":"v8","pid":25863,"tid":25913,"ts":531359973204,"ph":"E","name":"V8.Execute","args":{},"tts":750450},{"cat":"v8","pid":25863,"tid":25913,"ts":531359973221,"ph":"X","name":"v8.callFunction","args":{},"dur":113,"tdur":112,"tts":750467},{"cat":"v8","pid":25863,"tid":25913,"ts":531359973224,"ph":"B","name":"V8.Execute","args":{},"tts":750470},{"cat":"blink","pid":25863,"tid":25913,"ts":531359973232,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":21,"tts":750478},{"cat":"v8","pid":25863,"tid":25913,"ts":531359973328,"ph":"E","name":"V8.Execute","args":{},"tts":750574},{"cat":"blink","pid":25863,"tid":25913,"ts":531359973341,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":750587},{"cat":"blink","pid":25863,"tid":25913,"ts":531359973345,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":750591},{"cat":"blink","pid":25863,"tid":25913,"ts":531359973348,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":39,"tts":750594},{"cat":"blink","pid":25863,"tid":25913,"ts":531359973389,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":750635},{"cat":"blink","pid":25863,"tid":25913,"ts":531359973398,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":750644},{"cat":"sky","pid":25863,"tid":25913,"ts":531359973409,"ph":"X","name":"Layer::Display","args":{},"dur":1728,"tdur":1727,"tts":750654},{"cat":"sky","pid":25863,"tid":25913,"ts":531359975139,"ph":"X","name":"LayerHost::Upload","args":{},"dur":334,"tdur":180,"tts":752385},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359975502,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":87,"tdur":86,"tts":752595},{"cat":"blink","pid":25863,"tid":25913,"ts":531359975513,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":65,"tts":752606},{"cat":"v8","pid":25863,"tid":25913,"ts":531359975518,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":57,"tts":752611},{"cat":"v8","pid":25863,"tid":25913,"ts":531359975525,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":752618},{"cat":"v8","pid":25863,"tid":25913,"ts":531359975528,"ph":"B","name":"V8.Execute","args":{},"tts":752621},{"cat":"blink","pid":25863,"tid":25913,"ts":531359975547,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":752640},{"cat":"blink","pid":25863,"tid":25913,"ts":531359975560,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":6,"tts":752653},{"cat":"v8","pid":25863,"tid":25913,"ts":531359975570,"ph":"E","name":"V8.Execute","args":{},"tts":752663},{"cat":"sky","pid":25863,"tid":25913,"ts":531359976309,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":3341,"tdur":3200,"tts":753016},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976319,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":481,"tdur":481,"tts":753024},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976325,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":753030},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976332,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":75,"tdur":74,"tts":753038},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976347,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":753053},{"cat":"v8","pid":25863,"tid":25913,"ts":531359976376,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":753081},{"cat":"v8","pid":25863,"tid":25913,"ts":531359976380,"ph":"B","name":"V8.Execute","args":{},"tts":753085},{"cat":"v8","pid":25863,"tid":25913,"ts":531359976395,"ph":"E","name":"V8.Execute","args":{},"tts":753100},{"cat":"v8","pid":25863,"tid":25913,"ts":531359976412,"ph":"X","name":"v8.callFunction","args":{},"dur":386,"tdur":385,"tts":753117},{"cat":"v8","pid":25863,"tid":25913,"ts":531359976415,"ph":"B","name":"V8.Execute","args":{},"tts":753120},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976423,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":753129},{"cat":"v8","pid":25863,"tid":25913,"ts":531359976730,"ph":"E","name":"V8.Execute","args":{},"tts":753436},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976801,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":805,"tdur":805,"tts":753506},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976804,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":753509},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976805,"ph":"X","name":"Document::updateStyle","args":{},"dur":68,"tdur":67,"tts":753510},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976873,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":6},"tts":753578},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976875,"ph":"X","name":"FrameView::layout","args":{},"dur":248,"tdur":248,"tts":753580},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976876,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":2,"tdur":1,"tts":753582},{"cat":"blink","pid":25863,"tid":25913,"ts":531359976878,"ph":"X","name":"FrameView::performLayout","args":{},"dur":225,"tdur":222,"tts":753584},{"cat":"blink","pid":25863,"tid":25913,"ts":531359977105,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":6,"tdur":5,"tts":753810},{"cat":"blink","pid":25863,"tid":25913,"ts":531359977112,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":9,"tdur":8,"tts":753817},{"cat":"blink","pid":25863,"tid":25913,"ts":531359977129,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":475,"tdur":473,"tts":753835},{"cat":"sky","pid":25863,"tid":25913,"ts":531359977608,"ph":"X","name":"Layer::Display","args":{},"dur":1775,"tdur":1774,"tts":754313},{"cat":"sky","pid":25863,"tid":25913,"ts":531359979385,"ph":"X","name":"LayerHost::Upload","args":{},"dur":264,"tdur":123,"tts":756091},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359979675,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":91,"tdur":90,"tts":756242},{"cat":"blink","pid":25863,"tid":25913,"ts":531359979685,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":72,"tdur":71,"tts":756251},{"cat":"v8","pid":25863,"tid":25913,"ts":531359979690,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":64,"tdur":63,"tts":756256},{"cat":"v8","pid":25863,"tid":25913,"ts":531359979696,"ph":"X","name":"v8.callFunction","args":{},"dur":55,"tdur":55,"tts":756262},{"cat":"v8","pid":25863,"tid":25913,"ts":531359979699,"ph":"B","name":"V8.Execute","args":{},"tts":756266},{"cat":"blink","pid":25863,"tid":25913,"ts":531359979716,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":29,"tdur":28,"tts":756283},{"cat":"blink","pid":25863,"tid":25913,"ts":531359979738,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":7,"tdur":5,"tts":756305},{"cat":"v8","pid":25863,"tid":25913,"ts":531359979748,"ph":"E","name":"V8.Execute","args":{},"tts":756314},{"cat":"sky","pid":25863,"tid":25913,"ts":531359980339,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2373,"tdur":2251,"tts":756710},{"cat":"blink","pid":25863,"tid":25913,"ts":531359980348,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":229,"tdur":227,"tts":756718},{"cat":"blink","pid":25863,"tid":25913,"ts":531359980355,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":756724},{"cat":"blink","pid":25863,"tid":25913,"ts":531359980362,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":74,"tdur":73,"tts":756732},{"cat":"blink","pid":25863,"tid":25913,"ts":531359980377,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":57,"tts":756747},{"cat":"v8","pid":25863,"tid":25913,"ts":531359980405,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":756775},{"cat":"v8","pid":25863,"tid":25913,"ts":531359980410,"ph":"B","name":"V8.Execute","args":{},"tts":756779},{"cat":"v8","pid":25863,"tid":25913,"ts":531359980424,"ph":"E","name":"V8.Execute","args":{},"tts":756794},{"cat":"v8","pid":25863,"tid":25913,"ts":531359980441,"ph":"X","name":"v8.callFunction","args":{},"dur":131,"tdur":131,"tts":756810},{"cat":"v8","pid":25863,"tid":25913,"ts":531359980460,"ph":"B","name":"V8.Execute","args":{},"tts":756830},{"cat":"blink","pid":25863,"tid":25913,"ts":531359980469,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":756839},{"cat":"v8","pid":25863,"tid":25913,"ts":531359980565,"ph":"E","name":"V8.Execute","args":{},"tts":756936},{"cat":"blink","pid":25863,"tid":25913,"ts":531359980578,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":756948},{"cat":"blink","pid":25863,"tid":25913,"ts":531359980583,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":756952},{"cat":"blink","pid":25863,"tid":25913,"ts":531359980586,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":39,"tts":756955},{"cat":"blink","pid":25863,"tid":25913,"ts":531359980626,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":756996},{"cat":"blink","pid":25863,"tid":25913,"ts":531359980635,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":757005},{"cat":"sky","pid":25863,"tid":25913,"ts":531359980646,"ph":"X","name":"Layer::Display","args":{},"dur":1767,"tdur":1765,"tts":757015},{"cat":"sky","pid":25863,"tid":25913,"ts":531359982415,"ph":"X","name":"LayerHost::Upload","args":{},"dur":295,"tdur":173,"tts":758785},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531359982739,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":85,"tdur":85,"tts":758988},{"cat":"blink","pid":25863,"tid":25913,"ts":531359982749,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":65,"tdur":64,"tts":758999},{"cat":"v8","pid":25863,"tid":25913,"ts":531359982755,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":57,"tdur":56,"tts":759005},{"cat":"v8","pid":25863,"tid":25913,"ts":531359982761,"ph":"X","name":"v8.callFunction","args":{},"dur":48,"tdur":47,"tts":759011},{"cat":"v8","pid":25863,"tid":25913,"ts":531359982765,"ph":"B","name":"V8.Execute","args":{},"tts":759014},{"cat":"blink","pid":25863,"tid":25913,"ts":531359982783,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":759033},{"cat":"blink","pid":25863,"tid":25913,"ts":531359982796,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":759046},{"cat":"v8","pid":25863,"tid":25913,"ts":531359982806,"ph":"E","name":"V8.Execute","args":{},"tts":759055},{"cat":"sky","pid":25863,"tid":25913,"ts":531360062923,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1513,"tdur":1418,"tts":759411},{"cat":"blink","pid":25863,"tid":25913,"ts":531360062930,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":201,"tdur":200,"tts":759418},{"cat":"blink","pid":25863,"tid":25913,"ts":531360062937,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":759424},{"cat":"blink","pid":25863,"tid":25913,"ts":531360062943,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":80,"tdur":79,"tts":759430},{"cat":"blink","pid":25863,"tid":25913,"ts":531360062963,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":759451},{"cat":"v8","pid":25863,"tid":25913,"ts":531360062996,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":759483},{"cat":"v8","pid":25863,"tid":25913,"ts":531360062999,"ph":"B","name":"V8.Execute","args":{},"tts":759486},{"cat":"v8","pid":25863,"tid":25913,"ts":531360063015,"ph":"E","name":"V8.Execute","args":{},"tts":759502},{"cat":"v8","pid":25863,"tid":25913,"ts":531360063026,"ph":"X","name":"v8.callFunction","args":{},"dur":102,"tdur":102,"tts":759513},{"cat":"v8","pid":25863,"tid":25913,"ts":531360063028,"ph":"B","name":"V8.Execute","args":{},"tts":759515},{"cat":"blink","pid":25863,"tid":25913,"ts":531360063036,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":20,"tdur":19,"tts":759523},{"cat":"v8","pid":25863,"tid":25913,"ts":531360063125,"ph":"E","name":"V8.Execute","args":{},"tts":759612},{"cat":"blink","pid":25863,"tid":25913,"ts":531360063132,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":63,"tdur":63,"tts":759619},{"cat":"blink","pid":25863,"tid":25913,"ts":531360063134,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":759621},{"cat":"blink","pid":25863,"tid":25913,"ts":531360063136,"ph":"X","name":"Document::updateStyle","args":{},"dur":44,"tdur":44,"tts":759623},{"cat":"blink","pid":25863,"tid":25913,"ts":531360063181,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":759668},{"cat":"blink","pid":25863,"tid":25913,"ts":531360063188,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":6,"tdur":6,"tts":759675},{"cat":"sky","pid":25863,"tid":25913,"ts":531360063196,"ph":"X","name":"Layer::Display","args":{},"dur":1038,"tdur":1026,"tts":759683},{"cat":"sky","pid":25863,"tid":25913,"ts":531360064234,"ph":"X","name":"LayerHost::Upload","args":{},"dur":201,"tdur":116,"tts":760712},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360064452,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":41,"tdur":41,"tts":760846},{"cat":"blink","pid":25863,"tid":25913,"ts":531360064457,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":31,"tts":760851},{"cat":"v8","pid":25863,"tid":25913,"ts":531360064460,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":28,"tts":760853},{"cat":"v8","pid":25863,"tid":25913,"ts":531360064462,"ph":"X","name":"v8.callFunction","args":{},"dur":25,"tdur":24,"tts":760856},{"cat":"v8","pid":25863,"tid":25913,"ts":531360064464,"ph":"B","name":"V8.Execute","args":{},"tts":760857},{"cat":"blink","pid":25863,"tid":25913,"ts":531360064475,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":760869},{"cat":"blink","pid":25863,"tid":25913,"ts":531360064481,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":760874},{"cat":"v8","pid":25863,"tid":25913,"ts":531360064485,"ph":"E","name":"V8.Execute","args":{},"tts":760879},{"cat":"sky","pid":25863,"tid":25913,"ts":531360064929,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1264,"tdur":1175,"tts":761069},{"cat":"blink","pid":25863,"tid":25913,"ts":531360064932,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":105,"tdur":105,"tts":761072},{"cat":"blink","pid":25863,"tid":25913,"ts":531360064935,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":761075},{"cat":"blink","pid":25863,"tid":25913,"ts":531360064938,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":31,"tts":761078},{"cat":"blink","pid":25863,"tid":25913,"ts":531360064944,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":24,"tts":761084},{"cat":"v8","pid":25863,"tid":25913,"ts":531360064956,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":761096},{"cat":"v8","pid":25863,"tid":25913,"ts":531360064958,"ph":"B","name":"V8.Execute","args":{},"tts":761098},{"cat":"v8","pid":25863,"tid":25913,"ts":531360064964,"ph":"E","name":"V8.Execute","args":{},"tts":761104},{"cat":"v8","pid":25863,"tid":25913,"ts":531360064971,"ph":"X","name":"v8.callFunction","args":{},"dur":64,"tdur":64,"tts":761111},{"cat":"v8","pid":25863,"tid":25913,"ts":531360064973,"ph":"B","name":"V8.Execute","args":{},"tts":761112},{"cat":"blink","pid":25863,"tid":25913,"ts":531360064976,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":761116},{"cat":"v8","pid":25863,"tid":25913,"ts":531360065032,"ph":"E","name":"V8.Execute","args":{},"tts":761172},{"cat":"blink","pid":25863,"tid":25913,"ts":531360065038,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":27,"tdur":28,"tts":761177},{"cat":"blink","pid":25863,"tid":25913,"ts":531360065039,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":761179},{"cat":"blink","pid":25863,"tid":25913,"ts":531360065041,"ph":"X","name":"Document::updateStyle","args":{},"dur":16,"tdur":16,"tts":761180},{"cat":"blink","pid":25863,"tid":25913,"ts":531360065058,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":761197},{"cat":"blink","pid":25863,"tid":25913,"ts":531360065061,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":761201},{"cat":"sky","pid":25863,"tid":25913,"ts":531360065066,"ph":"X","name":"Layer::Display","args":{},"dur":857,"tdur":842,"tts":761206},{"cat":"sky","pid":25863,"tid":25913,"ts":531360065925,"ph":"X","name":"LayerHost::Upload","args":{},"dur":267,"tdur":178,"tts":762065},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360066215,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":76,"tdur":76,"tts":762267},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066219,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":62,"tdur":61,"tts":762271},{"cat":"v8","pid":25863,"tid":25913,"ts":531360066222,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":56,"tdur":55,"tts":762274},{"cat":"v8","pid":25863,"tid":25913,"ts":531360066224,"ph":"X","name":"v8.callFunction","args":{},"dur":51,"tdur":51,"tts":762276},{"cat":"v8","pid":25863,"tid":25913,"ts":531360066226,"ph":"B","name":"V8.Execute","args":{},"tts":762278},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066248,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":762300},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066262,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":762314},{"cat":"v8","pid":25863,"tid":25913,"ts":531360066271,"ph":"E","name":"V8.Execute","args":{},"tts":762324},{"cat":"sky","pid":25863,"tid":25913,"ts":531360066864,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1026,"tdur":958,"tts":762548},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066868,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":98,"tdur":98,"tts":762551},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066871,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":762554},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066874,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":35,"tdur":34,"tts":762558},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066881,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":27,"tdur":28,"tts":762564},{"cat":"v8","pid":25863,"tid":25913,"ts":531360066895,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":11,"tts":762578},{"cat":"v8","pid":25863,"tid":25913,"ts":531360066897,"ph":"B","name":"V8.Execute","args":{},"tts":762580},{"cat":"v8","pid":25863,"tid":25913,"ts":531360066904,"ph":"E","name":"V8.Execute","args":{},"tts":762587},{"cat":"v8","pid":25863,"tid":25913,"ts":531360066911,"ph":"X","name":"v8.callFunction","args":{},"dur":53,"tdur":53,"tts":762594},{"cat":"v8","pid":25863,"tid":25913,"ts":531360066912,"ph":"B","name":"V8.Execute","args":{},"tts":762596},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066916,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":762600},{"cat":"v8","pid":25863,"tid":25913,"ts":531360066961,"ph":"E","name":"V8.Execute","args":{},"tts":762645},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066966,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":28,"tts":762650},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066968,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":762652},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066969,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":762653},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066987,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":762671},{"cat":"blink","pid":25863,"tid":25913,"ts":531360066991,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":762675},{"cat":"sky","pid":25863,"tid":25913,"ts":531360066996,"ph":"X","name":"Layer::Display","args":{},"dur":775,"tdur":775,"tts":762679},{"cat":"sky","pid":25863,"tid":25913,"ts":531360067772,"ph":"X","name":"LayerHost::Upload","args":{},"dur":118,"tdur":49,"tts":763456},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360068019,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":36,"tdur":35,"tts":763579},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068023,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":27,"tts":763583},{"cat":"v8","pid":25863,"tid":25913,"ts":531360068025,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":24,"tdur":24,"tts":763585},{"cat":"v8","pid":25863,"tid":25913,"ts":531360068027,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":763587},{"cat":"v8","pid":25863,"tid":25913,"ts":531360068029,"ph":"B","name":"V8.Execute","args":{},"tts":763589},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068037,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":8,"tts":763597},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068042,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":763602},{"cat":"v8","pid":25863,"tid":25913,"ts":531360068046,"ph":"E","name":"V8.Execute","args":{},"tts":763607},{"cat":"sky","pid":25863,"tid":25913,"ts":531360068119,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":915,"tdur":898,"tts":763672},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068122,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":78,"tdur":78,"tts":763674},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068124,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":763676},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068127,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":26,"tdur":26,"tts":763678},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068132,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":20,"tdur":20,"tts":763684},{"cat":"v8","pid":25863,"tid":25913,"ts":531360068141,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":8,"tts":763693},{"cat":"v8","pid":25863,"tid":25913,"ts":531360068143,"ph":"B","name":"V8.Execute","args":{},"tts":763695},{"cat":"v8","pid":25863,"tid":25913,"ts":531360068148,"ph":"E","name":"V8.Execute","args":{},"tts":763700},{"cat":"v8","pid":25863,"tid":25913,"ts":531360068155,"ph":"X","name":"v8.callFunction","args":{},"dur":44,"tdur":43,"tts":763707},{"cat":"v8","pid":25863,"tid":25913,"ts":531360068156,"ph":"B","name":"V8.Execute","args":{},"tts":763708},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068160,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":7,"tdur":7,"tts":763712},{"cat":"v8","pid":25863,"tid":25913,"ts":531360068196,"ph":"E","name":"V8.Execute","args":{},"tts":763748},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068201,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":25,"tdur":25,"tts":763753},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068203,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":763755},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068204,"ph":"X","name":"Document::updateStyle","args":{},"dur":15,"tdur":14,"tts":763756},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068219,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":763771},{"cat":"blink","pid":25863,"tid":25913,"ts":531360068223,"ph":"X","name":"FrameView::invalidateTree","args":{"root":"\u0010\u0016أ&+"},"dur":3,"tdur":2,"tts":763775},{"cat":"sky","pid":25863,"tid":25913,"ts":531360068227,"ph":"X","name":"Layer::Display","args":{},"dur":736,"tdur":736,"tts":763779},{"cat":"sky","pid":25863,"tid":25913,"ts":531360068964,"ph":"X","name":"LayerHost::Upload","args":{},"dur":69,"tdur":53,"tts":764516},{"cat":"sky","pid":25863,"tid":25913,"ts":531360069230,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":999,"tdur":929,"tts":764671},{"cat":"blink","pid":25863,"tid":25913,"ts":531360069233,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":84,"tdur":84,"tts":764673},{"cat":"blink","pid":25863,"tid":25913,"ts":531360069235,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":764675},{"cat":"blink","pid":25863,"tid":25913,"ts":531360069238,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":29,"tdur":28,"tts":764678},{"cat":"blink","pid":25863,"tid":25913,"ts":531360069244,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":22,"tdur":22,"tts":764684},{"cat":"v8","pid":25863,"tid":25913,"ts":531360069254,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":8,"tts":764695},{"cat":"v8","pid":25863,"tid":25913,"ts":531360069256,"ph":"B","name":"V8.Execute","args":{},"tts":764696},{"cat":"v8","pid":25863,"tid":25913,"ts":531360069262,"ph":"E","name":"V8.Execute","args":{},"tts":764702},{"cat":"v8","pid":25863,"tid":25913,"ts":531360069269,"ph":"X","name":"v8.callFunction","args":{},"dur":46,"tdur":46,"tts":764709},{"cat":"v8","pid":25863,"tid":25913,"ts":531360069270,"ph":"B","name":"V8.Execute","args":{},"tts":764710},{"cat":"blink","pid":25863,"tid":25913,"ts":531360069279,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":8,"tdur":7,"tts":764719},{"cat":"v8","pid":25863,"tid":25913,"ts":531360069312,"ph":"E","name":"V8.Execute","args":{},"tts":764753},{"cat":"blink","pid":25863,"tid":25913,"ts":531360069318,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":25,"tdur":25,"tts":764758},{"cat":"blink","pid":25863,"tid":25913,"ts":531360069319,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":764759},{"cat":"blink","pid":25863,"tid":25913,"ts":531360069321,"ph":"X","name":"Document::updateStyle","args":{},"dur":15,"tdur":15,"tts":764761},{"cat":"blink","pid":25863,"tid":25913,"ts":531360069336,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":764777},{"cat":"blink","pid":25863,"tid":25913,"ts":531360069340,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":764780},{"cat":"sky","pid":25863,"tid":25913,"ts":531360069344,"ph":"X","name":"Layer::Display","args":{},"dur":729,"tdur":728,"tts":764784},{"cat":"sky","pid":25863,"tid":25913,"ts":531360070074,"ph":"X","name":"LayerHost::Upload","args":{},"dur":155,"tdur":85,"tts":765514},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360070238,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":34,"tdur":33,"tts":765609},{"cat":"blink","pid":25863,"tid":25913,"ts":531360070242,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":26,"tdur":25,"tts":765613},{"cat":"v8","pid":25863,"tid":25913,"ts":531360070244,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":23,"tdur":22,"tts":765615},{"cat":"v8","pid":25863,"tid":25913,"ts":531360070247,"ph":"X","name":"v8.callFunction","args":{},"dur":19,"tdur":19,"tts":765617},{"cat":"v8","pid":25863,"tid":25913,"ts":531360070248,"ph":"B","name":"V8.Execute","args":{},"tts":765619},{"cat":"blink","pid":25863,"tid":25913,"ts":531360070255,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":8,"tdur":8,"tts":765626},{"cat":"blink","pid":25863,"tid":25913,"ts":531360070261,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":765632},{"cat":"v8","pid":25863,"tid":25913,"ts":531360070264,"ph":"E","name":"V8.Execute","args":{},"tts":765635},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360071386,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":38,"tdur":38,"tts":765815},{"cat":"blink","pid":25863,"tid":25913,"ts":531360071391,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":29,"tts":765819},{"cat":"v8","pid":25863,"tid":25913,"ts":531360071394,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":24,"tdur":25,"tts":765822},{"cat":"v8","pid":25863,"tid":25913,"ts":531360071396,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":765825},{"cat":"v8","pid":25863,"tid":25913,"ts":531360071398,"ph":"B","name":"V8.Execute","args":{},"tts":765827},{"cat":"blink","pid":25863,"tid":25913,"ts":531360071405,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":765834},{"cat":"blink","pid":25863,"tid":25913,"ts":531360071412,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":3,"tts":765840},{"cat":"v8","pid":25863,"tid":25913,"ts":531360071416,"ph":"E","name":"V8.Execute","args":{},"tts":765844},{"cat":"sky","pid":25863,"tid":25913,"ts":531360153178,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1202,"tdur":1046,"tts":765927},{"cat":"blink","pid":25863,"tid":25913,"ts":531360153183,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":112,"tdur":112,"tts":765932},{"cat":"blink","pid":25863,"tid":25913,"ts":531360153198,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":765947},{"cat":"blink","pid":25863,"tid":25913,"ts":531360153201,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":40,"tdur":39,"tts":765950},{"cat":"blink","pid":25863,"tid":25913,"ts":531360153213,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":27,"tdur":27,"tts":765962},{"cat":"v8","pid":25863,"tid":25913,"ts":531360153227,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":765975},{"cat":"v8","pid":25863,"tid":25913,"ts":531360153229,"ph":"B","name":"V8.Execute","args":{},"tts":765977},{"cat":"v8","pid":25863,"tid":25913,"ts":531360153235,"ph":"E","name":"V8.Execute","args":{},"tts":765984},{"cat":"v8","pid":25863,"tid":25913,"ts":531360153243,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":50,"tts":765991},{"cat":"v8","pid":25863,"tid":25913,"ts":531360153244,"ph":"B","name":"V8.Execute","args":{},"tts":765993},{"cat":"blink","pid":25863,"tid":25913,"ts":531360153248,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":765997},{"cat":"v8","pid":25863,"tid":25913,"ts":531360153291,"ph":"E","name":"V8.Execute","args":{},"tts":766039},{"cat":"blink","pid":25863,"tid":25913,"ts":531360153296,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":31,"tdur":31,"tts":766044},{"cat":"blink","pid":25863,"tid":25913,"ts":531360153298,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":766046},{"cat":"blink","pid":25863,"tid":25913,"ts":531360153299,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":19,"tts":766047},{"cat":"blink","pid":25863,"tid":25913,"ts":531360153319,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":766067},{"cat":"blink","pid":25863,"tid":25913,"ts":531360153323,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":766071},{"cat":"sky","pid":25863,"tid":25913,"ts":531360153328,"ph":"X","name":"Layer::Display","args":{},"dur":750,"tdur":750,"tts":766076},{"cat":"sky","pid":25863,"tid":25913,"ts":531360154079,"ph":"X","name":"LayerHost::Upload","args":{},"dur":300,"tdur":144,"tts":766828},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360154392,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":36,"tdur":36,"tts":766985},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154396,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":28,"tdur":27,"tts":766990},{"cat":"v8","pid":25863,"tid":25913,"ts":531360154399,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":24,"tdur":24,"tts":766992},{"cat":"v8","pid":25863,"tid":25913,"ts":531360154401,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":20,"tts":766995},{"cat":"v8","pid":25863,"tid":25913,"ts":531360154403,"ph":"B","name":"V8.Execute","args":{},"tts":766996},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154411,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":767004},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154416,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":767010},{"cat":"v8","pid":25863,"tid":25913,"ts":531360154420,"ph":"E","name":"V8.Execute","args":{},"tts":767014},{"cat":"sky","pid":25863,"tid":25913,"ts":531360154827,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1064,"tdur":976,"tts":767212},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154831,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":120,"tdur":119,"tts":767216},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154835,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":767219},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154839,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":49,"tdur":49,"tts":767223},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154863,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":24,"tts":767248},{"cat":"v8","pid":25863,"tid":25913,"ts":531360154875,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":767260},{"cat":"v8","pid":25863,"tid":25913,"ts":531360154877,"ph":"B","name":"V8.Execute","args":{},"tts":767261},{"cat":"v8","pid":25863,"tid":25913,"ts":531360154883,"ph":"E","name":"V8.Execute","args":{},"tts":767268},{"cat":"v8","pid":25863,"tid":25913,"ts":531360154890,"ph":"X","name":"v8.callFunction","args":{},"dur":58,"tdur":58,"tts":767275},{"cat":"v8","pid":25863,"tid":25913,"ts":531360154891,"ph":"B","name":"V8.Execute","args":{},"tts":767276},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154895,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":767279},{"cat":"v8","pid":25863,"tid":25913,"ts":531360154941,"ph":"E","name":"V8.Execute","args":{},"tts":767326},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154951,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":27,"tts":767336},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154953,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":767338},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154954,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":767339},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154971,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":767356},{"cat":"blink","pid":25863,"tid":25913,"ts":531360154975,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":767360},{"cat":"sky","pid":25863,"tid":25913,"ts":531360154980,"ph":"X","name":"Layer::Display","args":{},"dur":719,"tdur":718,"tts":767364},{"cat":"sky","pid":25863,"tid":25913,"ts":531360155700,"ph":"X","name":"LayerHost::Upload","args":{},"dur":190,"tdur":103,"tts":768084},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360155962,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":37,"tdur":37,"tts":768241},{"cat":"blink","pid":25863,"tid":25913,"ts":531360155967,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":28,"tdur":27,"tts":768246},{"cat":"v8","pid":25863,"tid":25913,"ts":531360155969,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":24,"tts":768248},{"cat":"v8","pid":25863,"tid":25913,"ts":531360155972,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":20,"tts":768251},{"cat":"v8","pid":25863,"tid":25913,"ts":531360155974,"ph":"B","name":"V8.Execute","args":{},"tts":768252},{"cat":"blink","pid":25863,"tid":25913,"ts":531360155981,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":768260},{"cat":"blink","pid":25863,"tid":25913,"ts":531360155987,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":768266},{"cat":"v8","pid":25863,"tid":25913,"ts":531360155991,"ph":"E","name":"V8.Execute","args":{},"tts":768270},{"cat":"sky","pid":25863,"tid":25913,"ts":531360156362,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1240,"tdur":1166,"tts":768482},{"cat":"blink","pid":25863,"tid":25913,"ts":531360156367,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":116,"tdur":115,"tts":768486},{"cat":"blink","pid":25863,"tid":25913,"ts":531360156371,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":768489},{"cat":"blink","pid":25863,"tid":25913,"ts":531360156374,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":39,"tdur":38,"tts":768493},{"cat":"blink","pid":25863,"tid":25913,"ts":531360156382,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":31,"tdur":30,"tts":768501},{"cat":"v8","pid":25863,"tid":25913,"ts":531360156397,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":12,"tts":768515},{"cat":"v8","pid":25863,"tid":25913,"ts":531360156399,"ph":"B","name":"V8.Execute","args":{},"tts":768517},{"cat":"v8","pid":25863,"tid":25913,"ts":531360156407,"ph":"E","name":"V8.Execute","args":{},"tts":768525},{"cat":"v8","pid":25863,"tid":25913,"ts":531360156416,"ph":"X","name":"v8.callFunction","args":{},"dur":65,"tdur":65,"tts":768534},{"cat":"v8","pid":25863,"tid":25913,"ts":531360156417,"ph":"B","name":"V8.Execute","args":{},"tts":768536},{"cat":"blink","pid":25863,"tid":25913,"ts":531360156422,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":11,"tts":768540},{"cat":"v8","pid":25863,"tid":25913,"ts":531360156477,"ph":"E","name":"V8.Execute","args":{},"tts":768596},{"cat":"blink","pid":25863,"tid":25913,"ts":531360156484,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":34,"tdur":34,"tts":768602},{"cat":"blink","pid":25863,"tid":25913,"ts":531360156486,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":768604},{"cat":"blink","pid":25863,"tid":25913,"ts":531360156487,"ph":"X","name":"Document::updateStyle","args":{},"dur":21,"tdur":20,"tts":768606},{"cat":"blink","pid":25863,"tid":25913,"ts":531360156509,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":768627},{"cat":"blink","pid":25863,"tid":25913,"ts":531360156513,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":768632},{"cat":"sky","pid":25863,"tid":25913,"ts":531360156519,"ph":"X","name":"Layer::Display","args":{},"dur":907,"tdur":907,"tts":768637},{"cat":"sky","pid":25863,"tid":25913,"ts":531360157427,"ph":"X","name":"LayerHost::Upload","args":{},"dur":174,"tdur":101,"tts":769546},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360157615,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":45,"tdur":45,"tts":769662},{"cat":"blink","pid":25863,"tid":25913,"ts":531360157621,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":34,"tdur":33,"tts":769668},{"cat":"v8","pid":25863,"tid":25913,"ts":531360157624,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":30,"tdur":29,"tts":769671},{"cat":"v8","pid":25863,"tid":25913,"ts":531360157627,"ph":"X","name":"v8.callFunction","args":{},"dur":25,"tdur":25,"tts":769674},{"cat":"v8","pid":25863,"tid":25913,"ts":531360157629,"ph":"B","name":"V8.Execute","args":{},"tts":769676},{"cat":"blink","pid":25863,"tid":25913,"ts":531360157639,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":769686},{"cat":"blink","pid":25863,"tid":25913,"ts":531360157646,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":769692},{"cat":"v8","pid":25863,"tid":25913,"ts":531360157650,"ph":"E","name":"V8.Execute","args":{},"tts":769697},{"cat":"sky","pid":25863,"tid":25913,"ts":531360158053,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1210,"tdur":1151,"tts":769906},{"cat":"blink","pid":25863,"tid":25913,"ts":531360158058,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":111,"tdur":110,"tts":769910},{"cat":"blink","pid":25863,"tid":25913,"ts":531360158061,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":769913},{"cat":"blink","pid":25863,"tid":25913,"ts":531360158065,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":39,"tdur":39,"tts":769916},{"cat":"blink","pid":25863,"tid":25913,"ts":531360158073,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":31,"tdur":30,"tts":769925},{"cat":"v8","pid":25863,"tid":25913,"ts":531360158088,"ph":"X","name":"v8.callFunction","args":{},"dur":12,"tdur":11,"tts":769940},{"cat":"v8","pid":25863,"tid":25913,"ts":531360158090,"ph":"B","name":"V8.Execute","args":{},"tts":769942},{"cat":"v8","pid":25863,"tid":25913,"ts":531360158098,"ph":"E","name":"V8.Execute","args":{},"tts":769949},{"cat":"v8","pid":25863,"tid":25913,"ts":531360158107,"ph":"X","name":"v8.callFunction","args":{},"dur":59,"tdur":59,"tts":769958},{"cat":"v8","pid":25863,"tid":25913,"ts":531360158109,"ph":"B","name":"V8.Execute","args":{},"tts":769960},{"cat":"blink","pid":25863,"tid":25913,"ts":531360158113,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":11,"tts":769964},{"cat":"v8","pid":25863,"tid":25913,"ts":531360158163,"ph":"E","name":"V8.Execute","args":{},"tts":770015},{"cat":"blink","pid":25863,"tid":25913,"ts":531360158169,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":34,"tdur":34,"tts":770020},{"cat":"blink","pid":25863,"tid":25913,"ts":531360158171,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":770023},{"cat":"blink","pid":25863,"tid":25913,"ts":531360158173,"ph":"X","name":"Document::updateStyle","args":{},"dur":20,"tdur":20,"tts":770024},{"cat":"blink","pid":25863,"tid":25913,"ts":531360158194,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":770045},{"cat":"blink","pid":25863,"tid":25913,"ts":531360158199,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":770050},{"cat":"sky","pid":25863,"tid":25913,"ts":531360158204,"ph":"X","name":"Layer::Display","args":{},"dur":900,"tdur":899,"tts":770056},{"cat":"sky","pid":25863,"tid":25913,"ts":531360159105,"ph":"X","name":"LayerHost::Upload","args":{},"dur":157,"tdur":98,"tts":770957},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360159276,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":56,"tdur":55,"tts":771071},{"cat":"blink","pid":25863,"tid":25913,"ts":531360159282,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":45,"tdur":44,"tts":771076},{"cat":"v8","pid":25863,"tid":25913,"ts":531360159285,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":40,"tdur":40,"tts":771079},{"cat":"v8","pid":25863,"tid":25913,"ts":531360159297,"ph":"X","name":"v8.callFunction","args":{},"dur":27,"tdur":27,"tts":771091},{"cat":"v8","pid":25863,"tid":25913,"ts":531360159299,"ph":"B","name":"V8.Execute","args":{},"tts":771093},{"cat":"blink","pid":25863,"tid":25913,"ts":531360159308,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":13,"tdur":12,"tts":771103},{"cat":"blink","pid":25863,"tid":25913,"ts":531360159317,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":771111},{"cat":"v8","pid":25863,"tid":25913,"ts":531360159322,"ph":"E","name":"V8.Execute","args":{},"tts":771116},{"cat":"sky","pid":25863,"tid":25913,"ts":531360220732,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2443,"tdur":2273,"tts":771331},{"cat":"blink","pid":25863,"tid":25913,"ts":531360220741,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":213,"tdur":211,"tts":771339},{"cat":"blink","pid":25863,"tid":25913,"ts":531360220748,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":771345},{"cat":"blink","pid":25863,"tid":25913,"ts":531360220755,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":75,"tdur":74,"tts":771352},{"cat":"blink","pid":25863,"tid":25913,"ts":531360220770,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":771367},{"cat":"v8","pid":25863,"tid":25913,"ts":531360220799,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":22,"tts":771396},{"cat":"v8","pid":25863,"tid":25913,"ts":531360220803,"ph":"B","name":"V8.Execute","args":{},"tts":771400},{"cat":"v8","pid":25863,"tid":25913,"ts":531360220817,"ph":"E","name":"V8.Execute","args":{},"tts":771415},{"cat":"v8","pid":25863,"tid":25913,"ts":531360220834,"ph":"X","name":"v8.callFunction","args":{},"dur":115,"tdur":114,"tts":771432},{"cat":"v8","pid":25863,"tid":25913,"ts":531360220838,"ph":"B","name":"V8.Execute","args":{},"tts":771435},{"cat":"blink","pid":25863,"tid":25913,"ts":531360220846,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":21,"tts":771443},{"cat":"v8","pid":25863,"tid":25913,"ts":531360220943,"ph":"E","name":"V8.Execute","args":{},"tts":771541},{"cat":"blink","pid":25863,"tid":25913,"ts":531360220955,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":67,"tdur":66,"tts":771552},{"cat":"blink","pid":25863,"tid":25913,"ts":531360220959,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":771557},{"cat":"blink","pid":25863,"tid":25913,"ts":531360220962,"ph":"X","name":"Document::updateStyle","args":{},"dur":41,"tdur":39,"tts":771560},{"cat":"blink","pid":25863,"tid":25913,"ts":531360221004,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":771601},{"cat":"blink","pid":25863,"tid":25913,"ts":531360221013,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":771610},{"cat":"sky","pid":25863,"tid":25913,"ts":531360221023,"ph":"X","name":"Layer::Display","args":{},"dur":1806,"tdur":1803,"tts":771621},{"cat":"sky","pid":25863,"tid":25913,"ts":531360222831,"ph":"X","name":"LayerHost::Upload","args":{},"dur":342,"tdur":173,"tts":773428},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360223201,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":88,"tdur":86,"tts":773631},{"cat":"blink","pid":25863,"tid":25913,"ts":531360223212,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":65,"tts":773642},{"cat":"v8","pid":25863,"tid":25913,"ts":531360223218,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":57,"tts":773647},{"cat":"v8","pid":25863,"tid":25913,"ts":531360223224,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":773654},{"cat":"v8","pid":25863,"tid":25913,"ts":531360223228,"ph":"B","name":"V8.Execute","args":{},"tts":773658},{"cat":"blink","pid":25863,"tid":25913,"ts":531360223246,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":773676},{"cat":"blink","pid":25863,"tid":25913,"ts":531360223260,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":773690},{"cat":"v8","pid":25863,"tid":25913,"ts":531360223269,"ph":"E","name":"V8.Execute","args":{},"tts":773699},{"cat":"sky","pid":25863,"tid":25913,"ts":531360224063,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":3223,"tdur":3062,"tts":774112},{"cat":"blink","pid":25863,"tid":25913,"ts":531360224073,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":1004,"tdur":1003,"tts":774120},{"cat":"blink","pid":25863,"tid":25913,"ts":531360224079,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":774126},{"cat":"blink","pid":25863,"tid":25913,"ts":531360224086,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":101,"tdur":100,"tts":774133},{"cat":"blink","pid":25863,"tid":25913,"ts":531360224102,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":84,"tdur":83,"tts":774149},{"cat":"v8","pid":25863,"tid":25913,"ts":531360224130,"ph":"X","name":"v8.callFunction","args":{},"dur":48,"tdur":46,"tts":774177},{"cat":"v8","pid":25863,"tid":25913,"ts":531360224135,"ph":"B","name":"V8.Execute","args":{},"tts":774182},{"cat":"v8","pid":25863,"tid":25913,"ts":531360224172,"ph":"E","name":"V8.Execute","args":{},"tts":774219},{"cat":"v8","pid":25863,"tid":25913,"ts":531360224192,"ph":"X","name":"v8.callFunction","args":{},"dur":879,"tdur":876,"tts":774239},{"cat":"v8","pid":25863,"tid":25913,"ts":531360224196,"ph":"B","name":"V8.Execute","args":{},"tts":774242},{"cat":"blink","pid":25863,"tid":25913,"ts":531360224204,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":20,"tts":774251},{"cat":"v8","pid":25863,"tid":25913,"ts":531360224453,"ph":"E","name":"V8.Execute","args":{},"tts":774501},{"cat":"blink","pid":25863,"tid":25913,"ts":531360225079,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":70,"tdur":69,"tts":775126},{"cat":"blink","pid":25863,"tid":25913,"ts":531360225086,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":775133},{"cat":"blink","pid":25863,"tid":25913,"ts":531360225089,"ph":"X","name":"Document::updateStyle","args":{},"dur":41,"tdur":39,"tts":775136},{"cat":"blink","pid":25863,"tid":25913,"ts":531360225131,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":775178},{"cat":"blink","pid":25863,"tid":25913,"ts":531360225140,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":775187},{"cat":"sky","pid":25863,"tid":25913,"ts":531360225151,"ph":"X","name":"Layer::Display","args":{},"dur":1793,"tdur":1791,"tts":775198},{"cat":"sky","pid":25863,"tid":25913,"ts":531360226946,"ph":"X","name":"LayerHost::Upload","args":{},"dur":338,"tdur":178,"tts":776993},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360227312,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":99,"tdur":97,"tts":777202},{"cat":"blink","pid":25863,"tid":25913,"ts":531360227323,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":78,"tdur":77,"tts":777212},{"cat":"v8","pid":25863,"tid":25913,"ts":531360227329,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":69,"tdur":68,"tts":777218},{"cat":"v8","pid":25863,"tid":25913,"ts":531360227335,"ph":"X","name":"v8.callFunction","args":{},"dur":60,"tdur":60,"tts":777224},{"cat":"v8","pid":25863,"tid":25913,"ts":531360227339,"ph":"B","name":"V8.Execute","args":{},"tts":777228},{"cat":"blink","pid":25863,"tid":25913,"ts":531360227367,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":22,"tdur":20,"tts":777257},{"cat":"blink","pid":25863,"tid":25913,"ts":531360227382,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":777271},{"cat":"v8","pid":25863,"tid":25913,"ts":531360227391,"ph":"E","name":"V8.Execute","args":{},"tts":777280},{"cat":"sky","pid":25863,"tid":25913,"ts":531360228151,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":3074,"tdur":2953,"tts":777662},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228160,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":267,"tdur":266,"tts":777669},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228167,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":777676},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228174,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":99,"tdur":99,"tts":777683},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228190,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":82,"tdur":81,"tts":777699},{"cat":"v8","pid":25863,"tid":25913,"ts":531360228242,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":777751},{"cat":"v8","pid":25863,"tid":25913,"ts":531360228246,"ph":"B","name":"V8.Execute","args":{},"tts":777755},{"cat":"v8","pid":25863,"tid":25913,"ts":531360228261,"ph":"E","name":"V8.Execute","args":{},"tts":777770},{"cat":"v8","pid":25863,"tid":25913,"ts":531360228278,"ph":"X","name":"v8.callFunction","args":{},"dur":144,"tdur":144,"tts":777787},{"cat":"v8","pid":25863,"tid":25913,"ts":531360228282,"ph":"B","name":"V8.Execute","args":{},"tts":777791},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228290,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":21,"tts":777799},{"cat":"v8","pid":25863,"tid":25913,"ts":531360228415,"ph":"E","name":"V8.Execute","args":{},"tts":777926},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228428,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":725,"tdur":724,"tts":777938},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228433,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":777942},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228436,"ph":"X","name":"Document::updateStyle","args":{},"dur":147,"tdur":145,"tts":777945},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228584,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":778093},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228589,"ph":"X","name":"FrameView::layout","args":{},"dur":73,"tdur":72,"tts":778098},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228592,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":5,"tdur":4,"tts":778101},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228598,"ph":"X","name":"FrameView::performLayout","args":{},"dur":40,"tdur":39,"tts":778107},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228639,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":5,"tdur":4,"tts":778148},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228644,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":15,"tdur":13,"tts":778154},{"cat":"blink","pid":25863,"tid":25913,"ts":531360228669,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":482,"tdur":481,"tts":778178},{"cat":"sky","pid":25863,"tid":25913,"ts":531360229155,"ph":"X","name":"Layer::Display","args":{},"dur":1774,"tdur":1772,"tts":778664},{"cat":"sky","pid":25863,"tid":25913,"ts":531360230931,"ph":"X","name":"LayerHost::Upload","args":{},"dur":292,"tdur":171,"tts":780441},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360231251,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":87,"tdur":86,"tts":780642},{"cat":"blink","pid":25863,"tid":25913,"ts":531360231262,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":65,"tts":780653},{"cat":"v8","pid":25863,"tid":25913,"ts":531360231267,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":57,"tts":780659},{"cat":"v8","pid":25863,"tid":25913,"ts":531360231274,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":780665},{"cat":"v8","pid":25863,"tid":25913,"ts":531360231278,"ph":"B","name":"V8.Execute","args":{},"tts":780669},{"cat":"blink","pid":25863,"tid":25913,"ts":531360231296,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":780687},{"cat":"blink","pid":25863,"tid":25913,"ts":531360231309,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":7,"tdur":5,"tts":780701},{"cat":"v8","pid":25863,"tid":25913,"ts":531360231319,"ph":"E","name":"V8.Execute","args":{},"tts":780710},{"cat":"sky","pid":25863,"tid":25913,"ts":531360232037,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2274,"tdur":2146,"tts":781078},{"cat":"blink","pid":25863,"tid":25913,"ts":531360232046,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":213,"tdur":213,"tts":781085},{"cat":"blink","pid":25863,"tid":25913,"ts":531360232053,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":781092},{"cat":"blink","pid":25863,"tid":25913,"ts":531360232060,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":75,"tdur":75,"tts":781099},{"cat":"blink","pid":25863,"tid":25913,"ts":531360232076,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":58,"tdur":58,"tts":781115},{"cat":"v8","pid":25863,"tid":25913,"ts":531360232104,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":781144},{"cat":"v8","pid":25863,"tid":25913,"ts":531360232108,"ph":"B","name":"V8.Execute","args":{},"tts":781148},{"cat":"v8","pid":25863,"tid":25913,"ts":531360232123,"ph":"E","name":"V8.Execute","args":{},"tts":781162},{"cat":"v8","pid":25863,"tid":25913,"ts":531360232140,"ph":"X","name":"v8.callFunction","args":{},"dur":115,"tdur":114,"tts":781179},{"cat":"v8","pid":25863,"tid":25913,"ts":531360232143,"ph":"B","name":"V8.Execute","args":{},"tts":781183},{"cat":"blink","pid":25863,"tid":25913,"ts":531360232152,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":21,"tts":781191},{"cat":"v8","pid":25863,"tid":25913,"ts":531360232248,"ph":"E","name":"V8.Execute","args":{},"tts":781288},{"cat":"blink","pid":25863,"tid":25913,"ts":531360232260,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":781300},{"cat":"blink","pid":25863,"tid":25913,"ts":531360232265,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":781304},{"cat":"blink","pid":25863,"tid":25913,"ts":531360232268,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":38,"tts":781307},{"cat":"blink","pid":25863,"tid":25913,"ts":531360232308,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":781347},{"cat":"blink","pid":25863,"tid":25913,"ts":531360232317,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":781356},{"cat":"sky","pid":25863,"tid":25913,"ts":531360232328,"ph":"X","name":"Layer::Display","args":{},"dur":1738,"tdur":1737,"tts":781367},{"cat":"sky","pid":25863,"tid":25913,"ts":531360234067,"ph":"X","name":"LayerHost::Upload","args":{},"dur":243,"tdur":116,"tts":783106},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360234335,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":80,"tdur":79,"tts":783249},{"cat":"blink","pid":25863,"tid":25913,"ts":531360234344,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":61,"tdur":61,"tts":783257},{"cat":"v8","pid":25863,"tid":25913,"ts":531360234349,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":54,"tdur":53,"tts":783263},{"cat":"v8","pid":25863,"tid":25913,"ts":531360234355,"ph":"X","name":"v8.callFunction","args":{},"dur":46,"tdur":46,"tts":783268},{"cat":"v8","pid":25863,"tid":25913,"ts":531360234358,"ph":"B","name":"V8.Execute","args":{},"tts":783272},{"cat":"blink","pid":25863,"tid":25913,"ts":531360234375,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":783289},{"cat":"blink","pid":25863,"tid":25913,"ts":531360234388,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":783302},{"cat":"v8","pid":25863,"tid":25913,"ts":531360234397,"ph":"E","name":"V8.Execute","args":{},"tts":783311},{"cat":"sky","pid":25863,"tid":25913,"ts":531360287659,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":4388,"tdur":4151,"tts":783672},{"cat":"blink","pid":25863,"tid":25913,"ts":531360287685,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":1029,"tdur":1013,"tts":783692},{"cat":"blink","pid":25863,"tid":25913,"ts":531360287710,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":6,"tdur":5,"tts":783717},{"cat":"blink","pid":25863,"tid":25913,"ts":531360287733,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":188,"tdur":187,"tts":783740},{"cat":"blink","pid":25863,"tid":25913,"ts":531360287772,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":148,"tdur":147,"tts":783779},{"cat":"v8","pid":25863,"tid":25913,"ts":531360287827,"ph":"X","name":"v8.callFunction","args":{},"dur":85,"tdur":84,"tts":783834},{"cat":"v8","pid":25863,"tid":25913,"ts":531360287829,"ph":"B","name":"V8.Execute","args":{},"tts":783836},{"cat":"v8","pid":25863,"tid":25913,"ts":531360287907,"ph":"E","name":"V8.Execute","args":{},"tts":783914},{"cat":"v8","pid":25863,"tid":25913,"ts":531360287928,"ph":"X","name":"v8.callFunction","args":{},"dur":782,"tdur":765,"tts":783935},{"cat":"v8","pid":25863,"tid":25913,"ts":531360287931,"ph":"B","name":"V8.Execute","args":{},"tts":783938},{"cat":"blink","pid":25863,"tid":25913,"ts":531360287968,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":85,"tdur":68,"tts":783975},{"cat":"v8","pid":25863,"tid":25913,"ts":531360288536,"ph":"E","name":"V8.Execute","args":{},"tts":784528},{"cat":"blink","pid":25863,"tid":25913,"ts":531360288715,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":955,"tdur":954,"tts":784706},{"cat":"blink","pid":25863,"tid":25913,"ts":531360288718,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":784709},{"cat":"blink","pid":25863,"tid":25913,"ts":531360288720,"ph":"X","name":"Document::updateStyle","args":{},"dur":175,"tdur":173,"tts":784711},{"cat":"blink","pid":25863,"tid":25913,"ts":531360288897,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":4},"tts":784888},{"cat":"blink","pid":25863,"tid":25913,"ts":531360288902,"ph":"X","name":"FrameView::layout","args":{},"dur":212,"tdur":212,"tts":784893},{"cat":"blink","pid":25863,"tid":25913,"ts":531360288905,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":4,"tdur":3,"tts":784896},{"cat":"blink","pid":25863,"tid":25913,"ts":531360288910,"ph":"X","name":"FrameView::performLayout","args":{},"dur":183,"tdur":181,"tts":784901},{"cat":"blink","pid":25863,"tid":25913,"ts":531360289094,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":6,"tdur":5,"tts":785086},{"cat":"blink","pid":25863,"tid":25913,"ts":531360289101,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":11,"tdur":10,"tts":785092},{"cat":"blink","pid":25863,"tid":25913,"ts":531360289121,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":547,"tdur":546,"tts":785112},{"cat":"sky","pid":25863,"tid":25913,"ts":531360289675,"ph":"X","name":"Layer::Display","args":{},"dur":1970,"tdur":1947,"tts":785666},{"cat":"sky","pid":25863,"tid":25913,"ts":531360291647,"ph":"X","name":"LayerHost::Upload","args":{},"dur":398,"tdur":202,"tts":787618},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360292090,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":62,"tdur":61,"tts":787867},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292114,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":33,"tdur":32,"tts":787891},{"cat":"v8","pid":25863,"tid":25913,"ts":531360292117,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":29,"tdur":28,"tts":787894},{"cat":"v8","pid":25863,"tid":25913,"ts":531360292120,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":25,"tts":787896},{"cat":"v8","pid":25863,"tid":25913,"ts":531360292121,"ph":"B","name":"V8.Execute","args":{},"tts":787898},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292132,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":787909},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292138,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":787915},{"cat":"v8","pid":25863,"tid":25913,"ts":531360292143,"ph":"E","name":"V8.Execute","args":{},"tts":787919},{"cat":"sky","pid":25863,"tid":25913,"ts":531360292560,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1097,"tdur":996,"tts":788125},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292564,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":91,"tdur":91,"tts":788128},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292567,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":788131},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292570,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":32,"tdur":32,"tts":788134},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292577,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":24,"tts":788141},{"cat":"v8","pid":25863,"tid":25913,"ts":531360292589,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":788153},{"cat":"v8","pid":25863,"tid":25913,"ts":531360292590,"ph":"B","name":"V8.Execute","args":{},"tts":788155},{"cat":"v8","pid":25863,"tid":25913,"ts":531360292597,"ph":"E","name":"V8.Execute","args":{},"tts":788161},{"cat":"v8","pid":25863,"tid":25913,"ts":531360292604,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":49,"tts":788168},{"cat":"v8","pid":25863,"tid":25913,"ts":531360292605,"ph":"B","name":"V8.Execute","args":{},"tts":788169},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292609,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":788173},{"cat":"v8","pid":25863,"tid":25913,"ts":531360292651,"ph":"E","name":"V8.Execute","args":{},"tts":788215},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292656,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":28,"tts":788220},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292658,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":788222},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292659,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":788223},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292676,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":788240},{"cat":"blink","pid":25863,"tid":25913,"ts":531360292680,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":788244},{"cat":"sky","pid":25863,"tid":25913,"ts":531360292685,"ph":"X","name":"Layer::Display","args":{},"dur":762,"tdur":761,"tts":788249},{"cat":"sky","pid":25863,"tid":25913,"ts":531360293448,"ph":"X","name":"LayerHost::Upload","args":{},"dur":208,"tdur":107,"tts":789012},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360293668,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":38,"tdur":37,"tts":789132},{"cat":"blink","pid":25863,"tid":25913,"ts":531360293673,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":28,"tdur":28,"tts":789137},{"cat":"v8","pid":25863,"tid":25913,"ts":531360293675,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":25,"tts":789139},{"cat":"v8","pid":25863,"tid":25913,"ts":531360293678,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":789142},{"cat":"v8","pid":25863,"tid":25913,"ts":531360293680,"ph":"B","name":"V8.Execute","args":{},"tts":789143},{"cat":"blink","pid":25863,"tid":25913,"ts":531360293688,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":789151},{"cat":"blink","pid":25863,"tid":25913,"ts":531360293693,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":789157},{"cat":"v8","pid":25863,"tid":25913,"ts":531360293697,"ph":"E","name":"V8.Execute","args":{},"tts":789161},{"cat":"sky","pid":25863,"tid":25913,"ts":531360294082,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1036,"tdur":1004,"tts":789368},{"cat":"blink","pid":25863,"tid":25913,"ts":531360294086,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":91,"tdur":91,"tts":789371},{"cat":"blink","pid":25863,"tid":25913,"ts":531360294089,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":789374},{"cat":"blink","pid":25863,"tid":25913,"ts":531360294092,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":32,"tdur":32,"tts":789377},{"cat":"blink","pid":25863,"tid":25913,"ts":531360294098,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":26,"tdur":25,"tts":789383},{"cat":"v8","pid":25863,"tid":25913,"ts":531360294111,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":9,"tts":789396},{"cat":"v8","pid":25863,"tid":25913,"ts":531360294112,"ph":"B","name":"V8.Execute","args":{},"tts":789397},{"cat":"v8","pid":25863,"tid":25913,"ts":531360294119,"ph":"E","name":"V8.Execute","args":{},"tts":789404},{"cat":"v8","pid":25863,"tid":25913,"ts":531360294126,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":49,"tts":789411},{"cat":"v8","pid":25863,"tid":25913,"ts":531360294127,"ph":"B","name":"V8.Execute","args":{},"tts":789412},{"cat":"blink","pid":25863,"tid":25913,"ts":531360294131,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":789416},{"cat":"v8","pid":25863,"tid":25913,"ts":531360294172,"ph":"E","name":"V8.Execute","args":{},"tts":789458},{"cat":"blink","pid":25863,"tid":25913,"ts":531360294177,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":41,"tdur":41,"tts":789462},{"cat":"blink","pid":25863,"tid":25913,"ts":531360294179,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":789464},{"cat":"blink","pid":25863,"tid":25913,"ts":531360294180,"ph":"X","name":"Document::updateStyle","args":{},"dur":30,"tdur":29,"tts":789465},{"cat":"blink","pid":25863,"tid":25913,"ts":531360294210,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":789495},{"cat":"blink","pid":25863,"tid":25913,"ts":531360294214,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":789499},{"cat":"sky","pid":25863,"tid":25913,"ts":531360294219,"ph":"X","name":"Layer::Display","args":{},"dur":762,"tdur":761,"tts":789504},{"cat":"sky","pid":25863,"tid":25913,"ts":531360294982,"ph":"X","name":"LayerHost::Upload","args":{},"dur":135,"tdur":104,"tts":790267},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360295189,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":38,"tdur":37,"tts":790429},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295194,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":28,"tdur":28,"tts":790434},{"cat":"v8","pid":25863,"tid":25913,"ts":531360295196,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":25,"tts":790436},{"cat":"v8","pid":25863,"tid":25913,"ts":531360295199,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":21,"tts":790439},{"cat":"v8","pid":25863,"tid":25913,"ts":531360295200,"ph":"B","name":"V8.Execute","args":{},"tts":790440},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295208,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":790448},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295214,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":790454},{"cat":"v8","pid":25863,"tid":25913,"ts":531360295219,"ph":"E","name":"V8.Execute","args":{},"tts":790459},{"cat":"sky","pid":25863,"tid":25913,"ts":531360295524,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1061,"tdur":1014,"tts":790642},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295542,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":91,"tdur":91,"tts":790659},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295544,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":790662},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295548,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":32,"tdur":32,"tts":790665},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295554,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":790671},{"cat":"v8","pid":25863,"tid":25913,"ts":531360295566,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":790684},{"cat":"v8","pid":25863,"tid":25913,"ts":531360295568,"ph":"B","name":"V8.Execute","args":{},"tts":790685},{"cat":"v8","pid":25863,"tid":25913,"ts":531360295574,"ph":"E","name":"V8.Execute","args":{},"tts":790692},{"cat":"v8","pid":25863,"tid":25913,"ts":531360295582,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":49,"tts":790699},{"cat":"v8","pid":25863,"tid":25913,"ts":531360295583,"ph":"B","name":"V8.Execute","args":{},"tts":790700},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295587,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":790704},{"cat":"v8","pid":25863,"tid":25913,"ts":531360295628,"ph":"E","name":"V8.Execute","args":{},"tts":790745},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295633,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":28,"tts":790750},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295635,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":790752},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295636,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":17,"tts":790753},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295654,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":790771},{"cat":"blink","pid":25863,"tid":25913,"ts":531360295657,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":790775},{"cat":"sky","pid":25863,"tid":25913,"ts":531360295662,"ph":"X","name":"Layer::Display","args":{},"dur":767,"tdur":766,"tts":790779},{"cat":"sky","pid":25863,"tid":25913,"ts":531360296430,"ph":"X","name":"LayerHost::Upload","args":{},"dur":155,"tdur":108,"tts":791547},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360296659,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":38,"tdur":37,"tts":791712},{"cat":"blink","pid":25863,"tid":25913,"ts":531360296664,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":29,"tts":791716},{"cat":"v8","pid":25863,"tid":25913,"ts":531360296666,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":24,"tts":791719},{"cat":"v8","pid":25863,"tid":25913,"ts":531360296669,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":21,"tts":791721},{"cat":"v8","pid":25863,"tid":25913,"ts":531360296671,"ph":"B","name":"V8.Execute","args":{},"tts":791723},{"cat":"blink","pid":25863,"tid":25913,"ts":531360296678,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":791731},{"cat":"blink","pid":25863,"tid":25913,"ts":531360296685,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":791737},{"cat":"v8","pid":25863,"tid":25913,"ts":531360296689,"ph":"E","name":"V8.Execute","args":{},"tts":791741},{"cat":"sky","pid":25863,"tid":25913,"ts":531360353767,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1009,"tdur":991,"tts":791906},{"cat":"blink","pid":25863,"tid":25913,"ts":531360353772,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":129,"tdur":129,"tts":791910},{"cat":"blink","pid":25863,"tid":25913,"ts":531360353775,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":791913},{"cat":"blink","pid":25863,"tid":25913,"ts":531360353779,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":50,"tdur":50,"tts":791917},{"cat":"blink","pid":25863,"tid":25913,"ts":531360353787,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":41,"tdur":41,"tts":791925},{"cat":"v8","pid":25863,"tid":25913,"ts":531360353802,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":23,"tts":791940},{"cat":"v8","pid":25863,"tid":25913,"ts":531360353804,"ph":"B","name":"V8.Execute","args":{},"tts":791942},{"cat":"v8","pid":25863,"tid":25913,"ts":531360353823,"ph":"E","name":"V8.Execute","args":{},"tts":791961},{"cat":"v8","pid":25863,"tid":25913,"ts":531360353831,"ph":"X","name":"v8.callFunction","args":{},"dur":68,"tdur":68,"tts":791969},{"cat":"v8","pid":25863,"tid":25913,"ts":531360353832,"ph":"B","name":"V8.Execute","args":{},"tts":791970},{"cat":"blink","pid":25863,"tid":25913,"ts":531360353836,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":791974},{"cat":"v8","pid":25863,"tid":25913,"ts":531360353896,"ph":"E","name":"V8.Execute","args":{},"tts":792035},{"cat":"blink","pid":25863,"tid":25913,"ts":531360353902,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":28,"tts":792040},{"cat":"blink","pid":25863,"tid":25913,"ts":531360353904,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":792042},{"cat":"blink","pid":25863,"tid":25913,"ts":531360353905,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":17,"tts":792043},{"cat":"blink","pid":25863,"tid":25913,"ts":531360353923,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":792061},{"cat":"blink","pid":25863,"tid":25913,"ts":531360353927,"ph":"X","name":"FrameView::invalidateTree","args":{"root":"�!أ&+"},"dur":3,"tdur":3,"tts":792065},{"cat":"sky","pid":25863,"tid":25913,"ts":531360353931,"ph":"X","name":"Layer::Display","args":{},"dur":770,"tdur":769,"tts":792069},{"cat":"sky","pid":25863,"tid":25913,"ts":531360354702,"ph":"X","name":"LayerHost::Upload","args":{},"dur":73,"tdur":56,"tts":792840},{"cat":"sky","pid":25863,"tid":25913,"ts":531360355278,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1159,"tdur":1066,"tts":793190},{"cat":"blink","pid":25863,"tid":25913,"ts":531360355282,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":94,"tdur":94,"tts":793193},{"cat":"blink","pid":25863,"tid":25913,"ts":531360355284,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":793196},{"cat":"blink","pid":25863,"tid":25913,"ts":531360355287,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":41,"tdur":40,"tts":793199},{"cat":"blink","pid":25863,"tid":25913,"ts":531360355294,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":33,"tdur":33,"tts":793205},{"cat":"v8","pid":25863,"tid":25913,"ts":531360355306,"ph":"X","name":"v8.callFunction","args":{},"dur":18,"tdur":18,"tts":793217},{"cat":"v8","pid":25863,"tid":25913,"ts":531360355315,"ph":"B","name":"V8.Execute","args":{},"tts":793227},{"cat":"v8","pid":25863,"tid":25913,"ts":531360355322,"ph":"E","name":"V8.Execute","args":{},"tts":793233},{"cat":"v8","pid":25863,"tid":25913,"ts":531360355330,"ph":"X","name":"v8.callFunction","args":{},"dur":44,"tdur":44,"tts":793241},{"cat":"v8","pid":25863,"tid":25913,"ts":531360355331,"ph":"B","name":"V8.Execute","args":{},"tts":793243},{"cat":"blink","pid":25863,"tid":25913,"ts":531360355335,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":793246},{"cat":"v8","pid":25863,"tid":25913,"ts":531360355371,"ph":"E","name":"V8.Execute","args":{},"tts":793283},{"cat":"blink","pid":25863,"tid":25913,"ts":531360355376,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":28,"tts":793288},{"cat":"blink","pid":25863,"tid":25913,"ts":531360355378,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":793290},{"cat":"blink","pid":25863,"tid":25913,"ts":531360355380,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":793291},{"cat":"blink","pid":25863,"tid":25913,"ts":531360355397,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":793308},{"cat":"blink","pid":25863,"tid":25913,"ts":531360355401,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":793312},{"cat":"sky","pid":25863,"tid":25913,"ts":531360355405,"ph":"X","name":"Layer::Display","args":{},"dur":847,"tdur":834,"tts":793317},{"cat":"sky","pid":25863,"tid":25913,"ts":531360356253,"ph":"X","name":"LayerHost::Upload","args":{},"dur":183,"tdur":100,"tts":794154},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360356452,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":65,"tdur":64,"tts":794272},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356458,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":34,"tdur":34,"tts":794277},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356461,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":30,"tdur":30,"tts":794280},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356464,"ph":"X","name":"v8.callFunction","args":{},"dur":26,"tdur":24,"tts":794284},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356466,"ph":"B","name":"V8.Execute","args":{},"tts":794286},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356476,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":794295},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356483,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":794302},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356488,"ph":"E","name":"V8.Execute","args":{},"tts":794307},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356493,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":19,"tdur":19,"tts":794312},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356495,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":16,"tdur":16,"tts":794314},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356497,"ph":"X","name":"v8.callFunction","args":{},"dur":13,"tdur":13,"tts":794316},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356498,"ph":"B","name":"V8.Execute","args":{},"tts":794318},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356502,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":6,"tdur":6,"tts":794321},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356505,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":794324},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356508,"ph":"E","name":"V8.Execute","args":{},"tts":794328},{"cat":"sky","pid":25863,"tid":25913,"ts":531360356905,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1268,"tdur":1197,"tts":794531},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356910,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":110,"tdur":110,"tts":794535},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356913,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":794539},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356917,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":39,"tdur":39,"tts":794542},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356925,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":30,"tdur":30,"tts":794550},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356939,"ph":"X","name":"v8.callFunction","args":{},"dur":13,"tdur":12,"tts":794565},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356942,"ph":"B","name":"V8.Execute","args":{},"tts":794567},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356949,"ph":"E","name":"V8.Execute","args":{},"tts":794575},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356958,"ph":"X","name":"v8.callFunction","args":{},"dur":60,"tdur":59,"tts":794584},{"cat":"v8","pid":25863,"tid":25913,"ts":531360356960,"ph":"B","name":"V8.Execute","args":{},"tts":794585},{"cat":"blink","pid":25863,"tid":25913,"ts":531360356964,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":794590},{"cat":"v8","pid":25863,"tid":25913,"ts":531360357014,"ph":"E","name":"V8.Execute","args":{},"tts":794640},{"cat":"blink","pid":25863,"tid":25913,"ts":531360357021,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":34,"tdur":34,"tts":794646},{"cat":"blink","pid":25863,"tid":25913,"ts":531360357023,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":794648},{"cat":"blink","pid":25863,"tid":25913,"ts":531360357025,"ph":"X","name":"Document::updateStyle","args":{},"dur":20,"tdur":20,"tts":794650},{"cat":"blink","pid":25863,"tid":25913,"ts":531360357046,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":794671},{"cat":"blink","pid":25863,"tid":25913,"ts":531360357050,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":4,"tts":794676},{"cat":"sky","pid":25863,"tid":25913,"ts":531360357056,"ph":"X","name":"Layer::Display","args":{},"dur":939,"tdur":939,"tts":794681},{"cat":"sky","pid":25863,"tid":25913,"ts":531360357996,"ph":"X","name":"LayerHost::Upload","args":{},"dur":176,"tdur":105,"tts":795622},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360358187,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":45,"tdur":45,"tts":795742},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358192,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":35,"tdur":33,"tts":795748},{"cat":"v8","pid":25863,"tid":25913,"ts":531360358195,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":30,"tdur":30,"tts":795750},{"cat":"v8","pid":25863,"tid":25913,"ts":531360358199,"ph":"X","name":"v8.callFunction","args":{},"dur":25,"tdur":24,"tts":795754},{"cat":"v8","pid":25863,"tid":25913,"ts":531360358201,"ph":"B","name":"V8.Execute","args":{},"tts":795756},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358210,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":11,"tdur":10,"tts":795765},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358217,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":795772},{"cat":"v8","pid":25863,"tid":25913,"ts":531360358222,"ph":"E","name":"V8.Execute","args":{},"tts":795777},{"cat":"sky","pid":25863,"tid":25913,"ts":531360358568,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1200,"tdur":1181,"tts":795954},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358572,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":124,"tdur":123,"tts":795958},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358576,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":795961},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358579,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":39,"tdur":38,"tts":795965},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358587,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":30,"tdur":29,"tts":795973},{"cat":"v8","pid":25863,"tid":25913,"ts":531360358602,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":12,"tts":795987},{"cat":"v8","pid":25863,"tid":25913,"ts":531360358604,"ph":"B","name":"V8.Execute","args":{},"tts":795989},{"cat":"v8","pid":25863,"tid":25913,"ts":531360358611,"ph":"E","name":"V8.Execute","args":{},"tts":795997},{"cat":"v8","pid":25863,"tid":25913,"ts":531360358620,"ph":"X","name":"v8.callFunction","args":{},"dur":73,"tdur":73,"tts":796005},{"cat":"v8","pid":25863,"tid":25913,"ts":531360358634,"ph":"B","name":"V8.Execute","args":{},"tts":796020},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358639,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":11,"tts":796024},{"cat":"v8","pid":25863,"tid":25913,"ts":531360358690,"ph":"E","name":"V8.Execute","args":{},"tts":796076},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358697,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":34,"tdur":34,"tts":796082},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358699,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":796084},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358700,"ph":"X","name":"Document::updateStyle","args":{},"dur":21,"tdur":20,"tts":796086},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358722,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":796107},{"cat":"blink","pid":25863,"tid":25913,"ts":531360358726,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":5,"tdur":4,"tts":796112},{"cat":"sky","pid":25863,"tid":25913,"ts":531360358732,"ph":"X","name":"Layer::Display","args":{},"dur":951,"tdur":950,"tts":796118},{"cat":"sky","pid":25863,"tid":25913,"ts":531360359684,"ph":"X","name":"LayerHost::Upload","args":{},"dur":84,"tdur":64,"tts":797070},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360359781,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":43,"tdur":42,"tts":797148},{"cat":"blink","pid":25863,"tid":25913,"ts":531360359786,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":33,"tdur":32,"tts":797153},{"cat":"v8","pid":25863,"tid":25913,"ts":531360359789,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":28,"tts":797156},{"cat":"v8","pid":25863,"tid":25913,"ts":531360359792,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":23,"tts":797159},{"cat":"v8","pid":25863,"tid":25913,"ts":531360359794,"ph":"B","name":"V8.Execute","args":{},"tts":797161},{"cat":"blink","pid":25863,"tid":25913,"ts":531360359803,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":797170},{"cat":"blink","pid":25863,"tid":25913,"ts":531360359809,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":3,"tts":797176},{"cat":"v8","pid":25863,"tid":25913,"ts":531360359814,"ph":"E","name":"V8.Execute","args":{},"tts":797181},{"cat":"sky","pid":25863,"tid":25913,"ts":531360420578,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2164,"tdur":1998,"tts":797333},{"cat":"blink","pid":25863,"tid":25913,"ts":531360420583,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":211,"tdur":211,"tts":797337},{"cat":"blink","pid":25863,"tid":25913,"ts":531360420586,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":797340},{"cat":"blink","pid":25863,"tid":25913,"ts":531360420589,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":83,"tdur":83,"tts":797343},{"cat":"blink","pid":25863,"tid":25913,"ts":531360420612,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":797366},{"cat":"v8","pid":25863,"tid":25913,"ts":531360420641,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":797395},{"cat":"v8","pid":25863,"tid":25913,"ts":531360420645,"ph":"B","name":"V8.Execute","args":{},"tts":797399},{"cat":"v8","pid":25863,"tid":25913,"ts":531360420660,"ph":"E","name":"V8.Execute","args":{},"tts":797414},{"cat":"v8","pid":25863,"tid":25913,"ts":531360420677,"ph":"X","name":"v8.callFunction","args":{},"dur":115,"tdur":114,"tts":797431},{"cat":"v8","pid":25863,"tid":25913,"ts":531360420680,"ph":"B","name":"V8.Execute","args":{},"tts":797434},{"cat":"blink","pid":25863,"tid":25913,"ts":531360420689,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":797443},{"cat":"v8","pid":25863,"tid":25913,"ts":531360420789,"ph":"E","name":"V8.Execute","args":{},"tts":797543},{"cat":"blink","pid":25863,"tid":25913,"ts":531360420795,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":32,"tts":797548},{"cat":"blink","pid":25863,"tid":25913,"ts":531360420797,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":797551},{"cat":"blink","pid":25863,"tid":25913,"ts":531360420798,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":19,"tts":797552},{"cat":"blink","pid":25863,"tid":25913,"ts":531360420818,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":797572},{"cat":"blink","pid":25863,"tid":25913,"ts":531360420822,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":797576},{"cat":"sky","pid":25863,"tid":25913,"ts":531360420827,"ph":"X","name":"Layer::Display","args":{},"dur":1574,"tdur":1572,"tts":797581},{"cat":"sky","pid":25863,"tid":25913,"ts":531360422404,"ph":"X","name":"LayerHost::Upload","args":{},"dur":336,"tdur":171,"tts":799158},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360422768,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":62,"tdur":61,"tts":799359},{"cat":"blink","pid":25863,"tid":25913,"ts":531360422779,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":46,"tdur":46,"tts":799369},{"cat":"v8","pid":25863,"tid":25913,"ts":531360422796,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":27,"tts":799386},{"cat":"v8","pid":25863,"tid":25913,"ts":531360422799,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":23,"tts":799389},{"cat":"v8","pid":25863,"tid":25913,"ts":531360422801,"ph":"B","name":"V8.Execute","args":{},"tts":799391},{"cat":"blink","pid":25863,"tid":25913,"ts":531360422810,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":799400},{"cat":"blink","pid":25863,"tid":25913,"ts":531360422816,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":799406},{"cat":"v8","pid":25863,"tid":25913,"ts":531360422821,"ph":"E","name":"V8.Execute","args":{},"tts":799411},{"cat":"sky","pid":25863,"tid":25913,"ts":531360423273,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1756,"tdur":1655,"tts":799602},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423277,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":244,"tdur":243,"tts":799606},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423280,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":799609},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423284,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":42,"tdur":42,"tts":799612},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423297,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":28,"tdur":28,"tts":799625},{"cat":"v8","pid":25863,"tid":25913,"ts":531360423311,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":799639},{"cat":"v8","pid":25863,"tid":25913,"ts":531360423313,"ph":"B","name":"V8.Execute","args":{},"tts":799641},{"cat":"v8","pid":25863,"tid":25913,"ts":531360423320,"ph":"E","name":"V8.Execute","args":{},"tts":799648},{"cat":"v8","pid":25863,"tid":25913,"ts":531360423328,"ph":"X","name":"v8.callFunction","args":{},"dur":190,"tdur":189,"tts":799656},{"cat":"v8","pid":25863,"tid":25913,"ts":531360423329,"ph":"B","name":"V8.Execute","args":{},"tts":799658},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423333,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":799662},{"cat":"v8","pid":25863,"tid":25913,"ts":531360423449,"ph":"E","name":"V8.Execute","args":{},"tts":799778},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423522,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":433,"tdur":433,"tts":799850},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423525,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":799853},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423526,"ph":"X","name":"Document::updateStyle","args":{},"dur":67,"tdur":65,"tts":799855},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423594,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":6},"tts":799922},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423596,"ph":"X","name":"FrameView::layout","args":{},"dur":123,"tdur":122,"tts":799925},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423598,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":1,"tdur":1,"tts":799926},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423600,"ph":"X","name":"FrameView::performLayout","args":{},"dur":109,"tdur":109,"tts":799928},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423710,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":3,"tdur":2,"tts":800039},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423714,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":4,"tdur":4,"tts":800042},{"cat":"blink","pid":25863,"tid":25913,"ts":531360423723,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":231,"tdur":231,"tts":800051},{"cat":"sky","pid":25863,"tid":25913,"ts":531360423956,"ph":"X","name":"Layer::Display","args":{},"dur":885,"tdur":877,"tts":800284},{"cat":"sky","pid":25863,"tid":25913,"ts":531360424842,"ph":"X","name":"LayerHost::Upload","args":{},"dur":186,"tdur":92,"tts":801163},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360425045,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":42,"tdur":41,"tts":801273},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425050,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":32,"tts":801278},{"cat":"v8","pid":25863,"tid":25913,"ts":531360425053,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":27,"tts":801281},{"cat":"v8","pid":25863,"tid":25913,"ts":531360425056,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":23,"tts":801284},{"cat":"v8","pid":25863,"tid":25913,"ts":531360425058,"ph":"B","name":"V8.Execute","args":{},"tts":801286},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425066,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":11,"tdur":10,"tts":801294},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425073,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":801301},{"cat":"v8","pid":25863,"tid":25913,"ts":531360425078,"ph":"E","name":"V8.Execute","args":{},"tts":801306},{"cat":"sky","pid":25863,"tid":25913,"ts":531360425440,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1141,"tdur":1085,"tts":801502},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425444,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":102,"tdur":102,"tts":801506},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425448,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":801510},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425451,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":36,"tdur":36,"tts":801513},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425458,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":28,"tdur":28,"tts":801520},{"cat":"v8","pid":25863,"tid":25913,"ts":531360425472,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":801534},{"cat":"v8","pid":25863,"tid":25913,"ts":531360425474,"ph":"B","name":"V8.Execute","args":{},"tts":801536},{"cat":"v8","pid":25863,"tid":25913,"ts":531360425481,"ph":"E","name":"V8.Execute","args":{},"tts":801543},{"cat":"v8","pid":25863,"tid":25913,"ts":531360425489,"ph":"X","name":"v8.callFunction","args":{},"dur":55,"tdur":55,"tts":801551},{"cat":"v8","pid":25863,"tid":25913,"ts":531360425491,"ph":"B","name":"V8.Execute","args":{},"tts":801553},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425495,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":801557},{"cat":"v8","pid":25863,"tid":25913,"ts":531360425541,"ph":"E","name":"V8.Execute","args":{},"tts":801603},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425547,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":31,"tdur":31,"tts":801609},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425549,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":801611},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425550,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":19,"tts":801612},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425570,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":801632},{"cat":"blink","pid":25863,"tid":25913,"ts":531360425574,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":801636},{"cat":"sky","pid":25863,"tid":25913,"ts":531360425579,"ph":"X","name":"Layer::Display","args":{},"dur":852,"tdur":851,"tts":801641},{"cat":"sky","pid":25863,"tid":25913,"ts":531360426432,"ph":"X","name":"LayerHost::Upload","args":{},"dur":148,"tdur":92,"tts":802494},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360426594,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":41,"tdur":40,"tts":802600},{"cat":"blink","pid":25863,"tid":25913,"ts":531360426599,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":31,"tdur":31,"tts":802605},{"cat":"v8","pid":25863,"tid":25913,"ts":531360426602,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":27,"tts":802607},{"cat":"v8","pid":25863,"tid":25913,"ts":531360426604,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":23,"tts":802610},{"cat":"v8","pid":25863,"tid":25913,"ts":531360426606,"ph":"B","name":"V8.Execute","args":{},"tts":802612},{"cat":"blink","pid":25863,"tid":25913,"ts":531360426615,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":802621},{"cat":"blink","pid":25863,"tid":25913,"ts":531360426621,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":802627},{"cat":"v8","pid":25863,"tid":25913,"ts":531360426626,"ph":"E","name":"V8.Execute","args":{},"tts":802632},{"cat":"sky","pid":25863,"tid":25913,"ts":531360426953,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1079,"tdur":1044,"tts":802794},{"cat":"blink","pid":25863,"tid":25913,"ts":531360426957,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":101,"tdur":100,"tts":802798},{"cat":"blink","pid":25863,"tid":25913,"ts":531360426960,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":802801},{"cat":"blink","pid":25863,"tid":25913,"ts":531360426964,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":35,"tdur":35,"tts":802804},{"cat":"blink","pid":25863,"tid":25913,"ts":531360426971,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":28,"tdur":28,"tts":802811},{"cat":"v8","pid":25863,"tid":25913,"ts":531360426984,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":802825},{"cat":"v8","pid":25863,"tid":25913,"ts":531360426986,"ph":"B","name":"V8.Execute","args":{},"tts":802827},{"cat":"v8","pid":25863,"tid":25913,"ts":531360426993,"ph":"E","name":"V8.Execute","args":{},"tts":802834},{"cat":"v8","pid":25863,"tid":25913,"ts":531360427001,"ph":"X","name":"v8.callFunction","args":{},"dur":55,"tdur":54,"tts":802842},{"cat":"v8","pid":25863,"tid":25913,"ts":531360427003,"ph":"B","name":"V8.Execute","args":{},"tts":802844},{"cat":"blink","pid":25863,"tid":25913,"ts":531360427007,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":802848},{"cat":"v8","pid":25863,"tid":25913,"ts":531360427053,"ph":"E","name":"V8.Execute","args":{},"tts":802894},{"cat":"blink","pid":25863,"tid":25913,"ts":531360427059,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":31,"tdur":31,"tts":802899},{"cat":"blink","pid":25863,"tid":25913,"ts":531360427061,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":802901},{"cat":"blink","pid":25863,"tid":25913,"ts":531360427062,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":19,"tts":802902},{"cat":"blink","pid":25863,"tid":25913,"ts":531360427081,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":802922},{"cat":"blink","pid":25863,"tid":25913,"ts":531360427086,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":802926},{"cat":"sky","pid":25863,"tid":25913,"ts":531360427091,"ph":"X","name":"Layer::Display","args":{},"dur":839,"tdur":837,"tts":802932},{"cat":"sky","pid":25863,"tid":25913,"ts":531360427931,"ph":"X","name":"LayerHost::Upload","args":{},"dur":101,"tdur":66,"tts":803771},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360429127,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":67,"tdur":65,"tts":804012},{"cat":"blink","pid":25863,"tid":25913,"ts":531360429134,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":55,"tdur":55,"tts":804017},{"cat":"v8","pid":25863,"tid":25913,"ts":531360429136,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":51,"tdur":51,"tts":804020},{"cat":"v8","pid":25863,"tid":25913,"ts":531360429139,"ph":"X","name":"v8.callFunction","args":{},"dur":47,"tdur":46,"tts":804023},{"cat":"v8","pid":25863,"tid":25913,"ts":531360429141,"ph":"B","name":"V8.Execute","args":{},"tts":804025},{"cat":"blink","pid":25863,"tid":25913,"ts":531360429174,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":804058},{"cat":"blink","pid":25863,"tid":25913,"ts":531360429179,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":804063},{"cat":"v8","pid":25863,"tid":25913,"ts":531360429184,"ph":"E","name":"V8.Execute","args":{},"tts":804068},{"cat":"sky","pid":25863,"tid":25913,"ts":531360487202,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2067,"tdur":1939,"tts":804157},{"cat":"blink","pid":25863,"tid":25913,"ts":531360487207,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":111,"tdur":110,"tts":804161},{"cat":"blink","pid":25863,"tid":25913,"ts":531360487210,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":804164},{"cat":"blink","pid":25863,"tid":25913,"ts":531360487214,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":43,"tdur":43,"tts":804167},{"cat":"blink","pid":25863,"tid":25913,"ts":531360487227,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":30,"tdur":30,"tts":804180},{"cat":"v8","pid":25863,"tid":25913,"ts":531360487242,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":804195},{"cat":"v8","pid":25863,"tid":25913,"ts":531360487244,"ph":"B","name":"V8.Execute","args":{},"tts":804197},{"cat":"v8","pid":25863,"tid":25913,"ts":531360487251,"ph":"E","name":"V8.Execute","args":{},"tts":804205},{"cat":"v8","pid":25863,"tid":25913,"ts":531360487260,"ph":"X","name":"v8.callFunction","args":{},"dur":56,"tdur":56,"tts":804213},{"cat":"v8","pid":25863,"tid":25913,"ts":531360487261,"ph":"B","name":"V8.Execute","args":{},"tts":804215},{"cat":"blink","pid":25863,"tid":25913,"ts":531360487265,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":804219},{"cat":"v8","pid":25863,"tid":25913,"ts":531360487313,"ph":"E","name":"V8.Execute","args":{},"tts":804266},{"cat":"blink","pid":25863,"tid":25913,"ts":531360487318,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":84,"tdur":84,"tts":804272},{"cat":"blink","pid":25863,"tid":25913,"ts":531360487320,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":804274},{"cat":"blink","pid":25863,"tid":25913,"ts":531360487322,"ph":"X","name":"Document::updateStyle","args":{},"dur":51,"tdur":50,"tts":804275},{"cat":"blink","pid":25863,"tid":25913,"ts":531360487374,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":804328},{"cat":"blink","pid":25863,"tid":25913,"ts":531360487383,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":19,"tdur":18,"tts":804337},{"cat":"sky","pid":25863,"tid":25913,"ts":531360487403,"ph":"X","name":"Layer::Display","args":{},"dur":1669,"tdur":1638,"tts":804357},{"cat":"sky","pid":25863,"tid":25913,"ts":531360489073,"ph":"X","name":"LayerHost::Upload","args":{},"dur":195,"tdur":98,"tts":805997},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360489282,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":42,"tdur":41,"tts":806110},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489287,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":31,"tts":806115},{"cat":"v8","pid":25863,"tid":25913,"ts":531360489290,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":27,"tts":806118},{"cat":"v8","pid":25863,"tid":25913,"ts":531360489293,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":23,"tts":806121},{"cat":"v8","pid":25863,"tid":25913,"ts":531360489294,"ph":"B","name":"V8.Execute","args":{},"tts":806122},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489304,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":806132},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489310,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":806138},{"cat":"v8","pid":25863,"tid":25913,"ts":531360489314,"ph":"E","name":"V8.Execute","args":{},"tts":806142},{"cat":"sky","pid":25863,"tid":25913,"ts":531360489737,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1487,"tdur":1394,"tts":806327},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489741,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":122,"tdur":121,"tts":806331},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489744,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":806334},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489748,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":41,"tdur":41,"tts":806338},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489761,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":28,"tdur":27,"tts":806351},{"cat":"v8","pid":25863,"tid":25913,"ts":531360489774,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":806364},{"cat":"v8","pid":25863,"tid":25913,"ts":531360489776,"ph":"B","name":"V8.Execute","args":{},"tts":806366},{"cat":"v8","pid":25863,"tid":25913,"ts":531360489783,"ph":"E","name":"V8.Execute","args":{},"tts":806373},{"cat":"v8","pid":25863,"tid":25913,"ts":531360489792,"ph":"X","name":"v8.callFunction","args":{},"dur":68,"tdur":69,"tts":806381},{"cat":"v8","pid":25863,"tid":25913,"ts":531360489793,"ph":"B","name":"V8.Execute","args":{},"tts":806383},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489797,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":10,"tts":806387},{"cat":"v8","pid":25863,"tid":25913,"ts":531360489857,"ph":"E","name":"V8.Execute","args":{},"tts":806447},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489863,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":323,"tdur":322,"tts":806453},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489865,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":806455},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489867,"ph":"X","name":"Document::updateStyle","args":{},"dur":58,"tdur":57,"tts":806457},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489926,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":806516},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489928,"ph":"X","name":"FrameView::layout","args":{},"dur":29,"tdur":29,"tts":806518},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489930,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":1,"tdur":1,"tts":806520},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489932,"ph":"X","name":"FrameView::performLayout","args":{},"dur":16,"tdur":16,"tts":806522},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489949,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":2,"tdur":2,"tts":806539},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489952,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":4,"tdur":5,"tts":806541},{"cat":"blink","pid":25863,"tid":25913,"ts":531360489960,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":225,"tdur":224,"tts":806550},{"cat":"sky","pid":25863,"tid":25913,"ts":531360490187,"ph":"X","name":"Layer::Display","args":{},"dur":849,"tdur":848,"tts":806777},{"cat":"sky","pid":25863,"tid":25913,"ts":531360491037,"ph":"X","name":"LayerHost::Upload","args":{},"dur":186,"tdur":92,"tts":807627},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360491240,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":42,"tdur":41,"tts":807738},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491246,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":31,"tdur":31,"tts":807743},{"cat":"v8","pid":25863,"tid":25913,"ts":531360491248,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":28,"tts":807745},{"cat":"v8","pid":25863,"tid":25913,"ts":531360491251,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":24,"tts":807748},{"cat":"v8","pid":25863,"tid":25913,"ts":531360491253,"ph":"B","name":"V8.Execute","args":{},"tts":807750},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491262,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":807759},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491268,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":4,"tdur":2,"tts":807766},{"cat":"v8","pid":25863,"tid":25913,"ts":531360491273,"ph":"E","name":"V8.Execute","args":{},"tts":807770},{"cat":"sky","pid":25863,"tid":25913,"ts":531360491698,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1138,"tdur":1083,"tts":807964},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491702,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":137,"tdur":136,"tts":807968},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491724,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":807989},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491727,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":34,"tdur":33,"tts":807993},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491732,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":29,"tdur":28,"tts":807998},{"cat":"v8","pid":25863,"tid":25913,"ts":531360491746,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":808012},{"cat":"v8","pid":25863,"tid":25913,"ts":531360491748,"ph":"B","name":"V8.Execute","args":{},"tts":808014},{"cat":"v8","pid":25863,"tid":25913,"ts":531360491755,"ph":"E","name":"V8.Execute","args":{},"tts":808021},{"cat":"v8","pid":25863,"tid":25913,"ts":531360491763,"ph":"X","name":"v8.callFunction","args":{},"dur":74,"tdur":73,"tts":808029},{"cat":"v8","pid":25863,"tid":25913,"ts":531360491765,"ph":"B","name":"V8.Execute","args":{},"tts":808030},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491769,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":10,"tts":808034},{"cat":"v8","pid":25863,"tid":25913,"ts":531360491833,"ph":"E","name":"V8.Execute","args":{},"tts":808099},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491839,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":31,"tts":808105},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491842,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":808107},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491843,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":19,"tts":808108},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491863,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":808128},{"cat":"blink","pid":25863,"tid":25913,"ts":531360491867,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":808132},{"cat":"sky","pid":25863,"tid":25913,"ts":531360491872,"ph":"X","name":"Layer::Display","args":{},"dur":847,"tdur":846,"tts":808138},{"cat":"sky","pid":25863,"tid":25913,"ts":531360492720,"ph":"X","name":"LayerHost::Upload","args":{},"dur":116,"tdur":60,"tts":808986},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360492885,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":39,"tdur":38,"tts":809097},{"cat":"blink","pid":25863,"tid":25913,"ts":531360492890,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":29,"tts":809101},{"cat":"v8","pid":25863,"tid":25913,"ts":531360492892,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":26,"tdur":25,"tts":809104},{"cat":"v8","pid":25863,"tid":25913,"ts":531360492895,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":21,"tts":809107},{"cat":"v8","pid":25863,"tid":25913,"ts":531360492897,"ph":"B","name":"V8.Execute","args":{},"tts":809108},{"cat":"blink","pid":25863,"tid":25913,"ts":531360492905,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":809117},{"cat":"blink","pid":25863,"tid":25913,"ts":531360492911,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":3,"tts":809122},{"cat":"v8","pid":25863,"tid":25913,"ts":531360492915,"ph":"E","name":"V8.Execute","args":{},"tts":809126},{"cat":"sky","pid":25863,"tid":25913,"ts":531360493270,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1114,"tdur":1078,"tts":809332},{"cat":"blink","pid":25863,"tid":25913,"ts":531360493275,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":101,"tdur":101,"tts":809336},{"cat":"blink","pid":25863,"tid":25913,"ts":531360493278,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":809339},{"cat":"blink","pid":25863,"tid":25913,"ts":531360493281,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":36,"tdur":36,"tts":809342},{"cat":"blink","pid":25863,"tid":25913,"ts":531360493289,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":28,"tdur":28,"tts":809350},{"cat":"v8","pid":25863,"tid":25913,"ts":531360493302,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":809364},{"cat":"v8","pid":25863,"tid":25913,"ts":531360493304,"ph":"B","name":"V8.Execute","args":{},"tts":809366},{"cat":"v8","pid":25863,"tid":25913,"ts":531360493311,"ph":"E","name":"V8.Execute","args":{},"tts":809373},{"cat":"v8","pid":25863,"tid":25913,"ts":531360493319,"ph":"X","name":"v8.callFunction","args":{},"dur":55,"tdur":54,"tts":809381},{"cat":"v8","pid":25863,"tid":25913,"ts":531360493321,"ph":"B","name":"V8.Execute","args":{},"tts":809382},{"cat":"blink","pid":25863,"tid":25913,"ts":531360493325,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":10,"tts":809386},{"cat":"v8","pid":25863,"tid":25913,"ts":531360493371,"ph":"E","name":"V8.Execute","args":{},"tts":809433},{"cat":"blink","pid":25863,"tid":25913,"ts":531360493377,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":31,"tdur":31,"tts":809438},{"cat":"blink","pid":25863,"tid":25913,"ts":531360493379,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":809440},{"cat":"blink","pid":25863,"tid":25913,"ts":531360493380,"ph":"X","name":"Document::updateStyle","args":{},"dur":19,"tdur":19,"tts":809441},{"cat":"blink","pid":25863,"tid":25913,"ts":531360493400,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":809461},{"cat":"blink","pid":25863,"tid":25913,"ts":531360493404,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":809465},{"cat":"sky","pid":25863,"tid":25913,"ts":531360493409,"ph":"X","name":"Layer::Display","args":{},"dur":838,"tdur":836,"tts":809471},{"cat":"sky","pid":25863,"tid":25913,"ts":531360494248,"ph":"X","name":"LayerHost::Upload","args":{},"dur":135,"tdur":98,"tts":810310},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360494399,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":42,"tdur":41,"tts":810426},{"cat":"blink","pid":25863,"tid":25913,"ts":531360494404,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":32,"tdur":31,"tts":810431},{"cat":"v8","pid":25863,"tid":25913,"ts":531360494407,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":28,"tdur":28,"tts":810433},{"cat":"v8","pid":25863,"tid":25913,"ts":531360494410,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":23,"tts":810436},{"cat":"v8","pid":25863,"tid":25913,"ts":531360494412,"ph":"B","name":"V8.Execute","args":{},"tts":810438},{"cat":"blink","pid":25863,"tid":25913,"ts":531360494421,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":10,"tts":810447},{"cat":"blink","pid":25863,"tid":25913,"ts":531360494427,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":810453},{"cat":"v8","pid":25863,"tid":25913,"ts":531360494432,"ph":"E","name":"V8.Execute","args":{},"tts":810458},{"cat":"sky","pid":25863,"tid":25913,"ts":531360553767,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2172,"tdur":2047,"tts":810653},{"cat":"blink","pid":25863,"tid":25913,"ts":531360553771,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":180,"tdur":180,"tts":810657},{"cat":"blink","pid":25863,"tid":25913,"ts":531360553775,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":810661},{"cat":"blink","pid":25863,"tid":25913,"ts":531360553778,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":39,"tdur":38,"tts":810664},{"cat":"blink","pid":25863,"tid":25913,"ts":531360553786,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":30,"tdur":30,"tts":810672},{"cat":"v8","pid":25863,"tid":25913,"ts":531360553801,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":810687},{"cat":"v8","pid":25863,"tid":25913,"ts":531360553803,"ph":"B","name":"V8.Execute","args":{},"tts":810689},{"cat":"v8","pid":25863,"tid":25913,"ts":531360553810,"ph":"E","name":"V8.Execute","args":{},"tts":810696},{"cat":"v8","pid":25863,"tid":25913,"ts":531360553819,"ph":"X","name":"v8.callFunction","args":{},"dur":127,"tdur":126,"tts":810705},{"cat":"v8","pid":25863,"tid":25913,"ts":531360553821,"ph":"B","name":"V8.Execute","args":{},"tts":810707},{"cat":"blink","pid":25863,"tid":25913,"ts":531360553825,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":10,"tts":810711},{"cat":"v8","pid":25863,"tid":25913,"ts":531360553922,"ph":"E","name":"V8.Execute","args":{},"tts":810809},{"cat":"blink","pid":25863,"tid":25913,"ts":531360553965,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":34,"tdur":34,"tts":810851},{"cat":"blink","pid":25863,"tid":25913,"ts":531360553967,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":810853},{"cat":"blink","pid":25863,"tid":25913,"ts":531360553969,"ph":"X","name":"Document::updateStyle","args":{},"dur":21,"tdur":20,"tts":810855},{"cat":"blink","pid":25863,"tid":25913,"ts":531360553990,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":810876},{"cat":"blink","pid":25863,"tid":25913,"ts":531360553995,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":810881},{"cat":"sky","pid":25863,"tid":25913,"ts":531360554000,"ph":"X","name":"Layer::Display","args":{},"dur":1629,"tdur":1627,"tts":810886},{"cat":"sky","pid":25863,"tid":25913,"ts":531360555631,"ph":"X","name":"LayerHost::Upload","args":{},"dur":306,"tdur":179,"tts":812518},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360555969,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":62,"tdur":55,"tts":812730},{"cat":"blink","pid":25863,"tid":25913,"ts":531360555974,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":52,"tdur":43,"tts":812736},{"cat":"v8","pid":25863,"tid":25913,"ts":531360555977,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":47,"tdur":39,"tts":812738},{"cat":"v8","pid":25863,"tid":25913,"ts":531360555980,"ph":"X","name":"v8.callFunction","args":{},"dur":43,"tdur":35,"tts":812741},{"cat":"v8","pid":25863,"tid":25913,"ts":531360555982,"ph":"B","name":"V8.Execute","args":{},"tts":812743},{"cat":"blink","pid":25863,"tid":25913,"ts":531360555991,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":28,"tdur":20,"tts":812752},{"cat":"blink","pid":25863,"tid":25913,"ts":531360555998,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":21,"tdur":12,"tts":812759},{"cat":"v8","pid":25863,"tid":25913,"ts":531360556020,"ph":"E","name":"V8.Execute","args":{},"tts":812774},{"cat":"sky","pid":25863,"tid":25913,"ts":531360556760,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2354,"tdur":2223,"tts":813159},{"cat":"blink","pid":25863,"tid":25913,"ts":531360556770,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":211,"tdur":211,"tts":813167},{"cat":"blink","pid":25863,"tid":25913,"ts":531360556776,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":813173},{"cat":"blink","pid":25863,"tid":25913,"ts":531360556783,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":76,"tdur":75,"tts":813180},{"cat":"blink","pid":25863,"tid":25913,"ts":531360556799,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":813196},{"cat":"v8","pid":25863,"tid":25913,"ts":531360556827,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":813224},{"cat":"v8","pid":25863,"tid":25913,"ts":531360556832,"ph":"B","name":"V8.Execute","args":{},"tts":813228},{"cat":"v8","pid":25863,"tid":25913,"ts":531360556846,"ph":"E","name":"V8.Execute","args":{},"tts":813243},{"cat":"v8","pid":25863,"tid":25913,"ts":531360556863,"ph":"X","name":"v8.callFunction","args":{},"dur":114,"tdur":113,"tts":813260},{"cat":"v8","pid":25863,"tid":25913,"ts":531360556867,"ph":"B","name":"V8.Execute","args":{},"tts":813264},{"cat":"blink","pid":25863,"tid":25913,"ts":531360556875,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":813272},{"cat":"v8","pid":25863,"tid":25913,"ts":531360556970,"ph":"E","name":"V8.Execute","args":{},"tts":813368},{"cat":"blink","pid":25863,"tid":25913,"ts":531360556982,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":66,"tts":813379},{"cat":"blink","pid":25863,"tid":25913,"ts":531360556987,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":813384},{"cat":"blink","pid":25863,"tid":25913,"ts":531360556990,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":38,"tts":813387},{"cat":"blink","pid":25863,"tid":25913,"ts":531360557030,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":813427},{"cat":"blink","pid":25863,"tid":25913,"ts":531360557039,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":813436},{"cat":"sky","pid":25863,"tid":25913,"ts":531360557050,"ph":"X","name":"Layer::Display","args":{},"dur":1756,"tdur":1753,"tts":813447},{"cat":"sky","pid":25863,"tid":25913,"ts":531360558808,"ph":"X","name":"LayerHost::Upload","args":{},"dur":304,"tdur":174,"tts":815205},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360559140,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":87,"tdur":86,"tts":815409},{"cat":"blink","pid":25863,"tid":25913,"ts":531360559151,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":65,"tts":815420},{"cat":"v8","pid":25863,"tid":25913,"ts":531360559156,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":58,"tts":815425},{"cat":"v8","pid":25863,"tid":25913,"ts":531360559162,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":49,"tts":815431},{"cat":"v8","pid":25863,"tid":25913,"ts":531360559166,"ph":"B","name":"V8.Execute","args":{},"tts":815435},{"cat":"blink","pid":25863,"tid":25913,"ts":531360559185,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":815454},{"cat":"blink","pid":25863,"tid":25913,"ts":531360559198,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":7,"tdur":5,"tts":815468},{"cat":"v8","pid":25863,"tid":25913,"ts":531360559208,"ph":"E","name":"V8.Execute","args":{},"tts":815477},{"cat":"sky","pid":25863,"tid":25913,"ts":531360559917,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2430,"tdur":2252,"tts":815865},{"cat":"blink","pid":25863,"tid":25913,"ts":531360559926,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":256,"tdur":255,"tts":815873},{"cat":"blink","pid":25863,"tid":25913,"ts":531360559933,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":815879},{"cat":"blink","pid":25863,"tid":25913,"ts":531360559940,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":105,"tdur":105,"tts":815886},{"cat":"blink","pid":25863,"tid":25913,"ts":531360559971,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":73,"tdur":72,"tts":815918},{"cat":"v8","pid":25863,"tid":25913,"ts":531360559999,"ph":"X","name":"v8.callFunction","args":{},"dur":37,"tdur":23,"tts":815959},{"cat":"v8","pid":25863,"tid":25913,"ts":531360560017,"ph":"B","name":"V8.Execute","args":{},"tts":815964},{"cat":"v8","pid":25863,"tid":25913,"ts":531360560032,"ph":"E","name":"V8.Execute","args":{},"tts":815979},{"cat":"v8","pid":25863,"tid":25913,"ts":531360560050,"ph":"X","name":"v8.callFunction","args":{},"dur":127,"tdur":126,"tts":815997},{"cat":"v8","pid":25863,"tid":25913,"ts":531360560054,"ph":"B","name":"V8.Execute","args":{},"tts":816000},{"cat":"blink","pid":25863,"tid":25913,"ts":531360560062,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":816009},{"cat":"v8","pid":25863,"tid":25913,"ts":531360560171,"ph":"E","name":"V8.Execute","args":{},"tts":816118},{"cat":"blink","pid":25863,"tid":25913,"ts":531360560183,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":67,"tdur":65,"tts":816130},{"cat":"blink","pid":25863,"tid":25913,"ts":531360560188,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":816134},{"cat":"blink","pid":25863,"tid":25913,"ts":531360560190,"ph":"X","name":"Document::updateStyle","args":{},"dur":41,"tdur":39,"tts":816137},{"cat":"blink","pid":25863,"tid":25913,"ts":531360560231,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":816178},{"cat":"blink","pid":25863,"tid":25913,"ts":531360560240,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":816187},{"cat":"sky","pid":25863,"tid":25913,"ts":531360560251,"ph":"X","name":"Layer::Display","args":{},"dur":1737,"tdur":1734,"tts":816198},{"cat":"sky","pid":25863,"tid":25913,"ts":531360561990,"ph":"X","name":"LayerHost::Upload","args":{},"dur":355,"tdur":177,"tts":817937},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360562373,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":110,"tdur":108,"tts":818145},{"cat":"blink","pid":25863,"tid":25913,"ts":531360562384,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":88,"tdur":87,"tts":818155},{"cat":"v8","pid":25863,"tid":25913,"ts":531360562390,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":79,"tdur":78,"tts":818161},{"cat":"v8","pid":25863,"tid":25913,"ts":531360562419,"ph":"X","name":"v8.callFunction","args":{},"dur":48,"tdur":47,"tts":818190},{"cat":"v8","pid":25863,"tid":25913,"ts":531360562424,"ph":"B","name":"V8.Execute","args":{},"tts":818195},{"cat":"blink","pid":25863,"tid":25913,"ts":531360562442,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":19,"tdur":18,"tts":818213},{"cat":"blink","pid":25863,"tid":25913,"ts":531360562453,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":7,"tdur":6,"tts":818224},{"cat":"v8","pid":25863,"tid":25913,"ts":531360562463,"ph":"E","name":"V8.Execute","args":{},"tts":818234},{"cat":"sky","pid":25863,"tid":25913,"ts":531360563072,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2364,"tdur":2207,"tts":818490},{"cat":"blink","pid":25863,"tid":25913,"ts":531360563077,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":200,"tdur":199,"tts":818495},{"cat":"blink","pid":25863,"tid":25913,"ts":531360563083,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":2,"tts":818501},{"cat":"blink","pid":25863,"tid":25913,"ts":531360563089,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":67,"tdur":66,"tts":818507},{"cat":"blink","pid":25863,"tid":25913,"ts":531360563101,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":54,"tdur":53,"tts":818519},{"cat":"v8","pid":25863,"tid":25913,"ts":531360563127,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":21,"tts":818545},{"cat":"v8","pid":25863,"tid":25913,"ts":531360563131,"ph":"B","name":"V8.Execute","args":{},"tts":818549},{"cat":"v8","pid":25863,"tid":25913,"ts":531360563145,"ph":"E","name":"V8.Execute","args":{},"tts":818563},{"cat":"v8","pid":25863,"tid":25913,"ts":531360563161,"ph":"X","name":"v8.callFunction","args":{},"dur":112,"tdur":111,"tts":818579},{"cat":"v8","pid":25863,"tid":25913,"ts":531360563164,"ph":"B","name":"V8.Execute","args":{},"tts":818582},{"cat":"blink","pid":25863,"tid":25913,"ts":531360563173,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":20,"tdur":20,"tts":818590},{"cat":"v8","pid":25863,"tid":25913,"ts":531360563266,"ph":"E","name":"V8.Execute","args":{},"tts":818685},{"cat":"blink","pid":25863,"tid":25913,"ts":531360563278,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":67,"tdur":66,"tts":818696},{"cat":"blink","pid":25863,"tid":25913,"ts":531360563283,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":818700},{"cat":"blink","pid":25863,"tid":25913,"ts":531360563286,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":38,"tts":818704},{"cat":"blink","pid":25863,"tid":25913,"ts":531360563327,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":818745},{"cat":"blink","pid":25863,"tid":25913,"ts":531360563336,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":818753},{"cat":"sky","pid":25863,"tid":25913,"ts":531360563346,"ph":"X","name":"Layer::Display","args":{},"dur":1809,"tdur":1806,"tts":818764},{"cat":"sky","pid":25863,"tid":25913,"ts":531360565157,"ph":"X","name":"LayerHost::Upload","args":{},"dur":277,"tdur":120,"tts":820575},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360565465,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":78,"tdur":78,"tts":820727},{"cat":"blink","pid":25863,"tid":25913,"ts":531360565473,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":61,"tdur":59,"tts":820736},{"cat":"v8","pid":25863,"tid":25913,"ts":531360565479,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":52,"tdur":52,"tts":820741},{"cat":"v8","pid":25863,"tid":25913,"ts":531360565484,"ph":"X","name":"v8.callFunction","args":{},"dur":45,"tdur":45,"tts":820746},{"cat":"v8","pid":25863,"tid":25913,"ts":531360565488,"ph":"B","name":"V8.Execute","args":{},"tts":820750},{"cat":"blink","pid":25863,"tid":25913,"ts":531360565504,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":820766},{"cat":"blink","pid":25863,"tid":25913,"ts":531360565517,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":820779},{"cat":"v8","pid":25863,"tid":25913,"ts":531360565526,"ph":"E","name":"V8.Execute","args":{},"tts":820788},{"cat":"sky","pid":25863,"tid":25913,"ts":531360621324,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1937,"tdur":1849,"tts":821035},{"cat":"blink","pid":25863,"tid":25913,"ts":531360621328,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":214,"tdur":213,"tts":821039},{"cat":"blink","pid":25863,"tid":25913,"ts":531360621331,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":821041},{"cat":"blink","pid":25863,"tid":25913,"ts":531360621334,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":76,"tdur":76,"tts":821044},{"cat":"blink","pid":25863,"tid":25913,"ts":531360621340,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":69,"tdur":68,"tts":821051},{"cat":"v8","pid":25863,"tid":25913,"ts":531360621378,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":23,"tts":821089},{"cat":"v8","pid":25863,"tid":25913,"ts":531360621383,"ph":"B","name":"V8.Execute","args":{},"tts":821094},{"cat":"v8","pid":25863,"tid":25913,"ts":531360621397,"ph":"E","name":"V8.Execute","args":{},"tts":821108},{"cat":"v8","pid":25863,"tid":25913,"ts":531360621415,"ph":"X","name":"v8.callFunction","args":{},"dur":122,"tdur":121,"tts":821126},{"cat":"v8","pid":25863,"tid":25913,"ts":531360621418,"ph":"B","name":"V8.Execute","args":{},"tts":821129},{"cat":"blink","pid":25863,"tid":25913,"ts":531360621426,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":20,"tts":821138},{"cat":"v8","pid":25863,"tid":25913,"ts":531360621530,"ph":"E","name":"V8.Execute","args":{},"tts":821242},{"cat":"blink","pid":25863,"tid":25913,"ts":531360621554,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":28,"tts":821265},{"cat":"blink","pid":25863,"tid":25913,"ts":531360621557,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":821267},{"cat":"blink","pid":25863,"tid":25913,"ts":531360621558,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":821269},{"cat":"blink","pid":25863,"tid":25913,"ts":531360621575,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":821286},{"cat":"blink","pid":25863,"tid":25913,"ts":531360621579,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":821290},{"cat":"sky","pid":25863,"tid":25913,"ts":531360621584,"ph":"X","name":"Layer::Display","args":{},"dur":1498,"tdur":1497,"tts":821295},{"cat":"sky","pid":25863,"tid":25913,"ts":531360623083,"ph":"X","name":"LayerHost::Upload","args":{},"dur":178,"tdur":89,"tts":822794},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360623273,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":51,"tdur":50,"tts":822896},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623277,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":42,"tdur":42,"tts":822900},{"cat":"v8","pid":25863,"tid":25913,"ts":531360623280,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":38,"tdur":38,"tts":822902},{"cat":"v8","pid":25863,"tid":25913,"ts":531360623282,"ph":"X","name":"v8.callFunction","args":{},"dur":35,"tdur":34,"tts":822905},{"cat":"v8","pid":25863,"tid":25913,"ts":531360623284,"ph":"B","name":"V8.Execute","args":{},"tts":822907},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623292,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":22,"tdur":22,"tts":822915},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623311,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":822934},{"cat":"v8","pid":25863,"tid":25913,"ts":531360623315,"ph":"E","name":"V8.Execute","args":{},"tts":822938},{"cat":"sky","pid":25863,"tid":25913,"ts":531360623717,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1059,"tdur":998,"tts":823114},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623721,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":98,"tdur":97,"tts":823118},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623724,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":823120},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623727,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":39,"tdur":39,"tts":823123},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623733,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":33,"tdur":32,"tts":823130},{"cat":"v8","pid":25863,"tid":25913,"ts":531360623753,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":10,"tts":823149},{"cat":"v8","pid":25863,"tid":25913,"ts":531360623755,"ph":"B","name":"V8.Execute","args":{},"tts":823151},{"cat":"v8","pid":25863,"tid":25913,"ts":531360623761,"ph":"E","name":"V8.Execute","args":{},"tts":823157},{"cat":"v8","pid":25863,"tid":25913,"ts":531360623768,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":823165},{"cat":"v8","pid":25863,"tid":25913,"ts":531360623770,"ph":"B","name":"V8.Execute","args":{},"tts":823166},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623773,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":8,"tts":823170},{"cat":"v8","pid":25863,"tid":25913,"ts":531360623815,"ph":"E","name":"V8.Execute","args":{},"tts":823211},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623820,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":32,"tdur":32,"tts":823216},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623822,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":823218},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623823,"ph":"X","name":"Document::updateStyle","args":{},"dur":21,"tdur":21,"tts":823219},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623844,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":823241},{"cat":"blink","pid":25863,"tid":25913,"ts":531360623848,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":4,"tts":823244},{"cat":"sky","pid":25863,"tid":25913,"ts":531360623853,"ph":"X","name":"Layer::Display","args":{},"dur":782,"tdur":773,"tts":823249},{"cat":"sky","pid":25863,"tid":25913,"ts":531360624636,"ph":"X","name":"LayerHost::Upload","args":{},"dur":139,"tdur":87,"tts":824024},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360624806,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":38,"tdur":38,"tts":824143},{"cat":"blink","pid":25863,"tid":25913,"ts":531360624811,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":28,"tts":824148},{"cat":"v8","pid":25863,"tid":25913,"ts":531360624814,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":25,"tts":824150},{"cat":"v8","pid":25863,"tid":25913,"ts":531360624816,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":21,"tts":824153},{"cat":"v8","pid":25863,"tid":25913,"ts":531360624818,"ph":"B","name":"V8.Execute","args":{},"tts":824155},{"cat":"blink","pid":25863,"tid":25913,"ts":531360624826,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":10,"tts":824162},{"cat":"blink","pid":25863,"tid":25913,"ts":531360624832,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":824169},{"cat":"v8","pid":25863,"tid":25913,"ts":531360624836,"ph":"E","name":"V8.Execute","args":{},"tts":824173},{"cat":"sky","pid":25863,"tid":25913,"ts":531360625130,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1015,"tdur":979,"tts":824340},{"cat":"blink","pid":25863,"tid":25913,"ts":531360625134,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":111,"tdur":110,"tts":824343},{"cat":"blink","pid":25863,"tid":25913,"ts":531360625137,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":824346},{"cat":"blink","pid":25863,"tid":25913,"ts":531360625140,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":38,"tdur":37,"tts":824349},{"cat":"blink","pid":25863,"tid":25913,"ts":531360625152,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":25,"tdur":25,"tts":824361},{"cat":"v8","pid":25863,"tid":25913,"ts":531360625165,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":10,"tts":824373},{"cat":"v8","pid":25863,"tid":25913,"ts":531360625166,"ph":"B","name":"V8.Execute","args":{},"tts":824375},{"cat":"v8","pid":25863,"tid":25913,"ts":531360625173,"ph":"E","name":"V8.Execute","args":{},"tts":824382},{"cat":"v8","pid":25863,"tid":25913,"ts":531360625180,"ph":"X","name":"v8.callFunction","args":{},"dur":63,"tdur":62,"tts":824389},{"cat":"v8","pid":25863,"tid":25913,"ts":531360625181,"ph":"B","name":"V8.Execute","args":{},"tts":824390},{"cat":"blink","pid":25863,"tid":25913,"ts":531360625185,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":12,"tdur":12,"tts":824394},{"cat":"v8","pid":25863,"tid":25913,"ts":531360625240,"ph":"E","name":"V8.Execute","args":{},"tts":824449},{"cat":"blink","pid":25863,"tid":25913,"ts":531360625245,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":28,"tts":824454},{"cat":"blink","pid":25863,"tid":25913,"ts":531360625247,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":824456},{"cat":"blink","pid":25863,"tid":25913,"ts":531360625248,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":17,"tts":824457},{"cat":"blink","pid":25863,"tid":25913,"ts":531360625266,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":824474},{"cat":"blink","pid":25863,"tid":25913,"ts":531360625269,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":824478},{"cat":"sky","pid":25863,"tid":25913,"ts":531360625274,"ph":"X","name":"Layer::Display","args":{},"dur":763,"tdur":762,"tts":824483},{"cat":"sky","pid":25863,"tid":25913,"ts":531360626038,"ph":"X","name":"LayerHost::Upload","args":{},"dur":106,"tdur":71,"tts":825247},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360626297,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":36,"tdur":36,"tts":825398},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626301,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":28,"tdur":27,"tts":825402},{"cat":"v8","pid":25863,"tid":25913,"ts":531360626304,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":24,"tdur":24,"tts":825404},{"cat":"v8","pid":25863,"tid":25913,"ts":531360626306,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":20,"tts":825407},{"cat":"v8","pid":25863,"tid":25913,"ts":531360626308,"ph":"B","name":"V8.Execute","args":{},"tts":825408},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626315,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":825416},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626321,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":825422},{"cat":"v8","pid":25863,"tid":25913,"ts":531360626325,"ph":"E","name":"V8.Execute","args":{},"tts":825426},{"cat":"sky","pid":25863,"tid":25913,"ts":531360626490,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":993,"tdur":941,"tts":825511},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626493,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":92,"tdur":92,"tts":825514},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626496,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":2,"tts":825516},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626498,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":38,"tdur":38,"tts":825519},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626504,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":32,"tdur":31,"tts":825525},{"cat":"v8","pid":25863,"tid":25913,"ts":531360626523,"ph":"X","name":"v8.callFunction","args":{},"dur":10,"tdur":9,"tts":825544},{"cat":"v8","pid":25863,"tid":25913,"ts":531360626525,"ph":"B","name":"V8.Execute","args":{},"tts":825546},{"cat":"v8","pid":25863,"tid":25913,"ts":531360626531,"ph":"E","name":"V8.Execute","args":{},"tts":825552},{"cat":"v8","pid":25863,"tid":25913,"ts":531360626538,"ph":"X","name":"v8.callFunction","args":{},"dur":45,"tdur":45,"tts":825559},{"cat":"v8","pid":25863,"tid":25913,"ts":531360626540,"ph":"B","name":"V8.Execute","args":{},"tts":825560},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626543,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":8,"tdur":8,"tts":825564},{"cat":"v8","pid":25863,"tid":25913,"ts":531360626580,"ph":"E","name":"V8.Execute","args":{},"tts":825602},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626585,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":33,"tdur":33,"tts":825606},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626587,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":825608},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626589,"ph":"X","name":"Document::updateStyle","args":{},"dur":22,"tdur":22,"tts":825609},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626611,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":825632},{"cat":"blink","pid":25863,"tid":25913,"ts":531360626615,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":2,"tts":825636},{"cat":"sky","pid":25863,"tid":25913,"ts":531360626619,"ph":"X","name":"Layer::Display","args":{},"dur":741,"tdur":740,"tts":825640},{"cat":"sky","pid":25863,"tid":25913,"ts":531360627361,"ph":"X","name":"LayerHost::Upload","args":{},"dur":121,"tdur":69,"tts":826382},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360627638,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":39,"tdur":38,"tts":826526},{"cat":"blink","pid":25863,"tid":25913,"ts":531360627642,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":30,"tdur":30,"tts":826530},{"cat":"v8","pid":25863,"tid":25913,"ts":531360627644,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":27,"tdur":27,"tts":826532},{"cat":"v8","pid":25863,"tid":25913,"ts":531360627647,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":23,"tts":826535},{"cat":"v8","pid":25863,"tid":25913,"ts":531360627648,"ph":"B","name":"V8.Execute","args":{},"tts":826536},{"cat":"blink","pid":25863,"tid":25913,"ts":531360627655,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":13,"tdur":12,"tts":826543},{"cat":"blink","pid":25863,"tid":25913,"ts":531360627665,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":826553},{"cat":"v8","pid":25863,"tid":25913,"ts":531360627669,"ph":"E","name":"V8.Execute","args":{},"tts":826556},{"cat":"sky","pid":25863,"tid":25913,"ts":531360687445,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":3272,"tdur":3130,"tts":826666},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687450,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":319,"tdur":320,"tts":826670},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687453,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":826673},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687457,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":40,"tdur":40,"tts":826677},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687465,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":32,"tdur":32,"tts":826685},{"cat":"v8","pid":25863,"tid":25913,"ts":531360687480,"ph":"X","name":"v8.callFunction","args":{},"dur":13,"tdur":12,"tts":826701},{"cat":"v8","pid":25863,"tid":25913,"ts":531360687483,"ph":"B","name":"V8.Execute","args":{},"tts":826703},{"cat":"v8","pid":25863,"tid":25913,"ts":531360687491,"ph":"E","name":"V8.Execute","args":{},"tts":826711},{"cat":"v8","pid":25863,"tid":25913,"ts":531360687500,"ph":"X","name":"v8.callFunction","args":{},"dur":265,"tdur":264,"tts":826720},{"cat":"v8","pid":25863,"tid":25913,"ts":531360687501,"ph":"B","name":"V8.Execute","args":{},"tts":826722},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687506,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":11,"tdur":11,"tts":826726},{"cat":"v8","pid":25863,"tid":25913,"ts":531360687682,"ph":"E","name":"V8.Execute","args":{},"tts":826904},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687770,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":822,"tdur":806,"tts":826991},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687775,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":826995},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687777,"ph":"X","name":"Document::updateStyle","args":{},"dur":97,"tdur":97,"tts":826997},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687875,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":6},"tts":827096},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687879,"ph":"X","name":"FrameView::layout","args":{},"dur":215,"tdur":201,"tts":827099},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687881,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":2,"tdur":3,"tts":827101},{"cat":"blink","pid":25863,"tid":25913,"ts":531360687884,"ph":"X","name":"FrameView::performLayout","args":{},"dur":188,"tdur":171,"tts":827105},{"cat":"blink","pid":25863,"tid":25913,"ts":531360688074,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":7,"tdur":6,"tts":827280},{"cat":"blink","pid":25863,"tid":25913,"ts":531360688081,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":11,"tdur":9,"tts":827288},{"cat":"blink","pid":25863,"tid":25913,"ts":531360688101,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":489,"tdur":487,"tts":827308},{"cat":"sky","pid":25863,"tid":25913,"ts":531360688594,"ph":"X","name":"Layer::Display","args":{},"dur":1811,"tdur":1809,"tts":827800},{"cat":"sky","pid":25863,"tid":25913,"ts":531360690407,"ph":"X","name":"LayerHost::Upload","args":{},"dur":308,"tdur":180,"tts":829614},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360690744,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":88,"tdur":88,"tts":829824},{"cat":"blink","pid":25863,"tid":25913,"ts":531360690755,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":65,"tts":829835},{"cat":"v8","pid":25863,"tid":25913,"ts":531360690760,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":56,"tts":829841},{"cat":"v8","pid":25863,"tid":25913,"ts":531360690767,"ph":"X","name":"v8.callFunction","args":{},"dur":48,"tdur":48,"tts":829847},{"cat":"v8","pid":25863,"tid":25913,"ts":531360690770,"ph":"B","name":"V8.Execute","args":{},"tts":829851},{"cat":"blink","pid":25863,"tid":25913,"ts":531360690789,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":829870},{"cat":"blink","pid":25863,"tid":25913,"ts":531360690802,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":829883},{"cat":"v8","pid":25863,"tid":25913,"ts":531360690812,"ph":"E","name":"V8.Execute","args":{},"tts":829892},{"cat":"sky","pid":25863,"tid":25913,"ts":531360691577,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2413,"tdur":2266,"tts":830295},{"cat":"blink","pid":25863,"tid":25913,"ts":531360691586,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":214,"tdur":214,"tts":830302},{"cat":"blink","pid":25863,"tid":25913,"ts":531360691593,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":830309},{"cat":"blink","pid":25863,"tid":25913,"ts":531360691600,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":75,"tdur":74,"tts":830317},{"cat":"blink","pid":25863,"tid":25913,"ts":531360691615,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":830332},{"cat":"v8","pid":25863,"tid":25913,"ts":531360691644,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":830360},{"cat":"v8","pid":25863,"tid":25913,"ts":531360691648,"ph":"B","name":"V8.Execute","args":{},"tts":830364},{"cat":"v8","pid":25863,"tid":25913,"ts":531360691663,"ph":"E","name":"V8.Execute","args":{},"tts":830379},{"cat":"v8","pid":25863,"tid":25913,"ts":531360691680,"ph":"X","name":"v8.callFunction","args":{},"dur":115,"tdur":115,"tts":830396},{"cat":"v8","pid":25863,"tid":25913,"ts":531360691683,"ph":"B","name":"V8.Execute","args":{},"tts":830399},{"cat":"blink","pid":25863,"tid":25913,"ts":531360691691,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":20,"tts":830408},{"cat":"v8","pid":25863,"tid":25913,"ts":531360691789,"ph":"E","name":"V8.Execute","args":{},"tts":830506},{"cat":"blink","pid":25863,"tid":25913,"ts":531360691801,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":66,"tts":830517},{"cat":"blink","pid":25863,"tid":25913,"ts":531360691805,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":830522},{"cat":"blink","pid":25863,"tid":25913,"ts":531360691808,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":38,"tts":830525},{"cat":"blink","pid":25863,"tid":25913,"ts":531360691849,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":830566},{"cat":"blink","pid":25863,"tid":25913,"ts":531360691858,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":8,"tts":830574},{"cat":"sky","pid":25863,"tid":25913,"ts":531360691869,"ph":"X","name":"Layer::Display","args":{},"dur":1792,"tdur":1790,"tts":830585},{"cat":"sky","pid":25863,"tid":25913,"ts":531360693663,"ph":"X","name":"LayerHost::Upload","args":{},"dur":325,"tdur":178,"tts":832380},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360694016,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":103,"tdur":102,"tts":832588},{"cat":"blink","pid":25863,"tid":25913,"ts":531360694043,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":65,"tdur":64,"tts":832616},{"cat":"v8","pid":25863,"tid":25913,"ts":531360694049,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":56,"tdur":55,"tts":832622},{"cat":"v8","pid":25863,"tid":25913,"ts":531360694056,"ph":"X","name":"v8.callFunction","args":{},"dur":47,"tdur":46,"tts":832628},{"cat":"v8","pid":25863,"tid":25913,"ts":531360694059,"ph":"B","name":"V8.Execute","args":{},"tts":832632},{"cat":"blink","pid":25863,"tid":25913,"ts":531360694078,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":19,"tdur":18,"tts":832650},{"cat":"blink","pid":25863,"tid":25913,"ts":531360694090,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":832662},{"cat":"v8","pid":25863,"tid":25913,"ts":531360694099,"ph":"E","name":"V8.Execute","args":{},"tts":832671},{"cat":"sky","pid":25863,"tid":25913,"ts":531360694860,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2440,"tdur":2292,"tts":833067},{"cat":"blink","pid":25863,"tid":25913,"ts":531360694869,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":227,"tdur":226,"tts":833075},{"cat":"blink","pid":25863,"tid":25913,"ts":531360694876,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":833081},{"cat":"blink","pid":25863,"tid":25913,"ts":531360694882,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":91,"tdur":90,"tts":833088},{"cat":"blink","pid":25863,"tid":25913,"ts":531360694913,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":833119},{"cat":"v8","pid":25863,"tid":25913,"ts":531360694942,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":833148},{"cat":"v8","pid":25863,"tid":25913,"ts":531360694946,"ph":"B","name":"V8.Execute","args":{},"tts":833152},{"cat":"v8","pid":25863,"tid":25913,"ts":531360694961,"ph":"E","name":"V8.Execute","args":{},"tts":833167},{"cat":"v8","pid":25863,"tid":25913,"ts":531360694978,"ph":"X","name":"v8.callFunction","args":{},"dur":114,"tdur":113,"tts":833184},{"cat":"v8","pid":25863,"tid":25913,"ts":531360694981,"ph":"B","name":"V8.Execute","args":{},"tts":833187},{"cat":"blink","pid":25863,"tid":25913,"ts":531360694989,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":20,"tts":833195},{"cat":"v8","pid":25863,"tid":25913,"ts":531360695085,"ph":"E","name":"V8.Execute","args":{},"tts":833292},{"cat":"blink","pid":25863,"tid":25913,"ts":531360695097,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":833303},{"cat":"blink","pid":25863,"tid":25913,"ts":531360695102,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":833308},{"cat":"blink","pid":25863,"tid":25913,"ts":531360695105,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":39,"tts":833310},{"cat":"blink","pid":25863,"tid":25913,"ts":531360695145,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":833351},{"cat":"blink","pid":25863,"tid":25913,"ts":531360695154,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":833360},{"cat":"sky","pid":25863,"tid":25913,"ts":531360695165,"ph":"X","name":"Layer::Display","args":{},"dur":1812,"tdur":1809,"tts":833371},{"cat":"sky","pid":25863,"tid":25913,"ts":531360696979,"ph":"X","name":"LayerHost::Upload","args":{},"dur":319,"tdur":171,"tts":835185},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360697326,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":87,"tdur":86,"tts":835386},{"cat":"blink","pid":25863,"tid":25913,"ts":531360697337,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":65,"tts":835397},{"cat":"v8","pid":25863,"tid":25913,"ts":531360697342,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":57,"tts":835403},{"cat":"v8","pid":25863,"tid":25913,"ts":531360697349,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":835409},{"cat":"v8","pid":25863,"tid":25913,"ts":531360697353,"ph":"B","name":"V8.Execute","args":{},"tts":835413},{"cat":"blink","pid":25863,"tid":25913,"ts":531360697371,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":835431},{"cat":"blink","pid":25863,"tid":25913,"ts":531360697385,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":835445},{"cat":"v8","pid":25863,"tid":25913,"ts":531360697394,"ph":"E","name":"V8.Execute","args":{},"tts":835454},{"cat":"sky","pid":25863,"tid":25913,"ts":531360697990,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2313,"tdur":2187,"tts":835700},{"cat":"blink","pid":25863,"tid":25913,"ts":531360697995,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":212,"tdur":210,"tts":835706},{"cat":"blink","pid":25863,"tid":25913,"ts":531360698001,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":835711},{"cat":"blink","pid":25863,"tid":25913,"ts":531360698007,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":79,"tdur":78,"tts":835717},{"cat":"blink","pid":25863,"tid":25913,"ts":531360698030,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":55,"tdur":54,"tts":835740},{"cat":"v8","pid":25863,"tid":25913,"ts":531360698056,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":21,"tts":835767},{"cat":"v8","pid":25863,"tid":25913,"ts":531360698060,"ph":"B","name":"V8.Execute","args":{},"tts":835771},{"cat":"v8","pid":25863,"tid":25913,"ts":531360698075,"ph":"E","name":"V8.Execute","args":{},"tts":835785},{"cat":"v8","pid":25863,"tid":25913,"ts":531360698090,"ph":"X","name":"v8.callFunction","args":{},"dur":112,"tdur":112,"tts":835800},{"cat":"v8","pid":25863,"tid":25913,"ts":531360698094,"ph":"B","name":"V8.Execute","args":{},"tts":835804},{"cat":"blink","pid":25863,"tid":25913,"ts":531360698102,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":21,"tts":835812},{"cat":"v8","pid":25863,"tid":25913,"ts":531360698195,"ph":"E","name":"V8.Execute","args":{},"tts":835907},{"cat":"blink","pid":25863,"tid":25913,"ts":531360698208,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":66,"tts":835918},{"cat":"blink","pid":25863,"tid":25913,"ts":531360698212,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":835923},{"cat":"blink","pid":25863,"tid":25913,"ts":531360698215,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":38,"tts":835926},{"cat":"blink","pid":25863,"tid":25913,"ts":531360698256,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":835967},{"cat":"blink","pid":25863,"tid":25913,"ts":531360698265,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":8,"tts":835975},{"cat":"sky","pid":25863,"tid":25913,"ts":531360698276,"ph":"X","name":"Layer::Display","args":{},"dur":1834,"tdur":1815,"tts":835986},{"cat":"sky","pid":25863,"tid":25913,"ts":531360700110,"ph":"X","name":"LayerHost::Upload","args":{},"dur":193,"tdur":83,"tts":837803},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360700314,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":38,"tdur":37,"tts":837898},{"cat":"blink","pid":25863,"tid":25913,"ts":531360700318,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":29,"tdur":29,"tts":837902},{"cat":"v8","pid":25863,"tid":25913,"ts":531360700321,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":25,"tdur":24,"tts":837905},{"cat":"v8","pid":25863,"tid":25913,"ts":531360700323,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":21,"tts":837907},{"cat":"v8","pid":25863,"tid":25913,"ts":531360700325,"ph":"B","name":"V8.Execute","args":{},"tts":837909},{"cat":"blink","pid":25863,"tid":25913,"ts":531360700333,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":837917},{"cat":"blink","pid":25863,"tid":25913,"ts":531360700339,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":837923},{"cat":"v8","pid":25863,"tid":25913,"ts":531360700343,"ph":"E","name":"V8.Execute","args":{},"tts":837927},{"cat":"sky","pid":25863,"tid":25913,"ts":531360771391,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2434,"tdur":2257,"tts":838133},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771396,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":137,"tdur":137,"tts":838137},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771399,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":16,"tdur":15,"tts":838140},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771416,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":35,"tdur":34,"tts":838157},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771422,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":28,"tdur":28,"tts":838163},{"cat":"v8","pid":25863,"tid":25913,"ts":531360771436,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":10,"tts":838177},{"cat":"v8","pid":25863,"tid":25913,"ts":531360771438,"ph":"B","name":"V8.Execute","args":{},"tts":838179},{"cat":"v8","pid":25863,"tid":25913,"ts":531360771445,"ph":"E","name":"V8.Execute","args":{},"tts":838186},{"cat":"v8","pid":25863,"tid":25913,"ts":531360771453,"ph":"X","name":"v8.callFunction","args":{},"dur":78,"tdur":77,"tts":838194},{"cat":"v8","pid":25863,"tid":25913,"ts":531360771455,"ph":"B","name":"V8.Execute","args":{},"tts":838196},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771459,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":9,"tts":838200},{"cat":"v8","pid":25863,"tid":25913,"ts":531360771527,"ph":"E","name":"V8.Execute","args":{},"tts":838269},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771534,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":325,"tdur":325,"tts":838275},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771536,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":838277},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771538,"ph":"X","name":"Document::updateStyle","args":{},"dur":61,"tdur":60,"tts":838279},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771600,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":838341},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771603,"ph":"X","name":"FrameView::layout","args":{},"dur":28,"tdur":27,"tts":838344},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771604,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":2,"tdur":1,"tts":838345},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771606,"ph":"X","name":"FrameView::performLayout","args":{},"dur":16,"tdur":16,"tts":838347},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771623,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":2,"tdur":2,"tts":838363},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771625,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":4,"tdur":4,"tts":838366},{"cat":"blink","pid":25863,"tid":25913,"ts":531360771634,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":225,"tdur":224,"tts":838375},{"cat":"sky","pid":25863,"tid":25913,"ts":531360771860,"ph":"X","name":"Layer::Display","args":{},"dur":1637,"tdur":1622,"tts":838601},{"cat":"sky","pid":25863,"tid":25913,"ts":531360773498,"ph":"X","name":"LayerHost::Upload","args":{},"dur":326,"tdur":160,"tts":840228},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360773843,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":98,"tdur":97,"tts":840408},{"cat":"blink","pid":25863,"tid":25913,"ts":531360773863,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":67,"tdur":66,"tts":840428},{"cat":"v8","pid":25863,"tid":25913,"ts":531360773869,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":59,"tdur":58,"tts":840434},{"cat":"v8","pid":25863,"tid":25913,"ts":531360773876,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":840441},{"cat":"v8","pid":25863,"tid":25913,"ts":531360773880,"ph":"B","name":"V8.Execute","args":{},"tts":840444},{"cat":"blink","pid":25863,"tid":25913,"ts":531360773898,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":22,"tdur":20,"tts":840463},{"cat":"blink","pid":25863,"tid":25913,"ts":531360773912,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":840477},{"cat":"v8","pid":25863,"tid":25913,"ts":531360773922,"ph":"E","name":"V8.Execute","args":{},"tts":840486},{"cat":"sky","pid":25863,"tid":25913,"ts":531360774701,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2415,"tdur":2249,"tts":840879},{"cat":"blink","pid":25863,"tid":25913,"ts":531360774711,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":211,"tdur":210,"tts":840887},{"cat":"blink","pid":25863,"tid":25913,"ts":531360774717,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":840893},{"cat":"blink","pid":25863,"tid":25913,"ts":531360774725,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":74,"tdur":74,"tts":840901},{"cat":"blink","pid":25863,"tid":25913,"ts":531360774740,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":58,"tdur":57,"tts":840916},{"cat":"v8","pid":25863,"tid":25913,"ts":531360774768,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":840944},{"cat":"v8","pid":25863,"tid":25913,"ts":531360774772,"ph":"B","name":"V8.Execute","args":{},"tts":840948},{"cat":"v8","pid":25863,"tid":25913,"ts":531360774787,"ph":"E","name":"V8.Execute","args":{},"tts":840963},{"cat":"v8","pid":25863,"tid":25913,"ts":531360774804,"ph":"X","name":"v8.callFunction","args":{},"dur":113,"tdur":113,"tts":840980},{"cat":"v8","pid":25863,"tid":25913,"ts":531360774807,"ph":"B","name":"V8.Execute","args":{},"tts":840983},{"cat":"blink","pid":25863,"tid":25913,"ts":531360774816,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":840992},{"cat":"v8","pid":25863,"tid":25913,"ts":531360774911,"ph":"E","name":"V8.Execute","args":{},"tts":841088},{"cat":"blink","pid":25863,"tid":25913,"ts":531360774923,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":67,"tdur":66,"tts":841099},{"cat":"blink","pid":25863,"tid":25913,"ts":531360774927,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":841103},{"cat":"blink","pid":25863,"tid":25913,"ts":531360774930,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":39,"tts":841106},{"cat":"blink","pid":25863,"tid":25913,"ts":531360774971,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":841147},{"cat":"blink","pid":25863,"tid":25913,"ts":531360774980,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":8,"tts":841156},{"cat":"sky","pid":25863,"tid":25913,"ts":531360774991,"ph":"X","name":"Layer::Display","args":{},"dur":1832,"tdur":1830,"tts":841167},{"cat":"sky","pid":25863,"tid":25913,"ts":531360776825,"ph":"X","name":"LayerHost::Upload","args":{},"dur":289,"tdur":125,"tts":843001},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360777140,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":82,"tdur":81,"tts":843154},{"cat":"blink","pid":25863,"tid":25913,"ts":531360777150,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":62,"tdur":62,"tts":843163},{"cat":"v8","pid":25863,"tid":25913,"ts":531360777155,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":55,"tdur":53,"tts":843169},{"cat":"v8","pid":25863,"tid":25913,"ts":531360777161,"ph":"X","name":"v8.callFunction","args":{},"dur":46,"tdur":46,"tts":843174},{"cat":"v8","pid":25863,"tid":25913,"ts":531360777165,"ph":"B","name":"V8.Execute","args":{},"tts":843178},{"cat":"blink","pid":25863,"tid":25913,"ts":531360777182,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":843195},{"cat":"blink","pid":25863,"tid":25913,"ts":531360777195,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":843208},{"cat":"v8","pid":25863,"tid":25913,"ts":531360777204,"ph":"E","name":"V8.Execute","args":{},"tts":843217},{"cat":"sky","pid":25863,"tid":25913,"ts":531360777979,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2493,"tdur":2319,"tts":843628},{"cat":"blink","pid":25863,"tid":25913,"ts":531360777988,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":236,"tdur":235,"tts":843636},{"cat":"blink","pid":25863,"tid":25913,"ts":531360777995,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":843642},{"cat":"blink","pid":25863,"tid":25913,"ts":531360778002,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":98,"tdur":98,"tts":843649},{"cat":"blink","pid":25863,"tid":25913,"ts":531360778028,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":71,"tdur":70,"tts":843676},{"cat":"v8","pid":25863,"tid":25913,"ts":531360778057,"ph":"X","name":"v8.callFunction","args":{},"dur":34,"tdur":33,"tts":843705},{"cat":"v8","pid":25863,"tid":25913,"ts":531360778061,"ph":"B","name":"V8.Execute","args":{},"tts":843709},{"cat":"v8","pid":25863,"tid":25913,"ts":531360778076,"ph":"E","name":"V8.Execute","args":{},"tts":843723},{"cat":"v8","pid":25863,"tid":25913,"ts":531360778105,"ph":"X","name":"v8.callFunction","args":{},"dur":115,"tdur":114,"tts":843753},{"cat":"v8","pid":25863,"tid":25913,"ts":531360778109,"ph":"B","name":"V8.Execute","args":{},"tts":843756},{"cat":"blink","pid":25863,"tid":25913,"ts":531360778117,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":20,"tts":843765},{"cat":"v8","pid":25863,"tid":25913,"ts":531360778213,"ph":"E","name":"V8.Execute","args":{},"tts":843862},{"cat":"blink","pid":25863,"tid":25913,"ts":531360778226,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":66,"tts":843873},{"cat":"blink","pid":25863,"tid":25913,"ts":531360778230,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":843878},{"cat":"blink","pid":25863,"tid":25913,"ts":531360778233,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":39,"tts":843880},{"cat":"blink","pid":25863,"tid":25913,"ts":531360778274,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":843921},{"cat":"blink","pid":25863,"tid":25913,"ts":531360778283,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":843930},{"cat":"sky","pid":25863,"tid":25913,"ts":531360778294,"ph":"X","name":"Layer::Display","args":{},"dur":1808,"tdur":1806,"tts":843941},{"cat":"sky","pid":25863,"tid":25913,"ts":531360780104,"ph":"X","name":"LayerHost::Upload","args":{},"dur":366,"tdur":192,"tts":845752},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360780499,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":88,"tdur":87,"tts":845974},{"cat":"blink","pid":25863,"tid":25913,"ts":531360780510,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":66,"tts":845985},{"cat":"v8","pid":25863,"tid":25913,"ts":531360780515,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":59,"tdur":57,"tts":845991},{"cat":"v8","pid":25863,"tid":25913,"ts":531360780521,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":49,"tts":845997},{"cat":"v8","pid":25863,"tid":25913,"ts":531360780525,"ph":"B","name":"V8.Execute","args":{},"tts":846001},{"cat":"blink","pid":25863,"tid":25913,"ts":531360780543,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":22,"tdur":21,"tts":846019},{"cat":"blink","pid":25863,"tid":25913,"ts":531360780557,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":7,"tdur":6,"tts":846033},{"cat":"v8","pid":25863,"tid":25913,"ts":531360780567,"ph":"E","name":"V8.Execute","args":{},"tts":846043},{"cat":"sky","pid":25863,"tid":25913,"ts":531360781165,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2395,"tdur":2250,"tts":846362},{"cat":"blink","pid":25863,"tid":25913,"ts":531360781173,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":212,"tdur":211,"tts":846370},{"cat":"blink","pid":25863,"tid":25913,"ts":531360781180,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":846377},{"cat":"blink","pid":25863,"tid":25913,"ts":531360781187,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":74,"tdur":73,"tts":846384},{"cat":"blink","pid":25863,"tid":25913,"ts":531360781202,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":58,"tdur":57,"tts":846399},{"cat":"v8","pid":25863,"tid":25913,"ts":531360781230,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":846427},{"cat":"v8","pid":25863,"tid":25913,"ts":531360781235,"ph":"B","name":"V8.Execute","args":{},"tts":846431},{"cat":"v8","pid":25863,"tid":25913,"ts":531360781249,"ph":"E","name":"V8.Execute","args":{},"tts":846446},{"cat":"v8","pid":25863,"tid":25913,"ts":531360781266,"ph":"X","name":"v8.callFunction","args":{},"dur":114,"tdur":114,"tts":846462},{"cat":"v8","pid":25863,"tid":25913,"ts":531360781269,"ph":"B","name":"V8.Execute","args":{},"tts":846466},{"cat":"blink","pid":25863,"tid":25913,"ts":531360781278,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":21,"tts":846474},{"cat":"v8","pid":25863,"tid":25913,"ts":531360781373,"ph":"E","name":"V8.Execute","args":{},"tts":846571},{"cat":"blink","pid":25863,"tid":25913,"ts":531360781386,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":846583},{"cat":"blink","pid":25863,"tid":25913,"ts":531360781390,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":846587},{"cat":"blink","pid":25863,"tid":25913,"ts":531360781393,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":39,"tts":846590},{"cat":"blink","pid":25863,"tid":25913,"ts":531360781434,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":846631},{"cat":"blink","pid":25863,"tid":25913,"ts":531360781443,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":846640},{"cat":"sky","pid":25863,"tid":25913,"ts":531360781454,"ph":"X","name":"Layer::Display","args":{},"dur":1782,"tdur":1780,"tts":846651},{"cat":"sky","pid":25863,"tid":25913,"ts":531360783238,"ph":"X","name":"LayerHost::Upload","args":{},"dur":320,"tdur":174,"tts":848435},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360783587,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":93,"tdur":93,"tts":848639},{"cat":"blink","pid":25863,"tid":25913,"ts":531360783597,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":73,"tdur":71,"tts":848650},{"cat":"v8","pid":25863,"tid":25913,"ts":531360783603,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":64,"tdur":63,"tts":848656},{"cat":"v8","pid":25863,"tid":25913,"ts":531360783609,"ph":"X","name":"v8.callFunction","args":{},"dur":56,"tdur":54,"tts":848662},{"cat":"v8","pid":25863,"tid":25913,"ts":531360783613,"ph":"B","name":"V8.Execute","args":{},"tts":848665},{"cat":"blink","pid":25863,"tid":25913,"ts":531360783637,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":22,"tdur":20,"tts":848690},{"cat":"blink","pid":25863,"tid":25913,"ts":531360783651,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":7,"tdur":5,"tts":848704},{"cat":"v8","pid":25863,"tid":25913,"ts":531360783661,"ph":"E","name":"V8.Execute","args":{},"tts":848713},{"cat":"sky","pid":25863,"tid":25913,"ts":531360838041,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2270,"tdur":2105,"tts":849061},{"cat":"blink","pid":25863,"tid":25913,"ts":531360838064,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":236,"tdur":235,"tts":849083},{"cat":"blink","pid":25863,"tid":25913,"ts":531360838071,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":849090},{"cat":"blink","pid":25863,"tid":25913,"ts":531360838078,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":78,"tdur":77,"tts":849097},{"cat":"blink","pid":25863,"tid":25913,"ts":531360838094,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":61,"tdur":60,"tts":849113},{"cat":"v8","pid":25863,"tid":25913,"ts":531360838123,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":22,"tts":849143},{"cat":"v8","pid":25863,"tid":25913,"ts":531360838128,"ph":"B","name":"V8.Execute","args":{},"tts":849147},{"cat":"v8","pid":25863,"tid":25913,"ts":531360838143,"ph":"E","name":"V8.Execute","args":{},"tts":849162},{"cat":"v8","pid":25863,"tid":25913,"ts":531360838160,"ph":"X","name":"v8.callFunction","args":{},"dur":138,"tdur":137,"tts":849179},{"cat":"v8","pid":25863,"tid":25913,"ts":531360838164,"ph":"B","name":"V8.Execute","args":{},"tts":849183},{"cat":"blink","pid":25863,"tid":25913,"ts":531360838172,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":21,"tts":849191},{"cat":"v8","pid":25863,"tid":25913,"ts":531360838295,"ph":"E","name":"V8.Execute","args":{},"tts":849314},{"cat":"blink","pid":25863,"tid":25913,"ts":531360838300,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":29,"tdur":29,"tts":849319},{"cat":"blink","pid":25863,"tid":25913,"ts":531360838302,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":849321},{"cat":"blink","pid":25863,"tid":25913,"ts":531360838303,"ph":"X","name":"Document::updateStyle","args":{},"dur":18,"tdur":17,"tts":849322},{"cat":"blink","pid":25863,"tid":25913,"ts":531360838321,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":849340},{"cat":"blink","pid":25863,"tid":25913,"ts":531360838325,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":849344},{"cat":"sky","pid":25863,"tid":25913,"ts":531360838343,"ph":"X","name":"Layer::Display","args":{},"dur":1708,"tdur":1654,"tts":849362},{"cat":"sky","pid":25863,"tid":25913,"ts":531360840053,"ph":"X","name":"LayerHost::Upload","args":{},"dur":256,"tdur":112,"tts":851052},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360840336,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":80,"tdur":79,"tts":851193},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840346,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":66,"tts":851202},{"cat":"v8","pid":25863,"tid":25913,"ts":531360840351,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":59,"tdur":58,"tts":851208},{"cat":"v8","pid":25863,"tid":25913,"ts":531360840357,"ph":"X","name":"v8.callFunction","args":{},"dur":52,"tdur":51,"tts":851214},{"cat":"v8","pid":25863,"tid":25913,"ts":531360840361,"ph":"B","name":"V8.Execute","args":{},"tts":851218},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840378,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":29,"tdur":28,"tts":851235},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840404,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":851260},{"cat":"v8","pid":25863,"tid":25913,"ts":531360840408,"ph":"E","name":"V8.Execute","args":{},"tts":851264},{"cat":"sky","pid":25863,"tid":25913,"ts":531360840729,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":961,"tdur":910,"tts":851372},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840731,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":82,"tdur":82,"tts":851374},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840734,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":851376},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840736,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":30,"tdur":30,"tts":851379},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840745,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":21,"tdur":20,"tts":851388},{"cat":"v8","pid":25863,"tid":25913,"ts":531360840754,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":9,"tts":851397},{"cat":"v8","pid":25863,"tid":25913,"ts":531360840756,"ph":"B","name":"V8.Execute","args":{},"tts":851399},{"cat":"v8","pid":25863,"tid":25913,"ts":531360840762,"ph":"E","name":"V8.Execute","args":{},"tts":851405},{"cat":"v8","pid":25863,"tid":25913,"ts":531360840768,"ph":"X","name":"v8.callFunction","args":{},"dur":43,"tdur":43,"tts":851411},{"cat":"v8","pid":25863,"tid":25913,"ts":531360840769,"ph":"B","name":"V8.Execute","args":{},"tts":851412},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840773,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":8,"tdur":7,"tts":851416},{"cat":"v8","pid":25863,"tid":25913,"ts":531360840809,"ph":"E","name":"V8.Execute","args":{},"tts":851452},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840814,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":25,"tdur":24,"tts":851457},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840815,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":851458},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840817,"ph":"X","name":"Document::updateStyle","args":{},"dur":15,"tdur":14,"tts":851460},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840832,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":851475},{"cat":"blink","pid":25863,"tid":25913,"ts":531360840835,"ph":"X","name":"FrameView::invalidateTree","args":{"root":"X:أ&+"},"dur":3,"tdur":3,"tts":851478},{"cat":"sky","pid":25863,"tid":25913,"ts":531360840839,"ph":"X","name":"Layer::Display","args":{},"dur":712,"tdur":711,"tts":851482},{"cat":"sky","pid":25863,"tid":25913,"ts":531360841552,"ph":"X","name":"LayerHost::Upload","args":{},"dur":137,"tdur":85,"tts":852195},{"cat":"sky","pid":25863,"tid":25913,"ts":531360842048,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":988,"tdur":942,"tts":852485},{"cat":"blink","pid":25863,"tid":25913,"ts":531360842051,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":93,"tdur":92,"tts":852488},{"cat":"blink","pid":25863,"tid":25913,"ts":531360842054,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":852491},{"cat":"blink","pid":25863,"tid":25913,"ts":531360842057,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":31,"tdur":30,"tts":852494},{"cat":"blink","pid":25863,"tid":25913,"ts":531360842063,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":24,"tdur":24,"tts":852500},{"cat":"v8","pid":25863,"tid":25913,"ts":531360842075,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":9,"tts":852512},{"cat":"v8","pid":25863,"tid":25913,"ts":531360842077,"ph":"B","name":"V8.Execute","args":{},"tts":852513},{"cat":"v8","pid":25863,"tid":25913,"ts":531360842083,"ph":"E","name":"V8.Execute","args":{},"tts":852519},{"cat":"v8","pid":25863,"tid":25913,"ts":531360842090,"ph":"X","name":"v8.callFunction","args":{},"dur":52,"tdur":52,"tts":852526},{"cat":"v8","pid":25863,"tid":25913,"ts":531360842091,"ph":"B","name":"V8.Execute","args":{},"tts":852528},{"cat":"blink","pid":25863,"tid":25913,"ts":531360842094,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":9,"tts":852531},{"cat":"v8","pid":25863,"tid":25913,"ts":531360842139,"ph":"E","name":"V8.Execute","args":{},"tts":852576},{"cat":"blink","pid":25863,"tid":25913,"ts":531360842144,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":28,"tdur":27,"tts":852581},{"cat":"blink","pid":25863,"tid":25913,"ts":531360842146,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":852583},{"cat":"blink","pid":25863,"tid":25913,"ts":531360842147,"ph":"X","name":"Document::updateStyle","args":{},"dur":17,"tdur":16,"tts":852584},{"cat":"blink","pid":25863,"tid":25913,"ts":531360842164,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":852601},{"cat":"blink","pid":25863,"tid":25913,"ts":531360842168,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":852605},{"cat":"sky","pid":25863,"tid":25913,"ts":531360842172,"ph":"X","name":"Layer::Display","args":{},"dur":730,"tdur":729,"tts":852609},{"cat":"sky","pid":25863,"tid":25913,"ts":531360842903,"ph":"X","name":"LayerHost::Upload","args":{},"dur":132,"tdur":86,"tts":853340},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360843046,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":36,"tdur":36,"tts":853437},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843050,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":27,"tts":853442},{"cat":"v8","pid":25863,"tid":25913,"ts":531360843053,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":23,"tdur":23,"tts":853444},{"cat":"v8","pid":25863,"tid":25913,"ts":531360843055,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":19,"tts":853447},{"cat":"v8","pid":25863,"tid":25913,"ts":531360843057,"ph":"B","name":"V8.Execute","args":{},"tts":853448},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843064,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":853456},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843070,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":853461},{"cat":"v8","pid":25863,"tid":25913,"ts":531360843074,"ph":"E","name":"V8.Execute","args":{},"tts":853465},{"cat":"sky","pid":25863,"tid":25913,"ts":531360843396,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1031,"tdur":969,"tts":853587},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843399,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":91,"tdur":91,"tts":853589},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843402,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":1,"tdur":1,"tts":853592},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843404,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":29,"tdur":28,"tts":853595},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843410,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":23,"tdur":23,"tts":853600},{"cat":"v8","pid":25863,"tid":25913,"ts":531360843421,"ph":"X","name":"v8.callFunction","args":{},"dur":9,"tdur":9,"tts":853611},{"cat":"v8","pid":25863,"tid":25913,"ts":531360843423,"ph":"B","name":"V8.Execute","args":{},"tts":853613},{"cat":"v8","pid":25863,"tid":25913,"ts":531360843428,"ph":"E","name":"V8.Execute","args":{},"tts":853619},{"cat":"v8","pid":25863,"tid":25913,"ts":531360843435,"ph":"X","name":"v8.callFunction","args":{},"dur":53,"tdur":53,"tts":853625},{"cat":"v8","pid":25863,"tid":25913,"ts":531360843446,"ph":"B","name":"V8.Execute","args":{},"tts":853637},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843450,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":9,"tdur":8,"tts":853641},{"cat":"v8","pid":25863,"tid":25913,"ts":531360843486,"ph":"E","name":"V8.Execute","args":{},"tts":853676},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843491,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":27,"tdur":27,"tts":853681},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843493,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":853683},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843494,"ph":"X","name":"Document::updateStyle","args":{},"dur":16,"tdur":16,"tts":853684},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843511,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":853701},{"cat":"blink","pid":25863,"tid":25913,"ts":531360843515,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":3,"tdur":3,"tts":853705},{"cat":"sky","pid":25863,"tid":25913,"ts":531360843519,"ph":"X","name":"Layer::Display","args":{},"dur":774,"tdur":762,"tts":853709},{"cat":"sky","pid":25863,"tid":25913,"ts":531360844293,"ph":"X","name":"LayerHost::Upload","args":{},"dur":133,"tdur":82,"tts":854473},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360844438,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":36,"tdur":36,"tts":854567},{"cat":"blink","pid":25863,"tid":25913,"ts":531360844442,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":27,"tdur":26,"tts":854572},{"cat":"v8","pid":25863,"tid":25913,"ts":531360844445,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":23,"tdur":23,"tts":854574},{"cat":"v8","pid":25863,"tid":25913,"ts":531360844447,"ph":"X","name":"v8.callFunction","args":{},"dur":20,"tdur":19,"tts":854577},{"cat":"v8","pid":25863,"tid":25913,"ts":531360844449,"ph":"B","name":"V8.Execute","args":{},"tts":854578},{"cat":"blink","pid":25863,"tid":25913,"ts":531360844456,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":8,"tts":854586},{"cat":"blink","pid":25863,"tid":25913,"ts":531360844462,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":2,"tdur":2,"tts":854591},{"cat":"v8","pid":25863,"tid":25913,"ts":531360844466,"ph":"E","name":"V8.Execute","args":{},"tts":854595},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360845551,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":50,"tdur":50,"tts":854725},{"cat":"blink","pid":25863,"tid":25913,"ts":531360845555,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":42,"tdur":42,"tts":854729},{"cat":"v8","pid":25863,"tid":25913,"ts":531360845558,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":38,"tdur":39,"tts":854731},{"cat":"v8","pid":25863,"tid":25913,"ts":531360845560,"ph":"X","name":"v8.callFunction","args":{},"dur":35,"tdur":35,"tts":854734},{"cat":"v8","pid":25863,"tid":25913,"ts":531360845561,"ph":"B","name":"V8.Execute","args":{},"tts":854735},{"cat":"blink","pid":25863,"tid":25913,"ts":531360845573,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":854747},{"cat":"blink","pid":25863,"tid":25913,"ts":531360845590,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":2,"tts":854764},{"cat":"v8","pid":25863,"tid":25913,"ts":531360845594,"ph":"E","name":"V8.Execute","args":{},"tts":854767},{"cat":"sky","pid":25863,"tid":25913,"ts":531360903160,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2097,"tdur":1922,"tts":854848},{"cat":"blink","pid":25863,"tid":25913,"ts":531360903165,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":186,"tdur":186,"tts":854851},{"cat":"blink","pid":25863,"tid":25913,"ts":531360903168,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":1,"tts":854855},{"cat":"blink","pid":25863,"tid":25913,"ts":531360903172,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":42,"tdur":42,"tts":854858},{"cat":"blink","pid":25863,"tid":25913,"ts":531360903185,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":28,"tdur":28,"tts":854871},{"cat":"v8","pid":25863,"tid":25913,"ts":531360903199,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":854885},{"cat":"v8","pid":25863,"tid":25913,"ts":531360903201,"ph":"B","name":"V8.Execute","args":{},"tts":854887},{"cat":"v8","pid":25863,"tid":25913,"ts":531360903208,"ph":"E","name":"V8.Execute","args":{},"tts":854894},{"cat":"v8","pid":25863,"tid":25913,"ts":531360903231,"ph":"X","name":"v8.callFunction","args":{},"dur":115,"tdur":115,"tts":854917},{"cat":"v8","pid":25863,"tid":25913,"ts":531360903235,"ph":"B","name":"V8.Execute","args":{},"tts":854921},{"cat":"blink","pid":25863,"tid":25913,"ts":531360903243,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":21,"tts":854930},{"cat":"v8","pid":25863,"tid":25913,"ts":531360903340,"ph":"E","name":"V8.Execute","args":{},"tts":855027},{"cat":"blink","pid":25863,"tid":25913,"ts":531360903352,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":78,"tdur":77,"tts":855039},{"cat":"blink","pid":25863,"tid":25913,"ts":531360903356,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":855043},{"cat":"blink","pid":25863,"tid":25913,"ts":531360903360,"ph":"X","name":"Document::updateStyle","args":{},"dur":39,"tdur":39,"tts":855046},{"cat":"blink","pid":25863,"tid":25913,"ts":531360903400,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":855087},{"cat":"blink","pid":25863,"tid":25913,"ts":531360903409,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":20,"tdur":19,"tts":855096},{"cat":"sky","pid":25863,"tid":25913,"ts":531360903430,"ph":"X","name":"Layer::Display","args":{},"dur":1487,"tdur":1475,"tts":855117},{"cat":"sky","pid":25863,"tid":25913,"ts":531360904919,"ph":"X","name":"LayerHost::Upload","args":{},"dur":336,"tdur":170,"tts":856596},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360905283,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":87,"tdur":86,"tts":856797},{"cat":"blink","pid":25863,"tid":25913,"ts":531360905294,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":66,"tts":856807},{"cat":"v8","pid":25863,"tid":25913,"ts":531360905299,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":57,"tts":856813},{"cat":"v8","pid":25863,"tid":25913,"ts":531360905305,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":49,"tts":856819},{"cat":"v8","pid":25863,"tid":25913,"ts":531360905309,"ph":"B","name":"V8.Execute","args":{},"tts":856823},{"cat":"blink","pid":25863,"tid":25913,"ts":531360905328,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":21,"tts":856841},{"cat":"blink","pid":25863,"tid":25913,"ts":531360905342,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":6,"tts":856855},{"cat":"v8","pid":25863,"tid":25913,"ts":531360905351,"ph":"E","name":"V8.Execute","args":{},"tts":856864},{"cat":"sky","pid":25863,"tid":25913,"ts":531360906096,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2411,"tdur":2259,"tts":857256},{"cat":"blink","pid":25863,"tid":25913,"ts":531360906105,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":232,"tdur":231,"tts":857263},{"cat":"blink","pid":25863,"tid":25913,"ts":531360906112,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":857270},{"cat":"blink","pid":25863,"tid":25913,"ts":531360906119,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":75,"tdur":74,"tts":857277},{"cat":"blink","pid":25863,"tid":25913,"ts":531360906134,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":857292},{"cat":"v8","pid":25863,"tid":25913,"ts":531360906162,"ph":"X","name":"v8.callFunction","args":{},"dur":24,"tdur":22,"tts":857321},{"cat":"v8","pid":25863,"tid":25913,"ts":531360906167,"ph":"B","name":"V8.Execute","args":{},"tts":857325},{"cat":"v8","pid":25863,"tid":25913,"ts":531360906181,"ph":"E","name":"V8.Execute","args":{},"tts":857340},{"cat":"v8","pid":25863,"tid":25913,"ts":531360906198,"ph":"X","name":"v8.callFunction","args":{},"dur":133,"tdur":132,"tts":857357},{"cat":"v8","pid":25863,"tid":25913,"ts":531360906202,"ph":"B","name":"V8.Execute","args":{},"tts":857360},{"cat":"blink","pid":25863,"tid":25913,"ts":531360906210,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":38,"tdur":37,"tts":857368},{"cat":"v8","pid":25863,"tid":25913,"ts":531360906325,"ph":"E","name":"V8.Execute","args":{},"tts":857484},{"cat":"blink","pid":25863,"tid":25913,"ts":531360906338,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":66,"tts":857496},{"cat":"blink","pid":25863,"tid":25913,"ts":531360906342,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":857500},{"cat":"blink","pid":25863,"tid":25913,"ts":531360906345,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":39,"tts":857503},{"cat":"blink","pid":25863,"tid":25913,"ts":531360906386,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":857544},{"cat":"blink","pid":25863,"tid":25913,"ts":531360906395,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":8,"tts":857553},{"cat":"sky","pid":25863,"tid":25913,"ts":531360906406,"ph":"X","name":"Layer::Display","args":{},"dur":1776,"tdur":1774,"tts":857564},{"cat":"sky","pid":25863,"tid":25913,"ts":531360908184,"ph":"X","name":"LayerHost::Upload","args":{},"dur":321,"tdur":170,"tts":859342},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360908534,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":87,"tdur":86,"tts":859543},{"cat":"blink","pid":25863,"tid":25913,"ts":531360908545,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":65,"tts":859554},{"cat":"v8","pid":25863,"tid":25913,"ts":531360908550,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":57,"tts":859559},{"cat":"v8","pid":25863,"tid":25913,"ts":531360908557,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":48,"tts":859566},{"cat":"v8","pid":25863,"tid":25913,"ts":531360908561,"ph":"B","name":"V8.Execute","args":{},"tts":859569},{"cat":"blink","pid":25863,"tid":25913,"ts":531360908579,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":859588},{"cat":"blink","pid":25863,"tid":25913,"ts":531360908593,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":859602},{"cat":"v8","pid":25863,"tid":25913,"ts":531360908602,"ph":"E","name":"V8.Execute","args":{},"tts":859611},{"cat":"sky","pid":25863,"tid":25913,"ts":531360909328,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2383,"tdur":2255,"tts":860001},{"cat":"blink","pid":25863,"tid":25913,"ts":531360909337,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":222,"tdur":222,"tts":860008},{"cat":"blink","pid":25863,"tid":25913,"ts":531360909344,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":860015},{"cat":"blink","pid":25863,"tid":25913,"ts":531360909351,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":85,"tdur":85,"tts":860022},{"cat":"blink","pid":25863,"tid":25913,"ts":531360909376,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":57,"tts":860048},{"cat":"v8","pid":25863,"tid":25913,"ts":531360909405,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":21,"tts":860077},{"cat":"v8","pid":25863,"tid":25913,"ts":531360909409,"ph":"B","name":"V8.Execute","args":{},"tts":860081},{"cat":"v8","pid":25863,"tid":25913,"ts":531360909424,"ph":"E","name":"V8.Execute","args":{},"tts":860095},{"cat":"v8","pid":25863,"tid":25913,"ts":531360909441,"ph":"X","name":"v8.callFunction","args":{},"dur":113,"tdur":113,"tts":860112},{"cat":"v8","pid":25863,"tid":25913,"ts":531360909444,"ph":"B","name":"V8.Execute","args":{},"tts":860115},{"cat":"blink","pid":25863,"tid":25913,"ts":531360909452,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":22,"tdur":21,"tts":860123},{"cat":"v8","pid":25863,"tid":25913,"ts":531360909548,"ph":"E","name":"V8.Execute","args":{},"tts":860220},{"cat":"blink","pid":25863,"tid":25913,"ts":531360909560,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":66,"tts":860231},{"cat":"blink","pid":25863,"tid":25913,"ts":531360909564,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":860236},{"cat":"blink","pid":25863,"tid":25913,"ts":531360909567,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":38,"tts":860239},{"cat":"blink","pid":25863,"tid":25913,"ts":531360909608,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":860279},{"cat":"blink","pid":25863,"tid":25913,"ts":531360909617,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":860288},{"cat":"sky","pid":25863,"tid":25913,"ts":531360909628,"ph":"X","name":"Layer::Display","args":{},"dur":1773,"tdur":1771,"tts":860299},{"cat":"sky","pid":25863,"tid":25913,"ts":531360911403,"ph":"X","name":"LayerHost::Upload","args":{},"dur":306,"tdur":178,"tts":862075},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360911737,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":86,"tdur":86,"tts":862283},{"cat":"blink","pid":25863,"tid":25913,"ts":531360911748,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":65,"tts":862294},{"cat":"v8","pid":25863,"tid":25913,"ts":531360911753,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":57,"tts":862299},{"cat":"v8","pid":25863,"tid":25913,"ts":531360911759,"ph":"X","name":"v8.callFunction","args":{},"dur":49,"tdur":49,"tts":862305},{"cat":"v8","pid":25863,"tid":25913,"ts":531360911763,"ph":"B","name":"V8.Execute","args":{},"tts":862309},{"cat":"blink","pid":25863,"tid":25913,"ts":531360911781,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":20,"tts":862328},{"cat":"blink","pid":25863,"tid":25913,"ts":531360911795,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":862341},{"cat":"v8","pid":25863,"tid":25913,"ts":531360911804,"ph":"E","name":"V8.Execute","args":{},"tts":862350},{"cat":"sky","pid":25863,"tid":25913,"ts":531360912432,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":3656,"tdur":3518,"tts":862602},{"cat":"blink","pid":25863,"tid":25913,"ts":531360912438,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":787,"tdur":786,"tts":862608},{"cat":"blink","pid":25863,"tid":25913,"ts":531360912444,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":2,"tts":862614},{"cat":"blink","pid":25863,"tid":25913,"ts":531360912450,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":68,"tdur":67,"tts":862620},{"cat":"blink","pid":25863,"tid":25913,"ts":531360912463,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":54,"tdur":54,"tts":862632},{"cat":"v8","pid":25863,"tid":25913,"ts":531360912488,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":862658},{"cat":"v8","pid":25863,"tid":25913,"ts":531360912492,"ph":"B","name":"V8.Execute","args":{},"tts":862662},{"cat":"v8","pid":25863,"tid":25913,"ts":531360912507,"ph":"E","name":"V8.Execute","args":{},"tts":862676},{"cat":"v8","pid":25863,"tid":25913,"ts":531360912522,"ph":"X","name":"v8.callFunction","args":{},"dur":696,"tdur":694,"tts":862692},{"cat":"v8","pid":25863,"tid":25913,"ts":531360912526,"ph":"B","name":"V8.Execute","args":{},"tts":862695},{"cat":"blink","pid":25863,"tid":25913,"ts":531360912534,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":862704},{"cat":"v8","pid":25863,"tid":25913,"ts":531360912653,"ph":"B","name":"V8.ParseLazy","args":{},"tts":862824},{"cat":"v8","pid":25863,"tid":25913,"ts":531360912755,"ph":"E","name":"V8.ParseLazy","args":{},"tts":862925},{"cat":"v8","pid":25863,"tid":25913,"ts":531360912775,"ph":"B","name":"V8.RecompileSynchronous","args":{},"tts":862945},{"cat":"v8","pid":25863,"tid":25913,"ts":531360912780,"ph":"B","name":"V8.CompileFullCode","args":{},"tts":862950},{"cat":"v8","pid":25863,"tid":25913,"ts":531360912875,"ph":"E","name":"V8.CompileFullCode","args":{},"tts":863046},{"cat":"v8","pid":25863,"tid":25913,"ts":531360913004,"ph":"E","name":"V8.RecompileSynchronous","args":{},"tts":863174},{"cat":"v8","pid":25863,"tid":25913,"ts":531360913133,"ph":"E","name":"V8.Execute","args":{},"tts":863304},{"cat":"blink","pid":25863,"tid":25913,"ts":531360913226,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":775,"tdur":774,"tts":863396},{"cat":"blink","pid":25863,"tid":25913,"ts":531360913232,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":863402},{"cat":"blink","pid":25863,"tid":25913,"ts":531360913236,"ph":"X","name":"Document::updateStyle","args":{},"dur":121,"tdur":120,"tts":863406},{"cat":"blink","pid":25863,"tid":25913,"ts":531360913359,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":4},"tts":863529},{"cat":"blink","pid":25863,"tid":25913,"ts":531360913364,"ph":"X","name":"FrameView::layout","args":{},"dur":150,"tdur":149,"tts":863534},{"cat":"blink","pid":25863,"tid":25913,"ts":531360913367,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":4,"tdur":3,"tts":863537},{"cat":"blink","pid":25863,"tid":25913,"ts":531360913372,"ph":"X","name":"FrameView::performLayout","args":{},"dur":120,"tdur":118,"tts":863542},{"cat":"blink","pid":25863,"tid":25913,"ts":531360913494,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":6,"tdur":5,"tts":863664},{"cat":"blink","pid":25863,"tid":25913,"ts":531360913500,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":11,"tdur":10,"tts":863670},{"cat":"blink","pid":25863,"tid":25913,"ts":531360913520,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":479,"tdur":478,"tts":863690},{"cat":"sky","pid":25863,"tid":25913,"ts":531360914003,"ph":"X","name":"Layer::Display","args":{},"dur":1794,"tdur":1792,"tts":864173},{"cat":"sky","pid":25863,"tid":25913,"ts":531360915799,"ph":"X","name":"LayerHost::Upload","args":{},"dur":288,"tdur":149,"tts":865970},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360916100,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":133,"tdur":133,"tts":866132},{"cat":"blink","pid":25863,"tid":25913,"ts":531360916104,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":124,"tdur":123,"tts":866137},{"cat":"v8","pid":25863,"tid":25913,"ts":531360916107,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":119,"tdur":120,"tts":866139},{"cat":"v8","pid":25863,"tid":25913,"ts":531360916109,"ph":"X","name":"v8.callFunction","args":{},"dur":116,"tdur":115,"tts":866142},{"cat":"v8","pid":25863,"tid":25913,"ts":531360916111,"ph":"B","name":"V8.Execute","args":{},"tts":866144},{"cat":"v8","pid":25863,"tid":25913,"ts":531360916117,"ph":"B","name":"V8.RecompileSynchronous","args":{},"tts":866149},{"cat":"v8","pid":25863,"tid":25913,"ts":531360916191,"ph":"E","name":"V8.RecompileSynchronous","args":{},"tts":866224},{"cat":"blink","pid":25863,"tid":25913,"ts":531360916213,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":9,"tdur":9,"tts":866245},{"cat":"blink","pid":25863,"tid":25913,"ts":531360916219,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":866251},{"cat":"v8","pid":25863,"tid":25913,"ts":531360916223,"ph":"E","name":"V8.Execute","args":{},"tts":866256},{"cat":"sky","pid":25863,"tid":25913,"ts":531360971272,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1688,"tdur":1515,"tts":866471},{"cat":"blink","pid":25863,"tid":25913,"ts":531360971277,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":102,"tdur":103,"tts":866475},{"cat":"blink","pid":25863,"tid":25913,"ts":531360971280,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":2,"tdur":2,"tts":866478},{"cat":"blink","pid":25863,"tid":25913,"ts":531360971283,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":37,"tdur":36,"tts":866482},{"cat":"blink","pid":25863,"tid":25913,"ts":531360971291,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":28,"tdur":28,"tts":866490},{"cat":"v8","pid":25863,"tid":25913,"ts":531360971305,"ph":"X","name":"v8.callFunction","args":{},"dur":11,"tdur":11,"tts":866503},{"cat":"v8","pid":25863,"tid":25913,"ts":531360971307,"ph":"B","name":"V8.Execute","args":{},"tts":866505},{"cat":"v8","pid":25863,"tid":25913,"ts":531360971314,"ph":"E","name":"V8.Execute","args":{},"tts":866513},{"cat":"v8","pid":25863,"tid":25913,"ts":531360971322,"ph":"X","name":"v8.callFunction","args":{},"dur":55,"tdur":54,"tts":866521},{"cat":"v8","pid":25863,"tid":25913,"ts":531360971324,"ph":"B","name":"V8.Execute","args":{},"tts":866522},{"cat":"blink","pid":25863,"tid":25913,"ts":531360971328,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":10,"tdur":10,"tts":866526},{"cat":"v8","pid":25863,"tid":25913,"ts":531360971374,"ph":"E","name":"V8.Execute","args":{},"tts":866573},{"cat":"blink","pid":25863,"tid":25913,"ts":531360971380,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":48,"tdur":49,"tts":866578},{"cat":"blink","pid":25863,"tid":25913,"ts":531360971382,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":866580},{"cat":"blink","pid":25863,"tid":25913,"ts":531360971383,"ph":"X","name":"Document::updateStyle","args":{},"dur":36,"tdur":35,"tts":866582},{"cat":"blink","pid":25863,"tid":25913,"ts":531360971419,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":866618},{"cat":"blink","pid":25863,"tid":25913,"ts":531360971424,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":4,"tdur":3,"tts":866623},{"cat":"sky","pid":25863,"tid":25913,"ts":531360971429,"ph":"X","name":"Layer::Display","args":{},"dur":1217,"tdur":1203,"tts":866628},{"cat":"sky","pid":25863,"tid":25913,"ts":531360972648,"ph":"X","name":"LayerHost::Upload","args":{},"dur":310,"tdur":147,"tts":867836},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360972986,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":87,"tdur":86,"tts":868014},{"cat":"blink","pid":25863,"tid":25913,"ts":531360972997,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":67,"tdur":66,"tts":868024},{"cat":"v8","pid":25863,"tid":25913,"ts":531360973003,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":58,"tdur":57,"tts":868030},{"cat":"v8","pid":25863,"tid":25913,"ts":531360973009,"ph":"X","name":"v8.callFunction","args":{},"dur":50,"tdur":49,"tts":868036},{"cat":"v8","pid":25863,"tid":25913,"ts":531360973013,"ph":"B","name":"V8.Execute","args":{},"tts":868040},{"cat":"blink","pid":25863,"tid":25913,"ts":531360973031,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":21,"tdur":21,"tts":868058},{"cat":"blink","pid":25863,"tid":25913,"ts":531360973045,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":6,"tts":868072},{"cat":"v8","pid":25863,"tid":25913,"ts":531360973055,"ph":"E","name":"V8.Execute","args":{},"tts":868082},{"cat":"sky","pid":25863,"tid":25913,"ts":531360973765,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2267,"tdur":2145,"tts":868459},{"cat":"blink","pid":25863,"tid":25913,"ts":531360973774,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":214,"tdur":212,"tts":868467},{"cat":"blink","pid":25863,"tid":25913,"ts":531360973781,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":868473},{"cat":"blink","pid":25863,"tid":25913,"ts":531360973788,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":76,"tdur":76,"tts":868480},{"cat":"blink","pid":25863,"tid":25913,"ts":531360973804,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":868497},{"cat":"v8","pid":25863,"tid":25913,"ts":531360973833,"ph":"X","name":"v8.callFunction","args":{},"dur":23,"tdur":22,"tts":868526},{"cat":"v8","pid":25863,"tid":25913,"ts":531360973837,"ph":"B","name":"V8.Execute","args":{},"tts":868530},{"cat":"v8","pid":25863,"tid":25913,"ts":531360973852,"ph":"E","name":"V8.Execute","args":{},"tts":868544},{"cat":"v8","pid":25863,"tid":25913,"ts":531360973869,"ph":"X","name":"v8.callFunction","args":{},"dur":114,"tdur":114,"tts":868561},{"cat":"v8","pid":25863,"tid":25913,"ts":531360973872,"ph":"B","name":"V8.Execute","args":{},"tts":868565},{"cat":"blink","pid":25863,"tid":25913,"ts":531360973881,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":868573},{"cat":"v8","pid":25863,"tid":25913,"ts":531360973976,"ph":"E","name":"V8.Execute","args":{},"tts":868670},{"cat":"blink","pid":25863,"tid":25913,"ts":531360973989,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":868681},{"cat":"blink","pid":25863,"tid":25913,"ts":531360973993,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":868685},{"cat":"blink","pid":25863,"tid":25913,"ts":531360973996,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":39,"tts":868688},{"cat":"blink","pid":25863,"tid":25913,"ts":531360974036,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":868729},{"cat":"blink","pid":25863,"tid":25913,"ts":531360974045,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":868738},{"cat":"sky","pid":25863,"tid":25913,"ts":531360974056,"ph":"X","name":"Layer::Display","args":{},"dur":1741,"tdur":1738,"tts":868749},{"cat":"sky","pid":25863,"tid":25913,"ts":531360975799,"ph":"X","name":"LayerHost::Upload","args":{},"dur":233,"tdur":111,"tts":870492},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360976044,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":80,"tdur":80,"tts":870615},{"cat":"blink","pid":25863,"tid":25913,"ts":531360976048,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":66,"tdur":66,"tts":870619},{"cat":"v8","pid":25863,"tid":25913,"ts":531360976050,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":61,"tdur":60,"tts":870621},{"cat":"v8","pid":25863,"tid":25913,"ts":531360976053,"ph":"X","name":"v8.callFunction","args":{},"dur":55,"tdur":55,"tts":870624},{"cat":"v8","pid":25863,"tid":25913,"ts":531360976054,"ph":"B","name":"V8.Execute","args":{},"tts":870626},{"cat":"blink","pid":25863,"tid":25913,"ts":531360976082,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":870654},{"cat":"blink","pid":25863,"tid":25913,"ts":531360976095,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":870667},{"cat":"v8","pid":25863,"tid":25913,"ts":531360976104,"ph":"E","name":"V8.Execute","args":{},"tts":870676},{"cat":"sky","pid":25863,"tid":25913,"ts":531360976839,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":2367,"tdur":2225,"tts":870976},{"cat":"blink","pid":25863,"tid":25913,"ts":531360976848,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":211,"tdur":210,"tts":870984},{"cat":"blink","pid":25863,"tid":25913,"ts":531360976855,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":3,"tdur":3,"tts":870990},{"cat":"blink","pid":25863,"tid":25913,"ts":531360976862,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":75,"tdur":75,"tts":870997},{"cat":"blink","pid":25863,"tid":25913,"ts":531360976877,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":59,"tdur":58,"tts":871013},{"cat":"v8","pid":25863,"tid":25913,"ts":531360976906,"ph":"X","name":"v8.callFunction","args":{},"dur":22,"tdur":21,"tts":871042},{"cat":"v8","pid":25863,"tid":25913,"ts":531360976910,"ph":"B","name":"V8.Execute","args":{},"tts":871046},{"cat":"v8","pid":25863,"tid":25913,"ts":531360976924,"ph":"E","name":"V8.Execute","args":{},"tts":871060},{"cat":"v8","pid":25863,"tid":25913,"ts":531360976941,"ph":"X","name":"v8.callFunction","args":{},"dur":113,"tdur":112,"tts":871077},{"cat":"v8","pid":25863,"tid":25913,"ts":531360976945,"ph":"B","name":"V8.Execute","args":{},"tts":871080},{"cat":"blink","pid":25863,"tid":25913,"ts":531360976953,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":21,"tdur":20,"tts":871089},{"cat":"v8","pid":25863,"tid":25913,"ts":531360977048,"ph":"E","name":"V8.Execute","args":{},"tts":871185},{"cat":"blink","pid":25863,"tid":25913,"ts":531360977060,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":66,"tdur":65,"tts":871196},{"cat":"blink","pid":25863,"tid":25913,"ts":531360977064,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":871200},{"cat":"blink","pid":25863,"tid":25913,"ts":531360977067,"ph":"X","name":"Document::updateStyle","args":{},"dur":40,"tdur":39,"tts":871203},{"cat":"blink","pid":25863,"tid":25913,"ts":531360977108,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":1},"tts":871244},{"cat":"blink","pid":25863,"tid":25913,"ts":531360977117,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":8,"tdur":7,"tts":871253},{"cat":"sky","pid":25863,"tid":25913,"ts":531360977128,"ph":"X","name":"Layer::Display","args":{},"dur":1798,"tdur":1797,"tts":871263},{"cat":"sky","pid":25863,"tid":25913,"ts":531360978928,"ph":"X","name":"LayerHost::Upload","args":{},"dur":276,"tdur":135,"tts":873064},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360979231,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":81,"tdur":80,"tts":873227},{"cat":"blink","pid":25863,"tid":25913,"ts":531360979240,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":63,"tdur":62,"tts":873236},{"cat":"v8","pid":25863,"tid":25913,"ts":531360979246,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":54,"tdur":53,"tts":873242},{"cat":"v8","pid":25863,"tid":25913,"ts":531360979251,"ph":"X","name":"v8.callFunction","args":{},"dur":47,"tdur":46,"tts":873247},{"cat":"v8","pid":25863,"tid":25913,"ts":531360979255,"ph":"B","name":"V8.Execute","args":{},"tts":873251},{"cat":"blink","pid":25863,"tid":25913,"ts":531360979272,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":20,"tdur":19,"tts":873268},{"cat":"blink","pid":25863,"tid":25913,"ts":531360979285,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":6,"tdur":5,"tts":873281},{"cat":"v8","pid":25863,"tid":25913,"ts":531360979294,"ph":"E","name":"V8.Execute","args":{},"tts":873290},{"cat":"sky","pid":25863,"tid":25913,"ts":531360979878,"ph":"X","name":"LayerHost::BeginFrame","args":{},"dur":1756,"tdur":1586,"tts":873528},{"cat":"blink","pid":25863,"tid":25913,"ts":531360979883,"ph":"X","name":"WebViewImpl::beginFrame","args":{},"dur":234,"tdur":215,"tts":873533},{"cat":"blink","pid":25863,"tid":25913,"ts":531360979888,"ph":"X","name":"AnimationTimeline::serviceAnimations","args":{},"dur":4,"tdur":3,"tts":873538},{"cat":"blink","pid":25863,"tid":25913,"ts":531360979894,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":74,"tdur":73,"tts":873544},{"cat":"blink","pid":25863,"tid":25913,"ts":531360979916,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":51,"tdur":49,"tts":873567},{"cat":"v8","pid":25863,"tid":25913,"ts":531360979939,"ph":"X","name":"v8.callFunction","args":{},"dur":21,"tdur":20,"tts":873590},{"cat":"v8","pid":25863,"tid":25913,"ts":531360979944,"ph":"B","name":"V8.Execute","args":{},"tts":873594},{"cat":"v8","pid":25863,"tid":25913,"ts":531360979957,"ph":"E","name":"V8.Execute","args":{},"tts":873607},{"cat":"v8","pid":25863,"tid":25913,"ts":531360979972,"ph":"X","name":"v8.callFunction","args":{},"dur":142,"tdur":123,"tts":873623},{"cat":"v8","pid":25863,"tid":25913,"ts":531360979976,"ph":"B","name":"V8.Execute","args":{},"tts":873626},{"cat":"blink","pid":25863,"tid":25913,"ts":531360979984,"ph":"X","name":"ScrollableArea::scrollPositionChanged","args":{},"dur":53,"tdur":34,"tts":873634},{"cat":"v8","pid":25863,"tid":25913,"ts":531360980111,"ph":"E","name":"V8.Execute","args":{},"tts":873743},{"cat":"blink","pid":25863,"tid":25913,"ts":531360980117,"ph":"X","name":"WebViewImpl::layout","args":{},"dur":332,"tdur":332,"tts":873749},{"cat":"blink","pid":25863,"tid":25913,"ts":531360980119,"ph":"B","name":"Document::updateRenderTree","args":{},"tts":873751},{"cat":"blink","pid":25863,"tid":25913,"ts":531360980121,"ph":"X","name":"Document::updateStyle","args":{},"dur":61,"tdur":60,"tts":873753},{"cat":"blink","pid":25863,"tid":25913,"ts":531360980183,"ph":"E","name":"Document::updateRenderTree","args":{"elementCount":2},"tts":873815},{"cat":"blink","pid":25863,"tid":25913,"ts":531360980186,"ph":"X","name":"FrameView::layout","args":{},"dur":29,"tdur":28,"tts":873818},{"cat":"blink","pid":25863,"tid":25913,"ts":531360980187,"ph":"X","name":"FrameView::performPreLayoutTasks","args":{},"dur":2,"tdur":1,"tts":873819},{"cat":"blink","pid":25863,"tid":25913,"ts":531360980189,"ph":"X","name":"FrameView::performLayout","args":{},"dur":17,"tdur":16,"tts":873821},{"cat":"blink","pid":25863,"tid":25913,"ts":531360980206,"ph":"X","name":"RenderLayer::updateLayerPositionsAfterLayout","args":{},"dur":3,"tdur":2,"tts":873838},{"cat":"blink","pid":25863,"tid":25913,"ts":531360980209,"ph":"X","name":"FrameView::performPostLayoutTasks","args":{},"dur":4,"tdur":4,"tts":873841},{"cat":"blink","pid":25863,"tid":25913,"ts":531360980217,"ph":"X","name":"FrameView::invalidateTree","args":{"root":""},"dur":232,"tdur":231,"tts":873849},{"cat":"sky","pid":25863,"tid":25913,"ts":531360980450,"ph":"X","name":"Layer::Display","args":{},"dur":886,"tdur":885,"tts":874082},{"cat":"sky","pid":25863,"tid":25913,"ts":531360981337,"ph":"X","name":"LayerHost::Upload","args":{},"dur":296,"tdur":142,"tts":874970},{"cat":"toplevel","pid":25863,"tid":25913,"ts":531360981647,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../sky/viewer/platform/platform_impl.cc","src_func":"setSharedTimerFireInterval"},"dur":50,"tdur":50,"tts":875127},{"cat":"blink","pid":25863,"tid":25913,"ts":531360981653,"ph":"X","name":"ThreadTimers::sharedTimerFiredInternal","args":{"src_file":"../../sky/engine/core/frame/DOMTimer.cpp","src_func":"DOMTimer"},"dur":38,"tdur":38,"tts":875133},{"cat":"v8","pid":25863,"tid":25913,"ts":531360981655,"ph":"X","name":"ScheduledAction::execute","args":{},"dur":35,"tdur":34,"tts":875135},{"cat":"v8","pid":25863,"tid":25913,"ts":531360981658,"ph":"X","name":"v8.callFunction","args":{},"dur":31,"tdur":29,"tts":875139},{"cat":"v8","pid":25863,"tid":25913,"ts":531360981663,"ph":"B","name":"V8.Execute","args":{},"tts":875144},{"cat":"blink","pid":25863,"tid":25913,"ts":531360981676,"ph":"X","name":"EventDispatcher::dispatchEvent","args":{},"dur":10,"tdur":9,"tts":875156},{"cat":"blink","pid":25863,"tid":25913,"ts":531360981682,"ph":"X","name":"EventDispatcher::dispatch","args":{},"dur":3,"tdur":3,"tts":875162},{"cat":"v8","pid":25863,"tid":25913,"ts":531360981687,"ph":"E","name":"V8.Execute","args":{},"tts":875167},{"cat":"__metadata","pid":25863,"tid":25913,"ts":0,"ph":"M","name":"overhead","args":{"average_overhead":0.002081478081248566}},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358200202,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":53,"tdur":47,"tts":77652},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358200264,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":375,"tdur":212,"tts":77709},{"cat":"cc","pid":25863,"tid":25871,"ts":531358200267,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":199,"tdur":100,"tts":77712},{"cat":"cc","pid":25863,"tid":25871,"ts":531358200288,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":13,"tdur":12,"tts":77734},{"cat":"cc","pid":25863,"tid":25871,"ts":531358200467,"ph":"X","name":"Display::Draw","args":{},"dur":170,"tdur":105,"tts":77814},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358200472,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":77819,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358200478,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":19,"tdur":19,"tts":77825},{"cat":"cc","pid":25863,"tid":25871,"ts":531358200481,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":6,"tts":77828},{"cat":"cc","pid":25863,"tid":25871,"ts":531358200487,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":8,"tdur":7,"tts":77835},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358200497,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":131,"tdur":65,"tts":77845},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358201963,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":15,"tts":78007},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358201987,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":330,"tdur":186,"tts":78030},{"cat":"cc","pid":25863,"tid":25871,"ts":531358201990,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":165,"tdur":92,"tts":78032},{"cat":"cc","pid":25863,"tid":25871,"ts":531358202007,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":78049},{"cat":"cc","pid":25863,"tid":25871,"ts":531358202156,"ph":"X","name":"Display::Draw","args":{},"dur":159,"tdur":88,"tts":78127},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358202160,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":78131,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358202165,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":15,"tts":78136},{"cat":"cc","pid":25863,"tid":25871,"ts":531358202168,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":78138},{"cat":"cc","pid":25863,"tid":25871,"ts":531358202173,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":7,"tdur":6,"tts":78144},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358202182,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":124,"tdur":53,"tts":78152},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358203627,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":15,"tts":78302},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358203651,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":251,"tdur":194,"tts":78325},{"cat":"cc","pid":25863,"tid":25871,"ts":531358203653,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":125,"tdur":90,"tts":78327},{"cat":"cc","pid":25863,"tid":25871,"ts":531358203670,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":78344},{"cat":"cc","pid":25863,"tid":25871,"ts":531358203779,"ph":"X","name":"Display::Draw","args":{},"dur":121,"tdur":98,"tts":78419},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358203784,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":78424,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358203789,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":16,"tts":78429},{"cat":"cc","pid":25863,"tid":25871,"ts":531358203791,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":5,"tts":78431},{"cat":"cc","pid":25863,"tid":25871,"ts":531358203797,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":78437},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358203805,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":85,"tdur":62,"tts":78445},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358205121,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":21,"tdur":20,"tts":78605},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358205163,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":80414,"tdur":569,"tts":78646},{"cat":"cc","pid":25863,"tid":25871,"ts":531358205166,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":147,"tdur":94,"tts":78649},{"cat":"cc","pid":25863,"tid":25871,"ts":531358205183,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":78667},{"cat":"cc","pid":25863,"tid":25871,"ts":531358205315,"ph":"X","name":"Display::Draw","args":{},"dur":80248,"tdur":456,"tts":78745},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358205319,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":78750,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358205325,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":16,"tts":78755},{"cat":"cc","pid":25863,"tid":25871,"ts":531358205327,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":5,"tts":78758},{"cat":"cc","pid":25863,"tid":25871,"ts":531358205333,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":78764},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358205342,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":80091,"tdur":299,"tts":78772},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358290877,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":21,"tdur":20,"tts":79354},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358290905,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":392,"tdur":240,"tts":79382},{"cat":"cc","pid":25863,"tid":25871,"ts":531358290909,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":190,"tdur":110,"tts":79385},{"cat":"cc","pid":25863,"tid":25871,"ts":531358290940,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":16,"tdur":16,"tts":79416},{"cat":"cc","pid":25863,"tid":25871,"ts":531358291100,"ph":"X","name":"Display::Draw","args":{},"dur":196,"tdur":124,"tts":79497},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358291104,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":79501,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358291110,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":53,"tdur":53,"tts":79507},{"cat":"cc","pid":25863,"tid":25871,"ts":531358291112,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":28,"tdur":27,"tts":79510},{"cat":"cc","pid":25863,"tid":25871,"ts":531358291141,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":20,"tdur":19,"tts":79538},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358291163,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":125,"tdur":53,"tts":79560},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358292415,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":18,"tdur":17,"tts":79698},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358292439,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":269,"tdur":167,"tts":79722},{"cat":"cc","pid":25863,"tid":25871,"ts":531358292441,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":135,"tdur":83,"tts":79724},{"cat":"cc","pid":25863,"tid":25871,"ts":531358292455,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":8,"tts":79738},{"cat":"cc","pid":25863,"tid":25871,"ts":531358292576,"ph":"X","name":"Display::Draw","args":{},"dur":131,"tdur":80,"tts":79808},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358292580,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":79812,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358292584,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":79816},{"cat":"cc","pid":25863,"tid":25871,"ts":531358292586,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":79818},{"cat":"cc","pid":25863,"tid":25871,"ts":531358292591,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":79823},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358292598,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":101,"tdur":50,"tts":79830},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358293806,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":18,"tdur":17,"tts":79961},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358293831,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":276,"tdur":163,"tts":79985},{"cat":"cc","pid":25863,"tid":25871,"ts":531358293833,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":107,"tdur":71,"tts":79987},{"cat":"cc","pid":25863,"tid":25871,"ts":531358293846,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":7,"tts":80001},{"cat":"cc","pid":25863,"tid":25871,"ts":531358293941,"ph":"X","name":"Display::Draw","args":{},"dur":165,"tdur":87,"tts":80060},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358293956,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":80075,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358293959,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":80078},{"cat":"cc","pid":25863,"tid":25871,"ts":531358293961,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":80080},{"cat":"cc","pid":25863,"tid":25871,"ts":531358293966,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":4,"tts":80085},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358293973,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":125,"tdur":48,"tts":80091},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358296041,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":19,"tdur":17,"tts":80222},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358296066,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":57961,"tdur":253,"tts":80246},{"cat":"cc","pid":25863,"tid":25871,"ts":531358296068,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":150,"tdur":81,"tts":80248},{"cat":"cc","pid":25863,"tid":25871,"ts":531358296082,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":8,"tts":80262},{"cat":"cc","pid":25863,"tid":25871,"ts":531358296218,"ph":"X","name":"Display::Draw","args":{},"dur":57808,"tdur":167,"tts":80331},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358296222,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":80335,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358296227,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":80339},{"cat":"cc","pid":25863,"tid":25871,"ts":531358296228,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":80341},{"cat":"cc","pid":25863,"tid":25871,"ts":531358296233,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":80346},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358296240,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":57777,"tdur":135,"tts":80353},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358356341,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":80631},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358356364,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":347,"tdur":190,"tts":80653},{"cat":"cc","pid":25863,"tid":25871,"ts":531358356366,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":184,"tdur":93,"tts":80655},{"cat":"cc","pid":25863,"tid":25871,"ts":531358356382,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":80671},{"cat":"cc","pid":25863,"tid":25871,"ts":531358356551,"ph":"X","name":"Display::Draw","args":{},"dur":158,"tdur":91,"tts":80750},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358356556,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":80754,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358356561,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":15,"tts":80759},{"cat":"cc","pid":25863,"tid":25871,"ts":531358356563,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":80761},{"cat":"cc","pid":25863,"tid":25871,"ts":531358356568,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":80767},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358356576,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":124,"tdur":57,"tts":80775},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358357935,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":15,"tts":80934},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358357958,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":337,"tdur":189,"tts":80957},{"cat":"cc","pid":25863,"tid":25871,"ts":531358357961,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":147,"tdur":95,"tts":80959},{"cat":"cc","pid":25863,"tid":25871,"ts":531358357977,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":80975},{"cat":"cc","pid":25863,"tid":25871,"ts":531358358109,"ph":"X","name":"Display::Draw","args":{},"dur":184,"tdur":89,"tts":81056},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358358114,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":81061,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358358119,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":15,"tts":81065},{"cat":"cc","pid":25863,"tid":25871,"ts":531358358121,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":81067},{"cat":"cc","pid":25863,"tid":25871,"ts":531358358126,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":81073},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358358134,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":150,"tdur":55,"tts":81081},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358359644,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":16,"tts":81236},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358359668,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":267,"tdur":159,"tts":81259},{"cat":"cc","pid":25863,"tid":25871,"ts":531358359670,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":134,"tdur":81,"tts":81261},{"cat":"cc","pid":25863,"tid":25871,"ts":531358359686,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":81278},{"cat":"cc","pid":25863,"tid":25871,"ts":531358359805,"ph":"X","name":"Display::Draw","args":{},"dur":128,"tdur":73,"tts":81344},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358359809,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":81347,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358359813,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":14,"tts":81352},{"cat":"cc","pid":25863,"tid":25871,"ts":531358359815,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":81354},{"cat":"cc","pid":25863,"tid":25871,"ts":531358359821,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":6,"tts":81359},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358359828,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":100,"tdur":44,"tts":81367},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358361270,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":81499},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358361293,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":58317,"tdur":279,"tts":81521},{"cat":"cc","pid":25863,"tid":25871,"ts":531358361295,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":126,"tdur":95,"tts":81523},{"cat":"cc","pid":25863,"tid":25871,"ts":531358361311,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":81539},{"cat":"cc","pid":25863,"tid":25871,"ts":531358361422,"ph":"X","name":"Display::Draw","args":{},"dur":58186,"tdur":178,"tts":81620},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358361426,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":81624,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358361431,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":15,"tts":81629},{"cat":"cc","pid":25863,"tid":25871,"ts":531358361433,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":81632},{"cat":"cc","pid":25863,"tid":25871,"ts":531358361439,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":81637},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358361447,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":58151,"tdur":143,"tts":81645},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358422024,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":15,"tts":81914},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358422048,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":390,"tdur":207,"tts":81937},{"cat":"cc","pid":25863,"tid":25871,"ts":531358422050,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":190,"tdur":90,"tts":81939},{"cat":"cc","pid":25863,"tid":25871,"ts":531358422067,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":81956},{"cat":"cc","pid":25863,"tid":25871,"ts":531358422241,"ph":"X","name":"Display::Draw","args":{},"dur":195,"tdur":111,"tts":82031},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358422246,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":82036,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358422251,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":28,"tdur":28,"tts":82041},{"cat":"cc","pid":25863,"tid":25871,"ts":531358422254,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":82044},{"cat":"cc","pid":25863,"tid":25871,"ts":531358422260,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":18,"tdur":18,"tts":82049},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358422280,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":146,"tdur":62,"tts":82070},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358423770,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":15,"tts":82232},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358423793,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":345,"tdur":199,"tts":82255},{"cat":"cc","pid":25863,"tid":25871,"ts":531358423796,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":162,"tdur":93,"tts":82257},{"cat":"cc","pid":25863,"tid":25871,"ts":531358423813,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":82275},{"cat":"cc","pid":25863,"tid":25871,"ts":531358423959,"ph":"X","name":"Display::Draw","args":{},"dur":178,"tdur":100,"tts":82352},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358423964,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":82356,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358423969,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":24,"tdur":24,"tts":82361},{"cat":"cc","pid":25863,"tid":25871,"ts":531358423971,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":14,"tdur":14,"tts":82363},{"cat":"cc","pid":25863,"tid":25871,"ts":531358423985,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":7,"tdur":6,"tts":82378},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358423994,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":133,"tdur":56,"tts":82386},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358426808,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":15,"tts":82541},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358426832,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":334,"tdur":186,"tts":82564},{"cat":"cc","pid":25863,"tid":25871,"ts":531358426834,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":185,"tdur":90,"tts":82566},{"cat":"cc","pid":25863,"tid":25871,"ts":531358426851,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":82583},{"cat":"cc","pid":25863,"tid":25871,"ts":531358427020,"ph":"X","name":"Display::Draw","args":{},"dur":144,"tdur":90,"tts":82658},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358427025,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":82662,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358427030,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":15,"tts":82668},{"cat":"cc","pid":25863,"tid":25871,"ts":531358427032,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":82670},{"cat":"cc","pid":25863,"tid":25871,"ts":531358427038,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":82676},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358427046,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":108,"tdur":54,"tts":82684},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358428370,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":82803},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358428391,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":58839,"tdur":263,"tts":82823},{"cat":"cc","pid":25863,"tid":25871,"ts":531358428393,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":147,"tdur":88,"tts":82825},{"cat":"cc","pid":25863,"tid":25871,"ts":531358428409,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":82841},{"cat":"cc","pid":25863,"tid":25871,"ts":531358428541,"ph":"X","name":"Display::Draw","args":{},"dur":58688,"tdur":170,"tts":82915},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358428546,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":82919,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358428551,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":15,"tts":82925},{"cat":"cc","pid":25863,"tid":25871,"ts":531358428554,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":82927},{"cat":"cc","pid":25863,"tid":25871,"ts":531358428559,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":82933},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358428567,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":58653,"tdur":135,"tts":82941},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358489623,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":14,"tts":83211},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358489646,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":312,"tdur":159,"tts":83233},{"cat":"cc","pid":25863,"tid":25871,"ts":531358489648,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":183,"tdur":90,"tts":83235},{"cat":"cc","pid":25863,"tid":25871,"ts":531358489663,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":9,"tts":83251},{"cat":"cc","pid":25863,"tid":25871,"ts":531358489832,"ph":"X","name":"Display::Draw","args":{},"dur":125,"tdur":63,"tts":83327},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358489836,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":83331,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358489841,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":83336},{"cat":"cc","pid":25863,"tid":25871,"ts":531358489843,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":83338},{"cat":"cc","pid":25863,"tid":25871,"ts":531358489848,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":83343},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358489855,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":96,"tdur":34,"tts":83350},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358491172,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":15,"tts":83468},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358491195,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":305,"tdur":181,"tts":83490},{"cat":"cc","pid":25863,"tid":25871,"ts":531358491197,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":149,"tdur":97,"tts":83492},{"cat":"cc","pid":25863,"tid":25871,"ts":531358491219,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":83515},{"cat":"cc","pid":25863,"tid":25871,"ts":531358491347,"ph":"X","name":"Display::Draw","args":{},"dur":151,"tdur":79,"tts":83591},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358491351,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":83595,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358491356,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":83599},{"cat":"cc","pid":25863,"tid":25871,"ts":531358491358,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":83601},{"cat":"cc","pid":25863,"tid":25871,"ts":531358491362,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":83606},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358491369,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":121,"tdur":48,"tts":83613},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358492694,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":18,"tdur":18,"tts":83748},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358492719,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":239,"tdur":166,"tts":83773},{"cat":"cc","pid":25863,"tid":25871,"ts":531358492721,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":111,"tdur":78,"tts":83775},{"cat":"cc","pid":25863,"tid":25871,"ts":531358492736,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":8,"tts":83790},{"cat":"cc","pid":25863,"tid":25871,"ts":531358492833,"ph":"X","name":"Display::Draw","args":{},"dur":124,"tdur":83,"tts":83855},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358492837,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":83859,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358492842,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":83864},{"cat":"cc","pid":25863,"tid":25871,"ts":531358492844,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":83866},{"cat":"cc","pid":25863,"tid":25871,"ts":531358492849,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":83871},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358492856,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":92,"tdur":51,"tts":83878},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358494062,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":84018},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358494083,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":59438,"tdur":281,"tts":84038},{"cat":"cc","pid":25863,"tid":25871,"ts":531358494085,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":121,"tdur":90,"tts":84040},{"cat":"cc","pid":25863,"tid":25871,"ts":531358494109,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":84064},{"cat":"cc","pid":25863,"tid":25871,"ts":531358494207,"ph":"X","name":"Display::Draw","args":{},"dur":59310,"tdur":170,"tts":84132},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358494211,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":84136,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358494216,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":84141},{"cat":"cc","pid":25863,"tid":25871,"ts":531358494218,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":84143},{"cat":"cc","pid":25863,"tid":25871,"ts":531358494223,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":84148},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358494230,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":59265,"tdur":137,"tts":84155},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358555015,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":84472},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358555038,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":336,"tdur":181,"tts":84494},{"cat":"cc","pid":25863,"tid":25871,"ts":531358555040,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":184,"tdur":88,"tts":84496},{"cat":"cc","pid":25863,"tid":25871,"ts":531358555056,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":84512},{"cat":"cc","pid":25863,"tid":25871,"ts":531358555225,"ph":"X","name":"Display::Draw","args":{},"dur":148,"tdur":87,"tts":84586},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358555229,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":84590,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358555234,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":15,"tts":84595},{"cat":"cc","pid":25863,"tid":25871,"ts":531358555236,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":84597},{"cat":"cc","pid":25863,"tid":25871,"ts":531358555241,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":84603},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358555249,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":115,"tdur":54,"tts":84610},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358556669,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":14,"tts":84763},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358556691,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":340,"tdur":194,"tts":84784},{"cat":"cc","pid":25863,"tid":25871,"ts":531358556693,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":160,"tdur":89,"tts":84786},{"cat":"cc","pid":25863,"tid":25871,"ts":531358556709,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":84802},{"cat":"cc","pid":25863,"tid":25871,"ts":531358556854,"ph":"X","name":"Display::Draw","args":{},"dur":176,"tdur":100,"tts":84877},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358556859,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":84881,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358556863,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":24,"tdur":23,"tts":84886},{"cat":"cc","pid":25863,"tid":25871,"ts":531358556866,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":84888},{"cat":"cc","pid":25863,"tid":25871,"ts":531358556871,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":14,"tdur":14,"tts":84893},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358556887,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":134,"tdur":58,"tts":84910},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358558236,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":16,"tts":85062},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358558260,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":289,"tdur":182,"tts":85085},{"cat":"cc","pid":25863,"tid":25871,"ts":531358558262,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":147,"tdur":92,"tts":85087},{"cat":"cc","pid":25863,"tid":25871,"ts":531358558278,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":85103},{"cat":"cc","pid":25863,"tid":25871,"ts":531358558410,"ph":"X","name":"Display::Draw","args":{},"dur":138,"tdur":85,"tts":85181},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358558414,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":85185,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358558419,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":14,"tts":85190},{"cat":"cc","pid":25863,"tid":25871,"ts":531358558421,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":85192},{"cat":"cc","pid":25863,"tid":25871,"ts":531358558427,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":85197},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358558435,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":104,"tdur":51,"tts":85205},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358559684,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":85321},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358559704,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":48093,"tdur":320,"tts":85341},{"cat":"cc","pid":25863,"tid":25871,"ts":531358559706,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":153,"tdur":95,"tts":85343},{"cat":"cc","pid":25863,"tid":25871,"ts":531358559722,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":85359},{"cat":"cc","pid":25863,"tid":25871,"ts":531358559860,"ph":"X","name":"Display::Draw","args":{},"dur":47933,"tdur":217,"tts":85440},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358559864,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":85444,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358559869,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":14,"tts":85449},{"cat":"cc","pid":25863,"tid":25871,"ts":531358559871,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":85451},{"cat":"cc","pid":25863,"tid":25871,"ts":531358559876,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":85456},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358559884,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":47888,"tdur":171,"tts":85464},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358610362,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":24,"tdur":22,"tts":85830},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358610395,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":410,"tdur":230,"tts":85862},{"cat":"cc","pid":25863,"tid":25871,"ts":531358610399,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":195,"tdur":109,"tts":85865},{"cat":"cc","pid":25863,"tid":25871,"ts":531358610421,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":15,"tdur":15,"tts":85887},{"cat":"cc","pid":25863,"tid":25871,"ts":531358610595,"ph":"X","name":"Display::Draw","args":{},"dur":208,"tdur":115,"tts":85976},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358610601,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":85982,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358610608,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":22,"tdur":22,"tts":85989},{"cat":"cc","pid":25863,"tid":25871,"ts":531358610611,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":8,"tdur":7,"tts":85993},{"cat":"cc","pid":25863,"tid":25871,"ts":531358610619,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":9,"tdur":8,"tts":86001},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358610631,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":161,"tdur":67,"tts":86012},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358612397,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":14,"tts":86199},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358612417,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":397,"tdur":228,"tts":86220},{"cat":"cc","pid":25863,"tid":25871,"ts":531358612419,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":199,"tdur":98,"tts":86222},{"cat":"cc","pid":25863,"tid":25871,"ts":531358612434,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":86236},{"cat":"cc","pid":25863,"tid":25871,"ts":531358612619,"ph":"X","name":"Display::Draw","args":{},"dur":192,"tdur":123,"tts":86322},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358612624,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":86328,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358612630,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":38,"tdur":37,"tts":86334},{"cat":"cc","pid":25863,"tid":25871,"ts":531358612656,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":86359},{"cat":"cc","pid":25863,"tid":25871,"ts":531358612661,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":86365},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358612669,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":134,"tdur":64,"tts":86372},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358613982,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":35,"tdur":34,"tts":86559},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358614027,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":414,"tdur":248,"tts":86603},{"cat":"cc","pid":25863,"tid":25871,"ts":531358614030,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":230,"tdur":144,"tts":86606},{"cat":"cc","pid":25863,"tid":25871,"ts":531358614074,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":9,"tts":86651},{"cat":"cc","pid":25863,"tid":25871,"ts":531358614261,"ph":"X","name":"Display::Draw","args":{},"dur":178,"tdur":97,"tts":86752},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358614265,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":86756,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358614269,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":86760},{"cat":"cc","pid":25863,"tid":25871,"ts":531358614271,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":86762},{"cat":"cc","pid":25863,"tid":25871,"ts":531358614276,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":86767},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358614284,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":144,"tdur":62,"tts":86775},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358616524,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":30,"tdur":29,"tts":86914},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358616566,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":53502,"tdur":293,"tts":86956},{"cat":"cc","pid":25863,"tid":25871,"ts":531358616570,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":169,"tdur":112,"tts":86960},{"cat":"cc","pid":25863,"tid":25871,"ts":531358616598,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":25,"tdur":24,"tts":86988},{"cat":"cc","pid":25863,"tid":25871,"ts":531358616740,"ph":"X","name":"Display::Draw","args":{},"dur":53326,"tdur":173,"tts":87074},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358616745,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":87078,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358616750,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":15,"tts":87083},{"cat":"cc","pid":25863,"tid":25871,"ts":531358616752,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":87085},{"cat":"cc","pid":25863,"tid":25871,"ts":531358616757,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":87091},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358616765,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":53291,"tdur":138,"tts":87098},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358672315,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":19,"tdur":17,"tts":87366},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358672343,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":367,"tdur":202,"tts":87393},{"cat":"cc","pid":25863,"tid":25871,"ts":531358672346,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":199,"tdur":102,"tts":87396},{"cat":"cc","pid":25863,"tid":25871,"ts":531358672364,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":13,"tdur":12,"tts":87414},{"cat":"cc","pid":25863,"tid":25871,"ts":531358672547,"ph":"X","name":"Display::Draw","args":{},"dur":162,"tdur":93,"tts":87500},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358672551,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":87505,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358672556,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":18,"tdur":16,"tts":87510},{"cat":"cc","pid":25863,"tid":25871,"ts":531358672559,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":6,"tts":87512},{"cat":"cc","pid":25863,"tid":25871,"ts":531358672565,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":7,"tdur":7,"tts":87518},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358672574,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":125,"tdur":56,"tts":87527},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358674718,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":15,"tts":87687},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358674744,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":374,"tdur":213,"tts":87712},{"cat":"cc","pid":25863,"tid":25871,"ts":531358674746,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":193,"tdur":101,"tts":87714},{"cat":"cc","pid":25863,"tid":25871,"ts":531358674763,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":87731},{"cat":"cc","pid":25863,"tid":25871,"ts":531358674940,"ph":"X","name":"Display::Draw","args":{},"dur":176,"tdur":106,"tts":87817},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358674945,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":87822,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358674950,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":28,"tdur":27,"tts":87827},{"cat":"cc","pid":25863,"tid":25871,"ts":531358674953,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":6,"tts":87829},{"cat":"cc","pid":25863,"tid":25871,"ts":531358674959,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":17,"tdur":17,"tts":87835},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358674979,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":127,"tdur":57,"tts":87855},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358676480,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":15,"tts":88013},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358676505,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":287,"tdur":181,"tts":88037},{"cat":"cc","pid":25863,"tid":25871,"ts":531358676508,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":141,"tdur":99,"tts":88039},{"cat":"cc","pid":25863,"tid":25871,"ts":531358676525,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":88057},{"cat":"cc","pid":25863,"tid":25871,"ts":531358676650,"ph":"X","name":"Display::Draw","args":{},"dur":141,"tdur":77,"tts":88140},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358676655,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":88145,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358676660,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":16,"tts":88150},{"cat":"cc","pid":25863,"tid":25871,"ts":531358676662,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":6,"tts":88152},{"cat":"cc","pid":25863,"tid":25871,"ts":531358676668,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":7,"tdur":6,"tts":88158},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358676677,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":107,"tdur":43,"tts":88167},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358678065,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":14,"tts":88292},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358678087,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":57498,"tdur":262,"tts":88313},{"cat":"cc","pid":25863,"tid":25871,"ts":531358678089,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":152,"tdur":93,"tts":88315},{"cat":"cc","pid":25863,"tid":25871,"ts":531358678106,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":88332},{"cat":"cc","pid":25863,"tid":25871,"ts":531358678242,"ph":"X","name":"Display::Draw","args":{},"dur":57341,"tdur":164,"tts":88410},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358678247,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":88415,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358678252,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":17,"tdur":16,"tts":88420},{"cat":"cc","pid":25863,"tid":25871,"ts":531358678255,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":6,"tts":88422},{"cat":"cc","pid":25863,"tid":25871,"ts":531358678261,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":88428},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358678269,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":57304,"tdur":126,"tts":88437},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358737833,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":28,"tdur":26,"tts":88658},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358737868,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":309,"tdur":168,"tts":88692},{"cat":"cc","pid":25863,"tid":25871,"ts":531358737870,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":171,"tdur":84,"tts":88694},{"cat":"cc","pid":25863,"tid":25871,"ts":531358737887,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":88711},{"cat":"cc","pid":25863,"tid":25871,"ts":531358738042,"ph":"X","name":"Display::Draw","args":{},"dur":133,"tdur":79,"tts":88780},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358738047,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":88784,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358738051,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":14,"tts":88788},{"cat":"cc","pid":25863,"tid":25871,"ts":531358738053,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":88790},{"cat":"cc","pid":25863,"tid":25871,"ts":531358738058,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":88795},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358738066,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":101,"tdur":47,"tts":88803},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358739354,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":13,"tts":88938},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358739375,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":307,"tdur":176,"tts":88959},{"cat":"cc","pid":25863,"tid":25871,"ts":531358739378,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":158,"tdur":87,"tts":88961},{"cat":"cc","pid":25863,"tid":25871,"ts":531358739392,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":88976},{"cat":"cc","pid":25863,"tid":25871,"ts":531358739537,"ph":"X","name":"Display::Draw","args":{},"dur":144,"tdur":84,"tts":89050},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358739541,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":89054,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358739546,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":14,"tts":89058},{"cat":"cc","pid":25863,"tid":25871,"ts":531358739548,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":89060},{"cat":"cc","pid":25863,"tid":25871,"ts":531358739553,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":89065},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358739560,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":113,"tdur":53,"tts":89072},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358740880,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":15,"tts":89212},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358740903,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":282,"tdur":176,"tts":89234},{"cat":"cc","pid":25863,"tid":25871,"ts":531358740905,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":144,"tdur":85,"tts":89236},{"cat":"cc","pid":25863,"tid":25871,"ts":531358740920,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":89251},{"cat":"cc","pid":25863,"tid":25871,"ts":531358741050,"ph":"X","name":"Display::Draw","args":{},"dur":134,"tdur":86,"tts":89322},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358741055,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":89327,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358741059,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":89331},{"cat":"cc","pid":25863,"tid":25871,"ts":531358741061,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":89333},{"cat":"cc","pid":25863,"tid":25871,"ts":531358741066,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":89338},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358741073,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":102,"tdur":55,"tts":89345},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358742288,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":12,"tdur":12,"tts":89457},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358742306,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":77900,"tdur":188,"tts":89476},{"cat":"cc","pid":25863,"tid":25871,"ts":531358742308,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":137,"tdur":79,"tts":89478},{"cat":"cc","pid":25863,"tid":25871,"ts":531358742323,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":89492},{"cat":"cc","pid":25863,"tid":25871,"ts":531358742446,"ph":"X","name":"Display::Draw","args":{},"dur":77759,"tdur":103,"tts":89559},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358742450,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":89563,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358742454,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":89567},{"cat":"cc","pid":25863,"tid":25871,"ts":531358742456,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":89569},{"cat":"cc","pid":25863,"tid":25871,"ts":531358742461,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":89574},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358742468,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":77727,"tdur":71,"tts":89581},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358823254,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":89781},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358823275,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":336,"tdur":174,"tts":89801},{"cat":"cc","pid":25863,"tid":25871,"ts":531358823277,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":170,"tdur":85,"tts":89803},{"cat":"cc","pid":25863,"tid":25871,"ts":531358823292,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":9,"tts":89819},{"cat":"cc","pid":25863,"tid":25871,"ts":531358823447,"ph":"X","name":"Display::Draw","args":{},"dur":162,"tdur":84,"tts":89890},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358823451,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":89893,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358823456,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":89898},{"cat":"cc","pid":25863,"tid":25871,"ts":531358823458,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":89901},{"cat":"cc","pid":25863,"tid":25871,"ts":531358823463,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":89906},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358823471,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":131,"tdur":53,"tts":89913},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358824738,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":18,"tdur":17,"tts":90049},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358824763,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":337,"tdur":179,"tts":90073},{"cat":"cc","pid":25863,"tid":25871,"ts":531358824765,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":165,"tdur":81,"tts":90075},{"cat":"cc","pid":25863,"tid":25871,"ts":531358824778,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":7,"tts":90089},{"cat":"cc","pid":25863,"tid":25871,"ts":531358824930,"ph":"X","name":"Display::Draw","args":{},"dur":168,"tdur":93,"tts":90158},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358824934,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":90162,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358824938,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":23,"tdur":22,"tts":90166},{"cat":"cc","pid":25863,"tid":25871,"ts":531358824940,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":90168},{"cat":"cc","pid":25863,"tid":25871,"ts":531358824945,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":14,"tdur":14,"tts":90172},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358824961,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":130,"tdur":54,"tts":90189},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358826776,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":13,"tdur":13,"tts":90325},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358826796,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":277,"tdur":174,"tts":90345},{"cat":"cc","pid":25863,"tid":25871,"ts":531358826798,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":137,"tdur":80,"tts":90347},{"cat":"cc","pid":25863,"tid":25871,"ts":531358826813,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":90362},{"cat":"cc","pid":25863,"tid":25871,"ts":531358826936,"ph":"X","name":"Display::Draw","args":{},"dur":136,"tdur":89,"tts":90429},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358826951,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":90444,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358826954,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":90447},{"cat":"cc","pid":25863,"tid":25871,"ts":531358826956,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":90449},{"cat":"cc","pid":25863,"tid":25871,"ts":531358826961,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":90453},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358826967,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":97,"tdur":50,"tts":90460},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358828140,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":12,"tts":90563},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358828159,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":73874,"tdur":256,"tts":90581},{"cat":"cc","pid":25863,"tid":25871,"ts":531358828161,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":132,"tdur":82,"tts":90583},{"cat":"cc","pid":25863,"tid":25871,"ts":531358828182,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":90604},{"cat":"cc","pid":25863,"tid":25871,"ts":531358828294,"ph":"X","name":"Display::Draw","args":{},"dur":73735,"tdur":168,"tts":90666},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358828298,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":90670,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358828302,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":28,"tdur":28,"tts":90674},{"cat":"cc","pid":25863,"tid":25871,"ts":531358828304,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":90676},{"cat":"cc","pid":25863,"tid":25871,"ts":531358828308,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":20,"tdur":19,"tts":90681},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358828330,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":73683,"tdur":115,"tts":90702},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358903679,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":33,"tts":90939},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358903722,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":395,"tdur":202,"tts":90981},{"cat":"cc","pid":25863,"tid":25871,"ts":531358903725,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":187,"tdur":101,"tts":90985},{"cat":"cc","pid":25863,"tid":25871,"ts":531358903752,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":13,"tdur":12,"tts":91012},{"cat":"cc","pid":25863,"tid":25871,"ts":531358903913,"ph":"X","name":"Display::Draw","args":{},"dur":202,"tdur":94,"tts":91088},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358903919,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":91094,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358903926,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":25,"tdur":24,"tts":91101},{"cat":"cc","pid":25863,"tid":25871,"ts":531358903931,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":6,"tts":91106},{"cat":"cc","pid":25863,"tid":25871,"ts":531358903938,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":10,"tdur":11,"tts":91112},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358903951,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":155,"tdur":47,"tts":91126},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358905209,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":18,"tdur":17,"tts":91252},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358905234,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":279,"tdur":166,"tts":91276},{"cat":"cc","pid":25863,"tid":25871,"ts":531358905236,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":148,"tdur":82,"tts":91278},{"cat":"cc","pid":25863,"tid":25871,"ts":531358905250,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":7,"tts":91293},{"cat":"cc","pid":25863,"tid":25871,"ts":531358905385,"ph":"X","name":"Display::Draw","args":{},"dur":126,"tdur":78,"tts":91362},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358905388,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":91366,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358905393,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":91370},{"cat":"cc","pid":25863,"tid":25871,"ts":531358905395,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":91372},{"cat":"cc","pid":25863,"tid":25871,"ts":531358905399,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":4,"tts":91377},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358905406,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":98,"tdur":49,"tts":91383},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358906570,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":91514},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358906592,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":253,"tdur":157,"tts":91535},{"cat":"cc","pid":25863,"tid":25871,"ts":531358906594,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":128,"tdur":80,"tts":91537},{"cat":"cc","pid":25863,"tid":25871,"ts":531358906608,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":9,"tts":91551},{"cat":"cc","pid":25863,"tid":25871,"ts":531358906723,"ph":"X","name":"Display::Draw","args":{},"dur":120,"tdur":72,"tts":91619},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358906727,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":91622,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358906731,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":91626},{"cat":"cc","pid":25863,"tid":25871,"ts":531358906733,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":91628},{"cat":"cc","pid":25863,"tid":25871,"ts":531358906738,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":91633},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358906745,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":91,"tdur":43,"tts":91640},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358907905,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":14,"tts":91764},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358907926,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":63027,"tdur":339,"tts":91784},{"cat":"cc","pid":25863,"tid":25871,"ts":531358907928,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":161,"tdur":91,"tts":91786},{"cat":"cc","pid":25863,"tid":25871,"ts":531358907942,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":91800},{"cat":"cc","pid":25863,"tid":25871,"ts":531358908089,"ph":"X","name":"Display::Draw","args":{},"dur":62858,"tdur":238,"tts":91879},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358908093,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":91883,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358908097,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":91887},{"cat":"cc","pid":25863,"tid":25871,"ts":531358908099,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":91889},{"cat":"cc","pid":25863,"tid":25871,"ts":531358908104,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":4,"tts":91894},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358908111,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":62812,"tdur":180,"tts":91900},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358974207,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":35,"tdur":34,"tts":92276},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358974251,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":343,"tdur":225,"tts":92319},{"cat":"cc","pid":25863,"tid":25871,"ts":531358974255,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":167,"tdur":101,"tts":92323},{"cat":"cc","pid":25863,"tid":25871,"ts":531358974283,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":13,"tdur":13,"tts":92351},{"cat":"cc","pid":25863,"tid":25871,"ts":531358974423,"ph":"X","name":"Display::Draw","args":{},"dur":169,"tdur":116,"tts":92426},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358974430,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":92432,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358974437,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":39,"tdur":38,"tts":92440},{"cat":"cc","pid":25863,"tid":25871,"ts":531358974442,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":7,"tdur":7,"tts":92445},{"cat":"cc","pid":25863,"tid":25871,"ts":531358974450,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":24,"tdur":24,"tts":92452},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358974477,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":107,"tdur":53,"tts":92480},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358975843,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":14,"tts":92623},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358975865,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":340,"tdur":202,"tts":92644},{"cat":"cc","pid":25863,"tid":25871,"ts":531358975867,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":180,"tdur":97,"tts":92646},{"cat":"cc","pid":25863,"tid":25871,"ts":531358975890,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":92669},{"cat":"cc","pid":25863,"tid":25871,"ts":531358976048,"ph":"X","name":"Display::Draw","args":{},"dur":155,"tdur":99,"tts":92745},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358976052,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":92749,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358976056,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":28,"tdur":28,"tts":92753},{"cat":"cc","pid":25863,"tid":25871,"ts":531358976058,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":92755},{"cat":"cc","pid":25863,"tid":25871,"ts":531358976063,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":19,"tdur":18,"tts":92761},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358976084,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":111,"tdur":54,"tts":92782},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358977446,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":92924},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358977467,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":306,"tdur":181,"tts":92944},{"cat":"cc","pid":25863,"tid":25871,"ts":531358977469,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":154,"tdur":89,"tts":92946},{"cat":"cc","pid":25863,"tid":25871,"ts":531358977484,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":92961},{"cat":"cc","pid":25863,"tid":25871,"ts":531358977624,"ph":"X","name":"Display::Draw","args":{},"dur":147,"tdur":87,"tts":93037},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358977628,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":93041,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358977633,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":93046},{"cat":"cc","pid":25863,"tid":25871,"ts":531358977635,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":93048},{"cat":"cc","pid":25863,"tid":25871,"ts":531358977640,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":93053},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358977647,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":116,"tdur":55,"tts":93060},{"cat":"mojo","pid":25863,"tid":25871,"ts":531358978919,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":15,"tts":93205},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531358978942,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":126541,"tdur":297,"tts":93227},{"cat":"cc","pid":25863,"tid":25871,"ts":531358978944,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":132,"tdur":82,"tts":93229},{"cat":"cc","pid":25863,"tid":25871,"ts":531358978958,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":93244},{"cat":"cc","pid":25863,"tid":25871,"ts":531358979077,"ph":"X","name":"Display::Draw","args":{},"dur":126402,"tdur":207,"tts":93312},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531358979081,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":93316,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531358979086,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":93321},{"cat":"cc","pid":25863,"tid":25871,"ts":531358979088,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":93323},{"cat":"cc","pid":25863,"tid":25871,"ts":531358979093,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":93328},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531358979100,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":126354,"tdur":159,"tts":93335},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359108215,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":46,"tdur":43,"tts":93723},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359108282,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":700,"tdur":385,"tts":93788},{"cat":"cc","pid":25863,"tid":25871,"ts":531359108288,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":339,"tdur":184,"tts":93794},{"cat":"cc","pid":25863,"tid":25871,"ts":531359108331,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":26,"tdur":25,"tts":93837},{"cat":"cc","pid":25863,"tid":25871,"ts":531359108629,"ph":"X","name":"Display::Draw","args":{},"dur":350,"tdur":187,"tts":93982},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359108640,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":93993,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359108653,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":43,"tdur":42,"tts":94006},{"cat":"cc","pid":25863,"tid":25871,"ts":531359108660,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":13,"tdur":12,"tts":94013},{"cat":"cc","pid":25863,"tid":25871,"ts":531359108674,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":18,"tdur":17,"tts":94027},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359108697,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":263,"tdur":100,"tts":94050},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359111498,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":36,"tdur":33,"tts":94329},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359111550,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":621,"tdur":365,"tts":94379},{"cat":"cc","pid":25863,"tid":25871,"ts":531359111554,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":320,"tdur":168,"tts":94384},{"cat":"cc","pid":25863,"tid":25871,"ts":531359111588,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":22,"tts":94418},{"cat":"cc","pid":25863,"tid":25871,"ts":531359111877,"ph":"X","name":"Display::Draw","args":{},"dur":291,"tdur":184,"tts":94556},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359111886,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":94565,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359111896,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":94575},{"cat":"cc","pid":25863,"tid":25871,"ts":531359111900,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":94580},{"cat":"cc","pid":25863,"tid":25871,"ts":531359111912,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":94591},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359111929,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":220,"tdur":112,"tts":94608},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359114672,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":34,"tdur":31,"tts":94900},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359114721,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":621,"tdur":350,"tts":94947},{"cat":"cc","pid":25863,"tid":25871,"ts":531359114726,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":290,"tdur":166,"tts":94952},{"cat":"cc","pid":25863,"tid":25871,"ts":531359114758,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":25,"tdur":24,"tts":94984},{"cat":"cc","pid":25863,"tid":25871,"ts":531359115018,"ph":"X","name":"Display::Draw","args":{},"dur":321,"tdur":172,"tts":95122},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359115027,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":95131,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359115038,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":31,"tts":95141},{"cat":"cc","pid":25863,"tid":25871,"ts":531359115042,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":95145},{"cat":"cc","pid":25863,"tid":25871,"ts":531359115054,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":95157},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359115070,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":253,"tdur":105,"tts":95173},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359117478,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":15,"tts":95414},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359117502,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":69189,"tdur":381,"tts":95437},{"cat":"cc","pid":25863,"tid":25871,"ts":531359117504,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":244,"tdur":160,"tts":95439},{"cat":"cc","pid":25863,"tid":25871,"ts":531359117539,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":12,"tts":95474},{"cat":"cc","pid":25863,"tid":25871,"ts":531359117750,"ph":"X","name":"Display::Draw","args":{},"dur":68939,"tdur":213,"tts":95603},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359117759,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":95612,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359117769,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":30,"tdur":30,"tts":95622},{"cat":"cc","pid":25863,"tid":25871,"ts":531359117785,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":6,"tts":95638},{"cat":"cc","pid":25863,"tid":25871,"ts":531359117791,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":7,"tdur":6,"tts":95644},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359117800,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":68879,"tdur":152,"tts":95653},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359189270,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":31,"tts":95990},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359189318,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":601,"tdur":346,"tts":96037},{"cat":"cc","pid":25863,"tid":25871,"ts":531359189322,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":321,"tdur":164,"tts":96042},{"cat":"cc","pid":25863,"tid":25871,"ts":531359189355,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":22,"tts":96075},{"cat":"cc","pid":25863,"tid":25871,"ts":531359189646,"ph":"X","name":"Display::Draw","args":{},"dur":270,"tdur":170,"tts":96210},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359189655,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":96219,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359189664,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":96228},{"cat":"cc","pid":25863,"tid":25871,"ts":531359189669,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":10,"tts":96233},{"cat":"cc","pid":25863,"tid":25871,"ts":531359189680,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":13,"tdur":12,"tts":96244},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359189697,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":200,"tdur":100,"tts":96261},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359193750,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":30,"tts":96531},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359193797,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":640,"tdur":365,"tts":96577},{"cat":"cc","pid":25863,"tid":25871,"ts":531359193802,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":320,"tdur":168,"tts":96582},{"cat":"cc","pid":25863,"tid":25871,"ts":531359193835,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":96615},{"cat":"cc","pid":25863,"tid":25871,"ts":531359194124,"ph":"X","name":"Display::Draw","args":{},"dur":310,"tdur":185,"tts":96754},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359194133,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":96763,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359194142,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":53,"tdur":53,"tts":96772},{"cat":"cc","pid":25863,"tid":25871,"ts":531359194147,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":10,"tts":96777},{"cat":"cc","pid":25863,"tid":25871,"ts":531359194158,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":33,"tdur":32,"tts":96789},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359194196,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":218,"tdur":91,"tts":96827},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359197014,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":30,"tts":97105},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359197062,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":552,"tdur":304,"tts":97151},{"cat":"cc","pid":25863,"tid":25871,"ts":531359197067,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":315,"tdur":163,"tts":97156},{"cat":"cc","pid":25863,"tid":25871,"ts":531359197099,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":22,"tts":97189},{"cat":"cc","pid":25863,"tid":25871,"ts":531359197384,"ph":"X","name":"Display::Draw","args":{},"dur":228,"tdur":129,"tts":97323},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359197394,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":97332,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359197404,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":30,"tts":97343},{"cat":"cc","pid":25863,"tid":25871,"ts":531359197408,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":97347},{"cat":"cc","pid":25863,"tid":25871,"ts":531359197420,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":97358},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359197436,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":161,"tdur":61,"tts":97375},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359200121,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":97551},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359200144,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":53022,"tdur":380,"tts":97573},{"cat":"cc","pid":25863,"tid":25871,"ts":531359200146,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":183,"tdur":90,"tts":97575},{"cat":"cc","pid":25863,"tid":25871,"ts":531359200162,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":97591},{"cat":"cc","pid":25863,"tid":25871,"ts":531359200330,"ph":"X","name":"Display::Draw","args":{},"dur":52818,"tdur":268,"tts":97667},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359200334,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":97671,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359200338,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":97675},{"cat":"cc","pid":25863,"tid":25871,"ts":531359200340,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":97677},{"cat":"cc","pid":25863,"tid":25871,"ts":531359200345,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":97682},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359200353,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":52771,"tdur":220,"tts":97690},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359254732,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":14,"tts":98114},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359254754,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":354,"tdur":183,"tts":98135},{"cat":"cc","pid":25863,"tid":25871,"ts":531359254756,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":179,"tdur":94,"tts":98137},{"cat":"cc","pid":25863,"tid":25871,"ts":531359254776,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":98158},{"cat":"cc","pid":25863,"tid":25871,"ts":531359254936,"ph":"X","name":"Display::Draw","args":{},"dur":171,"tdur":84,"tts":98233},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359254940,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":98237,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359254944,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":98241},{"cat":"cc","pid":25863,"tid":25871,"ts":531359254946,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":98243},{"cat":"cc","pid":25863,"tid":25871,"ts":531359254951,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":98248},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359254958,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":141,"tdur":54,"tts":98255},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359256270,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":98399},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359256290,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":299,"tdur":175,"tts":98419},{"cat":"cc","pid":25863,"tid":25871,"ts":531359256292,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":150,"tdur":79,"tts":98421},{"cat":"cc","pid":25863,"tid":25871,"ts":531359256307,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":98435},{"cat":"cc","pid":25863,"tid":25871,"ts":531359256443,"ph":"X","name":"Display::Draw","args":{},"dur":144,"tdur":90,"tts":98502},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359256447,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":98506,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359256451,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":22,"tdur":21,"tts":98510},{"cat":"cc","pid":25863,"tid":25871,"ts":531359256461,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":98519},{"cat":"cc","pid":25863,"tid":25871,"ts":531359256466,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":4,"tts":98525},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359256473,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":106,"tdur":52,"tts":98532},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359257696,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":19,"tdur":17,"tts":98668},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359257721,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":276,"tdur":177,"tts":98692},{"cat":"cc","pid":25863,"tid":25871,"ts":531359257723,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":140,"tdur":92,"tts":98694},{"cat":"cc","pid":25863,"tid":25871,"ts":531359257744,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":8,"tts":98716},{"cat":"cc","pid":25863,"tid":25871,"ts":531359257864,"ph":"X","name":"Display::Draw","args":{},"dur":131,"tdur":80,"tts":98788},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359257868,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":98791,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359257872,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":98796},{"cat":"cc","pid":25863,"tid":25871,"ts":531359257874,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":5,"tts":98797},{"cat":"cc","pid":25863,"tid":25871,"ts":531359257879,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":98802},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359257886,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":101,"tdur":51,"tts":98809},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359259079,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":13,"tdur":12,"tts":98916},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359259099,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":78022,"tdur":230,"tts":98935},{"cat":"cc","pid":25863,"tid":25871,"ts":531359259101,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":125,"tdur":77,"tts":98937},{"cat":"cc","pid":25863,"tid":25871,"ts":531359259115,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":98951},{"cat":"cc","pid":25863,"tid":25871,"ts":531359259227,"ph":"X","name":"Display::Draw","args":{},"dur":77892,"tdur":148,"tts":99015},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359259231,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":99019,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359259235,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":99024},{"cat":"cc","pid":25863,"tid":25871,"ts":531359259237,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":5,"tts":99025},{"cat":"cc","pid":25863,"tid":25871,"ts":531359259242,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":99030},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359259249,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":77860,"tdur":116,"tts":99037},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359339541,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":99276},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359339563,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":334,"tdur":170,"tts":99297},{"cat":"cc","pid":25863,"tid":25871,"ts":531359339565,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":181,"tdur":86,"tts":99299},{"cat":"cc","pid":25863,"tid":25871,"ts":531359339580,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":9,"tts":99314},{"cat":"cc","pid":25863,"tid":25871,"ts":531359339747,"ph":"X","name":"Display::Draw","args":{},"dur":149,"tdur":79,"tts":99387},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359339751,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":99391,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359339755,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":14,"tts":99395},{"cat":"cc","pid":25863,"tid":25871,"ts":531359339758,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":5,"tts":99397},{"cat":"cc","pid":25863,"tid":25871,"ts":531359339763,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":6,"tts":99402},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359339770,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":117,"tdur":47,"tts":99410},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359341081,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":99541},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359341101,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":333,"tdur":172,"tts":99561},{"cat":"cc","pid":25863,"tid":25871,"ts":531359341103,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":169,"tdur":84,"tts":99563},{"cat":"cc","pid":25863,"tid":25871,"ts":531359341117,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":9,"tts":99577},{"cat":"cc","pid":25863,"tid":25871,"ts":531359341273,"ph":"X","name":"Display::Draw","args":{},"dur":160,"tdur":84,"tts":99648},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359341277,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":99652,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359341280,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":99656},{"cat":"cc","pid":25863,"tid":25871,"ts":531359341282,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":99658},{"cat":"cc","pid":25863,"tid":25871,"ts":531359341287,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":99662},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359341294,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":131,"tdur":55,"tts":99669},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359342521,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":16,"tts":99807},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359342544,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":265,"tdur":165,"tts":99830},{"cat":"cc","pid":25863,"tid":25871,"ts":531359342546,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":126,"tdur":76,"tts":99832},{"cat":"cc","pid":25863,"tid":25871,"ts":531359342560,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":8,"tts":99845},{"cat":"cc","pid":25863,"tid":25871,"ts":531359342672,"ph":"X","name":"Display::Draw","args":{},"dur":136,"tdur":83,"tts":99910},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359342676,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":99913,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359342680,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":21,"tdur":20,"tts":99917},{"cat":"cc","pid":25863,"tid":25871,"ts":531359342682,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":12,"tdur":11,"tts":99919},{"cat":"cc","pid":25863,"tid":25871,"ts":531359342694,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":99931},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359342701,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":99,"tdur":47,"tts":99938},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359343855,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":12,"tdur":11,"tts":100038},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359343872,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":59448,"tdur":211,"tts":100054},{"cat":"cc","pid":25863,"tid":25871,"ts":531359343874,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":110,"tdur":76,"tts":100056},{"cat":"cc","pid":25863,"tid":25871,"ts":531359343888,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":100070},{"cat":"cc","pid":25863,"tid":25871,"ts":531359343985,"ph":"X","name":"Display::Draw","args":{},"dur":59334,"tdur":131,"tts":100133},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359343989,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":100137,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359343993,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":28,"tdur":20,"tts":100141},{"cat":"cc","pid":25863,"tid":25871,"ts":531359343995,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":100143},{"cat":"cc","pid":25863,"tid":25871,"ts":531359344014,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":6,"tts":100154},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359344021,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":59288,"tdur":91,"tts":100162},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359405546,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":80,"tdur":60,"tts":100407},{"cat":"trace_event_overhead","pid":25863,"tid":25871,"ts":531359405546,"ph":"X","name":"overhead","args":{},"dur":53,"tdur":32,"tts":100407},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359405642,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":665,"tdur":374,"tts":100483},{"cat":"cc","pid":25863,"tid":25871,"ts":531359405647,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":325,"tdur":171,"tts":100489},{"cat":"cc","pid":25863,"tid":25871,"ts":531359405680,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":26,"tdur":26,"tts":100521},{"cat":"cc","pid":25863,"tid":25871,"ts":531359405974,"ph":"X","name":"Display::Draw","args":{},"dur":329,"tdur":191,"tts":100663},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359405983,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":100673,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359405993,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":33,"tdur":31,"tts":100683},{"cat":"cc","pid":25863,"tid":25871,"ts":531359405998,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":10,"tts":100687},{"cat":"cc","pid":25863,"tid":25871,"ts":531359406009,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":13,"tdur":12,"tts":100698},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359406026,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":255,"tdur":115,"tts":100716},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359408869,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":30,"tts":101012},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359408917,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":611,"tdur":356,"tts":101058},{"cat":"cc","pid":25863,"tid":25871,"ts":531359408922,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":318,"tdur":161,"tts":101063},{"cat":"cc","pid":25863,"tid":25871,"ts":531359408955,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":22,"tts":101096},{"cat":"cc","pid":25863,"tid":25871,"ts":531359409242,"ph":"X","name":"Display::Draw","args":{},"dur":283,"tdur":183,"tts":101228},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359409251,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":101237,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359409261,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":101247},{"cat":"cc","pid":25863,"tid":25871,"ts":531359409265,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":101251},{"cat":"cc","pid":25863,"tid":25871,"ts":531359409276,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":13,"tdur":12,"tts":101262},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359409293,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":213,"tdur":113,"tts":101279},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359412705,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":30,"tts":101565},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359412753,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":528,"tdur":337,"tts":101611},{"cat":"cc","pid":25863,"tid":25871,"ts":531359412757,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":289,"tdur":172,"tts":101616},{"cat":"cc","pid":25863,"tid":25871,"ts":531359412790,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":101648},{"cat":"cc","pid":25863,"tid":25871,"ts":531359413049,"ph":"X","name":"Display::Draw","args":{},"dur":229,"tdur":152,"tts":101792},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359413058,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":101801,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359413068,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":31,"tts":101811},{"cat":"cc","pid":25863,"tid":25871,"ts":531359413072,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":9,"tts":101816},{"cat":"cc","pid":25863,"tid":25871,"ts":531359413084,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":101827},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359413100,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":158,"tdur":81,"tts":101843},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359415653,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":36,"tdur":33,"tts":102098},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359415704,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":54182,"tdur":405,"tts":102147},{"cat":"cc","pid":25863,"tid":25871,"ts":531359415709,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":362,"tdur":190,"tts":102151},{"cat":"cc","pid":25863,"tid":25871,"ts":531359415742,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":102185},{"cat":"cc","pid":25863,"tid":25871,"ts":531359416073,"ph":"X","name":"Display::Draw","args":{},"dur":53812,"tdur":206,"tts":102345},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359416082,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":102354,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359416092,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":102364},{"cat":"cc","pid":25863,"tid":25871,"ts":531359416097,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":9,"tts":102369},{"cat":"cc","pid":25863,"tid":25871,"ts":531359416108,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":102380},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359416125,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":53751,"tdur":144,"tts":102397},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359473186,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":36,"tdur":33,"tts":102674},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359473236,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":323,"tdur":187,"tts":102722},{"cat":"cc","pid":25863,"tid":25871,"ts":531359473241,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":187,"tdur":100,"tts":102727},{"cat":"cc","pid":25863,"tid":25871,"ts":531359473274,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":102760},{"cat":"cc","pid":25863,"tid":25871,"ts":531359473429,"ph":"X","name":"Display::Draw","args":{},"dur":129,"tdur":80,"tts":102828},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359473433,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":102833,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359473437,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":102837},{"cat":"cc","pid":25863,"tid":25871,"ts":531359473439,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":102839},{"cat":"cc","pid":25863,"tid":25871,"ts":531359473444,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":102844},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359473452,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":98,"tdur":48,"tts":102851},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359474610,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":19,"tdur":18,"tts":102989},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359474635,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":275,"tdur":170,"tts":103014},{"cat":"cc","pid":25863,"tid":25871,"ts":531359474638,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":135,"tdur":82,"tts":103016},{"cat":"cc","pid":25863,"tid":25871,"ts":531359474652,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":8,"tts":103031},{"cat":"cc","pid":25863,"tid":25871,"ts":531359474774,"ph":"X","name":"Display::Draw","args":{},"dur":135,"tdur":83,"tts":103100},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359474778,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":103104,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359474783,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":103108},{"cat":"cc","pid":25863,"tid":25871,"ts":531359474785,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":5,"tts":103110},{"cat":"cc","pid":25863,"tid":25871,"ts":531359474790,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":6,"tts":103115},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359474797,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":103,"tdur":51,"tts":103123},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359476043,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":19,"tdur":18,"tts":103264},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359476069,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":320,"tdur":202,"tts":103289},{"cat":"cc","pid":25863,"tid":25871,"ts":531359476071,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":139,"tdur":105,"tts":103291},{"cat":"cc","pid":25863,"tid":25871,"ts":531359476093,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":15,"tdur":14,"tts":103314},{"cat":"cc","pid":25863,"tid":25871,"ts":531359476211,"ph":"X","name":"Display::Draw","args":{},"dur":176,"tdur":91,"tts":103398},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359476215,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":103402,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359476219,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":22,"tdur":21,"tts":103406},{"cat":"cc","pid":25863,"tid":25871,"ts":531359476221,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":103408},{"cat":"cc","pid":25863,"tid":25871,"ts":531359476226,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":13,"tdur":13,"tts":103413},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359476241,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":138,"tdur":53,"tts":103428},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359477521,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":12,"tts":103541},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359477540,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":76085,"tdur":306,"tts":103559},{"cat":"cc","pid":25863,"tid":25871,"ts":531359477542,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":146,"tdur":81,"tts":103561},{"cat":"cc","pid":25863,"tid":25871,"ts":531359477557,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":8,"tts":103576},{"cat":"cc","pid":25863,"tid":25871,"ts":531359477689,"ph":"X","name":"Display::Draw","args":{},"dur":75935,"tdur":219,"tts":103644},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359477693,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":103648,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359477697,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":103652},{"cat":"cc","pid":25863,"tid":25871,"ts":531359477699,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":103654},{"cat":"cc","pid":25863,"tid":25871,"ts":531359477704,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":103659},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359477711,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":75905,"tdur":188,"tts":103666},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359555038,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":29,"tdur":27,"tts":103918},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359555073,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":207,"tdur":128,"tts":103952},{"cat":"cc","pid":25863,"tid":25871,"ts":531359555075,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":99,"tdur":47,"tts":103954},{"cat":"cc","pid":25863,"tid":25871,"ts":531359555089,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":103968},{"cat":"cc","pid":25863,"tid":25871,"ts":531359555175,"ph":"X","name":"Display::Draw","args":{},"dur":104,"tdur":77,"tts":104002},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359555178,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":104006,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359555182,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":104009},{"cat":"cc","pid":25863,"tid":25871,"ts":531359555184,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":104012},{"cat":"cc","pid":25863,"tid":25871,"ts":531359555189,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":6,"tts":104016},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359555196,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":75,"tdur":46,"tts":104024},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359556433,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":12,"tdur":11,"tts":104125},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359556451,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":239,"tdur":87,"tts":104143},{"cat":"cc","pid":25863,"tid":25871,"ts":531359556453,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":130,"tdur":45,"tts":104144},{"cat":"cc","pid":25863,"tid":25871,"ts":531359556466,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":104158},{"cat":"cc","pid":25863,"tid":25871,"ts":531359556584,"ph":"X","name":"Display::Draw","args":{},"dur":105,"tdur":39,"tts":104190},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359556587,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":104193,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359556590,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":104196},{"cat":"cc","pid":25863,"tid":25871,"ts":531359556592,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":104198},{"cat":"cc","pid":25863,"tid":25871,"ts":531359556597,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":104203},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359556604,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":80,"tdur":15,"tts":104210},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359557742,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":9,"tdur":9,"tts":104267},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359557756,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":144,"tdur":81,"tts":104282},{"cat":"cc","pid":25863,"tid":25871,"ts":531359557758,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":73,"tdur":39,"tts":104283},{"cat":"cc","pid":25863,"tid":25871,"ts":531359557770,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":8,"tts":104295},{"cat":"cc","pid":25863,"tid":25871,"ts":531359557832,"ph":"X","name":"Display::Draw","args":{},"dur":67,"tdur":39,"tts":104323},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359557835,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":104326,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359557838,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":11,"tdur":11,"tts":104329},{"cat":"cc","pid":25863,"tid":25871,"ts":531359557840,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":104331},{"cat":"cc","pid":25863,"tid":25871,"ts":531359557844,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":4,"tdur":4,"tts":104335},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359557850,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":44,"tdur":17,"tts":104341},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359559014,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":10,"tdur":8,"tts":104400},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359559028,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":61362,"tdur":305,"tts":104413},{"cat":"cc","pid":25863,"tid":25871,"ts":531359559030,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":108,"tdur":72,"tts":104415},{"cat":"cc","pid":25863,"tid":25871,"ts":531359559042,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":7,"tdur":7,"tts":104427},{"cat":"cc","pid":25863,"tid":25871,"ts":531359559139,"ph":"X","name":"Display::Draw","args":{},"dur":61248,"tdur":226,"tts":104489},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359559143,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":104493,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359559147,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":104497},{"cat":"cc","pid":25863,"tid":25871,"ts":531359559149,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":104499},{"cat":"cc","pid":25863,"tid":25871,"ts":531359559154,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":104504},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359559161,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":61208,"tdur":184,"tts":104511},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359622923,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":31,"tts":104878},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359622971,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":658,"tdur":355,"tts":104925},{"cat":"cc","pid":25863,"tid":25871,"ts":531359622975,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":333,"tdur":167,"tts":104929},{"cat":"cc","pid":25863,"tid":25871,"ts":531359623009,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":22,"tts":104963},{"cat":"cc","pid":25863,"tid":25871,"ts":531359623310,"ph":"X","name":"Display::Draw","args":{},"dur":315,"tdur":177,"tts":105100},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359623319,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":105109,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359623329,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":51,"tdur":50,"tts":105119},{"cat":"cc","pid":25863,"tid":25871,"ts":531359623333,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":30,"tdur":29,"tts":105123},{"cat":"cc","pid":25863,"tid":25871,"ts":531359623364,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":105154},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359623381,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":225,"tdur":86,"tts":105171},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359626252,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":31,"tts":105450},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359626300,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":628,"tdur":364,"tts":105497},{"cat":"cc","pid":25863,"tid":25871,"ts":531359626305,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":318,"tdur":162,"tts":105502},{"cat":"cc","pid":25863,"tid":25871,"ts":531359626337,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":105534},{"cat":"cc","pid":25863,"tid":25871,"ts":531359626625,"ph":"X","name":"Display::Draw","args":{},"dur":300,"tdur":189,"tts":105668},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359626634,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":105677,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359626644,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":105687},{"cat":"cc","pid":25863,"tid":25871,"ts":531359626649,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":105692},{"cat":"cc","pid":25863,"tid":25871,"ts":531359626660,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":105703},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359626677,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":228,"tdur":117,"tts":105720},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359629380,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":29,"tdur":27,"tts":105961},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359629421,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":588,"tdur":356,"tts":106002},{"cat":"cc","pid":25863,"tid":25871,"ts":531359629426,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":263,"tdur":167,"tts":106007},{"cat":"cc","pid":25863,"tid":25871,"ts":531359629460,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":20,"tdur":19,"tts":106041},{"cat":"cc","pid":25863,"tid":25871,"ts":531359629691,"ph":"X","name":"Display::Draw","args":{},"dur":314,"tdur":177,"tts":106178},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359629700,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":106187,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359629711,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":49,"tdur":49,"tts":106197},{"cat":"cc","pid":25863,"tid":25871,"ts":531359629715,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":9,"tts":106202},{"cat":"cc","pid":25863,"tid":25871,"ts":531359629727,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":29,"tdur":28,"tts":106213},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359629761,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":225,"tdur":88,"tts":106247},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359632414,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":13,"tdur":12,"tts":106434},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359632433,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":38449,"tdur":367,"tts":106452},{"cat":"cc","pid":25863,"tid":25871,"ts":531359632435,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":153,"tdur":104,"tts":106454},{"cat":"cc","pid":25863,"tid":25871,"ts":531359632449,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":9,"tts":106469},{"cat":"cc","pid":25863,"tid":25871,"ts":531359632590,"ph":"X","name":"Display::Draw","args":{},"dur":38290,"tdur":254,"tts":106562},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359632600,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":106571,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359632610,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":30,"tdur":30,"tts":106581},{"cat":"cc","pid":25863,"tid":25871,"ts":531359632614,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":19,"tdur":17,"tts":106586},{"cat":"cc","pid":25863,"tid":25871,"ts":531359632633,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":106604},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359632641,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":38206,"tdur":170,"tts":106612},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359672323,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":36,"tdur":34,"tts":106952},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359672375,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":726,"tdur":377,"tts":107003},{"cat":"cc","pid":25863,"tid":25871,"ts":531359672379,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":369,"tdur":190,"tts":107008},{"cat":"cc","pid":25863,"tid":25871,"ts":531359672417,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":25,"tdur":24,"tts":107045},{"cat":"cc","pid":25863,"tid":25871,"ts":531359672750,"ph":"X","name":"Display::Draw","args":{},"dur":348,"tdur":175,"tts":107202},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359672759,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":107210,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359672769,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":33,"tdur":32,"tts":107221},{"cat":"cc","pid":25863,"tid":25871,"ts":531359672774,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":107225},{"cat":"cc","pid":25863,"tid":25871,"ts":531359672785,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":14,"tdur":12,"tts":107237},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359672803,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":277,"tdur":105,"tts":107254},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359676485,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":30,"tts":107523},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359676532,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":549,"tdur":317,"tts":107569},{"cat":"cc","pid":25863,"tid":25871,"ts":531359676536,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":296,"tdur":166,"tts":107573},{"cat":"cc","pid":25863,"tid":25871,"ts":531359676569,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":20,"tdur":19,"tts":107606},{"cat":"cc","pid":25863,"tid":25871,"ts":531359676834,"ph":"X","name":"Display::Draw","args":{},"dur":245,"tdur":142,"tts":107742},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359676840,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":107748,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359676846,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":20,"tdur":20,"tts":107754},{"cat":"cc","pid":25863,"tid":25871,"ts":531359676849,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":7,"tdur":6,"tts":107757},{"cat":"cc","pid":25863,"tid":25871,"ts":531359676857,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":7,"tdur":7,"tts":107765},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359676867,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":200,"tdur":96,"tts":107775},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359679453,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":22,"tdur":20,"tts":108021},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359679484,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":224,"tdur":153,"tts":108051},{"cat":"cc","pid":25863,"tid":25871,"ts":531359679487,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":94,"tdur":72,"tts":108054},{"cat":"cc","pid":25863,"tid":25871,"ts":531359679509,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":17,"tdur":16,"tts":108076},{"cat":"cc","pid":25863,"tid":25871,"ts":531359679581,"ph":"X","name":"Display::Draw","args":{},"dur":125,"tdur":73,"tts":108128},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359679586,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":108132,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359679592,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":20,"tdur":20,"tts":108138},{"cat":"cc","pid":25863,"tid":25871,"ts":531359679595,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":6,"tts":108141},{"cat":"cc","pid":25863,"tid":25871,"ts":531359679602,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":8,"tdur":8,"tts":108148},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359679613,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":80,"tdur":29,"tts":108159},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359681844,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":108319},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359681867,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":69811,"tdur":343,"tts":108341},{"cat":"cc","pid":25863,"tid":25871,"ts":531359681880,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":338,"tdur":142,"tts":108354},{"cat":"cc","pid":25863,"tid":25871,"ts":531359681901,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":108375},{"cat":"cc","pid":25863,"tid":25871,"ts":531359682220,"ph":"X","name":"Display::Draw","args":{},"dur":69455,"tdur":181,"tts":108499},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359682226,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":108504,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359682232,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":20,"tdur":19,"tts":108511},{"cat":"cc","pid":25863,"tid":25871,"ts":531359682235,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":7,"tdur":6,"tts":108514},{"cat":"cc","pid":25863,"tid":25871,"ts":531359682242,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":8,"tdur":7,"tts":108521},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359682252,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":69407,"tdur":133,"tts":108531},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359754088,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":31,"tts":108798},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359754130,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":286,"tdur":198,"tts":108839},{"cat":"cc","pid":25863,"tid":25871,"ts":531359754134,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":148,"tdur":102,"tts":108843},{"cat":"cc","pid":25863,"tid":25871,"ts":531359754162,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":13,"tdur":12,"tts":108871},{"cat":"cc","pid":25863,"tid":25871,"ts":531359754282,"ph":"X","name":"Display::Draw","args":{},"dur":133,"tdur":90,"tts":108946},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359754288,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":108952,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359754295,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":25,"tdur":24,"tts":108959},{"cat":"cc","pid":25863,"tid":25871,"ts":531359754300,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":7,"tdur":6,"tts":108964},{"cat":"cc","pid":25863,"tid":25871,"ts":531359754307,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":11,"tdur":10,"tts":108971},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359754320,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":87,"tdur":43,"tts":108984},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359756232,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":14,"tts":109109},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359756253,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":303,"tdur":167,"tts":109129},{"cat":"cc","pid":25863,"tid":25871,"ts":531359756255,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":165,"tdur":84,"tts":109131},{"cat":"cc","pid":25863,"tid":25871,"ts":531359756269,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":109146},{"cat":"cc","pid":25863,"tid":25871,"ts":531359756421,"ph":"X","name":"Display::Draw","args":{},"dur":134,"tdur":77,"tts":109217},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359756425,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":109221,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359756429,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":109225},{"cat":"cc","pid":25863,"tid":25871,"ts":531359756431,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":109227},{"cat":"cc","pid":25863,"tid":25871,"ts":531359756436,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":109232},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359756443,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":104,"tdur":47,"tts":109239},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359758280,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":109380},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359758300,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":215,"tdur":104,"tts":109399},{"cat":"cc","pid":25863,"tid":25871,"ts":531359758302,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":101,"tdur":47,"tts":109401},{"cat":"cc","pid":25863,"tid":25871,"ts":531359758316,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":109415},{"cat":"cc","pid":25863,"tid":25871,"ts":531359758404,"ph":"X","name":"Display::Draw","args":{},"dur":110,"tdur":53,"tts":109449},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359758407,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":109452,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359758410,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":26,"tdur":25,"tts":109456},{"cat":"cc","pid":25863,"tid":25871,"ts":531359758412,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":109458},{"cat":"cc","pid":25863,"tid":25871,"ts":531359758417,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":17,"tdur":17,"tts":109462},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359758436,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":73,"tdur":16,"tts":109481},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359760207,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":13,"tdur":13,"tts":109580},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359760226,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":70935,"tdur":317,"tts":109599},{"cat":"cc","pid":25863,"tid":25871,"ts":531359760228,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":121,"tdur":70,"tts":109601},{"cat":"cc","pid":25863,"tid":25871,"ts":531359760242,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":109615},{"cat":"cc","pid":25863,"tid":25871,"ts":531359760349,"ph":"X","name":"Display::Draw","args":{},"dur":70809,"tdur":239,"tts":109673},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359760353,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":109676,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359760357,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":109680},{"cat":"cc","pid":25863,"tid":25871,"ts":531359760359,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":109682},{"cat":"cc","pid":25863,"tid":25871,"ts":531359760363,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":4,"tts":109687},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359760370,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":70771,"tdur":202,"tts":109693},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359834359,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":51,"tdur":48,"tts":110088},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359834427,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":628,"tdur":354,"tts":110155},{"cat":"cc","pid":25863,"tid":25871,"ts":531359834434,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":323,"tdur":172,"tts":110161},{"cat":"cc","pid":25863,"tid":25871,"ts":531359834480,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":27,"tdur":27,"tts":110207},{"cat":"cc","pid":25863,"tid":25871,"ts":531359834759,"ph":"X","name":"Display::Draw","args":{},"dur":293,"tdur":170,"tts":110336},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359834769,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":110347,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359834780,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":40,"tdur":39,"tts":110358},{"cat":"cc","pid":25863,"tid":25871,"ts":531359834787,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":12,"tdur":10,"tts":110365},{"cat":"cc","pid":25863,"tid":25871,"ts":531359834799,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":18,"tdur":16,"tts":110377},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359834821,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":215,"tdur":90,"tts":110399},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359836970,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":16,"tts":110615},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359836994,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":505,"tdur":322,"tts":110638},{"cat":"cc","pid":25863,"tid":25871,"ts":531359836997,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":288,"tdur":153,"tts":110640},{"cat":"cc","pid":25863,"tid":25871,"ts":531359837013,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":110657},{"cat":"cc","pid":25863,"tid":25871,"ts":531359837287,"ph":"X","name":"Display::Draw","args":{},"dur":208,"tdur":159,"tts":110797},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359837295,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":110805,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359837335,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":15,"tts":110845},{"cat":"cc","pid":25863,"tid":25871,"ts":531359837338,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":110847},{"cat":"cc","pid":25863,"tid":25871,"ts":531359837343,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":110853},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359837351,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":132,"tdur":82,"tts":110861},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359838847,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":16,"tts":111071},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359838871,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":424,"tdur":301,"tts":111094},{"cat":"cc","pid":25863,"tid":25871,"ts":531359838873,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":222,"tdur":142,"tts":111097},{"cat":"cc","pid":25863,"tid":25871,"ts":531359838890,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":111113},{"cat":"cc","pid":25863,"tid":25871,"ts":531359839096,"ph":"X","name":"Display::Draw","args":{},"dur":197,"tdur":149,"tts":111243},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359839104,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":111250,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359839112,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":38,"tdur":37,"tts":111259},{"cat":"cc","pid":25863,"tid":25871,"ts":531359839116,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":9,"tdur":9,"tts":111262},{"cat":"cc","pid":25863,"tid":25871,"ts":531359839126,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":22,"tdur":22,"tts":111272},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359839151,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":126,"tdur":78,"tts":111297},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359840577,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":20,"tts":111531},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359840626,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":62485,"tdur":428,"tts":111581},{"cat":"cc","pid":25863,"tid":25871,"ts":531359840632,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":277,"tdur":193,"tts":111586},{"cat":"cc","pid":25863,"tid":25871,"ts":531359840684,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":111638},{"cat":"cc","pid":25863,"tid":25871,"ts":531359840910,"ph":"X","name":"Display::Draw","args":{},"dur":62200,"tdur":225,"tts":111782},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359840919,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":111790,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359840927,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":44,"tdur":43,"tts":111799},{"cat":"cc","pid":25863,"tid":25871,"ts":531359840931,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":24,"tdur":24,"tts":111802},{"cat":"cc","pid":25863,"tid":25871,"ts":531359840956,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":111827},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359840972,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":62129,"tdur":154,"tts":111844},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359904936,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":13,"tts":112128},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359904958,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":321,"tdur":174,"tts":112148},{"cat":"cc","pid":25863,"tid":25871,"ts":531359904960,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":169,"tdur":87,"tts":112150},{"cat":"cc","pid":25863,"tid":25871,"ts":531359904974,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":112165},{"cat":"cc","pid":25863,"tid":25871,"ts":531359905130,"ph":"X","name":"Display::Draw","args":{},"dur":148,"tdur":81,"tts":112239},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359905134,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":112243,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359905139,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":112247},{"cat":"cc","pid":25863,"tid":25871,"ts":531359905141,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":5,"tts":112249},{"cat":"cc","pid":25863,"tid":25871,"ts":531359905146,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":112255},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359905153,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":117,"tdur":50,"tts":112262},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359906445,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":112398},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359906466,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":277,"tdur":165,"tts":112418},{"cat":"cc","pid":25863,"tid":25871,"ts":531359906468,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":136,"tdur":84,"tts":112420},{"cat":"cc","pid":25863,"tid":25871,"ts":531359906482,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":112435},{"cat":"cc","pid":25863,"tid":25871,"ts":531359906605,"ph":"X","name":"Display::Draw","args":{},"dur":137,"tdur":77,"tts":112505},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359906609,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":112509,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359906614,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":112514},{"cat":"cc","pid":25863,"tid":25871,"ts":531359906616,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":112516},{"cat":"cc","pid":25863,"tid":25871,"ts":531359906621,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":112521},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359906628,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":105,"tdur":45,"tts":112528},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359907842,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":19,"tdur":18,"tts":112660},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359907868,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":333,"tdur":170,"tts":112685},{"cat":"cc","pid":25863,"tid":25871,"ts":531359907870,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":170,"tdur":84,"tts":112687},{"cat":"cc","pid":25863,"tid":25871,"ts":531359907885,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":8,"tts":112702},{"cat":"cc","pid":25863,"tid":25871,"ts":531359908041,"ph":"X","name":"Display::Draw","args":{},"dur":159,"tdur":81,"tts":112773},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359908045,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":112777,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359908049,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":112781},{"cat":"cc","pid":25863,"tid":25871,"ts":531359908051,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":5,"tts":112783},{"cat":"cc","pid":25863,"tid":25871,"ts":531359908056,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":112788},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359908063,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":129,"tdur":49,"tts":112796},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359909303,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":13,"tdur":12,"tts":112904},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359909322,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":60382,"tdur":268,"tts":112923},{"cat":"cc","pid":25863,"tid":25871,"ts":531359909324,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":121,"tdur":85,"tts":112925},{"cat":"cc","pid":25863,"tid":25871,"ts":531359909338,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":112939},{"cat":"cc","pid":25863,"tid":25871,"ts":531359909446,"ph":"X","name":"Display::Draw","args":{},"dur":60253,"tdur":174,"tts":113012},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359909450,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":113016,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359909455,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":26,"tdur":25,"tts":113021},{"cat":"cc","pid":25863,"tid":25871,"ts":531359909457,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":16,"tdur":16,"tts":113023},{"cat":"cc","pid":25863,"tid":25871,"ts":531359909474,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":6,"tts":113039},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358198786,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":16,"tdur":11,"tts":997050},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358199036,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":18,"tts":997111},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358199043,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":997118},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358199058,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":64,"tdur":63,"tts":997133},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358199062,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":58,"tdur":57,"tts":997137},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358199078,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":32,"tdur":30,"tts":997153},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358200026,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":17667,"tdur":1465,"tts":997308},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358200041,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17648,"tdur":1448,"tts":997322},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358217670,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":17},"dur":13,"tdur":11,"tts":998753},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358217702,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":998784},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358217718,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":3588,"tdur":3573,"tts":998800},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358217722,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":3467,"tdur":3450,"tts":998804},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358221219,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":83,"tdur":83,"tts":1002286},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358221344,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":16,"tdur":14,"tts":1002412},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358221410,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":823,"tdur":823,"tts":1002477},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358221417,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":814,"tdur":813,"tts":1002485},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358221608,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":17},"dur":241,"tdur":239,"tts":1002676},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358222090,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1003158,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358222096,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":160},"dur":132,"tdur":130,"tts":1003164},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358222099,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":127,"tdur":126,"tts":1003167},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358222248,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":5,"tts":1003316},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358222271,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":422,"tdur":365,"tts":1003339},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358222277,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":393,"tdur":337,"tts":1003344},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358222674,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":18,"tdur":17,"tts":1003686},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358222696,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30,"tdur":29,"tts":1003708},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358222700,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":24,"tdur":23,"tts":1003712},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358222748,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":201,"tdur":199,"tts":1003761},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358222758,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":188,"tdur":186,"tts":1003770},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358222805,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":108,"tdur":105,"tts":1003818},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358222956,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30051,"tdur":3007,"tts":1003968},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358222968,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30037,"tdur":2992,"tts":1003980},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358252941,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":229},"dur":59,"tdur":56,"tts":1006911},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358253031,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":6,"tts":1007000},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358253060,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":467,"tdur":338,"tts":1007028},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358253068,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":434,"tdur":304,"tts":1007037},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358253506,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":18,"tdur":17,"tts":1007346},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358253544,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1007385},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358253554,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":259,"tdur":259,"tts":1007394},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358253561,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":250,"tdur":248,"tts":1007402},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358253601,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":229},"dur":39,"tdur":37,"tts":1007442},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358253714,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1007556,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358253721,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":161},"dur":86,"tdur":85,"tts":1007562},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358253725,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":81,"tdur":79,"tts":1007566},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358253835,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":6,"tts":1007676},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358253845,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":470,"tdur":364,"tts":1007685},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358253851,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":440,"tdur":332,"tts":1007692},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358254294,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":19,"tdur":18,"tts":1008029},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358254333,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":24,"tdur":23,"tts":1008068},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358254341,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15,"tdur":13,"tts":1008076},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358254361,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":107,"tdur":107,"tts":1008095},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358254367,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":99,"tdur":97,"tts":1008102},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358254395,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":54,"tdur":52,"tts":1008130},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358254486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2045,"tdur":1055,"tts":1008221},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358254495,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2032,"tdur":1041,"tts":1008230},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358256540,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1682,"tdur":1681,"tts":1009286},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358256553,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":1666,"tdur":1665,"tts":1009299},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358258150,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":85},"dur":64,"tdur":61,"tts":1010898},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358258249,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":9,"tdur":8,"tts":1010996},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358258262,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1676,"tdur":1551,"tts":1011009},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358258271,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":1636,"tdur":1510,"tts":1011017},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358259911,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":24,"tdur":22,"tts":1012535},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358259963,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":9,"tdur":8,"tts":1012586},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358259975,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2903,"tdur":2719,"tts":1012598},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358259984,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":2810,"tdur":2625,"tts":1012607},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358198821,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":20,"tdur":19,"tts":97179},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358199056,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":97330},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358200063,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":97568},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358200466,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":97727},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358200646,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":97871},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358200952,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":97987},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358201881,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":98098},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358202142,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":98212},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358202283,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":98304},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358202614,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":3,"tts":98366},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358203293,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":98427},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358203547,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":98487},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358203736,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":98546},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358203807,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":98590},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358203844,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":98627},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358204125,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":98686},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358205057,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":98746},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358205270,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":98805},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358205427,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":98882},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358285416,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":99138},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358287672,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":21,"tdur":17,"tts":99390},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358290776,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":99662},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358291089,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":99818},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358291276,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":99963},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358291593,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":100090},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358292353,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":100179},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358292554,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":100266},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358292675,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":100329},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358292974,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":100412},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358293752,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":100497},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358293903,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":100564},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358294076,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":100671},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358295249,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":100767},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358296017,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":100865},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358296178,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":100943},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358296285,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":101017},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358354036,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":101220},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358354618,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":101478},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358356265,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":101743},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358356539,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":101923},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358356705,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":102046},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358357045,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":102192},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358357841,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":102260},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358358097,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":102356},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358358288,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":102507},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358358594,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":102615},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358359362,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":102715},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358359548,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":102793},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358359793,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":102874},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358359910,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":102940},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358360239,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":103007},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358361210,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":103064},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358361375,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":103122},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358361499,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":103183},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358361519,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":103199},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358419617,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":103340},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358420122,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":103544},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358421938,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":103805},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358422244,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":6,"tts":103996},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358422414,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":104134},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358422742,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":104259},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358423666,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":104373},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358423924,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":104489},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358424077,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":104593},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358198980,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":37,"tdur":36,"tts":54276},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358199908,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":62,"tdur":60,"tts":54369},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358200382,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":31,"tdur":30,"tts":54472},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358200567,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":54543},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358200594,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":54569},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358200885,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":54615},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358201829,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":54679},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358202080,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":54743},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358202248,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":54802},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358202276,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":5,"tts":54829},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358202583,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":54876},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358203265,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":54938},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358203513,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":54999},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358203709,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":55048},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358203798,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":8,"tdur":7,"tts":55073},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358203829,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":13,"tts":55087},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358204102,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":15,"tts":55116},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358205023,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":55171},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358205234,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":28,"tdur":27,"tts":55233},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358205396,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":21,"tts":55302},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358205420,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":6,"tts":55325},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358285254,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":139,"tdur":138,"tts":55401},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358287538,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":56,"tdur":54,"tts":55605},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358290637,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":62,"tdur":59,"tts":55723},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358291025,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":55827},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358291219,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":55885},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358291237,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":9,"tdur":9,"tts":55902},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358291539,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":17,"tts":55948},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358292295,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":19,"tts":56000},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358292505,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":20,"tts":56055},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358292645,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":56111},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358292669,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":56135},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358292929,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":11,"tts":56163},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358293698,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":13,"tts":56198},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358293885,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":15,"tts":56217},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358294034,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":15,"tts":56266},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358294052,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":9,"tdur":8,"tts":56283},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358295207,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":56326},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358295957,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":56381},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358296147,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":56433},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358296260,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":15,"tts":56490},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358296279,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":6,"tts":56507},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358353941,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":45,"tdur":42,"tts":56573},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358354485,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":51,"tts":56680},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358356130,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":64,"tdur":62,"tts":56802},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358356469,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":27,"tts":56906},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358356638,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":56971},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358356664,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":56995},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358356984,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":57041},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358357807,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":57100},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358358030,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":57164},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358358224,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":23,"tts":57225},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358358250,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":57250},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358358546,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":20,"tts":57292},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358359317,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":57352},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358359515,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":23,"tts":57412},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358359741,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":57473},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358359878,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":23,"tts":57534},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358359904,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":57559},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358360211,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":57603},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358361172,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":32,"tdur":31,"tts":57643},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358361341,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":57690},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358361480,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":57728},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358361501,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":15,"tts":57748},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358262799,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":75,"tdur":74,"tts":1015239},{"cat":"trace_event_overhead","pid":25863,"tid":25870,"ts":531358262799,"ph":"X","name":"overhead","args":{},"dur":60,"tdur":57,"tts":1015239},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358262906,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":566,"tdur":447,"tts":1015346},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358262917,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":327,"tdur":208,"tts":1015357},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358263248,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":222,"tdur":221,"tts":1015570},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358263285,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":85},"dur":37,"tdur":35,"tts":1015607},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358263393,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1015716,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358263399,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":162},"dur":68,"tdur":67,"tts":1015721},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358263402,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":64,"tdur":63,"tts":1015724},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358263478,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1015800},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358263505,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":485,"tdur":369,"tts":1015827},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358263511,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":449,"tdur":332,"tts":1015833},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358263963,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":25,"tdur":22,"tts":1016171},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358263997,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":157,"tdur":133,"tts":1016204},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358264050,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":103,"tdur":102,"tts":1016234},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358264090,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":55,"tdur":54,"tts":1016274},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358264164,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19972,"tdur":1230,"tts":1016348},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358264168,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":19967,"tdur":1226,"tts":1016351},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358284107,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":81},"dur":26,"tdur":25,"tts":1017550},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358284138,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1017581},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358284148,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":408,"tdur":346,"tts":1017591},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358284151,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":379,"tdur":317,"tts":1017593},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358284534,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1017916},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358284562,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1017944},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358284582,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":239,"tdur":238,"tts":1017964},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358284589,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":230,"tdur":229,"tts":1017971},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358284627,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":81},"dur":36,"tdur":35,"tts":1018009},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358284736,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1018118,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358284742,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":163},"dur":74,"tdur":73,"tts":1018124},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358284745,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1018127},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358284826,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":95,"tdur":94,"tts":1018208},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358284939,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":301,"tdur":242,"tts":1018321},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358284946,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":260,"tdur":201,"tts":1018328},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358285209,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":24,"tdur":23,"tts":1018533},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358285377,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":18,"tdur":17,"tts":1018637},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358287602,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":37,"tdur":34,"tts":1018703},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358287617,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1018716},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358287644,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":109,"tdur":107,"tts":1018743},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358287649,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":102,"tdur":101,"tts":1018747},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358287675,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":56,"tdur":53,"tts":1018774},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358290694,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":27705,"tdur":1926,"tts":1018913},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358290706,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":27690,"tdur":1912,"tts":1018924},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358318344,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":165},"dur":48,"tdur":45,"tts":1020787},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358318405,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1020846},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358318435,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":418,"tdur":351,"tts":1020876},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358318442,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":385,"tdur":317,"tts":1020883},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358318831,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1021206},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358318859,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1021234},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358318879,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":167,"tdur":116,"tts":1021254},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358318885,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":153,"tdur":102,"tts":1021259},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319039,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1021363},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358319048,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":349,"tdur":295,"tts":1021372},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319050,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":128,"tdur":74,"tts":1021374},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319180,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":215,"tdur":215,"tts":1021450},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319197,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":165},"dur":41,"tdur":39,"tts":1021468},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358319317,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1021588,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319323,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":164},"dur":70,"tdur":68,"tts":1021594},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319326,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":65,"tdur":64,"tts":1021597},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358319417,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1021688},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358319425,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":397,"tdur":308,"tts":1021695},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319430,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":371,"tdur":282,"tts":1021700},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319804,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1021986},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358319853,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":119,"tdur":118,"tts":1022035},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319863,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":107,"tdur":106,"tts":1022045},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319889,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":66,"tdur":64,"tts":1022072},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358319977,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2898,"tdur":1997,"tts":1022159},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358319985,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2887,"tdur":1986,"tts":1022167},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358322827,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":22},"dur":42,"tdur":39,"tts":1024110},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358322895,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1024177},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358322903,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":470,"tdur":359,"tts":1024185},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358322909,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":438,"tdur":326,"tts":1024191},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358323351,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":19,"tts":1024523},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358323391,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1024564},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358323399,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":249,"tdur":249,"tts":1024571},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358323405,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":241,"tdur":241,"tts":1024577},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358323453,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":22},"dur":36,"tdur":34,"tts":1024626},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358323562,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1024735,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358323568,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":165},"dur":75,"tdur":75,"tts":1024740},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358323571,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":69,"tts":1024744},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358323668,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1024840},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358323676,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":530,"tdur":415,"tts":1024848},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358323680,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":491,"tdur":374,"tts":1024853},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358324176,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":26,"tdur":25,"tts":1025234},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358324229,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30,"tdur":28,"tts":1025288},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358324240,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":16,"tts":1025298},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358324264,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":131,"tdur":130,"tts":1025322},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358324272,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":120,"tdur":119,"tts":1025330},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358324302,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":67,"tdur":66,"tts":1025360},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358324418,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":11031,"tdur":2169,"tts":1025476},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358324430,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11016,"tdur":2153,"tts":1025489},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358335389,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":33},"dur":53,"tdur":50,"tts":1027588},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358335455,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1027652},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358335479,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":498,"tdur":372,"tts":1027676},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358335485,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":466,"tdur":338,"tts":1027683},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358335956,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1028027},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358335983,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1028054},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358336036,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":356,"tdur":227,"tts":1028096},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358336043,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":322,"tdur":193,"tts":1028102},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358336369,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1028301},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358336398,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":562,"tdur":438,"tts":1028329},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358336404,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":298,"tdur":173,"tts":1028335},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358336706,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":252,"tdur":251,"tts":1028514},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358336763,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":33},"dur":38,"tdur":36,"tts":1028571},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358336873,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1028681,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358336879,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":166},"dur":76,"tdur":75,"tts":1028687},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358336882,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":72,"tdur":70,"tts":1028690},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358336983,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1028790},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358336991,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":502,"tdur":393,"tts":1028798},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358336996,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":462,"tdur":351,"tts":1028803},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358337462,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":27,"tdur":25,"tts":1029162},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358337517,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":137,"tdur":136,"tts":1029217},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358337528,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":124,"tdur":122,"tts":1029228},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358337561,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":67,"tdur":66,"tts":1029260},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358337660,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14520,"tdur":2112,"tts":1029359},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358337668,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14510,"tdur":2102,"tts":1029367},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358352148,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":146},"dur":26,"tdur":24,"tts":1031441},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358352202,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1031494},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358352209,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":494,"tdur":368,"tts":1031501},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358352216,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":461,"tdur":336,"tts":1031507},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358352681,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1031849},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358352721,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1031888},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358352728,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":342,"tdur":215,"tts":1031896},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358352733,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":310,"tdur":182,"tts":1031901},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358353047,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1032089},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358353089,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":622,"tdur":494,"tts":1032131},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358353095,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":298,"tdur":168,"tts":1032137},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358353397,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":311,"tdur":311,"tts":1032311},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358353479,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":146},"dur":39,"tdur":37,"tts":1032394},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358353611,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1032525,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358353630,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":167},"dur":75,"tdur":74,"tts":1032544},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358353633,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":69,"tts":1032548},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358353717,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":24,"tdur":23,"tts":1032631},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358354021,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":6,"tts":1032730},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358354561,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":276,"tdur":163,"tts":1032804},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358354577,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":244,"tdur":131,"tts":1032819},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358354823,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13,"tdur":12,"tts":1032953},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358354841,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":145,"tdur":145,"tts":1032971},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358354859,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":126,"tdur":125,"tts":1032990},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358354912,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":62,"tdur":61,"tts":1033043},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358356199,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29115,"tdur":1971,"tts":1033180},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358356217,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29094,"tdur":1952,"tts":1033197},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358385279,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":246},"dur":28,"tdur":26,"tts":1035119},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358385320,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1035159},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358385350,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":453,"tdur":324,"tts":1035189},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358385357,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":424,"tdur":295,"tts":1035195},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358385784,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":15,"tts":1035495},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358385807,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1035518},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358385825,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":233,"tdur":232,"tts":1035536},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358385832,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":224,"tdur":223,"tts":1035542},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358385877,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":246},"dur":36,"tdur":35,"tts":1035588},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358385978,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1035689,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358385984,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":168},"dur":69,"tdur":69,"tts":1035694},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358385987,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":65,"tdur":63,"tts":1035698},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358386063,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1035774},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358386084,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":501,"tdur":383,"tts":1035795},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358386089,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":467,"tdur":348,"tts":1035800},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358386559,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":23,"tdur":21,"tts":1036154},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358386590,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29,"tdur":27,"tts":1036185},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358386600,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":16,"tts":1036194},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358386640,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":121,"tdur":120,"tts":1036235},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358386650,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":109,"tdur":107,"tts":1036245},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358386694,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":45,"tdur":43,"tts":1036289},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358386768,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":3037,"tdur":2102,"tts":1036363},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358386778,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":3025,"tdur":2089,"tts":1036373},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358389772,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":254},"dur":28,"tdur":25,"tts":1038434},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358389826,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1038486},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358389834,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":484,"tdur":361,"tts":1038494},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358389839,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":452,"tdur":329,"tts":1038499},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358390295,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1038834},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358390336,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1038874},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358390343,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":231,"tdur":230,"tts":1038882},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358390349,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":223,"tdur":222,"tts":1038888},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358390380,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":254},"dur":36,"tdur":34,"tts":1038919},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358390489,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1039028,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358390495,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":169},"dur":74,"tdur":74,"tts":1039033},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358390498,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1039036},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358390593,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1039132},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358390601,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":519,"tdur":409,"tts":1039139},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358390606,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":480,"tdur":368,"tts":1039144},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358391091,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":26,"tdur":25,"tts":1039520},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358391145,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":32,"tdur":31,"tts":1039574},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358391156,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":19,"tdur":17,"tts":1039585},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358391182,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":133,"tdur":131,"tts":1039611},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358391191,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":121,"tdur":121,"tts":1039619},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358391240,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":46,"tdur":44,"tts":1039669},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358391336,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9427,"tdur":950,"tts":1039765},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358391348,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9410,"tdur":933,"tts":1039776},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358400772,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1190,"tdur":1189,"tts":1040726},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358400787,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":1172,"tdur":1172,"tts":1040741},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358401907,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":39},"dur":49,"tdur":47,"tts":1041862},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358401983,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1041937},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358401991,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":485,"tdur":379,"tts":1041945},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358401997,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":453,"tdur":345,"tts":1041951},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358402454,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":19,"tts":1042302},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358402495,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1042344},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358402503,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":288,"tdur":288,"tts":1042351},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358402509,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":280,"tdur":278,"tts":1042358},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358402588,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":39},"dur":38,"tdur":37,"tts":1042437},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358402699,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1042548,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358402705,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":170},"dur":81,"tdur":81,"tts":1042553},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358402708,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":77,"tdur":76,"tts":1042556},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358402810,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1042659},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358402818,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":454,"tdur":368,"tts":1042667},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358402823,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":406,"tdur":320,"tts":1042671},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358403243,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":26,"tdur":24,"tts":1043007},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358403296,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":34,"tdur":32,"tts":1043060},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358403308,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":18,"tts":1043072},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358403335,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":114,"tdur":113,"tts":1043099},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358403343,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":104,"tdur":103,"tts":1043107},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358403398,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":37,"tdur":35,"tts":1043162},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358403463,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15053,"tdur":2118,"tts":1043227},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358403483,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15031,"tdur":2096,"tts":1043247},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358417326,"ph":"X","name":"GLES2DecoderImpl::HandleTexSubImage2D","args":{"width":63,"height":10},"dur":119,"tdur":114,"tts":1044158},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358418493,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":229},"dur":17,"tdur":15,"tts":1045324},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358418523,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1045352},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358418546,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":437,"tdur":371,"tts":1045376},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358418553,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":398,"tdur":332,"tts":1045382},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358418956,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":24,"tdur":23,"tts":1045721},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358418990,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1045755},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358419018,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":295,"tdur":294,"tts":1045783},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358419029,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":282,"tdur":280,"tts":1045794},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358419094,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":229},"dur":41,"tdur":39,"tts":1045860},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358419195,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1045961,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358419204,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":171},"dur":102,"tdur":102,"tts":1045968},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358419208,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":97,"tdur":95,"tts":1045973},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358419320,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":30,"tdur":28,"tts":1046085},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358419374,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":306,"tdur":264,"tts":1046139},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358419383,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":265,"tdur":223,"tts":1046148},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358419650,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":28,"tdur":27,"tts":1046374},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358419684,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":3,"tts":1046409},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358420053,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29,"tdur":27,"tts":1046469},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358420064,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1046479},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358420085,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":147,"tdur":146,"tts":1046500},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358420111,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":118,"tdur":116,"tts":1046526},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358420142,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":67,"tdur":64,"tts":1046558},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358421860,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30507,"tdur":2187,"tts":1046721},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358421872,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30492,"tdur":2172,"tts":1046733},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358451319,"ph":"X","name":"GLES2DecoderImpl::HandleTexSubImage2D","args":{"width":7,"height":9},"dur":37,"tdur":34,"tts":1047879},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358452344,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":228},"dur":17,"tdur":15,"tts":1048887},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358452373,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1048915},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358452403,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":502,"tdur":367,"tts":1048945},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358452410,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":469,"tdur":332,"tts":1048952},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358452883,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1049290},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358452911,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1049318},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358452931,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":282,"tdur":157,"tts":1049338},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358452936,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":256,"tdur":129,"tts":1049344},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358453195,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1049478},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358453218,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":470,"tdur":344,"tts":1049501},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358453223,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":220,"tdur":94,"tts":1049506},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358453446,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":240,"tdur":239,"tts":1049604},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358453498,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":228},"dur":38,"tdur":37,"tts":1049656},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358453608,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1049767,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358453614,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":172},"dur":69,"tdur":68,"tts":1049772},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358453617,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":65,"tdur":63,"tts":1049776},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358453708,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1049866},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358453715,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":378,"tdur":317,"tts":1049873},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358419501,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":68,"tdur":66,"tts":57822},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358419985,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":58,"tdur":44,"tts":57938},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358421800,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":60,"tdur":58,"tts":58045},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358422163,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":28,"tdur":27,"tts":58152},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358422353,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":19,"tts":58220},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358422374,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":12,"tts":58240},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358422706,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":58278},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358423631,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":58319},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358423888,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":58361},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358424053,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":58387},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358424078,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":14,"tts":58405},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358425767,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":58458},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358426674,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":58519},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358426946,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":58587},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358427079,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":18,"tts":58651},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358427100,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":58671},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358427366,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":20,"tts":58721},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358428306,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":58782},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358428465,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":26,"tts":58848},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358428589,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":58912},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358428611,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":6,"tts":58933},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358487152,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":44,"tdur":42,"tts":59007},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358487665,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":54,"tdur":52,"tts":59113},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358489377,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":62,"tdur":60,"tts":59226},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358489753,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":59332},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358489913,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":59391},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358489937,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":4,"tdur":4,"tts":59414},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358490222,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":17,"tts":59459},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358490936,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":59514},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358491046,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":20,"tts":59568},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358491271,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":59626},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358491437,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":59685},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358491460,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":59708},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358491735,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":59751},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358492575,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":59808},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358492770,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":59852},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358492891,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":59891},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358492918,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":59918},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358493129,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":7,"tdur":6,"tts":59929},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358493971,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":59972},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358494144,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":60016},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358494253,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":60068},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358494272,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":5,"tts":60087},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358553437,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":29,"tdur":29,"tts":60162},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358553822,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":60231},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358554787,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":60,"tdur":58,"tts":60322},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358555149,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":60425},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358555306,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":60492},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358555333,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":60518},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358555642,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":19,"tts":60564},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358556537,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":22,"tts":60621},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358556779,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":60682},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358556950,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":18,"tts":60744},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358556971,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":60764},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358557266,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":19,"tts":60819},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358558109,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":60878},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358558332,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":24,"tts":60942},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358558483,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":61004},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358558509,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":61029},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358558791,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":20,"tts":61076},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358559620,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":61119},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358559786,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":61178},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358559921,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":61227},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358559937,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":4,"tdur":5,"tts":61242},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358424093,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":13,"tdur":12,"tts":104609},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358425833,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":104773},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358426754,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":104933},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358427021,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":105088},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358427130,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":105175},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358427414,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":105259},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358428359,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":105340},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358428499,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":105402},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358428616,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":105478},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358487243,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":105683},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358487790,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":105910},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358489521,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":106178},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358489822,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":106343},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358489983,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":106472},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358490282,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":106613},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358490994,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":106747},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358491095,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":106814},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358491322,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":106892},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358491493,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":2,"tts":107001},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358491761,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":107056},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358492606,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":107110},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358492795,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":1,"tts":107168},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358492925,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":3,"tts":107235},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358493137,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":107275},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358494001,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":107331},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358494167,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":107395},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358494278,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":107464},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358553551,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":107711},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358553892,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":107876},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358554925,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":108104},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358555227,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":108257},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358555382,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":108382},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358555687,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":108489},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358556597,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":108596},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358556813,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":108677},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358556977,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":108752},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358556992,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":108767},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358557294,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":108822},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358558141,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":108877},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358558365,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":108934},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358558515,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":109006},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358558819,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":109063},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358559647,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":109118},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358559819,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":109176},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358559959,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":109257},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358607819,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":109512},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358608434,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":109727},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358610246,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":109989},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358610593,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":110168},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358610779,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":110316},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358611231,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":110485},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358612044,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":110572},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358612338,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":110696},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358612619,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":110868},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358612768,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":110982},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358613086,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":111089},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358613910,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":111204},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358614225,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":111329},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358614396,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":111439},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358615301,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":111518},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358616437,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":111589},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358616700,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":111669},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358616854,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":111738},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358670076,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":111923},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358453720,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":356,"tdur":294,"tts":1049878},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358454079,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13,"tdur":12,"tts":1050176},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358454105,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":137,"tdur":136,"tts":1050202},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358454124,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":117,"tdur":116,"tts":1050221},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358454170,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":62,"tdur":60,"tts":1050268},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358454245,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2298,"tdur":1657,"tts":1050342},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358454249,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2293,"tdur":1651,"tts":1050346},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358456518,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":224},"dur":22,"tdur":21,"tts":1051974},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358456555,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1052011},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358456560,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":365,"tdur":290,"tts":1052015},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358456563,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":348,"tdur":272,"tts":1052018},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358456913,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":9,"tts":1052294},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358456935,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1052315},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358456939,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":207,"tdur":131,"tts":1052319},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358456942,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":190,"tdur":113,"tts":1052322},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457134,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":11,"tts":1052438},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358457156,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":325,"tdur":249,"tts":1052460},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457160,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":184,"tdur":107,"tts":1052464},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457346,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":134,"tdur":133,"tts":1052575},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457372,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":224},"dur":21,"tdur":19,"tts":1052601},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358457433,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1052661,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457436,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":173},"dur":42,"tdur":42,"tts":1052664},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457438,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":40,"tdur":39,"tts":1052666},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358457485,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1052713},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358457498,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":408,"tdur":332,"tts":1052726},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457501,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":385,"tdur":309,"tts":1052729},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457889,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":14,"tts":1053042},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358457910,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":71,"tdur":70,"tts":1053063},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457916,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":64,"tdur":63,"tts":1053069},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457933,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":38,"tdur":36,"tts":1053086},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358457993,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9734,"tdur":1289,"tts":1053145},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358457997,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9729,"tdur":1282,"tts":1053150},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358467711,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":218},"dur":13,"tdur":12,"tts":1054418},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358467731,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1054438},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358467744,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":302,"tdur":246,"tts":1054450},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358467747,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":282,"tdur":204,"tts":1054454},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358468032,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":13,"tdur":12,"tts":1054682},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358468049,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1054699},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358468061,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":259,"tdur":215,"tts":1054710},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358468080,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":214,"tdur":167,"tts":1054730},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358468298,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1054903},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358468327,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":468,"tdur":345,"tts":1054932},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358468333,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":234,"tdur":111,"tts":1054938},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358468570,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":223,"tdur":222,"tts":1055053},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358468605,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":218},"dur":36,"tdur":35,"tts":1055089},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358468713,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1055197,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358468719,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":174},"dur":71,"tdur":70,"tts":1055203},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358468722,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":67,"tdur":65,"tts":1055206},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358468816,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1055300},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358468824,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":477,"tdur":363,"tts":1055307},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358468829,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":442,"tdur":327,"tts":1055312},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358469275,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":23,"tdur":22,"tts":1055645},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358469320,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":122,"tdur":120,"tts":1055691},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358469330,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":110,"tdur":107,"tts":1055701},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358469362,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":61,"tdur":60,"tts":1055732},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358469447,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15974,"tdur":2090,"tts":1055817},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358469455,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15964,"tdur":2079,"tts":1055825},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358485392,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":13},"dur":23,"tdur":20,"tts":1057880},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358485442,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1057928},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358485450,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":499,"tdur":370,"tts":1057936},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358485456,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":467,"tdur":337,"tts":1057942},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358485927,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1058285},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358485967,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1058325},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358485975,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":355,"tdur":227,"tts":1058332},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358485980,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":323,"tdur":192,"tts":1058338},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358486307,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1058537},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358486349,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":554,"tdur":425,"tts":1058579},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358486355,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":309,"tdur":179,"tts":1058585},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358486668,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":233,"tdur":232,"tts":1058770},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358486707,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":13},"dur":37,"tdur":35,"tts":1058809},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358486817,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1058919,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358486823,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":175},"dur":75,"tdur":74,"tts":1058924},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358486826,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":70,"tts":1058927},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358486909,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":25,"tdur":23,"tts":1059011},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358487242,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1059120},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358487734,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":265,"tdur":160,"tts":1059184},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358487749,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":235,"tdur":132,"tts":1059197},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358487987,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1059332},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358488033,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":139,"tdur":139,"tts":1059379},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358488045,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":126,"tdur":125,"tts":1059391},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358488078,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":70,"tdur":68,"tts":1059424},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358489477,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29479,"tdur":2159,"tts":1059606},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358489491,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29462,"tdur":2143,"tts":1059619},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358518893,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":127},"dur":56,"tdur":54,"tts":1061704},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358518962,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1061772},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358518993,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":284,"tdur":162,"tts":1061803},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358518999,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":257,"tdur":134,"tts":1061809},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358519259,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":15,"tts":1061948},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358519282,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1061970},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358519299,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":217,"tdur":216,"tts":1061987},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358519305,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":209,"tdur":208,"tts":1061993},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358519334,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":127},"dur":37,"tdur":35,"tts":1062023},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358519434,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1062123,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358519440,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":176},"dur":71,"tdur":71,"tts":1062128},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358519443,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":67,"tdur":66,"tts":1062131},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358519521,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1062209},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358519541,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":370,"tdur":311,"tts":1062230},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358519546,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":353,"tdur":293,"tts":1062235},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358519900,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1062530},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358519928,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":33,"tdur":31,"tts":1062559},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358519938,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1062568},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358519989,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":114,"tdur":107,"tts":1062619},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358519993,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":106,"tdur":99,"tts":1062623},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358520021,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":57,"tdur":55,"tts":1062645},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358520109,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1447,"tdur":907,"tts":1062734},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358520122,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":1429,"tdur":888,"tts":1062747},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358521584,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1049,"tdur":1046,"tts":1063672},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358521605,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":1025,"tdur":1025,"tts":1063691},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358522602,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":73},"dur":25,"tdur":22,"tts":1064690},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358522639,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1064725},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358522661,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":362,"tdur":267,"tts":1064747},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358522667,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":347,"tdur":251,"tts":1064754},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523015,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":7,"tdur":6,"tts":1065007},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358523025,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":1,"tts":1065017},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358523032,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":214,"tdur":213,"tts":1065024},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523034,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":210,"tdur":209,"tts":1065026},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523067,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":73},"dur":36,"tdur":35,"tts":1065059},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358523167,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1065160,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523173,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":177},"dur":68,"tdur":68,"tts":1065165},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523176,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":64,"tdur":63,"tts":1065168},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358523251,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1065244},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358523272,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":369,"tdur":309,"tts":1065264},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523277,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":351,"tdur":291,"tts":1065269},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523630,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1065563},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358523644,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10,"tdur":10,"tts":1065576},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523648,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":5,"tdur":5,"tts":1065580},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358523660,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":50,"tdur":49,"tts":1065593},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523663,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":45,"tdur":45,"tts":1065595},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523672,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":28,"tdur":26,"tts":1065605},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358523712,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":11452,"tdur":1984,"tts":1065645},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358523717,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11444,"tdur":1977,"tts":1065649},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358535140,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":215},"dur":18,"tdur":16,"tts":1067607},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358535183,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1067649},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358535191,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":339,"tdur":279,"tts":1067657},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358535197,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":320,"tdur":260,"tts":1067663},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358535519,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":10,"tts":1067925},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358535557,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1067963},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358535564,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":215,"tdur":215,"tts":1067970},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358535570,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":207,"tdur":207,"tts":1067976},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358535598,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":215},"dur":35,"tdur":34,"tts":1068004},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358535696,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1068103,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358535702,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":178},"dur":73,"tdur":72,"tts":1068108},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358535705,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":68,"tdur":67,"tts":1068111},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358535797,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1068204},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358535806,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":392,"tdur":319,"tts":1068212},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358535810,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":349,"tdur":275,"tts":1068217},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358536162,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":32,"tdur":31,"tts":1068496},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358536221,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":33,"tdur":32,"tts":1068555},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358536231,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1068566},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358536257,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":82,"tdur":80,"tts":1068592},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358536263,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":74,"tdur":61,"tts":1068609},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358536289,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":35,"tdur":34,"tts":1068623},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358536352,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15847,"tdur":2191,"tts":1068687},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358536373,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15824,"tdur":2169,"tts":1068707},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358552176,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":147},"dur":17,"tdur":16,"tts":1070857},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358552205,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1070885},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358552227,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":375,"tdur":304,"tts":1070907},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358552233,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":348,"tdur":277,"tts":1070913},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358552584,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":15,"tts":1071194},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358552607,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1071217},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358552624,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":186,"tdur":129,"tts":1071234},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358552629,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":161,"tdur":103,"tts":1071239},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358552793,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15,"tdur":14,"tts":1071347},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358552814,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":370,"tdur":315,"tts":1071368},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358552819,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":147,"tdur":92,"tts":1071373},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358552969,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":213,"tdur":212,"tts":1071469},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358553000,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":147},"dur":36,"tdur":34,"tts":1071501},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358553099,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1071600,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358553104,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":179},"dur":75,"tdur":73,"tts":1071605},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358553107,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":69,"tts":1071608},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358553203,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":22,"tdur":22,"tts":1071703},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358553465,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1071755},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358553854,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":186,"tdur":104,"tts":1071789},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358553861,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":164,"tdur":83,"tts":1071795},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358554027,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1071881},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358554043,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":56,"tdur":56,"tts":1071896},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358554047,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":51,"tdur":50,"tts":1071901},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358554060,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":29,"tdur":27,"tts":1071915},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358554879,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29977,"tdur":1768,"tts":1072038},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358554894,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29960,"tdur":1752,"tts":1072051},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358584826,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":151},"dur":24,"tdur":21,"tts":1073778},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358584862,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1073813},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358584892,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":400,"tdur":340,"tts":1073842},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358584898,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":368,"tdur":306,"tts":1073849},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358585270,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1074161},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358585298,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1074189},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358585318,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":246,"tdur":245,"tts":1074209},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358585325,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":237,"tdur":236,"tts":1074216},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358585357,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":151},"dur":36,"tdur":34,"tts":1074248},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358585465,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1074357,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358585471,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":180},"dur":88,"tdur":87,"tts":1074362},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358585474,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":84,"tdur":83,"tts":1074365},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358585570,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":12,"tdur":11,"tts":1074461},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358585598,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":392,"tdur":333,"tts":1074489},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358585604,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":352,"tdur":294,"tts":1074494},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358585958,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29,"tdur":28,"tts":1074791},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358585997,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":28,"tdur":27,"tts":1074830},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358586008,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15,"tdur":14,"tts":1074841},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358586050,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":102,"tdur":101,"tts":1074883},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358586060,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":91,"tdur":90,"tts":1074893},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358586091,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":53,"tdur":51,"tts":1074924},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358586155,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2529,"tdur":1839,"tts":1074988},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358586160,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2522,"tdur":1832,"tts":1074992},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358588660,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":217},"dur":18,"tdur":16,"tts":1076804},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358588706,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1076849},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358588714,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":344,"tdur":268,"tts":1076857},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358588720,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":329,"tdur":252,"tts":1076864},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358589051,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":6,"tdur":6,"tts":1077118},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358589064,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":15,"tdur":15,"tts":1077131},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358589082,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":197,"tdur":96,"tts":1077149},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358589087,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":183,"tdur":82,"tts":1077154},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358589271,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1077238},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358589285,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":459,"tdur":385,"tts":1077251},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358589287,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":208,"tdur":133,"tts":1077253},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358589499,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":243,"tdur":241,"tts":1077392},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358589547,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":217},"dur":37,"tdur":37,"tts":1077439},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358589656,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1077550,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358589663,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":181},"dur":75,"tdur":75,"tts":1077555},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358589666,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":71,"tts":1077558},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358589750,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1077643},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358589773,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":368,"tdur":320,"tts":1077666},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358589779,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":324,"tdur":276,"tts":1077672},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358590105,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":32,"tdur":30,"tts":1077952},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358590148,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":144,"tdur":144,"tts":1077994},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358590158,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":134,"tdur":132,"tts":1078005},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358590191,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":69,"tdur":67,"tts":1078038},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358590303,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":11638,"tdur":2085,"tts":1078149},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358590308,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11630,"tdur":2077,"tts":1078154},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358601886,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":42},"dur":47,"tdur":43,"tts":1080182},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358601948,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":6,"tts":1080242},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358601977,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":372,"tdur":320,"tts":1080271},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358601986,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":335,"tdur":284,"tts":1080279},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358602323,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":12,"tdur":11,"tts":1080566},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358602354,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1080598},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358602376,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":269,"tdur":268,"tts":1080619},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358602384,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":258,"tdur":257,"tts":1080627},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358602420,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":42},"dur":41,"tdur":40,"tts":1080663},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358602536,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1080780,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358602543,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":182},"dur":95,"tdur":95,"tts":1080786},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358602547,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":90,"tdur":89,"tts":1080790},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358602651,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":6,"tts":1080894},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358602675,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":428,"tdur":343,"tts":1080919},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358602682,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":384,"tdur":301,"tts":1080925},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358603069,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":31,"tdur":29,"tts":1081230},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358603109,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":28,"tdur":26,"tts":1081271},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358603119,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1081280},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358603158,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":128,"tdur":127,"tts":1081319},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358603167,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":116,"tdur":115,"tts":1081328},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358603194,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":69,"tdur":66,"tts":1081356},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358603292,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":3276,"tdur":2541,"tts":1081453},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358603305,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":3260,"tdur":2525,"tts":1081466},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358606514,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":104},"dur":46,"tdur":43,"tts":1083942},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358606595,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":11,"tdur":8,"tts":1084023},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358606610,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":343,"tdur":263,"tts":1084037},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358606619,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":316,"tdur":234,"tts":1084046},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358606937,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":15,"tdur":13,"tts":1084285},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358606986,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":33,"tdur":31,"tts":1084334},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358607023,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":334,"tdur":302,"tts":1084371},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358607034,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":321,"tdur":289,"tts":1084382},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358607086,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":104},"dur":50,"tdur":48,"tts":1084434},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358607249,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1084568,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358607258,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":183},"dur":92,"tdur":91,"tts":1084575},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358607263,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":85,"tdur":84,"tts":1084580},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358607386,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":34,"tdur":32,"tts":1084704},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358607425,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":949,"tdur":873,"tts":1084743},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358607434,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":908,"tdur":832,"tts":1084752},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358608344,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":27,"tdur":26,"tts":1085587},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358608406,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":8,"tdur":6,"tts":1085650},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358608418,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29,"tdur":28,"tts":1085661},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358608427,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":18,"tdur":16,"tts":1085671},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358608466,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":139,"tdur":137,"tts":1085710},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358608476,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":126,"tdur":125,"tts":1085719},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358608504,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":67,"tdur":64,"tts":1085748},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358610176,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":7743,"tdur":1538,"tts":1085930},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358610192,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7724,"tdur":1521,"tts":1085945},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358617893,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":134},"dur":20,"tdur":17,"tts":1087445},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358617925,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1087475},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358617954,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":447,"tdur":375,"tts":1087504},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358617961,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":414,"tdur":341,"tts":1087511},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358618379,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1087858},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358618407,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1087886},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358618427,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":297,"tdur":232,"tts":1087906},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358618433,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":265,"tdur":199,"tts":1087912},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358618702,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1088117},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358618730,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":516,"tdur":454,"tts":1088145},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358618736,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":241,"tdur":178,"tts":1088151},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358618981,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":263,"tdur":262,"tts":1088335},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358619050,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":134},"dur":37,"tdur":36,"tts":1088404},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358619160,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1088514,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358619166,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":184},"dur":75,"tdur":75,"tts":1088519},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358619169,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":70,"tts":1088522},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358619268,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1088622},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358619277,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":407,"tdur":318,"tts":1088630},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358619282,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":385,"tdur":296,"tts":1088635},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358619669,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13,"tdur":13,"tts":1088934},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358619696,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":72,"tdur":71,"tts":1088962},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358619702,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":65,"tdur":65,"tts":1088967},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358619727,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":29,"tdur":29,"tts":1088992},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358619772,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":13941,"tdur":561,"tts":1089037},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358619777,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13934,"tdur":551,"tts":1089043},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358633727,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":579,"tdur":579,"tts":1089612},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358633735,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":570,"tdur":570,"tts":1089620},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358634294,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":229},"dur":9,"tdur":8,"tts":1090180},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358634309,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1090194},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358634320,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":405,"tdur":341,"tts":1090205},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358634323,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":375,"tdur":311,"tts":1090208},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358634702,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1090525},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358634731,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1090553},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358634751,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":263,"tdur":211,"tts":1090573},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358634757,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":230,"tdur":178,"tts":1090579},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358634991,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1090763},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358635020,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":310,"tdur":261,"tts":1090791},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358635026,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":179,"tdur":129,"tts":1090797},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358635207,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":122,"tdur":122,"tts":1090929},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358635234,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":229},"dur":18,"tdur":18,"tts":1090956},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358635287,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1091010,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358635290,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":185},"dur":37,"tdur":37,"tts":1091012},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358635291,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":36,"tdur":34,"tts":1091014},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358635341,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1091063},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358635344,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":349,"tdur":302,"tts":1091067},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358607642,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":89,"tdur":86,"tts":61318},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358608325,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":61453},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358610107,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":61,"tdur":59,"tts":61538},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358610503,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":34,"tdur":32,"tts":61646},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358610708,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":22,"tts":61724},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358610733,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":13,"tts":61748},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358611157,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":25,"tts":61807},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358611990,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":45,"tdur":33,"tts":61876},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358612229,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":40,"tdur":38,"tts":61949},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358612527,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":31,"tdur":30,"tts":62036},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358612704,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":33,"tdur":33,"tts":62106},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358612739,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":13,"tts":62141},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358613045,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":62192},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358613848,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":30,"tdur":29,"tts":62254},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358614144,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":41,"tdur":40,"tts":62323},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358614355,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":32,"tdur":31,"tts":62423},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358614389,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":7,"tdur":7,"tts":62456},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358615264,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":28,"tdur":27,"tts":62508},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358616396,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":32,"tdur":31,"tts":62581},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358616665,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":28,"tdur":26,"tts":62653},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358616824,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":62727},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358616846,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":62749},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358669985,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":41,"tts":62792},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358670465,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":22,"tts":62886},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358672099,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":57,"tdur":54,"tts":62971},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358672457,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":30,"tdur":28,"tts":63069},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358672639,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":63140},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358672665,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":5,"tts":63166},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358673627,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":63212},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358674581,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":63277},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358674854,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":63339},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358675039,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":9,"tts":63376},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358675050,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":30,"tdur":23,"tts":63387},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358675400,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":63449},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358676343,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":63485},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358676572,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":63522},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358676734,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":33,"tdur":32,"tts":63585},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358676769,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":6,"tts":63620},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358677013,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":13,"tts":63657},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358677983,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":18,"tts":63695},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358678163,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":63755},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358678297,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":63806},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358678314,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":6,"tts":63822},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358735500,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":47,"tdur":44,"tts":63893},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358735831,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":63975},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358737467,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":49,"tts":64063},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358737707,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":64191},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358737973,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":64255},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358738116,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":64314},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358738140,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":64337},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358738402,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":18,"tts":64379},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358739229,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":64438},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358739465,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":64498},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358739617,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":64560},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358739641,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":64583},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358739921,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":64626},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358740752,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":64679},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358740979,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":64747},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358741121,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":64790},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358741140,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":4,"tdur":4,"tts":64808},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358741391,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":12,"tts":64834},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358742201,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":64869},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358742382,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":64910},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358742486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":64954},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359909481,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":60202,"tdur":122,"tts":113047},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359972277,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":53,"tdur":51,"tts":113345},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359972348,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":677,"tdur":388,"tts":113415},{"cat":"cc","pid":25863,"tid":25871,"ts":531359972354,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":363,"tdur":196,"tts":113421},{"cat":"cc","pid":25863,"tid":25871,"ts":531359972403,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":26,"tdur":26,"tts":113469},{"cat":"cc","pid":25863,"tid":25871,"ts":531359972720,"ph":"X","name":"Display::Draw","args":{},"dur":302,"tdur":179,"tts":113621},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359972731,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":113633,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359972744,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":46,"tdur":44,"tts":113646},{"cat":"cc","pid":25863,"tid":25871,"ts":531359972752,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":14,"tdur":12,"tts":113654},{"cat":"cc","pid":25863,"tid":25871,"ts":531359972767,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":18,"tdur":18,"tts":113668},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359972791,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":213,"tdur":88,"tts":113692},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359975562,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":44,"tdur":29,"tts":113960},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359975613,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":628,"tdur":318,"tts":114009},{"cat":"cc","pid":25863,"tid":25871,"ts":531359975615,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":320,"tdur":132,"tts":114011},{"cat":"cc","pid":25863,"tid":25871,"ts":531359975629,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":114025},{"cat":"cc","pid":25863,"tid":25871,"ts":531359975938,"ph":"X","name":"Display::Draw","args":{},"dur":301,"tdur":177,"tts":114147},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359975947,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":114155,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359975956,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":33,"tdur":32,"tts":114165},{"cat":"cc","pid":25863,"tid":25871,"ts":531359975961,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":114170},{"cat":"cc","pid":25863,"tid":25871,"ts":531359975973,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":114182},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359975989,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":230,"tdur":106,"tts":114198},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359979730,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":30,"tts":114474},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359979778,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":496,"tdur":330,"tts":114520},{"cat":"cc","pid":25863,"tid":25871,"ts":531359979782,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":284,"tdur":183,"tts":114525},{"cat":"cc","pid":25863,"tid":25871,"ts":531359979815,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":114557},{"cat":"cc","pid":25863,"tid":25871,"ts":531359980068,"ph":"X","name":"Display::Draw","args":{},"dur":203,"tdur":135,"tts":114712},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359980078,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":114721,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359980087,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":33,"tdur":31,"tts":114731},{"cat":"cc","pid":25863,"tid":25871,"ts":531359980092,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":114735},{"cat":"cc","pid":25863,"tid":25871,"ts":531359980104,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":114747},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359980120,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":138,"tdur":69,"tts":114764},{"cat":"mojo","pid":25863,"tid":25871,"ts":531359982797,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":29,"tts":115002},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531359982844,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":80027,"tdur":381,"tts":115048},{"cat":"cc","pid":25863,"tid":25871,"ts":531359982849,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":283,"tdur":164,"tts":115052},{"cat":"cc","pid":25863,"tid":25871,"ts":531359982882,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":23,"tts":115085},{"cat":"cc","pid":25863,"tid":25871,"ts":531359983134,"ph":"X","name":"Display::Draw","args":{},"dur":79734,"tdur":206,"tts":115220},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531359983144,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":115230,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531359983153,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":115239},{"cat":"cc","pid":25863,"tid":25871,"ts":531359983158,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":115244},{"cat":"cc","pid":25863,"tid":25871,"ts":531359983170,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":115255},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531359983186,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":79667,"tdur":138,"tts":115272},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360064487,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":24,"tdur":23,"tts":115520},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360064518,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":366,"tdur":199,"tts":115550},{"cat":"cc","pid":25863,"tid":25871,"ts":531360064521,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":174,"tdur":94,"tts":115553},{"cat":"cc","pid":25863,"tid":25871,"ts":531360064544,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":115576},{"cat":"cc","pid":25863,"tid":25871,"ts":531360064696,"ph":"X","name":"Display::Draw","args":{},"dur":187,"tdur":99,"tts":115649},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360064701,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":115654,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360064706,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":21,"tdur":21,"tts":115659},{"cat":"cc","pid":25863,"tid":25871,"ts":531360064710,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":5,"tts":115663},{"cat":"cc","pid":25863,"tid":25871,"ts":531360064716,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":9,"tdur":9,"tts":115669},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360064727,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":148,"tdur":60,"tts":115680},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360066325,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":115829},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360066348,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":508,"tdur":277,"tts":115850},{"cat":"cc","pid":25863,"tid":25871,"ts":531360066350,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":290,"tdur":171,"tts":115852},{"cat":"cc","pid":25863,"tid":25871,"ts":531360066383,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":22,"tts":115886},{"cat":"cc","pid":25863,"tid":25871,"ts":531360066642,"ph":"X","name":"Display::Draw","args":{},"dur":213,"tdur":99,"tts":116027},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360066651,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":116037,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360066669,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":116054},{"cat":"cc","pid":25863,"tid":25871,"ts":531360066671,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":116056},{"cat":"cc","pid":25863,"tid":25871,"ts":531360066676,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":116061},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360066683,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":164,"tdur":49,"tts":116068},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360067912,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":116177},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360067934,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":177,"tdur":102,"tts":116199},{"cat":"cc","pid":25863,"tid":25871,"ts":531360067936,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":118,"tdur":57,"tts":116201},{"cat":"cc","pid":25863,"tid":25871,"ts":531360067958,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":16,"tdur":15,"tts":116223},{"cat":"cc","pid":25863,"tid":25871,"ts":531360068055,"ph":"X","name":"Display::Draw","args":{},"dur":55,"tdur":40,"tts":116259},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360068058,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":116262,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360068062,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":12,"tdur":12,"tts":116266},{"cat":"cc","pid":25863,"tid":25871,"ts":531360068063,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":116267},{"cat":"cc","pid":25863,"tid":25871,"ts":531360068068,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":116272},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360068075,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":29,"tdur":15,"tts":116279},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360069052,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":11,"tdur":10,"tts":116344},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360069068,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":155,"tdur":128,"tts":116360},{"cat":"cc","pid":25863,"tid":25871,"ts":531360069070,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":69,"tdur":50,"tts":116362},{"cat":"cc","pid":25863,"tid":25871,"ts":531360069082,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":7,"tts":116375},{"cat":"cc","pid":25863,"tid":25871,"ts":531360069140,"ph":"X","name":"Display::Draw","args":{},"dur":82,"tdur":73,"tts":116414},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360069144,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":116418,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360069148,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":45,"tdur":44,"tts":116422},{"cat":"cc","pid":25863,"tid":25871,"ts":531360069150,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":116424},{"cat":"cc","pid":25863,"tid":25871,"ts":531360069155,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":37,"tdur":35,"tts":116429},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360069193,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":24,"tdur":15,"tts":116467},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360070244,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":11,"tdur":11,"tts":116530},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360070260,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":82879,"tdur":275,"tts":116546},{"cat":"cc","pid":25863,"tid":25871,"ts":531360070262,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":145,"tdur":70,"tts":116548},{"cat":"cc","pid":25863,"tid":25871,"ts":531360070276,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":8,"tts":116562},{"cat":"cc","pid":25863,"tid":25871,"ts":531360070408,"ph":"X","name":"Display::Draw","args":{},"dur":82730,"tdur":199,"tts":116620},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360070416,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":116628,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360070425,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":30,"tdur":30,"tts":116637},{"cat":"cc","pid":25863,"tid":25871,"ts":531360070430,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":19,"tdur":18,"tts":116642},{"cat":"cc","pid":25863,"tid":25871,"ts":531360070449,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":4,"tts":116661},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360070455,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":82672,"tdur":142,"tts":116667},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360154420,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":116920},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360154442,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":350,"tdur":209,"tts":116941},{"cat":"cc","pid":25863,"tid":25871,"ts":531360154444,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":184,"tdur":92,"tts":116943},{"cat":"cc","pid":25863,"tid":25871,"ts":531360154459,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":9,"tts":116959},{"cat":"cc","pid":25863,"tid":25871,"ts":531360154629,"ph":"X","name":"Display::Draw","args":{},"dur":150,"tdur":100,"tts":117037},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360154633,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":117041,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360154639,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":28,"tdur":28,"tts":117047},{"cat":"cc","pid":25863,"tid":25871,"ts":531360154642,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":6,"tts":117049},{"cat":"cc","pid":25863,"tid":25871,"ts":531360154648,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":18,"tdur":17,"tts":117056},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360154668,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":103,"tdur":53,"tts":117076},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360155934,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":18,"tdur":17,"tts":117230},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360155958,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":359,"tdur":192,"tts":117254},{"cat":"cc","pid":25863,"tid":25871,"ts":531360155960,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":196,"tdur":90,"tts":117256},{"cat":"cc","pid":25863,"tid":25871,"ts":531360155974,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":7,"tts":117270},{"cat":"cc","pid":25863,"tid":25871,"ts":531360156158,"ph":"X","name":"Display::Draw","args":{},"dur":157,"tdur":96,"tts":117348},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360156162,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":117352,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360156168,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":16,"tts":117358},{"cat":"cc","pid":25863,"tid":25871,"ts":531360156170,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":5,"tts":117360},{"cat":"cc","pid":25863,"tid":25871,"ts":531360156176,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":117366},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360156184,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":122,"tdur":60,"tts":117374},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360157653,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":20,"tdur":17,"tts":117535},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360157683,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":327,"tdur":208,"tts":117564},{"cat":"cc","pid":25863,"tid":25871,"ts":531360157687,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":166,"tdur":106,"tts":117568},{"cat":"cc","pid":25863,"tid":25871,"ts":531360157715,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":13,"tdur":12,"tts":117596},{"cat":"cc","pid":25863,"tid":25871,"ts":531360157854,"ph":"X","name":"Display::Draw","args":{},"dur":155,"tdur":94,"tts":117676},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360157859,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":117681,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360157864,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":16,"tts":117686},{"cat":"cc","pid":25863,"tid":25871,"ts":531360157866,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":5,"tts":117688},{"cat":"cc","pid":25863,"tid":25871,"ts":531360157872,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":117694},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360157881,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":118,"tdur":57,"tts":117703},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360159315,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":15,"tts":117861},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360159340,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":61329,"tdur":328,"tts":117884},{"cat":"cc","pid":25863,"tid":25871,"ts":531360159342,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":137,"tdur":96,"tts":117887},{"cat":"cc","pid":25863,"tid":25871,"ts":531360159359,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":14,"tdur":12,"tts":117904},{"cat":"cc","pid":25863,"tid":25871,"ts":531360159480,"ph":"X","name":"Display::Draw","args":{},"dur":61185,"tdur":223,"tts":117985},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360159485,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":117990,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360159490,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":28,"tdur":27,"tts":117995},{"cat":"cc","pid":25863,"tid":25871,"ts":531360159493,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":16,"tdur":15,"tts":117998},{"cat":"cc","pid":25863,"tid":25871,"ts":531360159509,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":7,"tdur":6,"tts":118014},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360159518,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":61128,"tdur":165,"tts":118023},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360223262,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":34,"tdur":31,"tts":118370},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360223311,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":677,"tdur":392,"tts":118418},{"cat":"cc","pid":25863,"tid":25871,"ts":531360223316,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":353,"tdur":191,"tts":118422},{"cat":"cc","pid":25863,"tid":25871,"ts":531360223374,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":118480},{"cat":"cc","pid":25863,"tid":25871,"ts":531360223671,"ph":"X","name":"Display::Draw","args":{},"dur":314,"tdur":190,"tts":118617},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360223680,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":118626,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360223690,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":118635},{"cat":"cc","pid":25863,"tid":25871,"ts":531360223695,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":10,"tts":118640},{"cat":"cc","pid":25863,"tid":25871,"ts":531360223706,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":118651},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360223723,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":243,"tdur":120,"tts":118668},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360227373,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":40,"tdur":37,"tts":118987},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360227434,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":649,"tdur":384,"tts":119048},{"cat":"cc","pid":25863,"tid":25871,"ts":531360227442,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":347,"tdur":183,"tts":119055},{"cat":"cc","pid":25863,"tid":25871,"ts":531360227489,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":25,"tdur":24,"tts":119102},{"cat":"cc","pid":25863,"tid":25871,"ts":531360227791,"ph":"X","name":"Display::Draw","args":{},"dur":289,"tdur":187,"tts":119242},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360227800,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":119251,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360227809,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":119260},{"cat":"cc","pid":25863,"tid":25871,"ts":531360227814,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":119265},{"cat":"cc","pid":25863,"tid":25871,"ts":531360227825,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":13,"tdur":12,"tts":119276},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360227842,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":220,"tdur":117,"tts":119293},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360231312,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":30,"tts":119590},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360231360,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":626,"tdur":361,"tts":119636},{"cat":"cc","pid":25863,"tid":25871,"ts":531360231364,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":285,"tdur":159,"tts":119641},{"cat":"cc","pid":25863,"tid":25871,"ts":531360231397,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":22,"tts":119674},{"cat":"cc","pid":25863,"tid":25871,"ts":531360231651,"ph":"X","name":"Display::Draw","args":{},"dur":332,"tdur":190,"tts":119804},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360231660,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":119814,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360231670,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":49,"tdur":48,"tts":119823},{"cat":"cc","pid":25863,"tid":25871,"ts":531360231675,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":27,"tdur":26,"tts":119828},{"cat":"cc","pid":25863,"tid":25871,"ts":531360231703,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":119856},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360231719,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":249,"tdur":105,"tts":119873},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360234349,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":29,"tdur":27,"tts":120122},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360234391,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":53136,"tdur":369,"tts":120163},{"cat":"cc","pid":25863,"tid":25871,"ts":531360234395,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":291,"tdur":163,"tts":120168},{"cat":"cc","pid":25863,"tid":25871,"ts":531360234428,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":21,"tdur":19,"tts":120201},{"cat":"cc","pid":25863,"tid":25871,"ts":531360234688,"ph":"X","name":"Display::Draw","args":{},"dur":52838,"tdur":195,"tts":120335},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360234698,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":120344,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360234708,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":30,"tts":120354},{"cat":"cc","pid":25863,"tid":25871,"ts":531360234712,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":9,"tts":120359},{"cat":"cc","pid":25863,"tid":25871,"ts":531360234723,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":120370},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360234739,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":52768,"tdur":125,"tts":120386},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360292114,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":120681},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360292136,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":374,"tdur":198,"tts":120703},{"cat":"cc","pid":25863,"tid":25871,"ts":531360292138,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":203,"tdur":99,"tts":120705},{"cat":"cc","pid":25863,"tid":25871,"ts":531360292154,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":120721},{"cat":"cc","pid":25863,"tid":25871,"ts":531360292342,"ph":"X","name":"Display::Draw","args":{},"dur":167,"tdur":93,"tts":120806},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360292347,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":120810,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360292352,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":15,"tts":120816},{"cat":"cc","pid":25863,"tid":25871,"ts":531360292354,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":5,"tts":120818},{"cat":"cc","pid":25863,"tid":25871,"ts":531360292360,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":7,"tdur":7,"tts":120823},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360292369,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":130,"tdur":58,"tts":120832},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360293701,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":12,"tts":120982},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360293721,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":307,"tdur":207,"tts":121001},{"cat":"cc","pid":25863,"tid":25871,"ts":531360293723,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":157,"tdur":89,"tts":121003},{"cat":"cc","pid":25863,"tid":25871,"ts":531360293738,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":121018},{"cat":"cc","pid":25863,"tid":25871,"ts":531360293881,"ph":"X","name":"Display::Draw","args":{},"dur":145,"tdur":112,"tts":121094},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360293885,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":121099,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360293890,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":16,"tts":121103},{"cat":"cc","pid":25863,"tid":25871,"ts":531360293892,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":121105},{"cat":"cc","pid":25863,"tid":25871,"ts":531360293898,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":121111},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360293906,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":113,"tdur":79,"tts":121119},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360295160,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":18,"tdur":17,"tts":121296},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360295185,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":295,"tdur":224,"tts":121320},{"cat":"cc","pid":25863,"tid":25871,"ts":531360295198,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":129,"tdur":95,"tts":121333},{"cat":"cc","pid":25863,"tid":25871,"ts":531360295212,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":121347},{"cat":"cc","pid":25863,"tid":25871,"ts":531360295328,"ph":"X","name":"Display::Draw","args":{},"dur":150,"tdur":112,"tts":121430},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360295332,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":121435,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360295337,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":16,"tts":121439},{"cat":"cc","pid":25863,"tid":25871,"ts":531360295339,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":5,"tts":121442},{"cat":"cc","pid":25863,"tid":25871,"ts":531360295345,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":121447},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360295353,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":118,"tdur":79,"tts":121456},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360296630,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":19,"tdur":17,"tts":121623},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360296655,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":57061,"tdur":252,"tts":121648},{"cat":"cc","pid":25863,"tid":25871,"ts":531360296657,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":145,"tdur":78,"tts":121650},{"cat":"cc","pid":25863,"tid":25871,"ts":531360296671,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":8,"tts":121664},{"cat":"cc","pid":25863,"tid":25871,"ts":531360296803,"ph":"X","name":"Display::Draw","args":{},"dur":56911,"tdur":170,"tts":121729},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360296807,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":121733,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360296811,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":14,"tts":121737},{"cat":"cc","pid":25863,"tid":25871,"ts":531360296813,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":121739},{"cat":"cc","pid":25863,"tid":25871,"ts":531360296818,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":121744},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360296825,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":56879,"tdur":137,"tts":121751},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360354829,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":31,"tts":121992},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360354869,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":357,"tdur":212,"tts":122032},{"cat":"cc","pid":25863,"tid":25871,"ts":531360354872,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":198,"tdur":94,"tts":122034},{"cat":"cc","pid":25863,"tid":25871,"ts":531360354889,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":9,"tts":122052},{"cat":"cc","pid":25863,"tid":25871,"ts":531360355071,"ph":"X","name":"Display::Draw","args":{},"dur":153,"tdur":113,"tts":122130},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360355076,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":122134,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360355081,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":17,"tdur":16,"tts":122140},{"cat":"cc","pid":25863,"tid":25871,"ts":531360355084,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":122142},{"cat":"cc","pid":25863,"tid":25871,"ts":531360355090,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":122148},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360355098,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":117,"tdur":77,"tts":122156},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360356486,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":16,"tts":122331},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360356511,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":347,"tdur":191,"tts":122355},{"cat":"cc","pid":25863,"tid":25871,"ts":531360356513,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":175,"tdur":94,"tts":122357},{"cat":"cc","pid":25863,"tid":25871,"ts":531360356530,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":12,"tts":122374},{"cat":"cc","pid":25863,"tid":25871,"ts":531360356689,"ph":"X","name":"Display::Draw","args":{},"dur":167,"tdur":90,"tts":122454},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360356693,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":122458,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360356698,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":17,"tdur":16,"tts":122463},{"cat":"cc","pid":25863,"tid":25871,"ts":531360356701,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":122466},{"cat":"cc","pid":25863,"tid":25871,"ts":531360356707,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":122472},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360356715,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":132,"tdur":54,"tts":122480},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360358227,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":16,"tts":122636},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360358251,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":307,"tdur":206,"tts":122660},{"cat":"cc","pid":25863,"tid":25871,"ts":531360358254,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":153,"tdur":97,"tts":122662},{"cat":"cc","pid":25863,"tid":25871,"ts":531360358271,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":12,"tts":122680},{"cat":"cc","pid":25863,"tid":25871,"ts":531360358408,"ph":"X","name":"Display::Draw","args":{},"dur":148,"tdur":103,"tts":122761},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360358413,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":122766,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360358418,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":30,"tdur":30,"tts":122771},{"cat":"cc","pid":25863,"tid":25871,"ts":531360358421,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":122774},{"cat":"cc","pid":25863,"tid":25871,"ts":531360358427,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":20,"tdur":19,"tts":122780},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360358449,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":97,"tdur":52,"tts":122802},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360359787,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":14,"tts":122920},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360359809,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":60727,"tdur":235,"tts":122941},{"cat":"cc","pid":25863,"tid":25871,"ts":531360359811,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":80,"tdur":60,"tts":122944},{"cat":"cc","pid":25863,"tid":25871,"ts":531360359828,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":122961},{"cat":"cc","pid":25863,"tid":25871,"ts":531360359892,"ph":"X","name":"Display::Draw","args":{},"dur":60643,"tdur":170,"tts":123005},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360359896,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":123010,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360359901,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":15,"tts":123015},{"cat":"cc","pid":25863,"tid":25871,"ts":531360359903,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":123017},{"cat":"cc","pid":25863,"tid":25871,"ts":531360359909,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":123023},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360359917,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":60608,"tdur":134,"tts":123031},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360422814,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":15,"tts":123295},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360422836,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":397,"tdur":211,"tts":123317},{"cat":"cc","pid":25863,"tid":25871,"ts":531360422839,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":202,"tdur":105,"tts":123320},{"cat":"cc","pid":25863,"tid":25871,"ts":531360422855,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":123336},{"cat":"cc","pid":25863,"tid":25871,"ts":531360423042,"ph":"X","name":"Display::Draw","args":{},"dur":189,"tdur":99,"tts":123427},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360423047,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":123432,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360423062,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":15,"tts":123447},{"cat":"cc","pid":25863,"tid":25871,"ts":531360423064,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":5,"tts":123449},{"cat":"cc","pid":25863,"tid":25871,"ts":531360423070,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":123455},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360423078,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":144,"tdur":54,"tts":123463},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360425077,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":15,"tts":123610},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360425101,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":297,"tdur":186,"tts":123633},{"cat":"cc","pid":25863,"tid":25871,"ts":531360425104,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":145,"tdur":90,"tts":123635},{"cat":"cc","pid":25863,"tid":25871,"ts":531360425119,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":13,"tdur":12,"tts":123651},{"cat":"cc","pid":25863,"tid":25871,"ts":531360425250,"ph":"X","name":"Display::Draw","args":{},"dur":147,"tdur":91,"tts":123727},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360425255,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":123732,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360425259,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":15,"tts":123736},{"cat":"cc","pid":25863,"tid":25871,"ts":531360425261,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":123738},{"cat":"cc","pid":25863,"tid":25871,"ts":531360425267,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":123744},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360425275,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":113,"tdur":56,"tts":123752},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360426631,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":17,"tdur":16,"tts":123903},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360426655,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":290,"tdur":183,"tts":123926},{"cat":"cc","pid":25863,"tid":25871,"ts":531360426657,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":144,"tdur":89,"tts":123928},{"cat":"cc","pid":25863,"tid":25871,"ts":531360426673,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":123945},{"cat":"cc","pid":25863,"tid":25871,"ts":531360426802,"ph":"X","name":"Display::Draw","args":{},"dur":141,"tdur":88,"tts":124019},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360426806,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":124023,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360426811,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":14,"tts":124028},{"cat":"cc","pid":25863,"tid":25871,"ts":531360426813,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":124030},{"cat":"cc","pid":25863,"tid":25871,"ts":531360426818,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":124035},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360426826,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":108,"tdur":55,"tts":124043},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360428053,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":124163},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360428074,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":59087,"tdur":316,"tts":124183},{"cat":"cc","pid":25863,"tid":25871,"ts":531360428076,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":139,"tdur":86,"tts":124185},{"cat":"cc","pid":25863,"tid":25871,"ts":531360428092,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":124201},{"cat":"cc","pid":25863,"tid":25871,"ts":531360428216,"ph":"X","name":"Display::Draw","args":{},"dur":58943,"tdur":225,"tts":124273},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360428220,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":124278,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360428225,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":15,"tts":124282},{"cat":"cc","pid":25863,"tid":25871,"ts":531360428227,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":124284},{"cat":"cc","pid":25863,"tid":25871,"ts":531360428232,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":124290},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360428240,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":58892,"tdur":171,"tts":124298},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360489317,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":18,"tdur":16,"tts":124583},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360489342,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":366,"tdur":182,"tts":124607},{"cat":"cc","pid":25863,"tid":25871,"ts":531360489344,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":180,"tdur":91,"tts":124609},{"cat":"cc","pid":25863,"tid":25871,"ts":531360489361,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":124626},{"cat":"cc","pid":25863,"tid":25871,"ts":531360489525,"ph":"X","name":"Display::Draw","args":{},"dur":181,"tdur":86,"tts":124702},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360489529,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":124707,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360489534,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":16,"tdur":16,"tts":124711},{"cat":"cc","pid":25863,"tid":25871,"ts":531360489536,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":6,"tdur":4,"tts":124714},{"cat":"cc","pid":25863,"tid":25871,"ts":531360489542,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":124719},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360489550,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":147,"tdur":50,"tts":124728},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360491272,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":15,"tts":124874},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360491295,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":361,"tdur":194,"tts":124896},{"cat":"cc","pid":25863,"tid":25871,"ts":531360491297,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":184,"tdur":96,"tts":124898},{"cat":"cc","pid":25863,"tid":25871,"ts":531360491313,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":11,"tts":124914},{"cat":"cc","pid":25863,"tid":25871,"ts":531360491482,"ph":"X","name":"Display::Draw","args":{},"dur":173,"tdur":92,"tts":124996},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360491487,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":125001,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360491492,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":14,"tts":125006},{"cat":"cc","pid":25863,"tid":25871,"ts":531360491494,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":125008},{"cat":"cc","pid":25863,"tid":25871,"ts":531360491499,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":125013},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360491507,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":139,"tdur":58,"tts":125021},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360492886,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":125172},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360492909,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":319,"tdur":205,"tts":125194},{"cat":"cc","pid":25863,"tid":25871,"ts":531360492911,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":153,"tdur":100,"tts":125196},{"cat":"cc","pid":25863,"tid":25871,"ts":531360492936,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":12,"tts":125221},{"cat":"cc","pid":25863,"tid":25871,"ts":531360493065,"ph":"X","name":"Display::Draw","args":{},"dur":161,"tdur":99,"tts":125298},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360493069,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":125302,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360493074,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":24,"tdur":23,"tts":125307},{"cat":"cc","pid":25863,"tid":25871,"ts":531360493076,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":125309},{"cat":"cc","pid":25863,"tid":25871,"ts":531360493082,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":14,"tdur":14,"tts":125314},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360493098,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":120,"tdur":57,"tts":125331},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360494403,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":13,"tdur":12,"tts":125451},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360494423,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":59300,"tdur":301,"tts":125470},{"cat":"cc","pid":25863,"tid":25871,"ts":531360494425,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":133,"tdur":98,"tts":125472},{"cat":"cc","pid":25863,"tid":25871,"ts":531360494449,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":11,"tdur":10,"tts":125497},{"cat":"cc","pid":25863,"tid":25871,"ts":531360494559,"ph":"X","name":"Display::Draw","args":{},"dur":59162,"tdur":197,"tts":125572},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360494563,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":125576,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360494568,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":15,"tdur":14,"tts":125581},{"cat":"cc","pid":25863,"tid":25871,"ts":531360494570,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":125583},{"cat":"cc","pid":25863,"tid":25871,"ts":531360494575,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":6,"tts":125588},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360494583,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":59130,"tdur":164,"tts":125596},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360555998,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":35,"tdur":25,"tts":125880},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360556040,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":641,"tdur":379,"tts":125913},{"cat":"cc","pid":25863,"tid":25871,"ts":531360556043,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":336,"tdur":184,"tts":125915},{"cat":"cc","pid":25863,"tid":25871,"ts":531360556086,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":125959},{"cat":"cc","pid":25863,"tid":25871,"ts":531360556381,"ph":"X","name":"Display::Draw","args":{},"dur":297,"tdur":186,"tts":126103},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360556391,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":126112,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360556400,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":30,"tts":126122},{"cat":"cc","pid":25863,"tid":25871,"ts":531360556405,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":126126},{"cat":"cc","pid":25863,"tid":25871,"ts":531360556416,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":126138},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360556433,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":226,"tdur":115,"tts":126154},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360559195,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":30,"tts":126459},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360559243,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":600,"tdur":378,"tts":126505},{"cat":"cc","pid":25863,"tid":25871,"ts":531360559247,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":296,"tdur":174,"tts":126510},{"cat":"cc","pid":25863,"tid":25871,"ts":531360559281,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":23,"tts":126543},{"cat":"cc","pid":25863,"tid":25871,"ts":531360559545,"ph":"X","name":"Display::Draw","args":{},"dur":295,"tdur":191,"tts":126688},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360559554,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":126697,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360559564,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":126707},{"cat":"cc","pid":25863,"tid":25871,"ts":531360559568,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":126712},{"cat":"cc","pid":25863,"tid":25871,"ts":531360559580,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":126723},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360559596,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":226,"tdur":121,"tts":126740},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360562431,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":30,"tts":127038},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360562478,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":578,"tdur":337,"tts":127084},{"cat":"cc","pid":25863,"tid":25871,"ts":531360562482,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":331,"tdur":174,"tts":127088},{"cat":"cc","pid":25863,"tid":25871,"ts":531360562515,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":127121},{"cat":"cc","pid":25863,"tid":25871,"ts":531360562815,"ph":"X","name":"Display::Draw","args":{},"dur":238,"tdur":152,"tts":127266},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360562825,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":127275,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360562835,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":31,"tts":127285},{"cat":"cc","pid":25863,"tid":25871,"ts":531360562839,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":9,"tts":127290},{"cat":"cc","pid":25863,"tid":25871,"ts":531360562850,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":127301},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360562866,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":168,"tdur":81,"tts":127317},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360565520,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":30,"tts":127574},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360565567,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":55717,"tdur":386,"tts":127620},{"cat":"cc","pid":25863,"tid":25871,"ts":531360565572,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":331,"tdur":171,"tts":127625},{"cat":"cc","pid":25863,"tid":25871,"ts":531360565606,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":127659},{"cat":"cc","pid":25863,"tid":25871,"ts":531360565905,"ph":"X","name":"Display::Draw","args":{},"dur":55378,"tdur":205,"tts":127800},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360565914,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":127810,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360565925,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":30,"tts":127820},{"cat":"cc","pid":25863,"tid":25871,"ts":531360565929,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":10,"tts":127824},{"cat":"cc","pid":25863,"tid":25871,"ts":531360565940,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":13,"tdur":12,"tts":127835},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360565957,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":55318,"tdur":144,"tts":127852},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360623319,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":128086},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360623339,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":338,"tdur":175,"tts":128106},{"cat":"cc","pid":25863,"tid":25871,"ts":531360623341,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":173,"tdur":86,"tts":128108},{"cat":"cc","pid":25863,"tid":25871,"ts":531360623356,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":128122},{"cat":"cc","pid":25863,"tid":25871,"ts":531360623515,"ph":"X","name":"Display::Draw","args":{},"dur":160,"tdur":83,"tts":128196},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360623519,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":128200,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360623523,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":128204},{"cat":"cc","pid":25863,"tid":25871,"ts":531360623525,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":128206},{"cat":"cc","pid":25863,"tid":25871,"ts":531360623530,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":4,"tts":128211},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360623537,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":131,"tdur":53,"tts":128218},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360624819,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":14,"tdur":13,"tts":128354},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360624839,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":252,"tdur":170,"tts":128374},{"cat":"cc","pid":25863,"tid":25871,"ts":531360624841,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":137,"tdur":87,"tts":128376},{"cat":"cc","pid":25863,"tid":25871,"ts":531360624855,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":19,"tdur":19,"tts":128389},{"cat":"cc","pid":25863,"tid":25871,"ts":531360624979,"ph":"X","name":"Display::Draw","args":{},"dur":111,"tdur":77,"tts":128465},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360624983,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":128468,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360624987,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":13,"tdur":13,"tts":128472},{"cat":"cc","pid":25863,"tid":25871,"ts":531360624988,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":128474},{"cat":"cc","pid":25863,"tid":25871,"ts":531360624993,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":128479},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360625001,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":81,"tdur":48,"tts":128486},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360626192,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":18,"tdur":17,"tts":128620},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360626217,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":249,"tdur":166,"tts":128644},{"cat":"cc","pid":25863,"tid":25871,"ts":531360626219,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":113,"tdur":79,"tts":128646},{"cat":"cc","pid":25863,"tid":25871,"ts":531360626233,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":9,"tts":128660},{"cat":"cc","pid":25863,"tid":25871,"ts":531360626333,"ph":"X","name":"Display::Draw","args":{},"dur":132,"tdur":82,"tts":128727},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360626337,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":128731,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360626341,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":20,"tdur":20,"tts":128735},{"cat":"cc","pid":25863,"tid":25871,"ts":531360626343,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":128737},{"cat":"cc","pid":25863,"tid":25871,"ts":531360626348,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":128742},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360626362,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":95,"tdur":45,"tts":128756},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360627529,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":19,"tdur":17,"tts":128886},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360627554,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":59839,"tdur":299,"tts":128910},{"cat":"cc","pid":25863,"tid":25871,"ts":531360627556,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":105,"tdur":73,"tts":128912},{"cat":"cc","pid":25863,"tid":25871,"ts":531360627570,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":9,"tdur":9,"tts":128926},{"cat":"cc","pid":25863,"tid":25871,"ts":531360627661,"ph":"X","name":"Display::Draw","args":{},"dur":59730,"tdur":221,"tts":128986},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360627665,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":128990,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360627669,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":14,"tts":128994},{"cat":"cc","pid":25863,"tid":25871,"ts":531360627671,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":128996},{"cat":"cc","pid":25863,"tid":25871,"ts":531360627676,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":129001},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360627683,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":59683,"tdur":173,"tts":129008},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360690807,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":34,"tdur":32,"tts":129342},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360690856,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":650,"tdur":366,"tts":129390},{"cat":"cc","pid":25863,"tid":25871,"ts":531360690861,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":333,"tdur":172,"tts":129395},{"cat":"cc","pid":25863,"tid":25871,"ts":531360690896,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":129430},{"cat":"cc","pid":25863,"tid":25871,"ts":531360691196,"ph":"X","name":"Display::Draw","args":{},"dur":307,"tdur":182,"tts":129571},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360691205,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":129580,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360691215,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":34,"tdur":32,"tts":129590},{"cat":"cc","pid":25863,"tid":25871,"ts":531360691220,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":11,"tts":129594},{"cat":"cc","pid":25863,"tid":25871,"ts":531360691232,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":13,"tdur":12,"tts":129606},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360691249,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":234,"tdur":108,"tts":129624},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360694074,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":31,"tts":129935},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360694122,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":666,"tdur":370,"tts":129982},{"cat":"cc","pid":25863,"tid":25871,"ts":531360694127,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":329,"tdur":173,"tts":129987},{"cat":"cc","pid":25863,"tid":25871,"ts":531360694160,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":22,"tts":130020},{"cat":"cc","pid":25863,"tid":25871,"ts":531360694458,"ph":"X","name":"Display::Draw","args":{},"dur":327,"tdur":185,"tts":130164},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360694467,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":130173,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360694477,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":31,"tts":130183},{"cat":"cc","pid":25863,"tid":25871,"ts":531360694481,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":130188},{"cat":"cc","pid":25863,"tid":25871,"ts":531360694493,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":130199},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360694509,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":262,"tdur":118,"tts":130215},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360697386,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":34,"tdur":31,"tts":130508},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360697436,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":537,"tdur":344,"tts":130557},{"cat":"cc","pid":25863,"tid":25871,"ts":531360697441,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":310,"tdur":167,"tts":130562},{"cat":"cc","pid":25863,"tid":25871,"ts":531360697474,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":22,"tts":130595},{"cat":"cc","pid":25863,"tid":25871,"ts":531360697753,"ph":"X","name":"Display::Draw","args":{},"dur":216,"tdur":165,"tts":130733},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360697763,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":130743,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360697773,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":30,"tts":130753},{"cat":"cc","pid":25863,"tid":25871,"ts":531360697777,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":130757},{"cat":"cc","pid":25863,"tid":25871,"ts":531360697789,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":130769},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360697805,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":149,"tdur":96,"tts":130785},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360700356,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":15,"tdur":14,"tts":131019},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360700379,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":70951,"tdur":350,"tts":131041},{"cat":"cc","pid":25863,"tid":25871,"ts":531360700381,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":276,"tdur":134,"tts":131043},{"cat":"cc","pid":25863,"tid":25871,"ts":531360700397,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":12,"tts":131059},{"cat":"cc","pid":25863,"tid":25871,"ts":531360700659,"ph":"X","name":"Display::Draw","args":{},"dur":70669,"tdur":208,"tts":131181},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360700680,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":131203,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360700686,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":26,"tdur":26,"tts":131208},{"cat":"cc","pid":25863,"tid":25871,"ts":531360700688,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":16,"tdur":16,"tts":131210},{"cat":"cc","pid":25863,"tid":25871,"ts":531360700704,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":131227},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360700713,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":70604,"tdur":143,"tts":131235},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360773920,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":29,"tts":131528},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360773967,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":659,"tdur":350,"tts":131573},{"cat":"cc","pid":25863,"tid":25871,"ts":531360773972,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":336,"tdur":168,"tts":131578},{"cat":"cc","pid":25863,"tid":25871,"ts":531360774005,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":22,"tts":131611},{"cat":"cc","pid":25863,"tid":25871,"ts":531360774310,"ph":"X","name":"Display::Draw","args":{},"dur":313,"tdur":170,"tts":131750},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360774319,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":131759,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360774329,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":30,"tts":131769},{"cat":"cc","pid":25863,"tid":25871,"ts":531360774334,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":10,"tts":131773},{"cat":"cc","pid":25863,"tid":25871,"ts":531360774345,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":131785},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360774361,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":243,"tdur":99,"tts":131801},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360777201,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":30,"tts":132077},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360777248,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":657,"tdur":369,"tts":132122},{"cat":"cc","pid":25863,"tid":25871,"ts":531360777253,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":338,"tdur":166,"tts":132127},{"cat":"cc","pid":25863,"tid":25871,"ts":531360777285,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":26,"tdur":25,"tts":132160},{"cat":"cc","pid":25863,"tid":25871,"ts":531360777593,"ph":"X","name":"Display::Draw","args":{},"dur":309,"tdur":191,"tts":132297},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360777603,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":132306,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360777612,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":132316},{"cat":"cc","pid":25863,"tid":25871,"ts":531360777617,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":9,"tts":132321},{"cat":"cc","pid":25863,"tid":25871,"ts":531360777628,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":132332},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360777645,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":238,"tdur":119,"tts":132349},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360780552,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":30,"tts":132642},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360780599,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":547,"tdur":319,"tts":132688},{"cat":"cc","pid":25863,"tid":25871,"ts":531360780604,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":287,"tdur":157,"tts":132692},{"cat":"cc","pid":25863,"tid":25871,"ts":531360780636,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":25,"tdur":24,"tts":132724},{"cat":"cc","pid":25863,"tid":25871,"ts":531360780893,"ph":"X","name":"Display::Draw","args":{},"dur":250,"tdur":153,"tts":132851},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360780901,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":132860,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360780910,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":30,"tts":132869},{"cat":"cc","pid":25863,"tid":25871,"ts":531360780915,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":10,"tts":132873},{"cat":"cc","pid":25863,"tid":25871,"ts":531360780926,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":132885},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360780942,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":181,"tdur":83,"tts":132901},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360783652,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":29,"tts":133179},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360783699,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":54303,"tdur":407,"tts":133224},{"cat":"cc","pid":25863,"tid":25871,"ts":531360783703,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":348,"tdur":177,"tts":133228},{"cat":"cc","pid":25863,"tid":25871,"ts":531360783736,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":22,"tts":133261},{"cat":"cc","pid":25863,"tid":25871,"ts":531360784053,"ph":"X","name":"Display::Draw","args":{},"dur":53948,"tdur":221,"tts":133409},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360784063,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":133418,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360784073,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":50,"tdur":49,"tts":133429},{"cat":"cc","pid":25863,"tid":25871,"ts":531360784078,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":28,"tdur":27,"tts":133433},{"cat":"cc","pid":25863,"tid":25871,"ts":531360784106,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":13,"tdur":12,"tts":133462},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360784124,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":53869,"tdur":141,"tts":133480},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360840369,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":40,"tdur":38,"tts":133712},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360840415,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":303,"tdur":172,"tts":133757},{"cat":"cc","pid":25863,"tid":25871,"ts":531360840417,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":169,"tdur":83,"tts":133759},{"cat":"cc","pid":25863,"tid":25871,"ts":531360840431,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":9,"tts":133773},{"cat":"cc","pid":25863,"tid":25871,"ts":531360840587,"ph":"X","name":"Display::Draw","args":{},"dur":130,"tdur":83,"tts":133844},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360840591,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":133848,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360840595,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":13,"tts":133852},{"cat":"cc","pid":25863,"tid":25871,"ts":531360840597,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":133854},{"cat":"cc","pid":25863,"tid":25871,"ts":531360840602,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":6,"tdur":5,"tts":133859},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360840609,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":100,"tdur":53,"tts":133866},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360841733,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":18,"tdur":16,"tts":134002},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360841757,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":266,"tdur":155,"tts":134025},{"cat":"cc","pid":25863,"tid":25871,"ts":531360841759,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":126,"tdur":74,"tts":134027},{"cat":"cc","pid":25863,"tid":25871,"ts":531360841773,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":8,"tdur":8,"tts":134041},{"cat":"cc","pid":25863,"tid":25871,"ts":531360841885,"ph":"X","name":"Display::Draw","args":{},"dur":137,"tdur":76,"tts":134103},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360841889,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":134106,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360841893,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":14,"tdur":12,"tts":134111},{"cat":"cc","pid":25863,"tid":25871,"ts":531360841895,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":134113},{"cat":"cc","pid":25863,"tid":25871,"ts":531360841900,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":134117},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360841907,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":107,"tdur":46,"tts":134124},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360843081,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":13,"tdur":13,"tts":134254},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360843100,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":271,"tdur":147,"tts":134273},{"cat":"cc","pid":25863,"tid":25871,"ts":531360843112,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":155,"tdur":71,"tts":134285},{"cat":"cc","pid":25863,"tid":25871,"ts":531360843128,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":9,"tts":134301},{"cat":"cc","pid":25863,"tid":25871,"ts":531360843267,"ph":"X","name":"Display::Draw","args":{},"dur":102,"tdur":61,"tts":134358},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360843271,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":134361,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360843275,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":12,"tdur":12,"tts":134365},{"cat":"cc","pid":25863,"tid":25871,"ts":531360843276,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":4,"tts":134367},{"cat":"cc","pid":25863,"tid":25871,"ts":531360843281,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":134371},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360843288,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":76,"tdur":36,"tts":134378},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360844470,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":13,"tdur":12,"tts":134491},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360844489,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":58630,"tdur":218,"tts":134509},{"cat":"cc","pid":25863,"tid":25871,"ts":531360844491,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":109,"tdur":78,"tts":134511},{"cat":"cc","pid":25863,"tid":25871,"ts":531360844504,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":10,"tdur":10,"tts":134524},{"cat":"cc","pid":25863,"tid":25871,"ts":531360844601,"ph":"X","name":"Display::Draw","args":{},"dur":58516,"tdur":135,"tts":134590},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360844605,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":134594,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360844609,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":12,"tdur":12,"tts":134598},{"cat":"cc","pid":25863,"tid":25871,"ts":531360844611,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":4,"tdur":4,"tts":134600},{"cat":"cc","pid":25863,"tid":25871,"ts":531360844615,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":5,"tdur":5,"tts":134604},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360844622,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":58486,"tdur":104,"tts":134611},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360905343,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":30,"tts":134855},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360905390,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":626,"tdur":366,"tts":134901},{"cat":"cc","pid":25863,"tid":25871,"ts":531360905395,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":321,"tdur":164,"tts":134906},{"cat":"cc","pid":25863,"tid":25871,"ts":531360905428,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":22,"tts":134939},{"cat":"cc","pid":25863,"tid":25871,"ts":531360905718,"ph":"X","name":"Display::Draw","args":{},"dur":295,"tdur":189,"tts":135074},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360905727,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":135084,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360905737,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":30,"tts":135094},{"cat":"cc","pid":25863,"tid":25871,"ts":531360905742,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":10,"tts":135098},{"cat":"cc","pid":25863,"tid":25871,"ts":531360905753,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":135110},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360905769,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":224,"tdur":117,"tts":135126},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360908595,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":30,"tts":135437},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360908642,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":614,"tdur":359,"tts":135483},{"cat":"cc","pid":25863,"tid":25871,"ts":531360908647,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":315,"tdur":161,"tts":135488},{"cat":"cc","pid":25863,"tid":25871,"ts":531360908679,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":22,"tts":135520},{"cat":"cc","pid":25863,"tid":25871,"ts":531360908964,"ph":"X","name":"Display::Draw","args":{},"dur":289,"tdur":186,"tts":135653},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360908973,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":135662,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360908983,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":30,"tts":135672},{"cat":"cc","pid":25863,"tid":25871,"ts":531360908988,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":10,"tts":135676},{"cat":"cc","pid":25863,"tid":25871,"ts":531360908999,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":135687},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360909015,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":219,"tdur":115,"tts":135704},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360911796,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":30,"tts":135998},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360911843,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":569,"tdur":329,"tts":136044},{"cat":"cc","pid":25863,"tid":25871,"ts":531360911848,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":331,"tdur":165,"tts":136048},{"cat":"cc","pid":25863,"tid":25871,"ts":531360911881,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":22,"tts":136081},{"cat":"cc","pid":25863,"tid":25871,"ts":531360912181,"ph":"X","name":"Display::Draw","args":{},"dur":228,"tdur":153,"tts":136217},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360912191,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":136227,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360912201,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":30,"tts":136237},{"cat":"cc","pid":25863,"tid":25871,"ts":531360912205,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":136241},{"cat":"cc","pid":25863,"tid":25871,"ts":531360912217,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":136253},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360912233,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":158,"tdur":82,"tts":136269},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360916133,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":14,"tts":136483},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360916155,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":55065,"tdur":322,"tts":136505},{"cat":"cc","pid":25863,"tid":25871,"ts":531360916158,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":193,"tdur":121,"tts":136507},{"cat":"cc","pid":25863,"tid":25871,"ts":531360916173,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":136523},{"cat":"cc","pid":25863,"tid":25871,"ts":531360916354,"ph":"X","name":"Display::Draw","args":{},"dur":54865,"tdur":194,"tts":136632},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360916363,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":136641,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360916386,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":24,"tdur":23,"tts":136664},{"cat":"cc","pid":25863,"tid":25871,"ts":531360916388,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":5,"tdur":5,"tts":136666},{"cat":"cc","pid":25863,"tid":25871,"ts":531360916394,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":14,"tdur":13,"tts":136672},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360916410,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":54800,"tdur":128,"tts":136688},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360973045,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":33,"tdur":31,"tts":136958},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360973093,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":603,"tdur":337,"tts":137004},{"cat":"cc","pid":25863,"tid":25871,"ts":531360973098,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":298,"tdur":162,"tts":137009},{"cat":"cc","pid":25863,"tid":25871,"ts":531360973130,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":137042},{"cat":"cc","pid":25863,"tid":25871,"ts":531360973398,"ph":"X","name":"Display::Draw","args":{},"dur":294,"tdur":162,"tts":137175},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360973408,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":137184,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360973439,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":32,"tts":137215},{"cat":"cc","pid":25863,"tid":25871,"ts":531360973444,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":11,"tts":137220},{"cat":"cc","pid":25863,"tid":25871,"ts":531360973456,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":11,"tts":137232},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360973472,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":201,"tdur":70,"tts":137248},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360976119,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":32,"tdur":29,"tts":137490},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360976166,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":602,"tdur":353,"tts":137536},{"cat":"cc","pid":25863,"tid":25871,"ts":531360976171,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":334,"tdur":181,"tts":137541},{"cat":"cc","pid":25863,"tid":25871,"ts":531360976205,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":24,"tdur":23,"tts":137574},{"cat":"cc","pid":25863,"tid":25871,"ts":531360976508,"ph":"X","name":"Display::Draw","args":{},"dur":257,"tdur":159,"tts":137726},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360976517,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":137735,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360976527,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":31,"tdur":31,"tts":137745},{"cat":"cc","pid":25863,"tid":25871,"ts":531360976531,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":9,"tts":137750},{"cat":"cc","pid":25863,"tid":25871,"ts":531360976542,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":13,"tdur":11,"tts":137761},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360976559,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":188,"tdur":89,"tts":137777},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360979304,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":35,"tdur":32,"tts":138055},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360979353,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":508,"tdur":300,"tts":138102},{"cat":"cc","pid":25863,"tid":25871,"ts":531360979358,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":330,"tdur":173,"tts":138107},{"cat":"cc","pid":25863,"tid":25871,"ts":531360979392,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":23,"tdur":22,"tts":138141},{"cat":"cc","pid":25863,"tid":25871,"ts":531360979690,"ph":"X","name":"Display::Draw","args":{},"dur":168,"tdur":116,"tts":138284},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360979699,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":138293,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360979709,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":138303},{"cat":"cc","pid":25863,"tid":25871,"ts":531360979714,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":11,"tdur":10,"tts":138307},{"cat":"cc","pid":25863,"tid":25871,"ts":531360979725,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":13,"tdur":11,"tts":138319},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360979742,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":101,"tdur":49,"tts":138335},{"cat":"mojo","pid":25863,"tid":25871,"ts":531360981682,"ph":"X","name":"SurfacesImpl::SubmitFrame","args":{},"dur":16,"tdur":15,"tts":138522},{"cat":"toplevel","pid":25863,"tid":25871,"ts":531360981706,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/surfaces/surfaces_service_application.cc","src_func":"FrameSubmitted"},"dur":67126,"tdur":349,"tts":138545},{"cat":"cc","pid":25863,"tid":25871,"ts":531360981708,"ph":"X","name":"SurfaceAggregator::Aggregate","args":{},"dur":249,"tdur":136,"tts":138547},{"cat":"cc","pid":25863,"tid":25871,"ts":531360981724,"ph":"X","name":"ResourceProvider::DeleteResourceInternal","args":{},"dur":12,"tdur":11,"tts":138564},{"cat":"cc","pid":25863,"tid":25871,"ts":531360981959,"ph":"X","name":"Display::Draw","args":{},"dur":66869,"tdur":203,"tts":138687},{"cat":"benchmark","pid":25863,"tid":25871,"ts":531360981969,"ph":"I","name":"BenchmarkInstrumentation::DisplayRenderingStats","args":{"data":{"frame_count":1}},"tts":138696,"s":"t"},{"cat":"cc","pid":25863,"tid":25871,"ts":531360981979,"ph":"X","name":"DirectRenderer::DrawFrame","args":{},"dur":32,"tdur":31,"tts":138706},{"cat":"cc","pid":25863,"tid":25871,"ts":531360981984,"ph":"X","name":"GLRenderer::BeginDrawingFrame","args":{},"dur":10,"tdur":9,"tts":138711},{"cat":"cc","pid":25863,"tid":25871,"ts":531360981995,"ph":"X","name":"DirectRenderer::DrawRenderPass","args":{},"dur":12,"tdur":12,"tts":138722},{"cat":"cc,benchmark","pid":25863,"tid":25871,"ts":531360982011,"ph":"X","name":"GLRenderer::SwapBuffers","args":{},"dur":66804,"tdur":137,"tts":138739},{"cat":"__metadata","pid":25863,"tid":25871,"ts":0,"ph":"M","name":"overhead","args":{"average_overhead":0.0021929936305732484}},{"cat":"__metadata","pid":25863,"tid":0,"ts":0,"ph":"M","name":"num_cpus","args":{"number":32}},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358635347,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":312,"tdur":265,"tts":1091069},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358635661,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29,"tdur":29,"tts":1091337},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358635715,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":124,"tdur":123,"tts":1091392},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358635725,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":113,"tdur":111,"tts":1091402},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358635769,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":58,"tdur":56,"tts":1091447},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358635842,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":16448,"tdur":2114,"tts":1091519},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358635848,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16439,"tdur":2105,"tts":1091525},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358652266,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":36},"dur":18,"tdur":15,"tts":1093611},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358652311,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1093655},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358652319,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":506,"tdur":377,"tts":1093663},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358652325,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":474,"tdur":343,"tts":1093669},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358652803,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1094018},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358652843,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1094059},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358652851,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":250,"tdur":250,"tts":1094066},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358652857,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":242,"tdur":241,"tts":1094073},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358652905,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":36},"dur":38,"tdur":35,"tts":1094122},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358653016,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1094233,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358653022,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":186},"dur":74,"tdur":73,"tts":1094238},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358653025,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1094241},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358653121,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1094336},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358653129,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":397,"tdur":340,"tts":1094344},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358653133,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":360,"tdur":302,"tts":1094349},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358653495,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":28,"tdur":26,"tts":1094655},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358653550,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":32,"tdur":30,"tts":1094710},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358653562,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":18,"tdur":16,"tts":1094722},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358653587,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":107,"tdur":105,"tts":1094747},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358653596,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":97,"tdur":96,"tts":1094755},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358653626,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":60,"tdur":58,"tts":1094787},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358653703,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15282,"tdur":2100,"tts":1094863},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358653708,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15275,"tdur":2093,"tts":1094868},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358668960,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":26},"dur":19,"tdur":16,"tts":1096941},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358668991,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1096970},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358669014,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":492,"tdur":365,"tts":1096993},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358669021,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":459,"tdur":331,"tts":1097000},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358669484,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1097337},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358669513,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1097365},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358669533,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":234,"tdur":234,"tts":1097385},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358669539,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":226,"tdur":225,"tts":1097392},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358669572,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":26},"dur":36,"tdur":34,"tts":1097425},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358669681,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1097534,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358669687,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":187},"dur":75,"tdur":75,"tts":1097539},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358669690,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":70,"tts":1097542},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358669772,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":25,"tdur":24,"tts":1097625},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358669813,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":397,"tdur":313,"tts":1097666},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358669819,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":373,"tdur":288,"tts":1097672},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358670195,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13,"tdur":13,"tts":1097964},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358670214,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1097983},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358670498,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":37,"tdur":36,"tts":1098055},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358670506,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":26,"tdur":24,"tts":1098063},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358670540,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":97,"tdur":96,"tts":1098097},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358670548,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":87,"tdur":85,"tts":1098106},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358670597,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":29,"tdur":28,"tts":1098154},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358672163,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30109,"tdur":2126,"tts":1098256},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358672179,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30090,"tdur":2108,"tts":1098271},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358702222,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":61},"dur":43,"tdur":40,"tts":1100335},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358702278,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1100389},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358702308,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":511,"tdur":378,"tts":1100419},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358702315,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":478,"tdur":344,"tts":1100426},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358702797,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1100776},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358702825,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1100803},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358702845,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":253,"tdur":253,"tts":1100823},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358702852,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":243,"tdur":243,"tts":1100830},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358702886,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":61},"dur":37,"tdur":36,"tts":1100865},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358702996,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1100975,"s":"t"},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358670594,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":16,"tdur":14,"tts":112146},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358672221,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":10,"tdur":8,"tts":112363},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358672533,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":112532},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358672700,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":112650},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358673657,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":112738},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358674660,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":112890},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358674928,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":113045},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358675050,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":113144},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358675083,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":113173},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358675449,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":113287},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358676403,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":113396},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358676600,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":113481},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358676775,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":113556},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358677037,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":113619},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358678033,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":113707},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358678198,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":113778},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358678320,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":113851},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358735584,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":114044},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358735894,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":114176},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358737594,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":10,"tts":114406},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358737781,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":114540},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358738043,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":114679},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358738184,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":114786},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358738460,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":114885},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358739277,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":2,"tts":114986},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358739511,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":2,"tts":115080},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358739649,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":115146},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358739946,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":115201},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358740781,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":115253},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358741009,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":115305},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358741153,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":115401},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358741412,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":115456},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358742249,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":115535},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358742405,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":115611},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358742499,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":115675},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358742516,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":115692},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358820236,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":115862},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358821442,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":116070},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358823157,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":116301},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358823437,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":116458},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358823592,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":116566},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358823842,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":116618},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358824679,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":116739},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358824920,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":116865},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358825067,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":116967},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358825953,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":117062},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358826702,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":117151},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358826899,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":117212},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358827043,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":117271},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358827316,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":117322},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358828083,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":117379},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358828260,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":117431},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358828369,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":117486},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358902029,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":117634},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358902572,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":117766},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358903358,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":117898},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358903591,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":118030},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358903901,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":118161},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358904066,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":118287},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358904078,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":118298},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358904410,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":118407},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358905137,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":118500},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358905342,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":118573},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358905479,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":118635},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358703002,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":188},"dur":90,"tdur":89,"tts":1100981},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358703012,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":79,"tdur":78,"tts":1100991},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358703103,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1101082},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358703125,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":398,"tdur":337,"tts":1101103},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358703130,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":364,"tdur":301,"tts":1101109},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358703496,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":24,"tdur":23,"tts":1101413},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358703530,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":28,"tdur":27,"tts":1101448},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358703541,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15,"tdur":15,"tts":1101458},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358703582,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":101,"tdur":100,"tts":1101500},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358703592,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":90,"tdur":89,"tts":1101510},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358703624,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":50,"tdur":49,"tts":1101542},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358703686,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2539,"tdur":1801,"tts":1101603},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358703691,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2532,"tdur":1794,"tts":1101608},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358706193,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":94},"dur":26,"tdur":24,"tts":1103374},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358706246,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":5,"tts":1103427},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358706255,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":439,"tdur":336,"tts":1103435},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358706262,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":406,"tdur":303,"tts":1103441},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358706672,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1103750},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358706712,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1103790},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358706720,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":293,"tdur":192,"tts":1103797},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358706725,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":261,"tdur":158,"tts":1103803},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358706990,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1103967},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358707032,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":489,"tdur":386,"tts":1104009},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358707039,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":235,"tdur":132,"tts":1104016},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358707279,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":240,"tdur":239,"tts":1104154},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358707318,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":94},"dur":37,"tdur":36,"tts":1104193},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358707435,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1104311,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358707441,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":189},"dur":74,"tdur":74,"tts":1104316},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358707444,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1104319},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358707527,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1104402},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358707551,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":385,"tdur":326,"tts":1104426},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358707557,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":350,"tdur":291,"tts":1104432},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358707909,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":24,"tdur":23,"tts":1104726},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358707943,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":172,"tdur":150,"tts":1104760},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358707954,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":160,"tdur":137,"tts":1104771},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358707985,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":119,"tdur":96,"tts":1104803},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358708124,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9646,"tdur":1170,"tts":1104920},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358708128,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9641,"tdur":1164,"tts":1104924},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358717751,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":201},"dur":16,"tdur":14,"tts":1106072},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358717773,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1106093},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358717786,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":356,"tdur":311,"tts":1106106},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358717789,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":339,"tdur":294,"tts":1106109},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718131,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":9,"tdur":10,"tts":1106406},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358718145,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":3,"tts":1106420},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358718155,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":128,"tdur":127,"tts":1106431},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718159,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":123,"tdur":122,"tts":1106435},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718176,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":201},"dur":19,"tdur":18,"tts":1106452},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358718233,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1106509,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718236,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":190},"dur":44,"tdur":43,"tts":1106512},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718238,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":41,"tdur":40,"tts":1106514},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358718285,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1106561},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358718296,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":415,"tdur":343,"tts":1106572},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718299,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":398,"tdur":326,"tts":1106575},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718699,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1106904},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358718714,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9,"tdur":9,"tts":1106919},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718718,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":5,"tdur":4,"tts":1106923},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358718732,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":51,"tdur":51,"tts":1106937},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718734,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":49,"tdur":48,"tts":1106939},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718747,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":28,"tdur":28,"tts":1106952},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358718786,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15773,"tdur":1340,"tts":1106991},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358718789,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15769,"tdur":1336,"tts":1106994},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358734542,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":157},"dur":14,"tdur":12,"tts":1108316},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358734571,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1108343},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358734575,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":333,"tdur":284,"tts":1108347},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358734578,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":306,"tdur":256,"tts":1108350},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358734898,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":9,"tdur":9,"tts":1108621},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358734916,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1108640},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358734920,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":105,"tdur":77,"tts":1108643},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358734922,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":93,"tdur":64,"tts":1108646},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358735016,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":7,"tts":1108712},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358735032,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":249,"tdur":205,"tts":1108728},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358735035,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":114,"tdur":70,"tts":1108731},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358735152,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":128,"tdur":127,"tts":1108805},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358735185,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":157},"dur":19,"tdur":18,"tts":1108838},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358735238,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1108891,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358735241,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":191},"dur":37,"tdur":37,"tts":1108894},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358735243,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":35,"tdur":35,"tts":1108895},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358735284,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":12,"tdur":11,"tts":1108937},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358735547,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1108972},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358735863,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":120,"tdur":97,"tts":1109004},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358735870,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":99,"tdur":77,"tts":1109010},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358735971,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1109090},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358735985,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":144,"tdur":132,"tts":1109104},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358735990,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":136,"tdur":123,"tts":1109109},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358736025,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":78,"tdur":76,"tts":1109134},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358737534,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30804,"tdur":1170,"tts":1109311},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358737550,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30785,"tdur":1152,"tts":1109325},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358768345,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":882,"tdur":881,"tts":1110489},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358768357,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":867,"tdur":867,"tts":1110501},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358769199,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":44},"dur":22,"tdur":20,"tts":1111344},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358769254,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1111398},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358769263,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":484,"tdur":355,"tts":1111407},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358769268,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":453,"tdur":323,"tts":1111412},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358769725,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":19,"tts":1111741},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358769765,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1111781},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358769773,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":245,"tdur":244,"tts":1111789},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358769779,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":237,"tdur":236,"tts":1111795},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358769813,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":44},"dur":37,"tdur":36,"tts":1111829},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358769924,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1111941,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358769930,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":192},"dur":83,"tdur":82,"tts":1111946},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358769933,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":79,"tdur":77,"tts":1111950},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358770036,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1112053},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358770044,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":566,"tdur":429,"tts":1112060},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358770049,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":535,"tdur":396,"tts":1112065},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358770588,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":20,"tts":1112467},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358770629,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":18,"tts":1112509},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358770636,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1112516},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358770652,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":95,"tdur":94,"tts":1112531},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358770656,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":89,"tdur":89,"tts":1112535},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358770690,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":44,"tdur":43,"tts":1112570},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358770758,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14936,"tdur":1795,"tts":1112638},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358770763,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14929,"tdur":1788,"tts":1112643},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358785662,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":188},"dur":26,"tdur":24,"tts":1114403},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358785700,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1114440},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358785722,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":838,"tdur":751,"tts":1114462},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358785728,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":809,"tdur":721,"tts":1114468},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358786541,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":16,"tts":1115195},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358786565,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1115219},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358786583,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":217,"tdur":216,"tts":1115237},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358786589,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":209,"tdur":208,"tts":1115243},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358786618,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":188},"dur":35,"tdur":33,"tts":1115273},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358786718,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1115372,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358786723,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":193},"dur":72,"tdur":71,"tts":1115377},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358786727,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":67,"tdur":66,"tts":1115381},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358786805,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1115459},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358786826,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":542,"tdur":423,"tts":1115480},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358786831,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":510,"tdur":390,"tts":1115485},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358787345,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1115881},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358742498,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":18,"tts":64965},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358820156,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":29,"tts":65098},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358821306,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":56,"tdur":54,"tts":65170},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358823017,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":61,"tdur":59,"tts":65286},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358823374,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":23,"tts":65385},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358823545,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":65447},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358823567,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":65469},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358823818,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":65507},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358824616,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":65563},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358824859,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":19,"tts":65621},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358825026,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":15,"tts":65675},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358825043,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":9,"tdur":8,"tts":65692},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358825909,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":65738},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358826656,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":65790},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358826868,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":65848},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358827014,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":65903},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358827037,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":65925},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358827292,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":17,"tts":65965},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358828052,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":66017},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358828231,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":66076},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358828351,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":66119},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358828363,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":6,"tts":66130},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358901948,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":36,"tdur":35,"tts":66175},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358902508,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":21,"tts":66250},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358903293,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":19,"tts":66309},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358903514,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":23,"tts":66367},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358903840,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":66427},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358904027,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":32,"tdur":21,"tts":66487},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358904060,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":66510},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358904366,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":16,"tts":66559},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358905091,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":66611},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358905313,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":66664},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358905451,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":66719},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358905473,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":5,"tts":66741},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358905716,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":66782},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358906457,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":66834},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358906655,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":66889},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358906789,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":20,"tts":66944},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358906812,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":66966},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358907053,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":67005},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358907793,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":67058},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358907993,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":39,"tdur":29,"tts":67117},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358908166,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":67169},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358908179,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":5,"tts":67182},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358970837,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":37,"tdur":35,"tts":67228},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358971713,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":48,"tdur":47,"tts":67309},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358973979,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":47,"tdur":46,"tts":67412},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358974353,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":67484},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358974511,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":9,"tts":67509},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358974532,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":13,"tts":67526},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358974926,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":67577},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358975722,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":67633},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358975972,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":22,"tts":67691},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358976123,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":67749},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358976142,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":10,"tts":67767},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358976455,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":67816},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358977327,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":67872},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358977549,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":67928},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358977689,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":67986},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358977708,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":10,"tts":68005},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358977955,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":18,"tts":68052},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358978829,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":68108},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358979009,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":68168},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358979124,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":68229},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358787374,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":25,"tdur":25,"tts":1115909},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358787388,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1115923},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358787415,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":97,"tdur":96,"tts":1115951},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358787420,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":90,"tdur":89,"tts":1115956},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358787443,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":53,"tdur":51,"tts":1115979},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358787516,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14871,"tdur":2060,"tts":1116052},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358787523,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14863,"tdur":2052,"tts":1116058},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358802372,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":158},"dur":11,"tdur":10,"tts":1118098},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358802401,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1118126},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358802406,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":510,"tdur":382,"tts":1118131},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358802410,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":481,"tdur":351,"tts":1118135},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358802895,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1118492},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358802934,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1118531},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358802942,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":240,"tdur":239,"tts":1118539},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358802948,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":232,"tdur":231,"tts":1118545},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358802982,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":158},"dur":36,"tdur":35,"tts":1118579},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358803090,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1118688,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358803097,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":194},"dur":80,"tdur":80,"tts":1118693},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358803100,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":76,"tdur":76,"tts":1118696},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358803201,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1118798},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358803209,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":506,"tdur":413,"tts":1118806},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358803214,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":474,"tdur":380,"tts":1118811},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358803692,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":20,"tts":1119197},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358803733,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":20,"tdur":19,"tts":1119238},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358803741,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1119246},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358803768,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":84,"tdur":83,"tts":1119273},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358803771,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":79,"tdur":78,"tts":1119276},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358803786,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":49,"tdur":48,"tts":1119291},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358803867,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14575,"tdur":1711,"tts":1119373},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358803875,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14565,"tdur":1702,"tts":1119380},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358818419,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":16},"dur":17,"tdur":15,"tts":1121064},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358818448,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1121091},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358818470,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":741,"tdur":682,"tts":1121113},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358818476,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":711,"tdur":651,"tts":1121119},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358819191,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":17,"tts":1121775},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358819216,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":3,"tts":1121801},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358819235,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":221,"tdur":172,"tts":1121820},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358819240,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":191,"tdur":141,"tts":1121825},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358819435,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":19,"tdur":18,"tts":1121972},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358819462,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":401,"tdur":362,"tts":1121999},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358819468,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":177,"tdur":138,"tts":1122005},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358819647,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":214,"tdur":214,"tts":1122145},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358819679,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":16},"dur":28,"tdur":26,"tts":1122178},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358819784,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1122283,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358819790,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":195},"dur":68,"tdur":68,"tts":1122288},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358819792,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":65,"tdur":64,"tts":1122291},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358819884,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":25,"tdur":24,"tts":1122383},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358820201,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1122451},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358821412,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":208,"tdur":185,"tts":1122548},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358821424,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":158,"tdur":135,"tts":1122559},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358821586,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":32,"tdur":31,"tts":1122700},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358821625,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":75,"tdur":75,"tts":1122738},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358821630,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":69,"tdur":68,"tts":1122743},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358821648,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":40,"tdur":40,"tts":1122761},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358823121,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29139,"tdur":2149,"tts":1122934},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358823136,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29121,"tdur":2132,"tts":1122948},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358852234,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":156},"dur":19,"tdur":16,"tts":1125060},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358852265,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1125090},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358852296,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":424,"tdur":297,"tts":1125120},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358852303,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":391,"tdur":263,"tts":1125127},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358852698,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1125396},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358852726,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1125424},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358852747,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":250,"tdur":249,"tts":1125445},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358852754,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":240,"tdur":240,"tts":1125452},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358852790,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":156},"dur":41,"tdur":40,"tts":1125488},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358852904,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1125603,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358852911,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":196},"dur":80,"tdur":80,"tts":1125609},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358852914,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":76,"tdur":75,"tts":1125612},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358853002,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1125701},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358853024,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":493,"tdur":378,"tts":1125722},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358853029,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":477,"tdur":362,"tts":1125727},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358853508,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1126091},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358853520,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8,"tdur":8,"tts":1126103},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358853523,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":4,"tdur":4,"tts":1126106},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358853534,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":81,"tdur":80,"tts":1126118},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358853536,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":77,"tdur":76,"tts":1126120},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358853546,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":52,"tdur":52,"tts":1126129},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358853619,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14243,"tdur":1187,"tts":1126203},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358853627,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14233,"tdur":1178,"tts":1126210},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358867845,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":188},"dur":13,"tdur":11,"tts":1127374},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358867890,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":5,"tts":1127419},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358867899,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":967,"tdur":827,"tts":1127427},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358867904,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":929,"tdur":789,"tts":1127432},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358868835,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":28,"tdur":28,"tts":1128224},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358868884,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1128274},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358868892,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":341,"tdur":217,"tts":1128281},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358868897,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":309,"tdur":184,"tts":1128286},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358869210,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1128476},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358869261,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":557,"tdur":416,"tts":1128527},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358869265,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":319,"tdur":178,"tts":1128530},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358869588,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":227,"tdur":226,"tts":1128714},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358869629,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":188},"dur":36,"tdur":34,"tts":1128756},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358869729,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1128856,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358869736,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":197},"dur":76,"tdur":75,"tts":1128862},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358869739,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":72,"tdur":71,"tts":1128865},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358869833,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1128959},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358869845,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":485,"tdur":365,"tts":1128971},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358869848,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":460,"tdur":339,"tts":1128974},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358870322,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1129327},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358870333,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":42,"tdur":42,"tts":1129338},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358870335,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":39,"tdur":38,"tts":1129341},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358870343,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":25,"tdur":24,"tts":1129349},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358870384,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":13668,"tdur":815,"tts":1129390},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358870389,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13662,"tdur":809,"tts":1129394},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358884037,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":43},"dur":12,"tdur":11,"tts":1130191},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358884055,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1130208},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358884065,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":935,"tdur":888,"tts":1130218},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358884068,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":921,"tdur":873,"tts":1130221},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358884990,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":9,"tdur":8,"tts":1131096},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358885003,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1131108},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358885011,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":106,"tdur":105,"tts":1131117},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358885014,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":102,"tdur":101,"tts":1131120},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358885029,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":43},"dur":15,"tdur":15,"tts":1131135},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358885076,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1131182,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358885078,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":198},"dur":37,"tdur":36,"tts":1131184},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358885080,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":34,"tdur":34,"tts":1131186},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358885119,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1131225},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358885128,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":545,"tdur":484,"tts":1131234},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358885130,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":534,"tdur":473,"tts":1131236},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358885665,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1131711},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358885675,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8,"tdur":8,"tts":1131720},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358885677,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":5,"tdur":4,"tts":1131723},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358885688,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":38,"tdur":38,"tts":1131734},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358885690,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":36,"tdur":35,"tts":1131736},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358885697,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":23,"tdur":22,"tts":1131743},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358885728,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15125,"tdur":896,"tts":1131774},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358885731,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15120,"tdur":891,"tts":1131777},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358900835,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":10},"dur":14,"tdur":13,"tts":1132653},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358900863,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1132681},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358900870,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":381,"tdur":307,"tts":1132687},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358900873,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":366,"tdur":291,"tts":1132690},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358901241,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":9,"tdur":9,"tts":1132983},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358901259,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1133001},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358901262,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":179,"tdur":111,"tts":1133004},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358901264,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":166,"tdur":96,"tts":1133007},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358901432,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1133106},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358901449,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":221,"tdur":161,"tts":1133122},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358901451,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":150,"tdur":88,"tts":1133125},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358901602,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":67,"tdur":66,"tts":1133216},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358901673,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":102,"tdur":102,"tts":1133286},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358901676,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":98,"tdur":99,"tts":1133289},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358901688,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":10},"dur":16,"tdur":16,"tts":1133301},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358901737,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1133351,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358901739,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":199},"dur":34,"tdur":33,"tts":1133353},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358901741,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":32,"tdur":32,"tts":1133354},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358901784,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":19,"tdur":18,"tts":1133398},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358901987,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1133441},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358902527,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":102,"tdur":70,"tts":1133461},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358902530,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":89,"tdur":57,"tts":1133464},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358902620,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":7,"tts":1133523},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358902631,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":46,"tdur":46,"tts":1133533},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358902633,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":43,"tdur":43,"tts":1133536},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358902643,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":26,"tdur":26,"tts":1133546},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358903312,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30671,"tdur":632,"tts":1133599},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358903316,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30664,"tdur":626,"tts":1133602},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358933987,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":453,"tdur":452,"tts":1134236},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358933994,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":445,"tdur":445,"tts":1134243},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358934415,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":118},"dur":23,"tdur":21,"tts":1134665},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358934453,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1134702},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358934457,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":362,"tdur":277,"tts":1134705},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358934459,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":347,"tdur":261,"tts":1134708},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358934808,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":9,"tts":1134972},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358934827,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1134990},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358934830,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":178,"tdur":113,"tts":1134993},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358934832,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":165,"tdur":98,"tts":1134996},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358934998,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1135097},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358935016,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":237,"tdur":174,"tts":1135114},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358935019,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":114,"tdur":51,"tts":1135117},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358935134,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":118,"tdur":117,"tts":1135170},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358935154,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":118},"dur":20,"tdur":19,"tts":1135190},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358935211,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1135247,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358935213,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":200},"dur":38,"tdur":37,"tts":1135249},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358935215,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":35,"tdur":34,"tts":1135251},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358935255,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1135291},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358935264,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":331,"tdur":263,"tts":1135300},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358935266,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":319,"tdur":251,"tts":1135302},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358935586,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":7,"tts":1135555},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358935597,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":140,"tdur":140,"tts":1135565},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358935599,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":137,"tdur":136,"tts":1135568},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358935609,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":33,"tdur":32,"tts":1135578},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358935744,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1297,"tdur":747,"tts":1135713},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358935747,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":1293,"tdur":743,"tts":1135716},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358937030,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":234},"dur":9,"tdur":8,"tts":1136450},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358937044,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1136463},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358937054,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":583,"tdur":521,"tts":1136473},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358937057,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":571,"tdur":509,"tts":1136476},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358937629,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":7,"tdur":6,"tts":1136987},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358937639,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":1,"tdur":1,"tts":1136996},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358937645,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":96,"tdur":95,"tts":1137003},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358937648,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":92,"tdur":91,"tts":1137006},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358937661,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":234},"dur":14,"tdur":14,"tts":1137018},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358937702,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1137060,"s":"t"},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358905741,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":13,"tdur":13,"tts":118686},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358906485,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":118750},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358906685,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":118801},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358906818,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":118861},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358907078,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":118912},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358907822,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":118961},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358908040,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":119012},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358908186,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":119091},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358970934,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":10,"tdur":8,"tts":119313},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358971839,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":119554},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358974097,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":7,"tts":119781},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358974390,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":119903},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358974530,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":119994},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358974547,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":120010},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358974982,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":120141},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358975793,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":120281},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358976036,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":120413},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358976183,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":120532},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358976500,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":120633},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358977382,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":120735},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358977580,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":120810},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358977714,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":120878},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358977723,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":120887},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358977981,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":120938},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358978860,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":120991},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358979039,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":121043},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358979149,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":121111},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531358979161,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":121123},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359105502,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":121314},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359106255,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":121522},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359107688,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":121700},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359108065,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":121937},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359108620,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":122175},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359108875,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":122352},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359108897,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":122373},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359109488,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":122490},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359111396,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":122741},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359111870,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":123013},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359112132,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":10,"tdur":8,"tts":123237},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359112769,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":123458},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359114573,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":123669},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359114982,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":123875},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359115245,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":124075},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359116395,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":124235},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359117384,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":21,"tdur":20,"tts":124385},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359117674,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":124476},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359117923,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":124600},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359186692,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":124814},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359187342,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":125100},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359189167,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":125368},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359189640,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":125637},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359189873,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":125822},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359191813,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":126078},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359193608,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":126295},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359194125,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":126567},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359194396,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":10,"tts":126796},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359195082,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":127080},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359196915,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":127340},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359197379,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":8,"tts":127609},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359197649,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":10,"tts":127831},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359198228,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":128097},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359199817,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":128316},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359200044,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":128463},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359200303,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":2,"tts":128602},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358937705,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":201},"dur":34,"tdur":34,"tts":1137062},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358937709,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":29,"tdur":28,"tts":1137067},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358937743,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":1,"tts":1137101},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358937752,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":357,"tdur":297,"tts":1137109},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358937754,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":346,"tdur":286,"tts":1137111},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358938101,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":7,"tts":1137399},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358938111,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8,"tdur":7,"tts":1137409},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358938114,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":4,"tdur":5,"tts":1137411},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358938124,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":38,"tdur":38,"tts":1137422},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358938126,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":35,"tdur":35,"tts":1137424},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358938136,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":20,"tdur":19,"tts":1137434},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358938164,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":12810,"tdur":1010,"tts":1137462},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358938167,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12806,"tdur":1006,"tts":1137464},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358950957,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":127},"dur":13,"tdur":12,"tts":1138456},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358950985,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1138483},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358950989,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":383,"tdur":351,"tts":1138487},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358950992,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":367,"tdur":335,"tts":1138490},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358951361,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":9,"tts":1138828},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358951380,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":1,"tts":1138847},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358951383,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":120,"tdur":119,"tts":1138850},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358951386,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":116,"tdur":116,"tts":1138853},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358951406,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":127},"dur":18,"tdur":17,"tts":1138873},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358951461,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1138927,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358951463,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":202},"dur":38,"tdur":37,"tts":1138930},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358951465,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":36,"tdur":36,"tts":1138931},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358951511,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":1,"tts":1138978},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358951514,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":361,"tdur":307,"tts":1138981},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358951516,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":350,"tdur":295,"tts":1138983},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358951867,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":7,"tts":1139280},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358951901,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":21,"tdur":21,"tts":1139314},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358951908,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13,"tdur":12,"tts":1139321},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358951925,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":139,"tdur":122,"tts":1139338},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358951929,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":134,"tdur":117,"tts":1139342},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358951952,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":103,"tdur":86,"tts":1139365},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358952071,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":16023,"tdur":1386,"tts":1139468},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358952075,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16016,"tdur":1380,"tts":1139471},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358968062,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":18},"dur":24,"tdur":23,"tts":1140824},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358968112,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":3,"tts":1140874},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358968129,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":418,"tdur":360,"tts":1140891},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358968134,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":385,"tdur":327,"tts":1140896},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358968524,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1141229},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358968553,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1141258},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358968573,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1459,"tdur":1356,"tts":1141278},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358968579,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":1426,"tdur":1322,"tts":1141284},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358970009,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1142612},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358970038,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":506,"tdur":402,"tts":1142640},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358970044,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":256,"tdur":150,"tts":1142647},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358970304,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":237,"tdur":237,"tts":1142803},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358970345,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":18},"dur":38,"tdur":37,"tts":1142844},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531358970457,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1142957,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358970463,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":203},"dur":75,"tdur":75,"tts":1142962},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358970466,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":69,"tts":1142966},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358970566,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":34,"tdur":33,"tts":1143066},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358970905,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":19,"tdur":17,"tts":1143164},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358971802,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":286,"tdur":219,"tts":1143279},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358971828,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":233,"tdur":167,"tts":1143303},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358972065,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1143476},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358972094,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":102,"tdur":102,"tts":1143504},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358972101,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":94,"tdur":93,"tts":1143511},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358972125,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":55,"tdur":53,"tts":1143536},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531358974059,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":28502,"tdur":1886,"tts":1143698},{"cat":"gpu","pid":25863,"tid":25870,"ts":531358974070,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":28488,"tdur":1875,"tts":1143707},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359002535,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":171},"dur":20,"tdur":17,"tts":1145561},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359002567,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1145591},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531358979144,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":17,"tts":68248},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359105340,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":76,"tdur":75,"tts":68303},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359106138,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":68420},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359107626,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":68512},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359107922,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":68577},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359108486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":68661},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359108820,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":39,"tdur":37,"tts":68790},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359108862,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":68830},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359109430,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":44,"tdur":41,"tts":68921},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359111265,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":47,"tts":69023},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359111738,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":69131},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359112047,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":69242},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359112100,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":10,"tts":69294},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359112684,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":39,"tts":69372},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359114446,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":47,"tts":69477},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359114882,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":47,"tts":69587},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359115160,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":41,"tdur":39,"tts":69695},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359115203,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":69737},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359116348,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":69803},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359117289,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":46,"tts":69890},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359117598,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":60,"tdur":58,"tts":69983},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359117864,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":70084},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359117909,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":15,"tts":70128},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359186618,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":33,"tdur":32,"tts":70221},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359187206,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":55,"tdur":53,"tts":70312},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359189026,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":61,"tdur":58,"tts":70433},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359189503,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":57,"tdur":55,"tts":70551},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359189790,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":49,"tts":70668},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359189844,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":70721},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359191694,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":70799},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359193523,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":70899},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359193984,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":71009},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359194284,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":40,"tdur":37,"tts":71123},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359194326,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":71163},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359194968,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":41,"tdur":39,"tts":71252},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359196789,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":71353},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359197250,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":71464},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359197530,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":49,"tts":71574},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359197584,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":10,"tts":71627},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359198110,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":71702},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359199706,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":40,"tdur":37,"tts":71812},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359199920,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":47,"tts":71918},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359200255,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":72021},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359200407,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":17,"tts":72078},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359200427,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":72097},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359253051,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":23,"tts":72137},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359253542,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":72201},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359254502,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":62,"tdur":59,"tts":72291},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359254858,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":24,"tts":72391},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359255041,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":72452},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359255063,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":72474},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359255356,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":72517},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359256146,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":72569},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359256377,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":20,"tts":72628},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359256524,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":72687},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359256547,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":72709},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359256806,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":72751},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359257582,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":72806},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359257790,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":72861},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359257932,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":21,"tts":72920},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359257956,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":72943},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359258218,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":72985},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359258993,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":73041},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359259161,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":73097},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359002597,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":526,"tdur":397,"tts":1145621},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359002624,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":472,"tdur":343,"tts":1145648},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359003101,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1145997},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359003129,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1146025},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359003149,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":355,"tdur":226,"tts":1146045},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359003155,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":322,"tdur":192,"tts":1146051},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359003481,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1146249},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359003511,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":594,"tdur":458,"tts":1146278},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359003517,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":318,"tdur":199,"tts":1146284},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359003839,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":265,"tdur":246,"tts":1146489},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359003896,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":171},"dur":39,"tdur":38,"tts":1146546},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359004046,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1146678,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359004052,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":204},"dur":51,"tdur":50,"tts":1146684},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359004071,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":31,"tdur":31,"tts":1146702},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359004115,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1146746},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359004118,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10680,"tdur":10547,"tts":1146749},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359004120,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":10667,"tdur":10533,"tts":1146751},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359014789,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1157287},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359014806,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":45,"tdur":45,"tts":1157304},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359014809,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":41,"tdur":41,"tts":1157307},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359014826,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":18,"tdur":18,"tts":1157324},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359014853,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":20702,"tdur":1692,"tts":1157351},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359014856,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20697,"tdur":1687,"tts":1157354},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359035534,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":226},"dur":16,"tdur":14,"tts":1159024},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359035571,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1159060},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359035578,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9938,"tdur":9789,"tts":1159066},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359035583,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":9923,"tdur":9774,"tts":1159071},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359045507,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":8,"tdur":7,"tts":1168847},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359045522,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1168862},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359045525,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2892,"tdur":2762,"tts":1168865},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359045527,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":2881,"tdur":2751,"tts":1168867},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359048410,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":7,"tts":1171620},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359048423,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":308,"tdur":249,"tts":1171634},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359048426,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":186,"tdur":128,"tts":1171636},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359048626,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":104,"tdur":104,"tts":1171779},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359048648,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":226},"dur":17,"tdur":16,"tts":1171801},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359048696,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1171849,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359048698,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":205},"dur":31,"tdur":30,"tts":1171851},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359048700,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":28,"tdur":28,"tts":1171853},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359048733,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1171886},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359048742,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":493,"tdur":374,"tts":1171895},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359048744,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":480,"tdur":361,"tts":1171897},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359049225,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1172260},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359049238,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":49,"tdur":49,"tts":1172272},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359049240,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":46,"tdur":45,"tts":1172275},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359049260,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":20,"tdur":19,"tts":1172295},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359049294,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19040,"tdur":1447,"tts":1172329},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359049297,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":19036,"tdur":1443,"tts":1172332},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359068318,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":62},"dur":12,"tdur":12,"tts":1173761},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359068336,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1173779},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359068347,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":12967,"tdur":12835,"tts":1173790},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359068350,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":12941,"tdur":12808,"tts":1173793},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359081294,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":18,"tdur":16,"tts":1186606},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359081319,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1186630},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359081336,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":3020,"tdur":2875,"tts":1186647},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359081341,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":3005,"tdur":2860,"tts":1186652},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359084348,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":7,"tts":1189514},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359084358,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":374,"tdur":249,"tts":1189524},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359084360,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":256,"tdur":131,"tts":1189526},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359084619,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":112,"tdur":111,"tts":1189661},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359084649,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":62},"dur":16,"tdur":16,"tts":1189691},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359084696,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1189739,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359084699,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":206},"dur":31,"tdur":30,"tts":1189741},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359084700,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":29,"tdur":29,"tts":1189742},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359084740,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":12,"tdur":11,"tts":1189782},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359084753,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":455,"tdur":323,"tts":1189795},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359084755,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":431,"tdur":297,"tts":1189797},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359085200,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":7,"tts":1190110},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359085214,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":43,"tdur":42,"tts":1190124},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359085217,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":39,"tdur":39,"tts":1190126},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359085231,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":19,"tdur":19,"tts":1190140},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359085258,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":17942,"tdur":2331,"tts":1190168},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359085261,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17933,"tdur":2323,"tts":1190171},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359103152,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":217},"dur":36,"tdur":32,"tts":1192456},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359103230,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":5,"tts":1192531},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359103241,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":826,"tdur":605,"tts":1192541},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359103250,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":739,"tdur":534,"tts":1192550},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359103995,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":69,"tdur":50,"tts":1193093},{"cat":"trace_event_overhead","pid":25863,"tid":25870,"ts":531359103995,"ph":"X","name":"overhead","args":{},"dur":52,"tdur":33,"tts":1193093},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359104086,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1193166},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359104094,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":422,"tdur":293,"tts":1193174},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359104107,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":380,"tdur":250,"tts":1193187},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359104491,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":22,"tdur":21,"tts":1193444},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359104534,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":581,"tdur":454,"tts":1193487},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359104541,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":289,"tdur":162,"tts":1193493},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359104834,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":279,"tdur":277,"tts":1193662},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359104886,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":217},"dur":46,"tdur":45,"tts":1193713},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359105022,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1193850,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359105028,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":207},"dur":82,"tdur":81,"tts":1193855},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359105033,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":75,"tdur":74,"tts":1193860},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359105121,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":33,"tdur":32,"tts":1193948},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359105479,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":23,"tdur":21,"tts":1194098},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359106230,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":353,"tdur":208,"tts":1194212},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359106253,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":301,"tdur":155,"tts":1194234},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359106558,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":23,"tdur":21,"tts":1194396},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359106590,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":114,"tdur":114,"tts":1194427},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359106597,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":105,"tdur":105,"tts":1194434},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359106641,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":47,"tdur":45,"tts":1194479},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359107673,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":27122,"tdur":1114,"tts":1194609},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359107679,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":27113,"tdur":1105,"tts":1194614},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359134802,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":924,"tdur":923,"tts":1195731},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359134814,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":910,"tdur":909,"tts":1195743},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359135702,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":81},"dur":19,"tdur":17,"tts":1196632},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359135753,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1196682},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359135761,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":368,"tdur":244,"tts":1196690},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359135767,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":320,"tdur":196,"tts":1196695},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359136091,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":37,"tdur":36,"tts":1196897},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359136136,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1196942},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359136140,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":260,"tdur":136,"tts":1196945},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359136142,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":237,"tdur":112,"tts":1196947},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359136381,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":15,"tts":1197064},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359136415,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":479,"tdur":351,"tts":1197097},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359136421,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":223,"tdur":97,"tts":1197102},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359136647,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":245,"tdur":243,"tts":1197203},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359136701,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":81},"dur":38,"tdur":37,"tts":1197257},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359136814,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1197370,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359136820,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":208},"dur":69,"tdur":68,"tts":1197375},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359136823,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":65,"tdur":64,"tts":1197378},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359136899,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1197455},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359136920,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":446,"tdur":325,"tts":1197476},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359136925,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":433,"tdur":311,"tts":1197481},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359137359,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1197794},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359137368,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":45,"tdur":44,"tts":1197803},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359137371,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":41,"tdur":41,"tts":1197805},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359137385,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":21,"tdur":20,"tts":1197820},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359137419,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14345,"tdur":1241,"tts":1197854},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359137422,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14341,"tdur":1237,"tts":1197857},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359151750,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":26},"dur":11,"tdur":9,"tts":1199083},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359151767,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":11,"tdur":11,"tts":1199098},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359151787,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1179,"tdur":1037,"tts":1199119},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359151791,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":1149,"tdur":1006,"tts":1199122},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359152944,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1200135},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359152972,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1200162},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359152992,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":248,"tdur":248,"tts":1200182},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359152999,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":239,"tdur":239,"tts":1200189},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359153046,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":26},"dur":37,"tdur":36,"tts":1200237},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359153156,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1200347,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359153162,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":209},"dur":74,"tdur":73,"tts":1200352},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359153165,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":69,"tts":1200355},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359153246,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1200436},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359153267,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":597,"tdur":483,"tts":1200457},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359153272,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":565,"tdur":450,"tts":1200462},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359153841,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1200918},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359153870,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":18,"tts":1200947},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359153877,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1200954},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359153905,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":102,"tdur":101,"tts":1200982},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359153910,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":95,"tdur":94,"tts":1200987},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359153949,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":42,"tdur":40,"tts":1201027},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359154011,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15192,"tdur":2044,"tts":1201088},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359154017,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15183,"tdur":2035,"tts":1201094},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359169176,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":187},"dur":20,"tdur":17,"tts":1203108},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359169224,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1203154},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359169232,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":544,"tdur":453,"tts":1203161},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359169238,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":509,"tdur":418,"tts":1203167},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359169749,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":24,"tdur":23,"tts":1203588},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359169794,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1203633},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359169802,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":420,"tdur":287,"tts":1203640},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359169807,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":388,"tdur":255,"tts":1203645},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359170199,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1203906},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359170241,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":550,"tdur":418,"tts":1203947},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359170247,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":304,"tdur":171,"tts":1203953},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359170555,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":234,"tdur":233,"tts":1204130},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359170595,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":187},"dur":37,"tdur":36,"tts":1204170},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359170705,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1204281,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359170712,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":210},"dur":73,"tdur":73,"tts":1204286},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359170715,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":69,"tts":1204289},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359170797,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1204372},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359170821,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":439,"tdur":374,"tts":1204396},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359170826,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":407,"tdur":341,"tts":1204401},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359171237,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":20,"tts":1204748},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359171266,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":74,"tdur":73,"tts":1204777},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359171273,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":66,"tdur":66,"tts":1204784},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359171295,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":38,"tdur":36,"tts":1204807},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359171348,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":13727,"tdur":1573,"tts":1204859},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359171351,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13721,"tdur":1568,"tts":1204862},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359185051,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":192},"dur":18,"tdur":16,"tts":1206410},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359185081,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1206439},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359185105,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":453,"tdur":344,"tts":1206463},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359185111,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":420,"tdur":311,"tts":1206469},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359185536,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1206786},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359185563,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1206814},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359185583,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":277,"tdur":199,"tts":1206833},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359185589,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":244,"tdur":165,"tts":1206839},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359185838,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":20,"tts":1207010},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359185866,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":483,"tdur":403,"tts":1207039},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359185872,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":238,"tdur":156,"tts":1207045},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359186114,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":233,"tdur":232,"tts":1207208},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359186154,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":192},"dur":37,"tdur":36,"tts":1207248},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359186263,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1207357,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359186269,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":211},"dur":75,"tdur":73,"tts":1207363},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359186272,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":69,"tts":1207366},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359186371,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":26,"tdur":24,"tts":1207465},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359186652,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":9,"tdur":7,"tts":1207524},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359187311,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":257,"tdur":199,"tts":1207621},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359187323,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":206,"tdur":148,"tts":1207632},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359187544,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1207797},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359187574,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":94,"tdur":93,"tts":1207827},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359187581,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":86,"tdur":85,"tts":1207834},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359187605,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":54,"tdur":53,"tts":1207858},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359189125,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29610,"tdur":1989,"tts":1208011},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359189139,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29594,"tdur":1972,"tts":1208025},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359218708,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":107},"dur":21,"tdur":18,"tts":1209975},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359218741,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1210006},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359218771,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":389,"tdur":325,"tts":1210036},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359218777,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":361,"tdur":295,"tts":1210043},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219141,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":16,"tts":1210343},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359219165,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1210366},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359219182,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":216,"tdur":216,"tts":1210383},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219188,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":208,"tdur":207,"tts":1210390},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219219,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":107},"dur":36,"tdur":34,"tts":1210421},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359219319,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1210521,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219325,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":212},"dur":68,"tdur":67,"tts":1210527},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219328,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":64,"tdur":63,"tts":1210530},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359219403,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1210605},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359219423,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":320,"tdur":271,"tts":1210625},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219428,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":307,"tdur":257,"tts":1210630},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219736,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1210889},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359219745,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8,"tdur":7,"tts":1210898},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219748,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":4,"tdur":4,"tts":1210900},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359219758,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":39,"tdur":39,"tts":1210910},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219760,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":36,"tdur":36,"tts":1210912},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219768,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":22,"tdur":22,"tts":1210920},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359219799,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1872,"tdur":1351,"tts":1210951},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359219801,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":1869,"tdur":1347,"tts":1210954},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359221661,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":130},"dur":8,"tdur":6,"tts":1212293},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359221679,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1212310},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359221682,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":408,"tdur":313,"tts":1212313},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359221684,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":380,"tdur":284,"tts":1212315},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359222068,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":19,"tts":1212605},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359222108,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1212645},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359222116,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":291,"tdur":191,"tts":1212653},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359222121,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":259,"tdur":157,"tts":1212659},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359222384,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1212823},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359222426,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":478,"tdur":404,"tts":1212864},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359222432,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":223,"tdur":147,"tts":1212870},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359222659,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":243,"tdur":242,"tts":1213023},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359222700,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":130},"dur":37,"tdur":36,"tts":1213064},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359222817,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1213182,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359222823,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":213},"dur":76,"tdur":75,"tts":1213187},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359222826,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":71,"tts":1213190},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359222911,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1213275},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359222934,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":391,"tdur":346,"tts":1213298},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359222940,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":357,"tdur":311,"tts":1213304},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359223301,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1213622},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359223330,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":69,"tdur":69,"tts":1213650},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359223337,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":62,"tdur":61,"tts":1213657},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359223367,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":23,"tdur":22,"tts":1213687},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359223407,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":11857,"tdur":1698,"tts":1213727},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359223410,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11851,"tdur":1692,"tts":1213730},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359235238,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":156},"dur":19,"tdur":17,"tts":1215401},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359235270,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1215432},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359235294,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":387,"tdur":328,"tts":1215456},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359235300,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":366,"tdur":306,"tts":1215462},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359235668,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":12,"tdur":11,"tts":1215771},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359235685,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1215788},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359235697,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":151,"tdur":151,"tts":1215800},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359200433,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":13,"tdur":14,"tts":128675},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359253114,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":6,"tts":128883},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359253615,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":129060},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359254644,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":129294},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359254923,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":129424},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359255101,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":129562},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359255398,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":129680},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359256206,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":129785},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359256432,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":129887},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359256554,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":129952},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359256831,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":130005},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359257612,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":130057},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359257819,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":130106},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359257961,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":130165},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359258243,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":130217},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359259022,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":130267},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359259189,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":130316},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359259325,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":130389},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359337141,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":130578},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359337743,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":130834},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359339449,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":131092},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359339723,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":131246},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359339864,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":131326},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359340150,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":131379},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359341020,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":131498},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359341260,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":131625},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359341414,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":131732},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359341710,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":131821},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359342461,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":131918},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359342636,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":131971},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359342761,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":132028},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359342769,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":132037},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359343047,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":132087},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359343618,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":132136},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359343798,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":132184},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359343947,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":132239},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359344035,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":132292},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359344085,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":132327},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359403289,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":132487},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359403694,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":132554},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359405444,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":132788},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359405968,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":133054},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359406261,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":133295},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359406937,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":133565},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359408770,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":133842},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359409236,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":134108},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359409509,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":134343},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359410717,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":134498},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359412622,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":134721},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359413005,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":134912},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359413190,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":135077},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359413211,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":135097},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359413707,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":135214},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359415608,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":135461},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359416066,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":135750},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359416221,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":135896},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359469860,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":136087},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359471323,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":136329},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359473132,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":136595},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359473431,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":136767},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359473551,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":136865},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359473802,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":136968},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359474571,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":137025},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359474734,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":137082},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359235701,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":146,"tdur":145,"tts":1215804},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359235727,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":156},"dur":21,"tdur":20,"tts":1215830},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359235792,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1215895,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359235796,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":214},"dur":49,"tdur":49,"tts":1215899},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359235798,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":47,"tdur":47,"tts":1215900},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359235852,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1215955},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359235865,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":918,"tdur":814,"tts":1215967},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359235868,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":839,"tdur":734,"tts":1215970},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359236731,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":49,"tdur":48,"tts":1216730},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359236798,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":18,"tts":1216798},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359236806,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1216805},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359236834,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":95,"tdur":94,"tts":1216833},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359236839,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":88,"tdur":87,"tts":1216838},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359236862,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":51,"tdur":50,"tts":1216861},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359236933,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14446,"tdur":1102,"tts":1216932},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359236939,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14437,"tdur":1092,"tts":1216938},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359251400,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":563,"tdur":562,"tts":1218056},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359251412,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":550,"tdur":550,"tts":1218067},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359251949,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":14},"dur":12,"tdur":11,"tts":1218605},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359251965,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":1,"tts":1218621},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359251974,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":489,"tdur":352,"tts":1218629},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359251976,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":461,"tdur":321,"tts":1218632},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359252441,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":19,"tts":1218959},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359252469,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1218988},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359252489,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":233,"tdur":231,"tts":1219008},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359252496,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":224,"tdur":222,"tts":1219015},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359252529,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":14},"dur":36,"tdur":35,"tts":1219048},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359252638,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1219157,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359252644,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":215},"dur":73,"tdur":72,"tts":1219162},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359252647,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":68,"tdur":68,"tts":1219165},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359252727,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":46,"tdur":46,"tts":1219245},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359252790,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":433,"tdur":371,"tts":1219309},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359252796,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":397,"tdur":334,"tts":1219315},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359253198,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":22,"tdur":22,"tts":1219655},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359253229,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1219687},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359253599,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":17,"tdur":16,"tts":1219770},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359253606,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":9,"tts":1219776},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359253617,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":57,"tdur":56,"tts":1219788},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359253620,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":53,"tdur":53,"tts":1219790},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359253644,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":23,"tdur":23,"tts":1219814},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359254600,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":31478,"tdur":1965,"tts":1219929},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359254615,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":31460,"tdur":1948,"tts":1219943},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359286044,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":123},"dur":28,"tdur":25,"tts":1221862},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359286084,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1221901},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359286115,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":486,"tdur":359,"tts":1221931},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359286122,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":452,"tdur":324,"tts":1221938},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359286578,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1222269},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359286606,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1222296},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359286627,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":242,"tdur":242,"tts":1222316},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359286633,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":234,"tdur":233,"tts":1222323},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359286667,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":123},"dur":36,"tdur":35,"tts":1222357},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359286777,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1222468,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359286783,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":216},"dur":81,"tdur":80,"tts":1222473},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359286786,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":77,"tdur":76,"tts":1222476},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359286875,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":5,"tts":1222564},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359286895,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":479,"tdur":388,"tts":1222585},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359286900,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":452,"tdur":361,"tts":1222590},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359287355,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":15,"tts":1222956},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359287378,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":17,"tts":1222979},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359287384,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12,"tdur":11,"tts":1222984},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359287410,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":91,"tdur":91,"tts":1223010},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359287415,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":85,"tdur":84,"tts":1223015},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359287434,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":51,"tdur":49,"tts":1223035},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359287506,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2768,"tdur":1863,"tts":1223106},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359259297,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":73145},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359259319,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":6,"tts":73166},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359337078,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":73245},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359337616,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":51,"tts":73335},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359339308,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":61,"tdur":59,"tts":73446},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359339671,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":22,"tts":73548},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359339835,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":73607},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359339858,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":73630},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359340126,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":73672},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359340961,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":73725},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359341201,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":73782},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359341367,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":19,"tts":73843},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359341389,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":4,"tdur":4,"tts":73864},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359341668,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":73905},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359342408,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":19,"tts":73958},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359342608,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":20,"tts":74012},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359342737,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":16,"tts":74068},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359342756,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":10,"tts":74085},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359343023,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":74129},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359343595,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":16,"tts":74181},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359343770,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":74231},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359343924,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":17,"tts":74276},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359344019,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":9,"tts":74317},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359344066,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":12,"tts":74349},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359403229,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":74424},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359403658,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":28,"tdur":27,"tts":74514},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359405306,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":62,"tdur":58,"tts":74609},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359405836,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":57,"tdur":55,"tts":74733},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359406152,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":40,"tdur":37,"tts":74846},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359406194,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":21,"tts":74887},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359406818,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":40,"tts":74974},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359408635,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":48,"tts":75083},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359409110,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":47,"tts":75199},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359409404,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":75306},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359409457,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":75359},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359410657,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":44,"tdur":42,"tts":75435},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359412528,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":75548},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359412906,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":75658},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359413129,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":46,"tdur":43,"tts":75765},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359413178,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":75812},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359413649,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":44,"tdur":41,"tts":75901},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359415481,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":49,"tts":76009},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359415898,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":76126},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359416160,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":44,"tdur":41,"tts":76237},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359416206,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":12,"tts":76281},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359469806,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":45,"tdur":43,"tts":76366},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359471190,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":51,"tts":76470},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359472997,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":62,"tdur":60,"tts":76583},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359473358,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":76684},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359473486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":17,"tts":76748},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359473504,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":10,"tts":76766},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359473758,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":76814},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359474523,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":76869},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359474702,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":76929},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359474844,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":76989},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359474869,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":4,"tts":77014},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359475113,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":77056},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359475921,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":77115},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359476136,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":17,"tts":77160},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359476324,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":21,"tts":77214},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359476348,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":4,"tdur":5,"tts":77236},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359476605,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":18,"tts":77278},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359477203,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":77333},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359477429,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":77388},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359287512,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2759,"tdur":1854,"tts":1223113},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359290248,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":176},"dur":19,"tdur":16,"tts":1224947},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359290296,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1224993},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359290304,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":370,"tdur":315,"tts":1225000},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359290310,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":342,"tdur":286,"tts":1225007},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359290655,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":15,"tts":1225298},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359290689,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1225331},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359290696,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":231,"tdur":232,"tts":1225337},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359290702,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":223,"tdur":223,"tts":1225344},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359290746,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":176},"dur":37,"tdur":35,"tts":1225389},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359290846,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1225489,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359290852,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":217},"dur":70,"tdur":70,"tts":1225494},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359290855,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":66,"tdur":65,"tts":1225497},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359290947,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1225589},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359290954,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":477,"tdur":361,"tts":1225596},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359290959,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":451,"tdur":333,"tts":1225601},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359291413,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1225939},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359291445,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":18,"tts":1225971},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359291451,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":11,"tts":1225977},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359291466,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":98,"tdur":97,"tts":1225992},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359291470,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":92,"tdur":91,"tts":1225996},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359291505,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":44,"tdur":42,"tts":1226031},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359291578,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":27634,"tdur":2012,"tts":1226105},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359291585,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":27625,"tdur":2003,"tts":1226111},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359319175,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":221},"dur":31,"tdur":27,"tts":1228083},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359319218,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1228124},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359319242,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":601,"tdur":467,"tts":1228147},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359319249,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":568,"tdur":433,"tts":1228154},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359319821,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1228593},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359319849,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1228621},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359319869,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":281,"tdur":263,"tts":1228641},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359319876,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":272,"tdur":255,"tts":1228647},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359319910,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":221},"dur":37,"tdur":35,"tts":1228682},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359320057,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1228813,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359320064,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":218},"dur":80,"tdur":80,"tts":1228819},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359320067,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":76,"tdur":75,"tts":1228822},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359320156,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1228911},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359320178,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":589,"tdur":474,"tts":1228933},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359320183,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":557,"tdur":440,"tts":1228939},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359320745,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":18,"tts":1229386},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359320773,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":18,"tts":1229414},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359320780,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1229421},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359320808,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":98,"tdur":97,"tts":1229449},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359320814,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":90,"tdur":90,"tts":1229454},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359320838,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":52,"tdur":51,"tts":1229479},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359320910,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14353,"tdur":1721,"tts":1229551},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359320917,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14344,"tdur":1712,"tts":1229558},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359335238,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":121},"dur":19,"tdur":17,"tts":1231249},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359335285,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1231295},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359335293,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":837,"tdur":742,"tts":1231303},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359335299,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":805,"tdur":708,"tts":1231309},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359336108,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1232024},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359336148,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1232064},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359336156,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":311,"tdur":256,"tts":1232071},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359336162,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":278,"tdur":222,"tts":1232077},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359336444,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":20,"tts":1232305},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359336486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":347,"tdur":293,"tts":1232347},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359336492,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":140,"tdur":86,"tts":1232353},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359336633,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":198,"tdur":197,"tts":1232441},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359336648,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":121},"dur":31,"tdur":30,"tts":1232456},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359336752,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1232561,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359336759,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":219},"dur":69,"tdur":68,"tts":1232567},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359336762,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":65,"tdur":64,"tts":1232570},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359336839,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":24,"tdur":23,"tts":1232647},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359337104,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":5,"tts":1232708},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359337660,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":188,"tdur":136,"tts":1232739},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359337666,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":170,"tdur":118,"tts":1232745},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359337838,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":9,"tts":1232865},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359337850,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":90,"tdur":89,"tts":1232878},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359337853,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":85,"tdur":85,"tts":1232880},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359337862,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":62,"tdur":61,"tts":1232890},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359339413,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29789,"tdur":2002,"tts":1233098},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359339428,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29771,"tdur":1985,"tts":1233112},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359369176,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":9},"dur":20,"tdur":17,"tts":1235077},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359369207,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1235106},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359369237,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":498,"tdur":370,"tts":1235136},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359369244,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":464,"tdur":336,"tts":1235142},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359369713,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":19,"tts":1235484},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359369741,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1235512},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359369761,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":242,"tdur":240,"tts":1235533},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359369768,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":233,"tdur":231,"tts":1235540},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359369802,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":9},"dur":36,"tdur":35,"tts":1235574},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359369911,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1235683,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359369917,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":220},"dur":81,"tdur":79,"tts":1235689},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359369920,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":77,"tdur":75,"tts":1235692},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359370008,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1235780},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359370029,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":522,"tdur":404,"tts":1235800},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359370034,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":490,"tdur":372,"tts":1235805},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359370528,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1236183},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359370556,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":18,"tts":1236211},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359370563,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1236218},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359370591,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":96,"tdur":95,"tts":1236246},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359370596,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":89,"tdur":88,"tts":1236251},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359370618,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":53,"tdur":52,"tts":1236273},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359370691,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2955,"tdur":1936,"tts":1236346},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359370698,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2946,"tdur":1927,"tts":1236352},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359373607,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":3},"dur":33,"tdur":30,"tts":1238245},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359373667,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1238304},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359373675,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":448,"tdur":326,"tts":1238312},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359373681,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":420,"tdur":297,"tts":1238318},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374104,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":16,"tts":1238620},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359374138,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1238653},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359374144,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":219,"tdur":218,"tts":1238660},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374150,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":211,"tdur":210,"tts":1238666},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374181,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":3},"dur":36,"tdur":35,"tts":1238697},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359374281,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1238798,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374288,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":221},"dur":70,"tdur":70,"tts":1238803},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374291,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":66,"tdur":66,"tts":1238806},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359374381,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1238897},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359374388,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":418,"tdur":351,"tts":1238904},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374393,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":387,"tdur":321,"tts":1238908},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374781,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":23,"tdur":22,"tts":1239231},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359374820,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":20,"tdur":19,"tts":1239270},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374827,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12,"tdur":11,"tts":1239277},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359374843,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":97,"tdur":96,"tts":1239293},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374847,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":91,"tdur":90,"tts":1239297},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374883,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":42,"tdur":40,"tts":1239334},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359374955,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10590,"tdur":1835,"tts":1239406},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359374962,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10580,"tdur":1826,"tts":1239412},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359385504,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":150},"dur":34,"tdur":31,"tts":1241203},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359385551,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1241247},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359385574,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":400,"tdur":287,"tts":1241271},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359385580,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":381,"tdur":268,"tts":1241277},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359385963,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":9,"tdur":9,"tts":1241548},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359385976,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1241561},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359386002,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":225,"tdur":117,"tts":1241587},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359386008,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":206,"tdur":98,"tts":1241593},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359386216,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":9,"tts":1241694},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359386229,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":479,"tdur":376,"tts":1241707},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359386261,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":207,"tdur":104,"tts":1241739},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359386470,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":236,"tdur":236,"tts":1241845},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359386527,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":150},"dur":37,"tdur":35,"tts":1241903},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359386629,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1242005,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359386635,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":222},"dur":68,"tdur":68,"tts":1242010},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359386638,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":64,"tdur":63,"tts":1242013},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359386728,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1242103},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359386735,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":409,"tdur":319,"tts":1242110},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359386740,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":391,"tdur":301,"tts":1242115},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359387133,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1242419},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359387168,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":105,"tdur":104,"tts":1242454},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359387175,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":97,"tdur":96,"tts":1242460},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359387209,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":54,"tdur":53,"tts":1242495},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359387275,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":13648,"tdur":737,"tts":1242561},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359387280,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13640,"tdur":728,"tts":1242565},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359400944,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":864,"tdur":863,"tts":1243320},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359400956,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":850,"tdur":849,"tts":1243332},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359401782,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":204},"dur":20,"tdur":19,"tts":1244159},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359401813,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1244189},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359401833,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":425,"tdur":351,"tts":1244209},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359401839,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":393,"tdur":318,"tts":1244215},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359402236,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":19,"tts":1244539},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359402264,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1244567},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359402283,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":257,"tdur":202,"tts":1244587},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359402289,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":224,"tdur":169,"tts":1244592},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359402517,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1244767},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359402546,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":476,"tdur":423,"tts":1244796},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359402552,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":214,"tdur":160,"tts":1244802},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359402770,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":250,"tdur":249,"tts":1244968},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359402825,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":204},"dur":38,"tdur":36,"tts":1245024},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359402936,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1245135,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359402942,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":223},"dur":74,"tdur":73,"tts":1245140},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359402945,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1245143},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359403044,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":25,"tdur":24,"tts":1245242},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359403280,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1245298},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359403679,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":149,"tdur":122,"tts":1245319},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359403683,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":132,"tdur":106,"tts":1245322},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359403817,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1245431},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359403831,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":63,"tdur":63,"tts":1245444},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359403834,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":59,"tdur":58,"tts":1245448},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359403864,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":22,"tdur":22,"tts":1245477},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359405402,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30469,"tdur":1995,"tts":1245594},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359405417,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30452,"tdur":1980,"tts":1245607},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359435846,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":112},"dur":19,"tdur":17,"tts":1247566},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359435878,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1247596},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359435908,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":509,"tdur":366,"tts":1247626},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359435914,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":477,"tdur":331,"tts":1247633},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359436395,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1247970},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359436423,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1247998},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359436443,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":339,"tdur":213,"tts":1248018},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359436448,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":307,"tdur":179,"tts":1248024},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359436759,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1248209},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359436788,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":560,"tdur":435,"tts":1248238},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359436794,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":297,"tdur":171,"tts":1248244},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359437095,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":250,"tdur":249,"tts":1248421},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359437150,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":112},"dur":38,"tdur":36,"tts":1248477},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359437261,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1248587,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359437267,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":224},"dur":75,"tdur":74,"tts":1248593},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359437270,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":69,"tts":1248596},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359437370,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1248696},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359437378,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":537,"tdur":421,"tts":1248704},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359437383,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":505,"tdur":388,"tts":1248709},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359437892,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1249103},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359437933,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":124,"tdur":123,"tts":1249144},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359437969,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":86,"tdur":85,"tts":1249180},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359437999,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":43,"tdur":41,"tts":1249210},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359438061,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2717,"tdur":1687,"tts":1249272},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359438068,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2708,"tdur":1678,"tts":1249279},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359440755,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":18},"dur":19,"tdur":17,"tts":1250937},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359440793,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1250974},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359440800,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":440,"tdur":303,"tts":1250980},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359440804,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":420,"tdur":282,"tts":1250985},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359441226,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":12,"tdur":11,"tts":1251270},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359441250,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1251294},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359441255,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":156,"tdur":155,"tts":1251299},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359441259,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":151,"tdur":150,"tts":1251303},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359441282,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":18},"dur":25,"tdur":24,"tts":1251326},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359441353,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1251397,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359441358,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":225},"dur":50,"tdur":50,"tts":1251401},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359441360,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":47,"tdur":46,"tts":1251404},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359441424,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1251468},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359441429,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":487,"tdur":368,"tts":1251473},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359441433,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":467,"tdur":348,"tts":1251477},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359441903,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":11,"tts":1251829},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359441925,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14,"tdur":12,"tts":1251852},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359441930,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":7,"tts":1251856},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359441941,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":62,"tdur":62,"tts":1251867},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359441944,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":58,"tdur":57,"tts":1251870},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359441959,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":33,"tdur":33,"tts":1251885},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359442013,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9721,"tdur":1418,"tts":1251939},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359442018,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9714,"tdur":1411,"tts":1251944},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359451716,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":6},"dur":14,"tdur":12,"tts":1253340},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359451738,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1253361},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359451755,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":401,"tdur":320,"tts":1253378},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359451760,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":378,"tdur":295,"tts":1253383},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359452141,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":14,"tdur":13,"tts":1253683},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359452160,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1253702},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359452175,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":214,"tdur":171,"tts":1253716},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359452179,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":191,"tdur":147,"tts":1253720},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359452373,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14,"tdur":14,"tts":1253871},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359452394,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":351,"tdur":308,"tts":1253892},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359452398,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":176,"tdur":133,"tts":1253896},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359452577,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":166,"tdur":165,"tts":1254034},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359452606,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":6},"dur":26,"tdur":25,"tts":1254063},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359452684,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1254140,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359452688,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":226},"dur":53,"tdur":52,"tts":1254144},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359452690,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":50,"tdur":49,"tts":1254146},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359452760,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1254216},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359452766,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":399,"tdur":344,"tts":1254222},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359452769,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":377,"tdur":321,"tts":1254225},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359453148,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15,"tdur":14,"tts":1254550},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359453177,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":74,"tdur":72,"tts":1254579},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359453183,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":67,"tdur":66,"tts":1254584},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359453215,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":28,"tdur":27,"tts":1254616},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359453266,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14944,"tdur":1270,"tts":1254667},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359453271,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14937,"tdur":1262,"tts":1254672},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359468186,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":6},"dur":18,"tdur":15,"tts":1255915},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359468232,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1255959},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359468240,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":443,"tdur":348,"tts":1255967},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359468246,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":410,"tdur":314,"tts":1255974},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359468660,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1256294},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359468701,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1256334},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359468708,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":300,"tdur":199,"tts":1256341},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359468713,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":268,"tdur":165,"tts":1256347},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359468985,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1256518},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359469026,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":528,"tdur":425,"tts":1256559},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359469033,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":252,"tdur":148,"tts":1256566},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359469289,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":263,"tdur":261,"tts":1256720},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359469358,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":6},"dur":37,"tdur":36,"tts":1256789},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359469468,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1256899,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359469474,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":227},"dur":74,"tdur":74,"tts":1256904},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359469477,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":70,"tts":1256907},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359469561,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":24,"tdur":23,"tts":1256991},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359469891,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1257095},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359471291,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":259,"tdur":201,"tts":1257187},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359471303,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":220,"tdur":162,"tts":1257198},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359471527,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1257366},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359471557,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":105,"tdur":104,"tts":1257396},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359471564,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":96,"tdur":95,"tts":1257403},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359471598,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":48,"tdur":47,"tts":1257437},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359473102,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29489,"tdur":2100,"tts":1257611},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359473117,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29471,"tdur":2085,"tts":1257624},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359502560,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":76},"dur":25,"tdur":23,"tts":1259682},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359502597,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1259718},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359502627,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":386,"tdur":250,"tts":1259748},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359502633,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":354,"tdur":217,"tts":1259754},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359502992,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1259978},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359503019,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1260005},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359503039,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":351,"tdur":220,"tts":1260025},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359503045,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":318,"tdur":186,"tts":1260031},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359503368,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1260223},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359503396,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":551,"tdur":419,"tts":1260251},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359503402,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":304,"tdur":172,"tts":1260257},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359503711,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":233,"tdur":233,"tts":1260435},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359503751,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":76},"dur":37,"tdur":35,"tts":1260476},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359503861,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1260586,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359503867,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":228},"dur":74,"tdur":73,"tts":1260592},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359503870,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":68,"tts":1260595},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359503968,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1260693},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359503977,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1631,"tdur":1459,"tts":1260702},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359503982,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":1598,"tdur":1426,"tts":1260706},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359505584,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1262138},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359505626,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":103,"tdur":103,"tts":1262179},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359505633,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":95,"tdur":93,"tts":1262187},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359505656,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":52,"tdur":51,"tts":1262209},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359505734,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":13192,"tdur":1835,"tts":1262288},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359505740,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13184,"tdur":1827,"tts":1262294},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359518901,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":56},"dur":19,"tdur":17,"tts":1264100},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359518948,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1264146},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359518956,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":615,"tdur":516,"tts":1264154},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359518962,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":582,"tdur":483,"tts":1264160},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359519549,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1264649},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359519588,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1264688},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359519597,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":232,"tdur":232,"tts":1264696},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359519603,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":224,"tdur":223,"tts":1264703},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359519636,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":56},"dur":35,"tdur":34,"tts":1264736},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359519744,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1264844,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359519750,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":229},"dur":74,"tdur":73,"tts":1264850},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359519753,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1264853},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359519847,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1264947},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359519855,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":568,"tdur":452,"tts":1264955},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359519860,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":536,"tdur":419,"tts":1264960},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359520400,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1265385},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359520442,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30,"tdur":30,"tts":1265427},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359520449,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":22,"tdur":10,"tts":1265434},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359520474,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":60,"tdur":59,"tts":1265459},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359520477,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":56,"tdur":55,"tts":1265462},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359520491,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":34,"tdur":33,"tts":1265476},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359520543,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14854,"tdur":1620,"tts":1265528},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359520548,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14847,"tdur":1612,"tts":1265533},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359535372,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":176},"dur":19,"tdur":16,"tts":1267126},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359474875,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":11,"tts":137144},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359475139,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":137209},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359475951,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":137262},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359476197,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":137358},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359476397,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":137509},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359476649,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":2,"tts":137594},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359477247,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":137670},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359477460,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":137742},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359477649,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":137794},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359477785,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":137856},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359553625,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":138078},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359553995,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":138233},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359554998,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":138452},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359555171,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":138546},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359555245,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":138610},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359555257,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":138621},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359555594,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":138747},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359556416,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":138882},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359556609,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":139009},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359556731,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":139103},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359556913,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":139164},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359557715,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":139241},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359557828,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":139295},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359557886,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":139349},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359557895,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":139358},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359558133,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":139426},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359559012,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":139500},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359559101,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":139561},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359559186,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":139625},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359620394,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":139792},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359621011,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":140059},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359622829,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":140319},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359623302,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":140587},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359623554,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":7,"tts":140795},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359624321,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":141049},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359626135,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":141311},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359626617,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":141590},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359626895,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":141807},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359627491,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":141981},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359629259,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":142125},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359629646,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":142295},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359629933,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":7,"tts":142480},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359630563,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":142655},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359631983,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":142820},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359632328,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":142989},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359632526,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":143085},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359632734,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":143172},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359670834,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":10,"tdur":9,"tts":143375},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359671241,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":143516},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359672216,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":143657},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359672733,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":10,"tdur":8,"tts":143918},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359673025,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":144145},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359674394,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":144325},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359676404,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":10,"tts":144633},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359676760,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":144847},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359677030,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":145039},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359677069,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":145077},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359677558,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":145237},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359679347,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":5,"tts":145385},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359679565,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":145477},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359679619,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":145531},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359679691,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":145603},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359680810,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":145775},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359681788,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":146005},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359477607,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":35,"tdur":33,"tts":77449},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359477759,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":77520},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359477779,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":5,"tts":77539},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359553494,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":58,"tdur":56,"tts":77611},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359553923,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":77710},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359554858,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":62,"tdur":59,"tts":77797},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359555144,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":77868},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359555224,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":13,"tts":77894},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359555249,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":8,"tdur":8,"tts":77915},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359555539,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":77960},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359556348,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":78014},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359556550,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":22,"tts":78073},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359556661,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":78133},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359556684,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":78155},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359556894,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":78184},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359557670,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":78218},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359557805,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":15,"tts":78255},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359557867,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":10,"tts":78292},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359557880,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":9,"tdur":9,"tts":78304},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359558096,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":11,"tts":78336},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359558969,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":13,"tts":78371},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359559077,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":16,"tts":78407},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359559171,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":9,"tdur":9,"tts":78446},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359559181,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":78456},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359620261,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":60,"tdur":57,"tts":78525},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359620894,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":54,"tdur":52,"tts":78644},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359622689,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":68,"tdur":65,"tts":78765},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359623170,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":54,"tdur":51,"tts":78903},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359623478,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":79017},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359623523,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":79060},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359624206,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":40,"tts":79150},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359626006,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":79256},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359626490,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":49,"tts":79369},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359626800,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":79487},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359626854,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":79539},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359627408,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":79614},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359629191,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":79720},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359629547,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":55,"tdur":52,"tts":79831},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359629859,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":40,"tdur":38,"tts":79945},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359629901,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":79986},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359630504,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":44,"tdur":41,"tts":80067},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359631911,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":40,"tdur":37,"tts":80171},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359632260,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":49,"tts":80281},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359632496,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":80369},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359632687,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":80430},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359632719,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":16,"tts":80462},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359670755,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":61,"tdur":59,"tts":80557},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359671187,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":80656},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359672069,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":71,"tdur":69,"tts":80739},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359672579,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":72,"tdur":69,"tts":80869},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359672934,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":51,"tts":81023},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359672990,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":81078},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359674321,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":58,"tdur":55,"tts":81161},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359676276,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":51,"tts":81306},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359676695,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":48,"tdur":45,"tts":81399},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359676961,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":50,"tts":81465},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359677030,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":81529},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359677523,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":81556},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359679287,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":49,"tdur":48,"tts":81591},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359679542,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":81649},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359679609,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":11,"tts":81675},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359679645,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":39,"tdur":38,"tts":81694},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359680749,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":81772},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359681655,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":81859},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359535403,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":12,"tdur":11,"tts":1267155},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359535434,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":493,"tdur":389,"tts":1267186},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359535441,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":472,"tdur":367,"tts":1267193},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359535915,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":10,"tts":1267563},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359535930,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1267578},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359535940,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":218,"tdur":210,"tts":1267588},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359535944,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":212,"tdur":204,"tts":1267592},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359535966,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":176},"dur":19,"tdur":19,"tts":1267614},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359536068,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1267709,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359536075,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":230},"dur":78,"tdur":78,"tts":1267715},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359536078,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":74,"tdur":73,"tts":1267718},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359536164,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1267804},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359536186,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":599,"tdur":480,"tts":1267826},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359536191,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":566,"tdur":447,"tts":1267831},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359536762,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":20,"tts":1268284},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359536791,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":20,"tdur":18,"tts":1268314},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359536798,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1268321},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359536826,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":99,"tdur":98,"tts":1268349},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359536831,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":93,"tdur":91,"tts":1268354},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359536854,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":56,"tdur":55,"tts":1268376},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359536930,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14527,"tdur":888,"tts":1268452},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359536936,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14518,"tdur":876,"tts":1268459},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359551478,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":888,"tdur":872,"tts":1269361},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359551508,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":855,"tdur":839,"tts":1269391},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359552334,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":50},"dur":26,"tdur":25,"tts":1270202},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359552371,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1270239},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359552392,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":607,"tdur":500,"tts":1270259},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359552398,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":573,"tdur":466,"tts":1270265},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359552973,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":24,"tdur":23,"tts":1270734},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359553006,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1270767},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359553026,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":234,"tdur":234,"tts":1270787},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359553033,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":225,"tdur":224,"tts":1270794},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359553066,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":50},"dur":36,"tdur":35,"tts":1270827},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359553175,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1270936,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359553181,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":231},"dur":74,"tdur":73,"tts":1270942},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359553184,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1270945},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359553266,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":23,"tdur":22,"tts":1271027},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359553305,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":479,"tdur":416,"tts":1271066},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359553311,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":460,"tdur":397,"tts":1271071},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359553773,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1271471},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359553787,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1271485},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359553953,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":17,"tdur":16,"tts":1271520},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359553960,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":9,"tts":1271526},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359553972,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":49,"tdur":48,"tts":1271538},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359553974,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":46,"tdur":45,"tts":1271540},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359553985,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":28,"tdur":27,"tts":1271551},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359554959,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30983,"tdur":1984,"tts":1271676},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359554984,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30955,"tdur":1956,"tts":1271701},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359585916,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":76},"dur":20,"tdur":17,"tts":1273637},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359585948,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1273667},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359585978,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":511,"tdur":378,"tts":1273697},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359585985,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":478,"tdur":344,"tts":1273704},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359586467,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":19,"tts":1274054},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359586495,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1274082},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359586515,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":239,"tdur":239,"tts":1274102},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359586521,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":231,"tdur":230,"tts":1274108},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359586553,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":76},"dur":37,"tdur":35,"tts":1274141},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359586662,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1274250,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359586668,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":232},"dur":81,"tdur":81,"tts":1274255},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359586671,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":77,"tdur":76,"tts":1274258},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359586760,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1274347},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359586780,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":541,"tdur":420,"tts":1274368},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359586786,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":508,"tdur":387,"tts":1274373},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359587299,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1274766},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359587327,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":45,"tdur":45,"tts":1274794},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359587358,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13,"tdur":11,"tts":1274826},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359587390,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":97,"tdur":96,"tts":1274857},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359587395,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":90,"tdur":90,"tts":1274862},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359587427,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":45,"tdur":43,"tts":1274895},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359587491,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":3092,"tdur":1895,"tts":1274959},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359587498,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":3083,"tdur":1886,"tts":1274965},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359590557,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":166},"dur":20,"tdur":17,"tts":1276830},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359590605,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1276877},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359590613,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":461,"tdur":334,"tts":1276885},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359590619,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":433,"tdur":305,"tts":1276891},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359591056,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":16,"tts":1277201},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359591089,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1277235},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359591097,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":219,"tdur":219,"tts":1277242},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359591102,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":212,"tdur":211,"tts":1277248},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359591133,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":166},"dur":36,"tdur":35,"tts":1277279},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359591234,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1277380,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359591240,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":233},"dur":71,"tdur":70,"tts":1277386},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359591243,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":67,"tdur":65,"tts":1277389},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359591335,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1277480},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359591342,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":574,"tdur":424,"tts":1277488},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359591347,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":542,"tdur":392,"tts":1277492},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359591893,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1277891},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359591934,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":20,"tdur":20,"tts":1277931},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359591941,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12,"tdur":11,"tts":1277938},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359591957,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":137,"tdur":117,"tts":1277954},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359591962,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":130,"tdur":110,"tts":1277959},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359591985,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":92,"tdur":71,"tts":1277983},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359592110,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9949,"tdur":1689,"tts":1278089},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359592119,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9938,"tdur":1679,"tts":1278097},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359602026,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":65},"dur":27,"tdur":25,"tts":1279747},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359602065,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1279785},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359602089,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":358,"tdur":283,"tts":1279809},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359602095,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":326,"tdur":262,"tts":1279815},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359602423,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":9,"tts":1280081},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359602452,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1280110},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359602470,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":169,"tdur":117,"tts":1280127},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359602475,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":151,"tdur":98,"tts":1280132},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359602628,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1280233},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359602656,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":355,"tdur":303,"tts":1280261},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359602661,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":131,"tdur":78,"tts":1280267},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359602794,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":215,"tdur":214,"tts":1280348},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359602831,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":65},"dur":37,"tdur":35,"tts":1280385},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359602932,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1280486,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359602938,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":234},"dur":69,"tdur":67,"tts":1280492},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359602941,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":64,"tdur":63,"tts":1280495},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359603031,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1280584},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359603038,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":347,"tdur":283,"tts":1280592},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359603043,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":329,"tdur":266,"tts":1280596},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359603374,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1280864},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359603409,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":109,"tdur":108,"tts":1280900},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359603416,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":101,"tdur":101,"tts":1280906},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359603438,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":56,"tdur":55,"tts":1280929},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359603521,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15483,"tdur":1844,"tts":1281011},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359603525,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15476,"tdur":1836,"tts":1281016},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359618978,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":106},"dur":20,"tdur":17,"tts":1282832},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359619025,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1282877},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359619033,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":385,"tdur":311,"tts":1282885},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359619039,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":357,"tdur":283,"tts":1282891},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359619399,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":15,"tts":1283179},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359619432,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1283211},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359619439,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":215,"tdur":155,"tts":1283218},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359619444,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":189,"tdur":129,"tts":1283223},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359619636,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1283356},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359619668,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":405,"tdur":330,"tts":1283388},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359619679,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":153,"tdur":94,"tts":1283399},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359619834,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":238,"tdur":220,"tts":1283497},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359619869,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":106},"dur":37,"tdur":35,"tts":1283532},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359619970,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1283633,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359619976,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":235},"dur":95,"tdur":77,"tts":1283638},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359619979,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":91,"tdur":73,"tts":1283641},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359620076,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":11,"tdur":11,"tts":1283721},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359620321,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1283782},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359620937,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":265,"tdur":137,"tts":1283822},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359620943,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":237,"tdur":108,"tts":1283829},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359621183,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":16,"tts":1283941},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359621206,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":92,"tdur":92,"tts":1283964},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359621212,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":84,"tdur":83,"tts":1283971},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359621234,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":49,"tdur":48,"tts":1283992},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359622737,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29987,"tdur":2014,"tts":1284103},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359622746,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29975,"tdur":2002,"tts":1284112},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359652698,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":184},"dur":19,"tdur":16,"tts":1286094},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359652730,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1286124},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359652760,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":376,"tdur":246,"tts":1286154},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359652766,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":344,"tdur":213,"tts":1286160},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359653114,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1286380},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359653142,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1286407},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359653162,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":287,"tdur":159,"tts":1286427},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359653168,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":260,"tdur":131,"tts":1286433},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359653431,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1286568},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359653454,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":459,"tdur":323,"tts":1286591},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359653458,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":230,"tdur":92,"tts":1286596},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359653691,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":221,"tdur":220,"tts":1286692},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359653726,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":184},"dur":37,"tdur":36,"tts":1286727},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359653835,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1286837,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359653841,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":236},"dur":68,"tdur":67,"tts":1286842},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359653844,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":64,"tdur":63,"tts":1286845},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359653933,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1286934},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359653941,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":472,"tdur":342,"tts":1286942},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359653945,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":447,"tdur":316,"tts":1286946},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359654395,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":16,"tts":1287266},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359654426,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":101,"tdur":100,"tts":1287298},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359654432,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":94,"tdur":92,"tts":1287304},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359654470,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":42,"tdur":40,"tts":1287342},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359654532,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2285,"tdur":1247,"tts":1287403},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359654538,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2277,"tdur":1238,"tts":1287410},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359656801,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":182},"dur":12,"tdur":11,"tts":1288635},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359656830,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1288664},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359656836,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":408,"tdur":275,"tts":1288669},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359656839,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":388,"tdur":254,"tts":1288673},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359657230,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":12,"tdur":12,"tts":1288931},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359657255,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1288956},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359657260,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":159,"tdur":159,"tts":1288961},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359657264,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":154,"tdur":153,"tts":1288965},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359657294,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":182},"dur":24,"tdur":23,"tts":1288995},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359657364,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1289066,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359657368,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":237},"dur":48,"tdur":47,"tts":1289069},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359657370,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":45,"tdur":45,"tts":1289071},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359657431,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1289132},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359657436,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":526,"tdur":384,"tts":1289137},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359657439,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":506,"tdur":364,"tts":1289140},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359657948,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12,"tdur":12,"tts":1289507},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359657973,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":13,"tdur":12,"tts":1289533},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359657978,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1289538},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359657987,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":69,"tdur":68,"tts":1289547},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359657990,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":65,"tdur":64,"tts":1289550},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359658016,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":30,"tdur":29,"tts":1289576},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359658065,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2883,"tdur":1840,"tts":1289625},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359658070,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2875,"tdur":1833,"tts":1289629},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359660924,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":7},"dur":18,"tdur":16,"tts":1291443},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359660954,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1291472},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359660978,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":491,"tdur":347,"tts":1291496},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359660984,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":458,"tdur":313,"tts":1291502},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359661446,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1291822},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359661475,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1291850},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359661495,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":343,"tdur":215,"tts":1291870},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359661501,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":311,"tdur":182,"tts":1291876},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359661816,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":19,"tdur":19,"tts":1292064},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359661843,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":557,"tdur":428,"tts":1292091},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359661850,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":291,"tdur":163,"tts":1292097},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359662145,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":253,"tdur":252,"tts":1292265},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359662184,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":7},"dur":54,"tdur":53,"tts":1292304},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359662314,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1292435,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359662321,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":238},"dur":74,"tdur":74,"tts":1292440},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359662324,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1292444},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359662422,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1292542},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359662430,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":480,"tdur":341,"tts":1292550},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359662435,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":445,"tdur":306,"tts":1292555},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359662884,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":23,"tdur":21,"tts":1292867},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359662930,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":103,"tdur":101,"tts":1292913},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359662940,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":91,"tdur":89,"tts":1292923},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359662968,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":49,"tdur":48,"tts":1292950},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359663038,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":5121,"tdur":812,"tts":1293020},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359663045,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":5111,"tdur":800,"tts":1293027},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359668179,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":828,"tdur":827,"tts":1293853},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359668190,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":815,"tdur":814,"tts":1293864},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359668981,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":189},"dur":21,"tdur":19,"tts":1294656},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359669012,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1294686},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359669031,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":500,"tdur":355,"tts":1294705},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359669037,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":471,"tdur":325,"tts":1294710},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359669512,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":16,"tts":1295041},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359669537,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1295065},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359669555,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":357,"tdur":211,"tts":1295084},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359669560,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":328,"tdur":180,"tts":1295089},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359669891,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":19,"tdur":17,"tts":1295275},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359669918,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":564,"tdur":417,"tts":1295301},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359669923,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":317,"tdur":169,"tts":1295307},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359670244,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":235,"tdur":235,"tts":1295481},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359670295,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":189},"dur":35,"tdur":34,"tts":1295532},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359670396,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1295634,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359670402,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":239},"dur":75,"tdur":74,"tts":1295639},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359670405,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1295642},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359670502,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":24,"tdur":23,"tts":1295739},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359670883,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":6,"tts":1295871},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359671239,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":150,"tdur":115,"tts":1295934},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359671245,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":132,"tdur":98,"tts":1295939},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359671379,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1296040},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359671392,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":48,"tdur":48,"tts":1296052},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359671395,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":44,"tdur":44,"tts":1296055},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359671413,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":20,"tdur":20,"tts":1296073},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359672179,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29726,"tdur":1394,"tts":1296202},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359672208,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29695,"tdur":1365,"tts":1296229},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359701873,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":142},"dur":28,"tdur":26,"tts":1297565},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359701909,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1297600},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359701928,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":296,"tdur":207,"tts":1297619},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359701932,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":275,"tdur":186,"tts":1297623},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359702210,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":12,"tdur":12,"tts":1297813},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359702227,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1297831},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359702240,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":206,"tdur":86,"tts":1297844},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359702244,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":194,"tdur":74,"tts":1297847},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359702439,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":6,"tts":1297923},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359702448,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":340,"tdur":218,"tts":1297932},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359682060,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":71,"tdur":68,"tts":82001},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359682320,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":51,"tts":82112},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359682374,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":10,"tts":82166},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359751593,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":32,"tdur":30,"tts":82218},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359752209,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":82291},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359753958,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":27,"tts":82351},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359754211,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":22,"tts":82412},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359754342,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":82472},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359754364,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":10,"tts":82493},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359754685,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":82540},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359756137,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":82595},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359756350,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":20,"tts":82652},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359756483,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":16,"tts":82710},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359756500,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":9,"tts":82728},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359756821,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":16,"tts":82776},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359758052,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":15,"tts":82831},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359758167,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":82882},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359758370,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":20,"tts":82941},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359758486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":22,"tts":82998},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359758509,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":5,"tts":83021},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359758742,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":83060},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359760109,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":83113},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359760292,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":22,"tts":83174},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359760406,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":15,"tts":83234},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359760424,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":5,"tts":83251},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359831002,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":74,"tdur":72,"tts":83293},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359831932,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":107,"tdur":81,"tts":83438},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359834089,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":73,"tdur":71,"tts":83594},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359834631,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":83718},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359834896,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":35,"tdur":32,"tts":83831},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359834933,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":37,"tdur":36,"tts":83866},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359835583,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":55,"tdur":52,"tts":83963},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359836790,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":58,"tdur":56,"tts":84077},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359837134,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":59,"tdur":57,"tts":84196},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359837381,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":19,"tts":84296},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359837402,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":10,"tts":84317},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359837769,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":19,"tts":84367},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359838650,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":58,"tdur":57,"tts":84426},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359838955,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":41,"tts":84515},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359839201,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":18,"tts":84584},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359839220,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":6,"tts":84603},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359839547,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":8,"tdur":7,"tts":84616},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359840407,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":34,"tdur":33,"tts":84630},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359840738,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":64,"tdur":63,"tts":84703},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359841035,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":84794},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359841053,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":84811},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359903033,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":84886},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359903434,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":84966},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359904718,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":57,"tdur":54,"tts":85042},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359905053,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":85133},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359905215,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":85198},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359905240,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":85222},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359905534,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":18,"tts":85266},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359906323,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":85324},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359906537,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":22,"tts":85384},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359906668,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":17,"tts":85442},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359906686,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":13,"tts":85460},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359906945,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":85511},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359907567,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":85571},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359907756,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":22,"tts":85626},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359907967,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":85686},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359908137,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":85745},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359908162,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":85769},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359908419,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":18,"tts":85813},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359682214,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":21,"tdur":19,"tts":146235},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359682446,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":10,"tts":146420},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359751668,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":146604},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359752273,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":146745},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359753994,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":146843},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359754248,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":146904},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359754369,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":146993},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359754378,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":147002},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359754710,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":147071},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359756196,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":147191},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359756411,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":147318},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359756536,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":147421},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359756876,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":147549},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359758108,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":147677},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359758226,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":147760},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359758431,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":147860},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359758516,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":147916},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359758766,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":147968},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359760140,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":148018},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359760353,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":148103},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359760446,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":2,"tts":148173},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359831149,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":148355},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359832045,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":148526},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359834258,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":148790},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359834752,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":8,"tts":149019},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359835027,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":10,"tdur":8,"tts":149249},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359835715,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":8,"tts":149519},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359836923,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":149740},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359837282,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":10,"tdur":8,"tts":149966},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359837432,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":150100},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359837817,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":150234},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359838760,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":150361},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359839063,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":150521},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359839228,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":150617},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359839555,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":150680},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359840447,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":150755},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359840819,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":150866},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359841074,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":150994},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359903115,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":151208},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359903502,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":151351},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359904849,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":10,"tdur":8,"tts":151607},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359905119,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":151760},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359905287,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":151882},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359905597,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":152021},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359906386,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":152152},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359906568,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":152216},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359906692,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":152278},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359906703,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":152288},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359906970,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":152340},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359907592,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":152397},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359907819,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":152482},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359908029,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":152614},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359908168,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":152710},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359908445,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":152766},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359909238,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":152818},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359909420,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":2,"tts":152896},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359909498,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":152964},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359909525,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":152991},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359969696,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":153144},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359970803,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":153276},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359972147,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":153506},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359972709,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":153783},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359972965,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":153978},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359973683,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":154238},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359702450,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":194,"tdur":71,"tts":1297934},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359702645,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":142,"tdur":142,"tts":1298007},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359702660,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":142},"dur":31,"tdur":30,"tts":1298022},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359702737,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1298100,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359702741,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":240},"dur":44,"tdur":44,"tts":1298103},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359702743,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":42,"tdur":41,"tts":1298105},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359702801,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1298163},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359702806,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":457,"tdur":338,"tts":1298168},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359702809,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":441,"tdur":322,"tts":1298171},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359703252,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1298495},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359703272,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":59,"tdur":58,"tts":1298516},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359703276,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":54,"tdur":54,"tts":1298519},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359703289,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":32,"tdur":31,"tts":1298533},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359703334,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14353,"tdur":740,"tts":1298578},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359703338,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14348,"tdur":735,"tts":1298582},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359717675,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":36},"dur":9,"tdur":8,"tts":1299307},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359717697,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1299329},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359717701,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":413,"tdur":342,"tts":1299332},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359717704,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":400,"tdur":329,"tts":1299335},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718106,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":7,"tdur":7,"tts":1299666},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359718120,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1299680},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359718123,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":98,"tdur":98,"tts":1299683},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718125,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":95,"tdur":94,"tts":1299686},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718140,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":36},"dur":16,"tdur":15,"tts":1299701},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359718185,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1299745,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718187,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":241},"dur":32,"tdur":31,"tts":1299748},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718189,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":30,"tdur":30,"tts":1299749},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359718229,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1299789},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359718232,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":409,"tdur":348,"tts":1299793},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718234,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":398,"tdur":338,"tts":1299794},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718633,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1300134},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359718647,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9,"tdur":9,"tts":1300147},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718649,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":6,"tts":1300150},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359718657,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":43,"tdur":43,"tts":1300157},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718659,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":40,"tdur":40,"tts":1300159},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718674,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":19,"tdur":18,"tts":1300175},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359718706,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15745,"tdur":757,"tts":1300207},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359718709,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15741,"tdur":754,"tts":1300209},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359734439,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":88},"dur":10,"tdur":8,"tts":1300953},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359734454,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1300967},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359734464,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":363,"tdur":295,"tts":1300977},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359734467,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":351,"tdur":283,"tts":1300979},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359734819,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":7,"tdur":7,"tts":1301264},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359734829,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":1,"tts":1301274},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359734836,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":195,"tdur":128,"tts":1301281},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359734838,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":185,"tdur":117,"tts":1301283},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735024,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1301402},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359735033,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":210,"tdur":144,"tts":1301411},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735035,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":113,"tdur":48,"tts":1301413},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735149,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":93,"tdur":93,"tts":1301462},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735165,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":88},"dur":15,"tdur":15,"tts":1301478},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359735209,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1301522,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735211,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":242},"dur":30,"tdur":29,"tts":1301524},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735212,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":28,"tdur":28,"tts":1301525},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359735250,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1301563},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359735253,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":313,"tdur":261,"tts":1301566},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735255,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":303,"tdur":250,"tts":1301568},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735559,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1301820},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359735572,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":40,"tdur":39,"tts":1301833},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735574,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":37,"tdur":37,"tts":1301835},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735582,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":23,"tdur":22,"tts":1301843},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359735614,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15342,"tdur":714,"tts":1301875},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359735616,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15339,"tdur":711,"tts":1301877},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359750945,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":166},"dur":9,"tdur":8,"tts":1302579},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359750964,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":7,"tts":1302597},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359750972,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":352,"tdur":323,"tts":1302605},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359750975,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":340,"tdur":310,"tts":1302608},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359751316,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":7,"tdur":7,"tts":1302920},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359751330,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1302934},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359751333,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":90,"tdur":90,"tts":1302937},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359751335,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":88,"tdur":88,"tts":1302939},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359751349,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":166},"dur":15,"tdur":14,"tts":1302953},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359751390,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1302994,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359751392,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":243},"dur":29,"tdur":28,"tts":1302997},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359751394,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":27,"tdur":27,"tts":1302998},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359751431,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":18,"tdur":18,"tts":1303035},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359751450,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":364,"tdur":312,"tts":1303055},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359751453,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":352,"tdur":302,"tts":1303057},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359751807,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":7,"tts":1303360},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359751822,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1303376},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359752230,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9,"tdur":8,"tts":1303395},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359752233,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":5,"tts":1303398},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359752240,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":36,"tdur":35,"tts":1303405},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359752242,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":33,"tdur":32,"tts":1303407},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359752250,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":20,"tdur":19,"tts":1303414},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359753977,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":31809,"tdur":1692,"tts":1303459},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359753980,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":31803,"tdur":1686,"tts":1303462},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359785756,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":66},"dur":23,"tdur":19,"tts":1305125},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359785794,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1305159},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359785819,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":447,"tdur":333,"tts":1305184},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359785825,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":418,"tdur":302,"tts":1305191},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359786247,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":18,"tdur":16,"tts":1305499},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359786271,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1305522},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359786284,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":276,"tdur":176,"tts":1305536},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359786288,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":252,"tdur":151,"tts":1305540},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359786543,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15,"tdur":15,"tts":1305695},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359786565,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":448,"tdur":348,"tts":1305717},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359786569,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":226,"tdur":127,"tts":1305721},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359786798,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":213,"tdur":212,"tts":1305852},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359786836,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":66},"dur":31,"tdur":31,"tts":1305889},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359786933,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1305987,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359786937,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":244},"dur":72,"tdur":70,"tts":1305991},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359786940,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":68,"tdur":67,"tts":1305993},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359787028,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1306082},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359787034,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":723,"tdur":606,"tts":1306088},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359787038,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":698,"tdur":582,"tts":1306091},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359787739,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1306677},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359787769,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":96,"tdur":95,"tts":1306707},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359787775,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":89,"tdur":89,"tts":1306712},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359787794,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":58,"tdur":58,"tts":1306731},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359787869,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2460,"tdur":1702,"tts":1306806},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359787873,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2455,"tdur":1696,"tts":1306811},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359790294,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":14},"dur":32,"tdur":29,"tts":1308476},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359790338,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1308517},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359790342,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":623,"tdur":498,"tts":1308521},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359790344,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":599,"tdur":472,"tts":1308524},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359790946,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":16,"tts":1309001},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359790980,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1309034},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359790987,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":275,"tdur":141,"tts":1309041},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359790992,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":249,"tdur":114,"tts":1309046},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359791244,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1309165},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359791275,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":450,"tdur":313,"tts":1309196},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359791280,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":228,"tdur":91,"tts":1309201},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359791511,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":212,"tdur":211,"tts":1309296},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359791545,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":14},"dur":36,"tdur":34,"tts":1309331},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359791645,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1309431,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359791651,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":245},"dur":69,"tdur":68,"tts":1309436},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359791654,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":65,"tdur":64,"tts":1309439},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359791731,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":28,"tdur":27,"tts":1309516},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359791775,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":354,"tdur":278,"tts":1309560},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359791780,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":340,"tdur":264,"tts":1309565},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359792121,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":7,"tts":1309831},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359792131,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":60,"tdur":59,"tts":1309841},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359792133,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":57,"tdur":56,"tts":1309843},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359792150,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":32,"tdur":31,"tts":1309860},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359792200,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9871,"tdur":685,"tts":1309910},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359792204,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9865,"tdur":678,"tts":1309914},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359802074,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":565,"tdur":564,"tts":1310599},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359802080,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":558,"tdur":557,"tts":1310605},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359802622,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":114},"dur":14,"tdur":12,"tts":1311148},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359802650,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1311175},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359802654,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":243,"tdur":199,"tts":1311179},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359802657,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":228,"tdur":185,"tts":1311182},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359802887,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":9,"tdur":8,"tts":1311369},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359802905,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1311387},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359802909,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":144,"tdur":143,"tts":1311391},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359802912,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":140,"tdur":139,"tts":1311394},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359802927,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":114},"dur":40,"tdur":39,"tts":1311409},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359803008,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1311490,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359803011,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":246},"dur":39,"tdur":39,"tts":1311493},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359803013,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":36,"tdur":36,"tts":1311495},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359803063,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1311545},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359803067,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":358,"tdur":303,"tts":1311549},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359803070,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":332,"tdur":277,"tts":1311552},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359803404,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1311831},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359803433,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10,"tdur":10,"tts":1311860},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359803436,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":6,"tts":1311864},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359803444,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":52,"tdur":51,"tts":1311872},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359803447,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":48,"tdur":48,"tts":1311874},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359803465,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":23,"tdur":22,"tts":1311893},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359803504,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14555,"tdur":988,"tts":1311932},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359803508,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14550,"tdur":984,"tts":1311935},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359818046,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":44},"dur":10,"tdur":8,"tts":1312909},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359818062,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1312924},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359818073,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9674,"tdur":9590,"tts":1312935},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359818077,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":9661,"tdur":9578,"tts":1312938},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359827739,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":7,"tdur":6,"tts":1322518},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359827749,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1322527},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359827756,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2730,"tdur":2684,"tts":1322534},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359827758,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":2719,"tdur":2672,"tts":1322537},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359830478,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1325211},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359830488,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":321,"tdur":239,"tts":1325220},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359830490,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":209,"tdur":127,"tts":1325222},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359830714,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":94,"tdur":94,"tts":1325364},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359830733,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":44},"dur":15,"tdur":14,"tts":1325384},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359830775,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1325426,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359830778,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":247},"dur":29,"tdur":29,"tts":1325428},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359830779,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":27,"tdur":27,"tts":1325429},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359830817,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":18,"tdur":18,"tts":1325467},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359831072,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":6,"tts":1325516},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359831986,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":227,"tdur":119,"tts":1325558},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359831993,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":199,"tdur":90,"tts":1325565},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359832206,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":6,"tts":1325670},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359832215,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":41,"tdur":40,"tts":1325680},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359832218,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":37,"tdur":37,"tts":1325682},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359832225,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":21,"tdur":20,"tts":1325690},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359834196,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":18003,"tdur":1864,"tts":1325803},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359834211,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17985,"tdur":1849,"tts":1325816},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359852173,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":70},"dur":20,"tdur":17,"tts":1327644},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359852205,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1327674},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359852234,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8638,"tdur":8577,"tts":1327704},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359852241,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":8614,"tdur":8553,"tts":1327710},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359860857,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":14,"tdur":14,"tts":1336266},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359860876,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1336285},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359860886,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2897,"tdur":2786,"tts":1336295},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359860889,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":2885,"tdur":2774,"tts":1336298},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359863775,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":7,"tts":1339074},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359863785,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":323,"tdur":243,"tts":1339084},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359863787,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":190,"tdur":110,"tts":1339086},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359863979,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":128,"tdur":128,"tts":1339198},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359863994,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":70},"dur":36,"tdur":34,"tts":1339214},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359864066,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1339286,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359864070,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":248},"dur":35,"tdur":35,"tts":1339289},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359864071,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":34,"tdur":33,"tts":1339291},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359864118,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1339338},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359864122,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":373,"tdur":309,"tts":1339341},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359864124,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":362,"tdur":297,"tts":1339344},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359864488,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":6,"tts":1339643},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359864501,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":56,"tdur":56,"tts":1339656},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359864503,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":53,"tdur":53,"tts":1339658},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359864512,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":37,"tdur":36,"tts":1339667},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359864559,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":3458,"tdur":945,"tts":1339714},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359864563,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":3453,"tdur":939,"tts":1339718},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359867986,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":152},"dur":12,"tdur":11,"tts":1340636},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359868027,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1340669},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359868031,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10526,"tdur":10382,"tts":1340673},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359868033,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":10511,"tdur":10365,"tts":1340676},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359878546,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":10,"tts":1351044},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359878567,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1351065},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359878571,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2951,"tdur":2767,"tts":1351069},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359878573,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":2935,"tdur":2750,"tts":1351072},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359881510,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1353825},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359881531,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":469,"tdur":334,"tts":1353846},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359881535,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":339,"tdur":204,"tts":1353849},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359881876,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":122,"tdur":122,"tts":1354057},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359881896,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":152},"dur":20,"tdur":19,"tts":1354077},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359881954,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1354135,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359881957,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":249},"dur":40,"tdur":39,"tts":1354138},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359881959,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":37,"tdur":37,"tts":1354139},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359882003,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1354184},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359882015,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":524,"tdur":388,"tts":1354196},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359882018,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":507,"tdur":371,"tts":1354199},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359882527,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1354573},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359882542,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":54,"tdur":53,"tts":1354588},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359882546,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":49,"tdur":49,"tts":1354591},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359882558,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":30,"tdur":29,"tts":1354604},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359882606,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2744,"tdur":1237,"tts":1354652},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359882610,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2739,"tdur":1233,"tts":1354655},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359885336,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":253},"dur":11,"tdur":9,"tts":1355877},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359885353,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1355893},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359885365,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":370,"tdur":244,"tts":1355905},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359885369,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":353,"tdur":226,"tts":1355908},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359885724,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":9,"tts":1356138},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359885738,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1356152},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359885748,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":125,"tdur":124,"tts":1356162},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359885752,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":120,"tdur":119,"tts":1356166},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359885770,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":253},"dur":19,"tdur":18,"tts":1356184},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359885827,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1356241,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359885831,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":250},"dur":39,"tdur":40,"tts":1356244},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359885832,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":38,"tdur":37,"tts":1356246},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359885876,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":3,"tts":1356289},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359885887,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":524,"tdur":384,"tts":1356300},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359885889,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":508,"tdur":366,"tts":1356303},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359886399,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1356673},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359886414,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10,"tdur":10,"tts":1356687},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359886417,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":5,"tts":1356691},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359886432,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":55,"tdur":54,"tts":1356706},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359886438,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":48,"tdur":47,"tts":1356712},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359886451,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":28,"tdur":26,"tts":1356725},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359886489,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15591,"tdur":1669,"tts":1356763},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359886493,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15584,"tdur":1663,"tts":1356766},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359902054,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":59},"dur":20,"tdur":17,"tts":1358409},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359902101,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1358454},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359902109,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":414,"tdur":356,"tts":1358462},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359902115,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":382,"tdur":323,"tts":1358468},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359902501,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1358797},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359902541,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1358837},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359902549,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":233,"tdur":231,"tts":1358845},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359902555,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":224,"tdur":223,"tts":1358851},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359902587,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":59},"dur":37,"tdur":34,"tts":1358884},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359902697,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1358993,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359902703,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":251},"dur":73,"tdur":72,"tts":1358999},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359902706,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1359002},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359902800,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":24,"tdur":23,"tts":1359096},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359902827,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":353,"tdur":302,"tts":1359122},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359902832,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":321,"tdur":268,"tts":1359128},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359903171,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1359415},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359903190,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1359434},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359903454,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":11,"tdur":10,"tts":1359453},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359903458,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":6,"tts":1359457},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359903466,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":63,"tdur":62,"tts":1359465},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359903468,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":60,"tdur":59,"tts":1359467},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359903486,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":20,"tdur":20,"tts":1359485},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359904790,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29876,"tdur":1134,"tts":1359587},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359904803,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29861,"tdur":1120,"tts":1359599},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359934650,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":237},"dur":12,"tdur":10,"tts":1360706},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359934669,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1360725},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359934687,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":291,"tdur":253,"tts":1360742},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359934690,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":275,"tdur":237,"tts":1360746},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359934967,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":9,"tdur":9,"tts":1360985},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359934980,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1360999},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359934990,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":135,"tdur":134,"tts":1361008},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359934994,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":130,"tdur":129,"tts":1361012},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359935012,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":237},"dur":22,"tdur":20,"tts":1361031},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359935072,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1361090,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359935075,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":252},"dur":47,"tdur":46,"tts":1361093},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359935077,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":44,"tdur":44,"tts":1361095},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359935127,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1361146},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359935138,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":337,"tdur":280,"tts":1361156},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359935141,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":323,"tdur":265,"tts":1361159},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359935466,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":7,"tts":1361427},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359935478,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9,"tdur":10,"tts":1361438},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359935481,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":5,"tts":1361442},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359935495,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":57,"tdur":57,"tts":1361456},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359935498,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":53,"tdur":53,"tts":1361459},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359935508,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":32,"tdur":31,"tts":1361469},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359935555,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1481,"tdur":977,"tts":1361515},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359935558,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":1476,"tdur":971,"tts":1361519},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359937022,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":30},"dur":11,"tdur":8,"tts":1362480},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359937046,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1362503},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359937051,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":773,"tdur":740,"tts":1362508},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359937055,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":749,"tdur":716,"tts":1362511},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359937807,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":15,"tdur":14,"tts":1363232},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359937837,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1363262},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359937844,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":168,"tdur":105,"tts":1363268},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359937848,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":152,"tdur":88,"tts":1363273},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938002,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1363363},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359938020,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":291,"tdur":226,"tts":1363381},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938023,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":133,"tdur":68,"tts":1363384},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938159,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":150,"tdur":149,"tts":1363456},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359909201,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":30,"tdur":28,"tts":85857},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359909376,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":15,"tts":85910},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359909486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":9,"tdur":8,"tts":85932},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359909518,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":7,"tdur":6,"tts":85946},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359969621,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":34,"tdur":32,"tts":85991},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359970741,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":86065},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359971974,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":95,"tdur":75,"tts":86145},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359972563,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":59,"tdur":57,"tts":86290},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359972873,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":41,"tdur":39,"tts":86410},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359972917,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":29,"tdur":28,"tts":86453},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359973567,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":86548},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359975322,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":54,"tdur":50,"tts":86657},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359975798,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":48,"tts":86777},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359976113,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":58,"tdur":56,"tts":86886},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359976174,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":86946},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359977765,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":40,"tts":87025},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359979555,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":87132},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359979918,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":44,"tdur":41,"tts":87222},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359980186,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":87282},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359980205,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":87301},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359980763,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":39,"tts":87387},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359982567,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":48,"tts":87494},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359982999,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":47,"tts":87604},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359983293,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":87711},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531359983338,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":87755},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360062785,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":35,"tdur":33,"tts":87808},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360063291,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":21,"tts":87884},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360064341,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":87943},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360064624,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":88000},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360064805,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":16,"tts":88056},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360064822,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":9,"tts":88073},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360065161,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":88131},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360066054,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":56,"tdur":54,"tts":88184},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360066500,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":47,"tts":88304},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360066750,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":47,"tdur":45,"tts":88388},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360066798,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":11,"tts":88435},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360067039,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":18,"tts":88471},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360067657,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":88514},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360067856,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":15,"tts":88548},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360068028,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":88571},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360068089,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":88593},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360068101,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":3,"tts":88606},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360068254,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":88618},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360068999,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":12,"tts":88635},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360069103,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":18,"tts":88655},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360069152,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":9,"tdur":9,"tts":88679},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360069201,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":13,"tts":88694},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360069364,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":16,"tts":88713},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360070149,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":33,"tdur":32,"tts":88741},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360070297,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":12,"tts":88782},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360070455,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":8,"tdur":8,"tts":88799},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360070464,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":7,"tdur":7,"tts":88808},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360153064,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":32,"tdur":30,"tts":88883},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360153409,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":88951},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360154217,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":64,"tdur":61,"tts":89035},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360154547,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":89141},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360154718,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":89204},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360154739,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":89224},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360155051,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":17,"tts":89265},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360155797,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":89334},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360156074,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":27,"tts":89400},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360156243,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":89469},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360156271,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":6,"tts":89497},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360156577,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":89545},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938185,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":30},"dur":38,"tdur":37,"tts":1363482},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359938261,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1363558,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938265,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":253},"dur":42,"tdur":42,"tts":1363562},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938267,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":40,"tdur":39,"tts":1363564},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359938314,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1363610},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359938326,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":341,"tdur":284,"tts":1363623},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938329,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":325,"tdur":268,"tts":1363626},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938656,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1363896},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359938669,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":61,"tdur":61,"tts":1363910},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938673,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":56,"tdur":55,"tts":1363914},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938696,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":25,"tdur":24,"tts":1363937},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359938739,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":12364,"tdur":650,"tts":1363980},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359938744,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12356,"tdur":641,"tts":1363985},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359951111,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":771,"tdur":771,"tts":1364638},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359951121,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":760,"tdur":760,"tts":1364648},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359951865,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":90},"dur":14,"tdur":13,"tts":1365393},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359951896,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1365423},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359951902,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":363,"tdur":253,"tts":1365430},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359951906,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":342,"tdur":233,"tts":1365434},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952251,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":12,"tdur":12,"tts":1365670},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359952275,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1365694},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359952280,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":168,"tdur":168,"tts":1365699},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952284,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":163,"tdur":163,"tts":1365703},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952315,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":90},"dur":26,"tdur":24,"tts":1365735},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359952386,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1365806,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952390,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":254},"dur":55,"tdur":55,"tts":1365809},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952393,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":51,"tdur":50,"tts":1365812},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359952460,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1365879},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359952465,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":373,"tdur":304,"tts":1365885},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952469,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":355,"tdur":287,"tts":1365888},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952826,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":11,"tts":1366177},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359952847,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14,"tdur":13,"tts":1366199},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952852,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":7,"tts":1366204},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359952863,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":75,"tdur":74,"tts":1366215},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952867,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":69,"tdur":68,"tts":1366218},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952885,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":25,"tdur":25,"tts":1366236},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359952957,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15818,"tdur":1438,"tts":1366309},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359952968,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15806,"tdur":1425,"tts":1366320},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359968757,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":229},"dur":15,"tdur":13,"tts":1367730},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359968778,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1367750},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359968789,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":298,"tdur":233,"tts":1367760},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359968791,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":286,"tdur":219,"tts":1367763},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359969079,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":7,"tdur":7,"tts":1367985},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359969089,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":1,"tts":1367995},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359969096,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":130,"tdur":66,"tts":1368002},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359969098,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":120,"tdur":55,"tts":1368004},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359969219,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1368061},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359969228,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":217,"tdur":151,"tts":1368070},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359969230,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":113,"tdur":46,"tts":1368072},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359969344,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":100,"tdur":100,"tts":1368120},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359969364,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":229},"dur":17,"tdur":17,"tts":1368140},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531359969411,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1368187,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359969413,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":255},"dur":30,"tdur":30,"tts":1368189},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359969414,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":29,"tdur":28,"tts":1368190},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359969453,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":19,"tdur":18,"tts":1368229},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359969654,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1368266},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359970760,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":145,"tdur":123,"tts":1368283},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359970763,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":132,"tdur":110,"tts":1368286},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359970896,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1368398},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359970906,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":40,"tdur":40,"tts":1368408},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359970909,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":37,"tdur":36,"tts":1368411},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359970918,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":22,"tdur":21,"tts":1368420},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531359972079,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30386,"tdur":1901,"tts":1368540},{"cat":"gpu","pid":25863,"tid":25870,"ts":531359972094,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30370,"tdur":1886,"tts":1368554},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359975459,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":33,"tdur":31,"tts":154504},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359975931,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":154825},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359976254,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":155094},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359977879,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":155359},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359979654,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":10,"tdur":8,"tts":155577},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359980045,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":155768},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359980204,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":155886},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359980229,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":155910},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359980846,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":156093},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359982666,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":156272},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359983098,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":156456},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531359983379,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":156651},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360062829,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":156793},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360063357,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":156938},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360064417,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":157077},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360064685,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":157203},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360064863,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":157340},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360065202,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":157453},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360066150,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":19,"tdur":17,"tts":157568},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360066610,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":157748},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360066799,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":157909},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360066813,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":157923},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360067094,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":158017},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360067684,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":158117},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360067918,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":3,"tts":158249},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360068053,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":158352},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360068106,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":158406},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360068269,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":158457},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360069021,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":158509},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360069127,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":158562},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360069164,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":158599},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360069219,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":1,"tts":158646},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360069386,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":158695},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360070199,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":20,"tdur":6,"tts":158792},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360070313,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":158857},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360070464,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":3,"tts":158922},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360070473,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":158932},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360153140,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":159142},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360153473,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":159284},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360154356,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":22,"tdur":20,"tts":159497},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360154630,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":159677},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360154803,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":159818},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360155091,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":159922},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360155860,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":160023},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360156111,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":160141},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360156278,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":160224},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360156607,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":160288},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360157552,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":160349},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360157811,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":160411},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360157972,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":160486},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360158294,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":160549},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360159217,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":3,"tts":160610},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360159434,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":160675},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360159561,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":160748},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360220626,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":160939},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360221219,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":161143},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360223160,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":161400},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360223665,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":161671},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360224036,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":13,"tdur":11,"tts":161958},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360225429,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":162235},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360226825,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":162502},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360227271,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":162775},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360227785,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":163048},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360228068,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":163258},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360002445,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":193},"dur":16,"tdur":15,"tts":1370422},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360002468,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":2,"tts":1370445},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360002486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":279,"tdur":254,"tts":1370463},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360002490,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":261,"tdur":236,"tts":1370467},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360002753,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":10,"tts":1370706},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360002768,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1370721},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360002781,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10483,"tdur":10405,"tts":1370734},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360002785,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":10466,"tdur":10386,"tts":1370738},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360013252,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1381127},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360013268,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2885,"tdur":2810,"tts":1381143},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360013271,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":2722,"tdur":2656,"tts":1381146},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360015995,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":157,"tdur":147,"tts":1383805},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360016035,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":193},"dur":22,"tdur":21,"tts":1383836},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360016104,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1383905,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360016108,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":256},"dur":42,"tdur":42,"tts":1383908},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360016110,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":39,"tdur":38,"tts":1383911},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360016164,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1383965},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360016169,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":516,"tdur":393,"tts":1383970},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360016173,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":500,"tdur":377,"tts":1383973},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360016675,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":9,"tts":1384352},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360016694,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":58,"tdur":57,"tts":1384372},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360016698,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":53,"tdur":52,"tts":1384376},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360016719,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":23,"tdur":22,"tts":1384397},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360016755,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2146,"tdur":1194,"tts":1384433},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360016760,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2140,"tdur":1189,"tts":1384437},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360018886,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":49},"dur":12,"tdur":10,"tts":1385613},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360018912,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1385639},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360018917,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10295,"tdur":10148,"tts":1385643},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360018920,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":10279,"tdur":10130,"tts":1385647},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360029201,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":9,"tts":1395780},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360029220,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1395799},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360029224,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":114,"tdur":114,"tts":1395803},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360029226,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":111,"tdur":110,"tts":1395806},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360029243,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":49},"dur":17,"tdur":17,"tts":1395822},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360029297,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1395876,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360029300,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":257},"dur":36,"tdur":35,"tts":1395879},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360029301,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":34,"tdur":34,"tts":1395880},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360029346,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1395925},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360029350,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":3069,"tdur":2880,"tts":1395929},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360029352,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":3057,"tdur":2868,"tts":1395931},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360032411,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":7,"tts":1398801},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360032425,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9,"tdur":8,"tts":1398816},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360032428,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":5,"tts":1398818},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360032435,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":44,"tdur":44,"tts":1398825},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360032437,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":42,"tdur":41,"tts":1398827},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360032447,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":25,"tdur":25,"tts":1398837},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360032486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2271,"tdur":902,"tts":1398876},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360032489,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2267,"tdur":898,"tts":1398879},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360034747,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":16},"dur":8,"tdur":8,"tts":1399768},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360034760,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1399781},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360034769,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10594,"tdur":10447,"tts":1399790},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360034772,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":10580,"tdur":10433,"tts":1399793},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360045353,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":9,"tdur":8,"tts":1410228},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360045365,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1410240},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360045374,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2985,"tdur":2786,"tts":1410248},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360045376,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":2970,"tdur":2770,"tts":1410251},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360048348,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1413023},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360048362,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":452,"tdur":320,"tts":1413038},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360048365,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":332,"tdur":201,"tts":1413040},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360048698,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":115,"tdur":113,"tts":1413244},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360048718,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":16},"dur":18,"tdur":17,"tts":1413263},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360048771,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1413316,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360048774,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":258},"dur":37,"tdur":37,"tts":1413319},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360048776,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":35,"tdur":34,"tts":1413321},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360048824,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":7,"tdur":7,"tts":1413369},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360048832,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":506,"tdur":368,"tts":1413377},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360048835,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":490,"tdur":352,"tts":1413380},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360049327,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1413734},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360049347,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":48,"tdur":48,"tts":1413754},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360049350,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":44,"tdur":43,"tts":1413757},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360049361,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":26,"tdur":25,"tts":1413769},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360049397,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2737,"tdur":1346,"tts":1413804},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360049400,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2733,"tdur":1342,"tts":1413807},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360052120,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":166},"dur":11,"tdur":10,"tts":1415137},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360052145,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1415162},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360052149,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10334,"tdur":10202,"tts":1415166},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360052152,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":10318,"tdur":10185,"tts":1415169},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360062472,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":9,"tts":1425357},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360062492,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1425377},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360062496,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":118,"tdur":118,"tts":1425381},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360062499,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":114,"tdur":114,"tts":1425384},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360062515,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":166},"dur":19,"tdur":18,"tts":1425400},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360062570,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1425456,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360062574,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":259},"dur":38,"tdur":37,"tts":1425459},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360062575,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":36,"tdur":36,"tts":1425460},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360062623,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":18,"tdur":16,"tts":1425509},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360062642,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2891,"tdur":2815,"tts":1425527},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360062645,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":2876,"tdur":2800,"tts":1425530},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360065523,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1428332},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360065543,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1428352},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360065547,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8,"tdur":7,"tts":1428356},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360065550,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":4,"tdur":4,"tts":1428359},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360065558,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":42,"tdur":41,"tts":1428368},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360065560,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":39,"tdur":39,"tts":1428369},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360065570,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":24,"tdur":23,"tts":1428379},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360065602,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2566,"tdur":1147,"tts":1428411},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360065605,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2562,"tdur":1142,"tts":1428414},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068155,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":187},"dur":10,"tdur":10,"tts":1429545},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360068181,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1429571},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360068186,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":311,"tdur":247,"tts":1429576},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068189,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":297,"tdur":232,"tts":1429579},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068488,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":8,"tdur":7,"tts":1429814},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360068505,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1429831},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360068509,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":128,"tdur":82,"tts":1429835},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068512,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":115,"tdur":69,"tts":1429837},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068628,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1429908},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360068645,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":292,"tdur":168,"tts":1429925},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068647,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":178,"tdur":54,"tts":1429927},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068826,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":110,"tdur":109,"tts":1429983},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068844,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":187},"dur":18,"tdur":17,"tts":1430001},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360068894,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1430051,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068897,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":260},"dur":37,"tdur":38,"tts":1430053},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068899,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":35,"tdur":35,"tts":1430055},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360068940,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":3,"tts":1430096},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360068950,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":359,"tdur":316,"tts":1430107},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360068953,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":346,"tdur":303,"tts":1430110},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360069300,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":7,"tts":1430415},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360069312,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":43,"tdur":43,"tts":1430426},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360069315,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":39,"tdur":39,"tts":1430429},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360069324,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":23,"tdur":22,"tts":1430439},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360069363,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15239,"tdur":778,"tts":1430477},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360069369,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15231,"tdur":771,"tts":1430483},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360084590,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":3},"dur":9,"tdur":7,"tts":1431245},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360084604,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1431257},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360084616,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":425,"tdur":399,"tts":1431270},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360084619,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":413,"tdur":388,"tts":1431272},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085033,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":7,"tdur":6,"tts":1431662},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360085043,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1431671},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360085050,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":281,"tdur":258,"tts":1431679},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085056,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":266,"tdur":243,"tts":1431685},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085323,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1431930},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360085333,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":166,"tdur":145,"tts":1431939},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085335,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":70,"tdur":48,"tts":1431942},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085406,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":92,"tdur":92,"tts":1431992},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085421,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":3},"dur":15,"tdur":15,"tts":1432007},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360085464,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1432051,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085467,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":261},"dur":30,"tdur":29,"tts":1432053},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085468,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":28,"tdur":28,"tts":1432054},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360085507,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1432093},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360085510,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":395,"tdur":274,"tts":1432096},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085512,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":384,"tdur":262,"tts":1432098},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085897,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":7,"tts":1432362},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360085911,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":38,"tdur":38,"tts":1432376},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085913,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":36,"tdur":35,"tts":1432378},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085922,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":21,"tdur":20,"tts":1432387},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360085951,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":31580,"tdur":361,"tts":1432416},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360085954,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":31576,"tdur":357,"tts":1432419},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360117539,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":542,"tdur":535,"tts":1432785},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360117543,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":535,"tdur":529,"tts":1432789},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360118058,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":102},"dur":17,"tdur":16,"tts":1433299},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360118086,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1433326},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360118106,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1135,"tdur":1033,"tts":1433346},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360118112,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":1120,"tdur":1018,"tts":1433352},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119233,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":7,"tdur":6,"tts":1434372},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360119242,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":1,"tts":1434381},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360119249,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":204,"tdur":203,"tts":1434388},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119252,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":200,"tdur":199,"tts":1434390},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119281,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":102},"dur":34,"tdur":32,"tts":1434420},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360119376,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1434516,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119382,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":262},"dur":67,"tdur":66,"tts":1434521},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119386,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":61,"tdur":61,"tts":1434524},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360119459,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1434597},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360119479,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":436,"tdur":369,"tts":1434617},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119484,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":422,"tdur":355,"tts":1434622},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119908,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":7,"tts":1434978},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360119917,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":7,"tdur":7,"tts":1434988},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119919,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":5,"tdur":4,"tts":1434990},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360119929,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":42,"tdur":41,"tts":1435000},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119931,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":39,"tdur":38,"tts":1435002},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119939,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":25,"tdur":24,"tts":1435010},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360119972,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15115,"tdur":1054,"tts":1435043},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360119975,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15110,"tdur":1049,"tts":1435046},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360135065,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":231},"dur":17,"tdur":15,"tts":1436077},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360135106,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1436117},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360135113,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":874,"tdur":785,"tts":1436124},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360135119,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":859,"tdur":770,"tts":1436130},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360135980,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":6,"tdur":6,"tts":1436902},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360135993,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1436915},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360135996,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":309,"tdur":208,"tts":1436918},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360135998,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":286,"tdur":185,"tts":1436920},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360136287,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1437109},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360136319,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":266,"tdur":177,"tts":1437141},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360136324,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":185,"tdur":95,"tts":1437146},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360136512,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":71,"tdur":71,"tts":1437245},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360136590,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":208,"tdur":208,"tts":1437323},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360136596,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":200,"tdur":199,"tts":1437330},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360136619,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":231},"dur":33,"tdur":31,"tts":1437353},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360136714,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1437448,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360136720,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":263},"dur":73,"tdur":72,"tts":1437454},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360136723,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1437457},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360136816,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1437550},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360136824,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":365,"tdur":294,"tts":1437557},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360136828,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":353,"tdur":280,"tts":1437562},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360137182,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":6,"tts":1437844},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360137195,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":53,"tdur":52,"tts":1437857},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360137197,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":50,"tdur":50,"tts":1437859},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360137224,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":17,"tdur":17,"tts":1437886},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360137249,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14515,"tdur":1167,"tts":1437912},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360137252,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14510,"tdur":1162,"tts":1437914},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360151741,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":217},"dur":18,"tdur":16,"tts":1439057},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360151782,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1439098},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360151790,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":420,"tdur":318,"tts":1439105},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360151795,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":394,"tdur":290,"tts":1439111},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360152192,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":15,"tts":1439406},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360152224,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1439438},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360152231,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":208,"tdur":143,"tts":1439445},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360152236,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":182,"tdur":117,"tts":1439450},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360152421,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1439571},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360152453,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":369,"tdur":308,"tts":1439603},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360152458,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":156,"tdur":94,"tts":1439608},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360152617,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":203,"tdur":203,"tts":1439706},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360152649,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":217},"dur":35,"tdur":34,"tts":1439739},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360152746,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1439837,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360152752,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":264},"dur":66,"tdur":65,"tts":1439842},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360152755,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":61,"tdur":60,"tts":1439845},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360152828,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":21,"tdur":21,"tts":1439917},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360153098,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1439978},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360153428,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":128,"tdur":62,"tts":1439999},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360153431,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":116,"tdur":50,"tts":1440002},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360153548,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1440054},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360153558,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":36,"tdur":36,"tts":1440063},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360153560,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":33,"tdur":34,"tts":1440065},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360153568,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":20,"tdur":20,"tts":1440073},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360154266,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":31931,"tdur":1998,"tts":1440133},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360154275,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":31920,"tdur":1987,"tts":1440142},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360186172,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":199},"dur":19,"tdur":16,"tts":1442109},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360186203,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1442138},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360186233,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":496,"tdur":368,"tts":1442168},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360186240,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":464,"tdur":335,"tts":1442174},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360186708,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1442515},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360186736,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1442543},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360186755,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":233,"tdur":233,"tts":1442562},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360186762,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":224,"tdur":224,"tts":1442569},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360186795,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":199},"dur":36,"tdur":35,"tts":1442602},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360186903,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1442711,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360186910,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":265},"dur":73,"tdur":73,"tts":1442717},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360186913,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1442720},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360186994,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1442801},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360187015,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":361,"tdur":297,"tts":1442822},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360187020,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":348,"tdur":283,"tts":1442827},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360187369,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":7,"tts":1443111},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360187378,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":7,"tdur":7,"tts":1443121},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360187380,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":5,"tdur":4,"tts":1443123},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360187391,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":51,"tdur":52,"tts":1443133},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360187393,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":49,"tdur":49,"tts":1443135},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360187414,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":22,"tdur":21,"tts":1443157},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360187444,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2802,"tdur":1932,"tts":1443187},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360187447,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2796,"tdur":1927,"tts":1443190},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360190220,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":48},"dur":20,"tdur":17,"tts":1445096},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360190267,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1445142},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360190275,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":455,"tdur":326,"tts":1445149},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360190281,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":427,"tdur":298,"tts":1445155},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360190711,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":16,"tts":1445457},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360190744,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1445490},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360190751,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":239,"tdur":239,"tts":1445497},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360190757,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":231,"tdur":230,"tts":1445503},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360157502,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":41,"tts":89607},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360157775,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":28,"tdur":26,"tts":89691},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360157937,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":89761},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360157965,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":7,"tdur":7,"tts":89789},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360158263,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":89838},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360159180,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":27,"tts":89902},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360159404,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":89957},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360159537,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":15,"tts":89999},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360159554,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":7,"tdur":6,"tts":90016},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360220550,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":60,"tdur":58,"tts":90046},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360221135,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":68,"tdur":66,"tts":90129},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360223015,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":72,"tdur":69,"tts":90259},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360223530,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":56,"tdur":54,"tts":90396},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360223859,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":90516},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360223912,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":90568},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360225310,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":90644},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360226711,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":40,"tdur":37,"tts":90753},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360227134,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":49,"tts":90859},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360227652,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":90981},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360227956,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":81,"tdur":61,"tts":91092},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360228040,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":91157},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360229287,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":41,"tts":91238},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360231083,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":49,"tdur":48,"tts":91344},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360231520,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":48,"tts":91454},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360231834,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":41,"tdur":39,"tts":91567},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360231878,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":91609},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360232445,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":41,"tdur":39,"tts":91690},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360234217,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":50,"tts":91797},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360234550,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":48,"tts":91916},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360234776,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":41,"tdur":38,"tts":92031},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360234819,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":11,"tts":92073},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360287445,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":38,"tdur":37,"tts":92173},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360289834,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":64,"tdur":62,"tts":92277},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360291845,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":73,"tdur":70,"tts":92408},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360292253,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":30,"tdur":28,"tts":92533},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360292439,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":35,"tdur":34,"tts":92597},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360292475,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":6,"tts":92632},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360292769,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":92675},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360293561,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":24,"tts":92734},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360293802,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":25,"tts":92807},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360293954,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":15,"tts":92856},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360293970,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":92872},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360294258,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":92901},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360295031,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":29,"tdur":28,"tts":92933},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360295247,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":92984},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360295402,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":17,"tts":93024},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360295422,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":93042},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360295697,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":11,"tts":93068},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360296485,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":93104},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360296740,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":15,"tts":93153},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360296882,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":93190},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360296908,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":6,"tts":93215},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360353627,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":61,"tdur":60,"tts":93250},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360354019,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":93352},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360354716,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":42,"tts":93415},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360354980,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":36,"tdur":35,"tts":93486},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360355147,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":93544},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360355168,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":93565},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360355477,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":12,"tts":93593},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360356357,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":93634},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360356615,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":93683},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360356793,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":18,"tts":93726},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360356812,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":5,"tts":93745},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360357119,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":13,"tts":93776},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360190786,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":48},"dur":53,"tdur":52,"tts":1445532},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360190902,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1445649,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360190908,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":266},"dur":77,"tdur":75,"tts":1445655},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360190911,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":73,"tdur":71,"tts":1445658},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360191009,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1445755},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360191017,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":500,"tdur":370,"tts":1445763},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360191022,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":473,"tdur":343,"tts":1445768},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360191498,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":15,"tts":1446116},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360191531,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":19,"tts":1446148},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360191537,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12,"tdur":11,"tts":1446154},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360191552,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":94,"tdur":92,"tts":1446170},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360191557,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":87,"tdur":86,"tts":1446174},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360191590,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":41,"tdur":39,"tts":1446208},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360191660,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10591,"tdur":1712,"tts":1446277},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360191667,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10581,"tdur":1702,"tts":1446284},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360202224,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":246},"dur":21,"tdur":18,"tts":1447965},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360202257,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1447996},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360202280,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":423,"tdur":359,"tts":1448019},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360202287,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":389,"tdur":324,"tts":1448026},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360202680,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1448356},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360202709,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1448385},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360202729,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":248,"tdur":247,"tts":1448405},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360202736,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":239,"tdur":238,"tts":1448412},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360202783,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":246},"dur":37,"tdur":36,"tts":1448459},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360202893,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1448569,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360202899,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":267},"dur":74,"tdur":73,"tts":1448575},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360202902,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":68,"tts":1448578},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360202983,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1448659},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360203003,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":425,"tdur":365,"tts":1448679},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360203009,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":392,"tdur":332,"tts":1448684},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360203405,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":20,"tts":1449022},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360203433,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29,"tdur":27,"tts":1449051},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360203455,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":6,"tts":1449072},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360203470,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":83,"tdur":82,"tts":1449087},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360203473,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":78,"tdur":77,"tts":1449090},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360203485,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":51,"tdur":50,"tts":1449102},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360203558,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15647,"tdur":1887,"tts":1449175},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360203565,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15637,"tdur":1878,"tts":1449182},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360219178,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":46},"dur":21,"tdur":18,"tts":1451038},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360219226,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1451084},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360219234,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":446,"tdur":371,"tts":1451092},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360219240,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":414,"tdur":338,"tts":1451098},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360219657,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1451442},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360219698,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1451482},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360219705,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":219,"tdur":158,"tts":1451489},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360219711,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":192,"tdur":130,"tts":1451495},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360219906,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1451630},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360219938,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":404,"tdur":349,"tts":1451662},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360219943,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":147,"tdur":92,"tts":1451667},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360220091,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":249,"tdur":248,"tts":1451761},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360220152,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":46},"dur":38,"tdur":37,"tts":1451822},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360220261,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1451932,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360220268,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":268},"dur":69,"tdur":69,"tts":1451937},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360220271,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":65,"tdur":65,"tts":1451940},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360220348,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":23,"tdur":22,"tts":1452018},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360220610,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":9,"tdur":7,"tts":1452096},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360221173,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":305,"tdur":177,"tts":1452159},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360221184,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":271,"tdur":143,"tts":1452169},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360221458,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":18,"tdur":17,"tts":1452317},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360221483,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":98,"tdur":97,"tts":1452342},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360221489,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":90,"tdur":89,"tts":1452348},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360221524,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":41,"tdur":39,"tts":1452384},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360223081,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30895,"tdur":3100,"tts":1452507},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360223098,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30873,"tdur":3081,"tts":1452522},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360229371,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":29,"tdur":27,"tts":163443},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360231210,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":163679},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360231614,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":163878},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360231918,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":164082},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360232522,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":164274},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360234312,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":164451},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360234651,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":164639},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360234862,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":164826},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360287526,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":165060},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360289962,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":165289},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360291998,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":48,"tdur":28,"tts":165564},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360292330,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":165756},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360292521,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":165891},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360292825,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":166038},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360293630,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":166187},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360293837,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":2,"tts":166263},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360293977,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":166339},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360294277,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":166408},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360295068,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":166459},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360295271,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":166516},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360295429,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":166593},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360295715,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":1,"tts":166661},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360296558,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":166751},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360296797,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":166895},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360296915,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":166996},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360353700,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":167181},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360354082,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":167316},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360354799,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":167446},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360355073,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":167610},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360355177,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":167694},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360355507,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":167811},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360356427,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":167961},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360356650,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":168089},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360356821,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":168211},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360357169,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":168329},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360358138,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":168435},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360358393,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":168553},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360358499,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":168624},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360358511,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":168636},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360358768,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":168688},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360359749,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":168748},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360359874,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":168811},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360359911,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":168847},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360359945,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":168882},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360420537,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":169078},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360421106,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":169323},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360422729,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":169584},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360423034,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":169770},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360423197,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":169889},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360424083,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":170005},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360424985,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":170111},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360425252,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":170219},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360425391,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":170326},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360425699,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":170428},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360426537,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":170487},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360426760,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":170544},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360426907,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":170611},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360427177,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":170677},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360428028,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":170734},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360428175,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":170792},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360428300,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":170860},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360487167,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":171031},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360487607,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":171173},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360488974,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":171443},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360253910,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":62},"dur":54,"tdur":51,"tts":1455544},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360253984,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1455617},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360254014,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":531,"tdur":394,"tts":1455647},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360254021,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":491,"tdur":354,"tts":1455653},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360254516,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":26,"tdur":26,"tts":1456013},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360254550,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":8,"tdur":6,"tts":1456048},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360254573,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":297,"tdur":297,"tts":1456070},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360254580,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":288,"tdur":288,"tts":1456077},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360254650,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":62},"dur":50,"tdur":48,"tts":1456148},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360254786,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1456284,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360254792,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":269},"dur":73,"tdur":72,"tts":1456289},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360254795,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1456292},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360254881,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1456378},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360254902,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":537,"tdur":381,"tts":1456399},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360254907,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":505,"tdur":348,"tts":1456405},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360255416,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1456759},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360255445,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":18,"tts":1456787},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360255452,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1456794},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360255480,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":110,"tdur":109,"tts":1456822},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360255485,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":103,"tdur":102,"tts":1456827},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360255525,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":46,"tdur":44,"tts":1456868},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360255594,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2094,"tdur":1126,"tts":1456936},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360255601,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2084,"tdur":1115,"tts":1456943},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360257709,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":889,"tdur":889,"tts":1458083},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360257720,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":876,"tdur":875,"tts":1458095},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360258577,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":55},"dur":16,"tdur":15,"tts":1458952},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360258604,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1458978},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360258624,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":473,"tdur":339,"tts":1458998},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360258630,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":445,"tdur":311,"tts":1459004},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259078,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":15,"tts":1459320},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360259101,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1459342},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360259117,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":223,"tdur":221,"tts":1459359},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259124,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":214,"tdur":214,"tts":1459365},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259154,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":55},"dur":36,"tdur":35,"tts":1459395},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360259253,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1459495,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259259,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":270},"dur":76,"tdur":76,"tts":1459500},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259262,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":72,"tdur":71,"tts":1459503},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360259345,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1459586},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360259365,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":476,"tdur":342,"tts":1459606},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259370,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":450,"tdur":314,"tts":1459612},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259823,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1459931},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360259846,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":17,"tts":1459954},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259852,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1459960},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360259876,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":95,"tdur":94,"tts":1459984},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259881,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":88,"tdur":87,"tts":1459989},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259907,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":49,"tdur":48,"tts":1460014},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360259975,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8904,"tdur":1674,"tts":1460083},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360259982,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8894,"tdur":1664,"tts":1460090},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360268838,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":112},"dur":35,"tdur":31,"tts":1461719},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360268900,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1461779},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360268909,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":474,"tdur":407,"tts":1461787},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360268914,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":443,"tdur":374,"tts":1461793},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360269362,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1462173},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360269401,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1462213},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360269409,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":265,"tdur":213,"tts":1462221},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360269415,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":232,"tdur":181,"tts":1462226},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360269651,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1462413},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360269692,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":473,"tdur":424,"tts":1462453},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360269698,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":217,"tdur":166,"tts":1462460},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360269919,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":244,"tdur":243,"tts":1462632},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360269970,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":112},"dur":38,"tdur":37,"tts":1462683},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360270080,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1462794,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360270086,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":271},"dur":74,"tdur":73,"tts":1462799},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360270089,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1462802},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360270172,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":15,"tdur":15,"tts":1462884},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360270206,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":419,"tdur":301,"tts":1462919},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360270211,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":392,"tdur":273,"tts":1462924},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360270606,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":17,"tts":1463201},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360270629,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":99,"tdur":98,"tts":1463225},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360270635,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":91,"tdur":90,"tts":1463231},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360270671,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":41,"tdur":40,"tts":1463267},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360270744,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15079,"tdur":1720,"tts":1463339},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360270751,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15069,"tdur":1711,"tts":1463346},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360285779,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":115},"dur":37,"tdur":35,"tts":1465018},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360285829,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1465066},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360285852,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":452,"tdur":348,"tts":1465089},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360285858,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":420,"tdur":314,"tts":1465096},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360286282,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1465416},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360286310,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1465444},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360286329,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":310,"tdur":207,"tts":1465463},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360286335,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":278,"tdur":173,"tts":1465469},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360286617,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1465648},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360286645,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":525,"tdur":419,"tts":1465676},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360286651,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":259,"tdur":151,"tts":1465682},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360286914,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":253,"tdur":252,"tts":1465840},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360286975,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":115},"dur":38,"tdur":36,"tts":1465901},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360287085,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1466011,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360287091,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":272},"dur":73,"tdur":73,"tts":1466016},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360287094,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":69,"tts":1466019},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360287192,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":32,"tdur":32,"tts":1466117},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360287487,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1466191},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360289901,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":317,"tdur":209,"tts":1466253},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360289914,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":277,"tdur":169,"tts":1466265},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360290195,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1466440},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360290223,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":123,"tdur":122,"tts":1466468},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360290230,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":114,"tdur":112,"tts":1466475},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360290253,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":76,"tdur":75,"tts":1466498},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360291909,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":27764,"tdur":2091,"tts":1466659},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360291925,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":27745,"tdur":2074,"tts":1466674},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360319641,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":239},"dur":25,"tdur":23,"tts":1468721},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360319679,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1468757},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360319708,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":507,"tdur":380,"tts":1468786},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360319714,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":475,"tdur":347,"tts":1468793},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360320193,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1469146},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360320220,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1469173},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360320240,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":232,"tdur":232,"tts":1469192},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360320247,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":223,"tdur":222,"tts":1469199},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360320279,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":239},"dur":37,"tdur":35,"tts":1469232},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360320388,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1469341,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360320394,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":273},"dur":73,"tdur":72,"tts":1469346},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360320397,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1469349},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360320477,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1469430},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360320498,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":382,"tdur":317,"tts":1469451},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360320504,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":368,"tdur":303,"tts":1469456},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360320873,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1469761},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360320882,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8,"tdur":7,"tts":1469770},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360320885,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":4,"tdur":5,"tts":1469772},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360320895,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":111,"tdur":110,"tts":1469783},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360320897,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":108,"tdur":107,"tts":1469785},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360320931,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":51,"tdur":50,"tts":1469819},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360321007,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2493,"tdur":1717,"tts":1469895},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360321010,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2487,"tdur":1712,"tts":1469898},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360323464,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":245},"dur":29,"tdur":27,"tts":1471579},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360323520,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1471634},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360323528,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":368,"tdur":270,"tts":1471642},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360323535,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":352,"tdur":255,"tts":1471648},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360323888,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":7,"tdur":6,"tts":1471905},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360323902,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":1,"tts":1471919},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360323905,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":282,"tdur":255,"tts":1471922},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360323911,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":274,"tdur":247,"tts":1471928},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360323951,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":245},"dur":36,"tdur":35,"tts":1471968},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360324099,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1472091,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360324106,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":274},"dur":76,"tdur":75,"tts":1472097},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360324109,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":72,"tdur":71,"tts":1472100},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360324206,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1472197},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360324214,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":417,"tdur":350,"tts":1472205},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360324218,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":391,"tdur":324,"tts":1472209},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360324612,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":16,"tts":1472537},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360324645,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":18,"tts":1472570},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360324651,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":11,"tts":1472576},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360324666,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":76,"tdur":76,"tts":1472591},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360324670,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":72,"tdur":71,"tts":1472595},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360324691,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":45,"tdur":44,"tts":1472616},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360324749,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":11400,"tdur":1855,"tts":1472673},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360324752,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11394,"tdur":1849,"tts":1472676},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360336112,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":19},"dur":31,"tdur":28,"tts":1474493},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360336155,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1474534},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360336179,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":517,"tdur":374,"tts":1474558},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360336186,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":484,"tdur":341,"tts":1474565},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360336674,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1474912},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360336702,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1474939},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360336722,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":230,"tdur":229,"tts":1474959},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360336728,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":222,"tdur":221,"tts":1474965},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360336759,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":19},"dur":37,"tdur":35,"tts":1474997},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360336868,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1475106,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360336874,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":275},"dur":73,"tdur":72,"tts":1475111},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360336877,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1475114},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360336957,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1475194},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360336978,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":458,"tdur":365,"tts":1475215},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360336983,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":426,"tdur":333,"tts":1475220},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360337413,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1475559},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360337442,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":19,"tts":1475587},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360337449,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1475594},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360337485,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":64,"tdur":64,"tts":1475630},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360337488,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":60,"tdur":58,"tts":1475634},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360337504,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":35,"tdur":33,"tts":1475650},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360337552,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15115,"tdur":1957,"tts":1475697},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360337556,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15108,"tdur":1949,"tts":1475702},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360352630,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":162},"dur":30,"tdur":28,"tts":1477619},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360352688,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1477676},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360352696,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":451,"tdur":372,"tts":1477684},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360352702,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":419,"tdur":339,"tts":1477690},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360353125,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1478035},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360353165,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1478075},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360353173,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":236,"tdur":236,"tts":1478083},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360353179,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":228,"tdur":227,"tts":1478089},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360353211,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":162},"dur":36,"tdur":34,"tts":1478121},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360353318,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1478229,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360353325,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":276},"dur":79,"tdur":79,"tts":1478235},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360353328,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":75,"tdur":74,"tts":1478238},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360353428,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":23,"tdur":22,"tts":1478338},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360353454,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":382,"tdur":317,"tts":1478364},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360353459,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":366,"tdur":300,"tts":1478369},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360353827,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1478672},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360353847,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1478692},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360354047,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":18,"tdur":18,"tts":1478719},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360354054,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1478726},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360354067,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":42,"tdur":42,"tts":1478739},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360354069,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":39,"tdur":39,"tts":1478741},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360354079,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":23,"tdur":22,"tts":1478752},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360354753,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30642,"tdur":1029,"tts":1478809},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360354761,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30631,"tdur":1017,"tts":1478816},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360358078,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":29,"tdur":29,"tts":93817},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360358334,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":18,"tts":93871},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360358486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":9,"tts":93896},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360358497,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":93907},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360358758,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":9,"tdur":9,"tts":93925},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360359728,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":15,"tts":93941},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360359853,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":15,"tts":93964},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360359902,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":8,"tdur":8,"tts":93986},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360359937,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":8,"tdur":8,"tts":94002},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360420448,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":50,"tts":94069},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360420973,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":61,"tdur":59,"tts":94182},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360422583,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":73,"tdur":69,"tts":94306},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360422948,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":94426},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360423149,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":18,"tts":94492},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360423170,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":9,"tts":94512},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360424032,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":19,"tts":94562},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360424950,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":24,"tts":94621},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360425175,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":22,"tts":94685},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360425327,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":94746},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360425353,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":94771},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360425652,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":94813},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360426505,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":24,"tts":94872},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360426728,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":24,"tts":94936},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360426874,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":94997},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360426901,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":6,"tts":95022},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360427143,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":20,"tts":95064},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360427985,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":35,"tdur":27,"tts":95107},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360428141,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":26,"tts":95170},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360428277,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":95221},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360428293,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":95236},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360487030,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":61,"tdur":59,"tts":95269},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360487469,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":65,"tdur":63,"tts":95379},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360488843,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":59,"tdur":56,"tts":95511},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360489182,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":27,"tdur":27,"tts":95613},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360489448,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":95678},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360489641,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":24,"tts":95743},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360489668,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":6,"tdur":6,"tts":95768},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360490244,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":95816},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360491146,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":95876},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360491400,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":95938},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360491584,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":96001},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360491609,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":96026},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360491926,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":96067},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360492790,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":23,"tts":96127},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360492989,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":25,"tdur":24,"tts":96187},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360493148,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":96248},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360493169,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":96269},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360493451,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":13,"tts":96307},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360494311,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":96345},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360494489,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":17,"tts":96386},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360494620,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":16,"tdur":16,"tts":96427},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360494637,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":96444},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360553619,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":74,"tdur":73,"tts":96481},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360554093,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":62,"tdur":60,"tts":96577},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360555784,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":83,"tdur":82,"tts":96664},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360556238,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":96814},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360556552,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":96925},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360556607,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":96979},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360557199,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":97056},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360558967,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":49,"tts":97166},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360559399,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":50,"tts":97278},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360559709,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":97388},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360559764,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":97442},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360560410,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":41,"tdur":39,"tts":97524},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360385402,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":886,"tdur":885,"tts":1479846},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360385419,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":867,"tdur":866,"tts":1479863},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360386259,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":51},"dur":24,"tdur":22,"tts":1480703},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360386314,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1480757},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360386322,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":499,"tdur":364,"tts":1480765},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360386327,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":468,"tdur":331,"tts":1480771},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360386799,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1481108},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360386839,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1481147},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360386847,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":231,"tdur":231,"tts":1481155},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360386853,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":223,"tdur":223,"tts":1481161},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360386885,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":51},"dur":36,"tdur":35,"tts":1481193},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360386994,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1481303,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360387000,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":277},"dur":74,"tdur":73,"tts":1481308},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360387003,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":69,"tts":1481311},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360387097,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1481405},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360387104,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":356,"tdur":293,"tts":1481413},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360387109,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":340,"tdur":277,"tts":1481417},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360387451,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1481697},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360387467,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10,"tdur":9,"tts":1481713},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360387471,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":5,"tts":1481717},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360387479,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":103,"tdur":103,"tts":1481724},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360387495,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":85,"tdur":84,"tts":1481741},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360387514,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":52,"tdur":51,"tts":1481760},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360387608,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2967,"tdur":2025,"tts":1481854},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360387612,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2961,"tdur":2018,"tts":1481858},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360390544,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":173},"dur":25,"tdur":22,"tts":1483850},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360390581,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1483885},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360390604,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":428,"tdur":330,"tts":1483908},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360390611,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":399,"tdur":300,"tts":1483915},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391013,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":16,"tts":1484220},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360391037,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1484243},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360391053,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":220,"tdur":220,"tts":1484259},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391059,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":212,"tdur":211,"tts":1484266},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391090,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":173},"dur":34,"tdur":33,"tts":1484297},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360391186,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1484394,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391192,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":278},"dur":76,"tdur":75,"tts":1484399},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391196,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":71,"tts":1484402},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360391279,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1484486},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360391299,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":488,"tdur":352,"tts":1484506},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391304,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":462,"tdur":326,"tts":1484511},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391769,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1484841},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360391791,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":16,"tdur":15,"tts":1484863},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391797,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1484869},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360391819,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":88,"tdur":87,"tts":1484891},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391824,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":81,"tdur":80,"tts":1484896},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391844,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":48,"tdur":47,"tts":1484916},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360391911,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10614,"tdur":1830,"tts":1484983},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360391918,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10604,"tdur":1820,"tts":1484990},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360402491,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":11},"dur":28,"tdur":24,"tts":1486782},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360402546,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1486835},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360402554,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":396,"tdur":326,"tts":1486843},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360402560,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":368,"tdur":298,"tts":1486849},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360402931,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":16,"tts":1487151},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360402965,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1487185},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360402972,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":158,"tdur":106,"tts":1487191},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360402976,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":143,"tdur":90,"tts":1487196},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403121,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1487288},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360403153,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":346,"tdur":295,"tts":1487320},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403158,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":126,"tdur":74,"tts":1487326},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403285,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":212,"tdur":211,"tts":1487402},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403320,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":11},"dur":37,"tdur":36,"tts":1487437},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360403420,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1487538,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403427,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":279},"dur":67,"tdur":66,"tts":1487544},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403430,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":63,"tdur":62,"tts":1487547},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360403504,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":13,"tdur":12,"tts":1487621},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360403532,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":322,"tdur":261,"tts":1487649},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403537,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":306,"tdur":244,"tts":1487654},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403844,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1487901},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360403856,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":105,"tdur":104,"tts":1487912},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403873,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":86,"tdur":85,"tts":1487929},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403896,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":49,"tdur":49,"tts":1487952},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360403985,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14862,"tdur":1540,"tts":1488041},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360403989,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14856,"tdur":1534,"tts":1488045},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360418815,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":89},"dur":26,"tdur":23,"tts":1489552},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360418853,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1489588},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360418876,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":464,"tdur":353,"tts":1489611},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360418883,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":431,"tdur":319,"tts":1489618},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360419318,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1489943},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360419346,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1489971},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360419366,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":310,"tdur":206,"tts":1489990},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360419371,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":278,"tdur":172,"tts":1489996},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360419653,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1490174},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360419683,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":525,"tdur":413,"tts":1490203},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360419689,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":251,"tdur":151,"tts":1490209},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360419944,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":261,"tdur":248,"tts":1490366},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360419982,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":89},"dur":68,"tdur":53,"tts":1490405},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360420123,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1490533,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360420129,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":280},"dur":73,"tdur":72,"tts":1490538},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360420132,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1490541},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360420230,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":23,"tdur":22,"tts":1490639},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360420505,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1490702},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360421040,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":318,"tdur":211,"tts":1490764},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360421053,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":277,"tdur":170,"tts":1490777},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360421334,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1490953},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360421363,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":69,"tdur":68,"tts":1490982},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360421370,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":61,"tdur":60,"tts":1490989},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360421399,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":25,"tdur":25,"tts":1491017},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360422651,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30213,"tdur":2010,"tts":1491107},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360422668,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30193,"tdur":1991,"tts":1491123},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360452834,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":55},"dur":23,"tdur":20,"tts":1493090},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360452870,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1493124},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360452900,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":516,"tdur":377,"tts":1493154},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360452906,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":483,"tdur":343,"tts":1493160},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360453394,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":19,"tts":1493509},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360453422,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1493537},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360453442,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":343,"tdur":210,"tts":1493558},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360453448,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":311,"tdur":177,"tts":1493563},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360453763,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1493746},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360453791,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":545,"tdur":415,"tts":1493774},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360453797,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":302,"tdur":172,"tts":1493780},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360454103,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":231,"tdur":229,"tts":1493958},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360454142,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":55},"dur":38,"tdur":36,"tts":1493997},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360454251,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1494106,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360454257,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":281},"dur":74,"tdur":73,"tts":1494111},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360454260,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1494114},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360454358,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1494212},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360454366,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":467,"tdur":379,"tts":1494220},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360454371,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":435,"tdur":346,"tts":1494225},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360454810,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1494577},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360454851,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":78,"tdur":77,"tts":1494618},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360454858,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":69,"tdur":68,"tts":1494625},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360454890,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":30,"tdur":28,"tts":1494657},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360454931,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2570,"tdur":1820,"tts":1494698},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360454935,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2563,"tdur":1815,"tts":1494701},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360457465,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":130},"dur":29,"tdur":27,"tts":1496485},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360457522,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1496540},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360457530,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":249,"tdur":140,"tts":1496548},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360457536,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":228,"tdur":118,"tts":1496554},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360457765,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":13,"tdur":12,"tts":1496675},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360457806,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1496715},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360457814,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":216,"tdur":215,"tts":1496723},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360457820,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":208,"tdur":207,"tts":1496729},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360457850,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":130},"dur":36,"tdur":35,"tts":1496759},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360457950,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1496860,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360457956,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":282},"dur":69,"tdur":67,"tts":1496866},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360457959,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":65,"tdur":63,"tts":1496869},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360458048,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1496958},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360458056,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":424,"tdur":339,"tts":1496965},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360458060,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":408,"tdur":322,"tts":1496970},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360458470,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1497295},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360458488,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":27,"tdur":26,"tts":1497313},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360458491,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":23,"tdur":22,"tts":1497316},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360458518,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":91,"tdur":91,"tts":1497343},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360458523,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":85,"tdur":84,"tts":1497348},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360458544,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":50,"tdur":49,"tts":1497369},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360458624,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":11091,"tdur":2004,"tts":1497449},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360458631,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11081,"tdur":1995,"tts":1497456},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360469685,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":115},"dur":24,"tdur":21,"tts":1499426},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360469721,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1499460},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360469744,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":447,"tdur":313,"tts":1499484},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360469751,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":418,"tdur":285,"tts":1499490},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360470172,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":15,"tts":1499780},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360470195,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1499802},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360470212,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":217,"tdur":216,"tts":1499819},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360470218,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":209,"tdur":207,"tts":1499826},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360470248,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":115},"dur":36,"tdur":34,"tts":1499856},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360470347,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1499955,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360470353,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":283},"dur":71,"tdur":70,"tts":1499960},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360470356,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":67,"tdur":66,"tts":1499963},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360470434,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1500041},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360470454,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":496,"tdur":365,"tts":1500061},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360470459,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":470,"tdur":337,"tts":1500067},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360470932,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1500409},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360470954,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":18,"tdur":17,"tts":1500431},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360470959,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":11,"tts":1500436},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360470984,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":89,"tdur":88,"tts":1500461},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360470989,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":82,"tdur":81,"tts":1500466},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360471010,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":48,"tdur":47,"tts":1500487},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360471077,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14999,"tdur":1744,"tts":1500554},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360471083,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14990,"tdur":1735,"tts":1500560},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360486042,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":20},"dur":27,"tdur":25,"tts":1502266},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360486097,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1502321},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360486106,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":496,"tdur":367,"tts":1502329},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360486112,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":464,"tdur":334,"tts":1502335},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360486580,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1502675},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360486620,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1502714},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360486627,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":239,"tdur":238,"tts":1502722},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360486633,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":231,"tdur":230,"tts":1502728},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360486665,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":20},"dur":37,"tdur":36,"tts":1502760},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360486775,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1502870,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360486780,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":284},"dur":81,"tdur":80,"tts":1502875},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360486784,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":76,"tdur":75,"tts":1502878},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360486885,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":23,"tdur":22,"tts":1502980},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360486911,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":441,"tdur":366,"tts":1503005},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360486916,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":403,"tdur":326,"tts":1503011},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360487321,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":28,"tdur":28,"tts":1503340},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360487376,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1503396},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360487540,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":40,"tdur":38,"tts":1503468},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360487556,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1503484},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360487584,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":104,"tdur":102,"tts":1503512},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360487590,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":96,"tdur":95,"tts":1503517},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360487616,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":56,"tdur":54,"tts":1503544},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360488911,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":12777,"tdur":837,"tts":1503687},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360488937,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12748,"tdur":808,"tts":1503712},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360501695,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":919,"tdur":918,"tts":1504532},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360501706,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":906,"tdur":906,"tts":1504542},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360502592,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":169},"dur":17,"tdur":15,"tts":1505430},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360502640,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1505477},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360502649,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":465,"tdur":335,"tts":1505485},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360502655,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":437,"tdur":307,"tts":1505491},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503096,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":16,"tts":1505802},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360503128,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1505835},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360503136,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":223,"tdur":222,"tts":1505843},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503142,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":215,"tdur":215,"tts":1505848},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503177,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":169},"dur":36,"tdur":34,"tts":1505885},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360503278,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1505985,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503284,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":285},"dur":70,"tdur":69,"tts":1505991},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503287,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":66,"tdur":64,"tts":1505994},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360503377,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1506084},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360503384,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":440,"tdur":345,"tts":1506091},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503389,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":424,"tdur":329,"tts":1506096},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503814,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1506427},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360503831,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9,"tdur":9,"tts":1506444},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503834,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":6,"tdur":5,"tts":1506447},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360503841,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":61,"tdur":61,"tts":1506454},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503844,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":57,"tdur":58,"tts":1506456},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503854,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":40,"tdur":39,"tts":1506467},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360503910,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15087,"tdur":1525,"tts":1506523},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360503914,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15080,"tdur":1519,"tts":1506527},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360518963,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":125},"dur":28,"tdur":25,"tts":1508017},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360519003,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1508055},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360519026,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":458,"tdur":349,"tts":1508079},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360519033,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":425,"tdur":316,"tts":1508085},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360519462,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1508407},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360519490,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1508435},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360519510,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":239,"tdur":238,"tts":1508455},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360519517,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":230,"tdur":229,"tts":1508462},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360519549,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":125},"dur":36,"tdur":35,"tts":1508494},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360519658,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1508603,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360519664,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":286},"dur":80,"tdur":80,"tts":1508608},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360519667,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":76,"tdur":76,"tts":1508611},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360519755,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1508699},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360519775,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":477,"tdur":379,"tts":1508720},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360519780,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":445,"tdur":345,"tts":1508725},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360520229,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1509076},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360520259,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29,"tdur":28,"tts":1509106},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360520266,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1509113},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360520296,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":50,"tdur":49,"tts":1509143},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360520298,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":47,"tdur":46,"tts":1509145},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360520311,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":27,"tdur":27,"tts":1509158},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360520348,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15615,"tdur":1725,"tts":1509195},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360520351,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15609,"tdur":1719,"tts":1509198},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360535937,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":47},"dur":20,"tdur":16,"tts":1510897},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360535984,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1510942},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360535992,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":493,"tdur":371,"tts":1510950},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360535998,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":461,"tdur":338,"tts":1510956},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360536463,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1511300},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360536503,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1511340},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360536511,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":308,"tdur":202,"tts":1511348},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360536516,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":276,"tdur":169,"tts":1511353},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360536797,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1511528},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360536838,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":522,"tdur":423,"tts":1511569},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360536844,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":248,"tdur":147,"tts":1511576},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360537096,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":261,"tdur":260,"tts":1511729},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360537134,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":47},"dur":37,"tdur":36,"tts":1511767},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360537250,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1511883,"s":"t"},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360489252,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":21,"tdur":19,"tts":171613},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360489483,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":171738},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360489676,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":171855},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360490272,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":171917},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360491221,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":172061},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360491469,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":172204},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360491634,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":172322},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360491955,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":172385},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360492840,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":172460},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360493021,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":172522},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360493175,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":172591},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360493185,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":172601},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360493473,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":172657},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360494336,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":172712},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360494514,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":172769},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360494643,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":172838},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360553718,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":173021},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360554171,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":13,"tdur":11,"tts":173198},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360555883,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":173418},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360556376,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":173684},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360556686,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":13,"tdur":10,"tts":173940},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360557314,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":174219},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360559035,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":174384},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360559468,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":174537},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360559776,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":174710},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360560523,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":174976},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360562331,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":175249},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360562804,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":175523},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360562970,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":175673},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360562993,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":175696},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360563622,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":175953},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360565474,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":176217},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360565863,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":176460},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360566039,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":176626},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360566068,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":176655},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360621293,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":176875},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360621842,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":8,"tts":177091},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360622935,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":177299},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360623247,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":4,"tts":177452},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360623502,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":177585},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360623657,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":177692},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360623946,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":177765},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360624731,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":177817},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360624942,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":177868},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360625057,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":177925},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360625355,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":178000},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360626139,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":178078},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360626311,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":178150},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360626421,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":178228},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360626720,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":178326},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360627476,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":178421},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360627627,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":178473},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360627738,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":178533},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360687368,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":20,"tdur":18,"tts":178729},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360688800,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":178931},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360690651,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":179144},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360691191,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":179416},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360691508,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":13,"tdur":10,"tts":179654},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360692074,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":179896},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360693986,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":180167},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360694442,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":180435},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360694686,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":180634},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360694708,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":180656},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360695342,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":180806},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360537256,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":287},"dur":97,"tdur":96,"tts":1511889},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360537282,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1511915},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360537366,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1511999},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360537389,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":450,"tdur":373,"tts":1512022},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360537395,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":416,"tdur":338,"tts":1512028},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360537815,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":22,"tdur":20,"tts":1512373},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360537845,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":77,"tdur":77,"tts":1512402},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360537852,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":70,"tdur":69,"tts":1512409},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360537875,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":39,"tdur":26,"tts":1512444},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360537931,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14681,"tdur":1709,"tts":1512488},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360537935,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14674,"tdur":1702,"tts":1512492},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360552587,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":93},"dur":19,"tdur":16,"tts":1514174},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360552618,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1514204},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360552642,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":509,"tdur":371,"tts":1514227},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360552649,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":476,"tdur":337,"tts":1514234},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360553129,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1514577},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360553156,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":3,"tts":1514605},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360553176,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":237,"tdur":237,"tts":1514624},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360553183,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":228,"tdur":228,"tts":1514631},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360553213,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":93},"dur":37,"tdur":35,"tts":1514662},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360553321,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1514770,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360553328,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":288},"dur":80,"tdur":80,"tts":1514776},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360553331,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":76,"tdur":75,"tts":1514779},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360553418,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":23,"tdur":21,"tts":1514867},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360553457,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":409,"tdur":334,"tts":1514905},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360553462,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":373,"tdur":296,"tts":1514911},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360553837,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":27,"tdur":26,"tts":1515210},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360553872,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1515245},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360554135,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":33,"tdur":30,"tts":1515302},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360554147,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":19,"tdur":17,"tts":1515313},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360554172,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":112,"tdur":111,"tts":1515338},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360554186,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":97,"tdur":95,"tts":1515352},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360554227,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":42,"tdur":40,"tts":1515393},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360555824,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30177,"tdur":1840,"tts":1515500},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360555836,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30162,"tdur":1826,"tts":1515511},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360585976,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":109},"dur":19,"tdur":16,"tts":1517318},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360586007,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1517347},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360586036,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":512,"tdur":376,"tts":1517376},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360586043,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":479,"tdur":343,"tts":1517383},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360586526,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1517732},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360586554,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1517759},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360586574,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":247,"tdur":247,"tts":1517779},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360586581,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":238,"tdur":238,"tts":1517786},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360586627,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":109},"dur":37,"tdur":36,"tts":1517832},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360586737,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1517942,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360586743,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":289},"dur":73,"tdur":73,"tts":1517948},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360586746,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1517951},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360586827,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1518032},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360586848,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":445,"tdur":380,"tts":1518053},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360586853,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":413,"tdur":347,"tts":1518058},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360587270,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1518411},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360587299,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":19,"tts":1518440},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360587306,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11,"tdur":10,"tts":1518447},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360587334,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":60,"tdur":60,"tts":1518475},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360587350,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":44,"tdur":43,"tts":1518491},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360587367,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":21,"tdur":20,"tts":1518508},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360587396,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2477,"tdur":1726,"tts":1518537},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360587399,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2471,"tdur":1720,"tts":1518540},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360589840,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":145},"dur":26,"tdur":24,"tts":1520232},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360589893,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1520284},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360589902,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":408,"tdur":313,"tts":1520293},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360589908,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":380,"tdur":285,"tts":1520299},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360590292,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":15,"tts":1520589},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360590325,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1520622},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360562179,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":70,"tdur":68,"tts":97631},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360562669,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":50,"tts":97765},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360562900,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":48,"tts":97877},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360562953,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":26,"tts":97928},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360563502,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":44,"tdur":41,"tts":98020},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360565343,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":54,"tdur":52,"tts":98128},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360565763,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":51,"tts":98248},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360565975,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":31,"tdur":28,"tts":98360},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360566039,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":98404},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360621186,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":66,"tdur":63,"tts":98488},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360621709,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":62,"tdur":60,"tts":98617},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360622863,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":57,"tdur":54,"tts":98708},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360623182,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":22,"tts":98806},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360623442,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":98864},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360623610,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":21,"tts":98925},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360623632,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":98947},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360623920,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":17,"tts":98988},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360624703,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":22,"tdur":21,"tts":99044},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360624912,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":22,"tts":99101},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360625035,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":15,"tts":99147},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360625051,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":99163},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360625314,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":99192},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360626093,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":13,"tts":99228},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360626270,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":13,"tts":99265},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360626402,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":10,"tts":99300},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360626415,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":8,"tdur":8,"tts":99311},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360626677,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":13,"tts":99342},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360627430,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":14,"tdur":14,"tts":99379},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360627605,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":99414},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360627719,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":99451},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360627731,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":4,"tts":99463},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360687263,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":82,"tdur":80,"tts":99496},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360688725,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":59,"tdur":58,"tts":99606},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360690557,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":72,"tdur":70,"tts":99692},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360691055,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":99833},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360691383,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":54,"tdur":51,"tts":99951},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360691440,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":10,"tts":100007},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360692028,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":35,"tdur":32,"tts":100087},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360693840,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":100181},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360694312,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":100297},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360694629,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":41,"tdur":39,"tts":100408},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360694673,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":100451},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360695261,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":44,"tdur":42,"tts":100539},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360697157,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":100645},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360697614,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":100757},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360697827,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":31,"tdur":29,"tts":100867},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360697864,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":29,"tdur":29,"tts":100902},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360698373,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":41,"tts":100999},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360700049,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":39,"tdur":37,"tts":101119},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360700213,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":101223},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360700520,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":101353},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360700726,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":13,"tts":101445},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360700794,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":22,"tts":101498},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360771237,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":101597},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360771940,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":23,"tts":101673},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360773677,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":84,"tdur":81,"tts":101757},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360774164,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":57,"tdur":54,"tts":101909},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360774474,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":39,"tts":102024},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360774519,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":28,"tdur":27,"tts":102067},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360775119,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":41,"tts":102164},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360777020,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":102274},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360777457,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":102397},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360777778,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":102507},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360777832,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":11,"tts":102559},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360590332,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":245,"tdur":244,"tts":1520629},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360590355,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":220,"tdur":219,"tts":1520652},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360590390,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":145},"dur":37,"tdur":34,"tts":1520688},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360590490,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1520788,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360590496,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":290},"dur":76,"tdur":75,"tts":1520793},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360590499,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":72,"tdur":71,"tts":1520796},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360590596,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1520893},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360590603,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":393,"tdur":337,"tts":1520900},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360590608,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":366,"tdur":309,"tts":1520905},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360590977,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":15,"tts":1521219},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360591010,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":19,"tdur":18,"tts":1521251},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360591016,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12,"tdur":10,"tts":1521258},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360591032,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":71,"tdur":70,"tts":1521273},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360591036,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":66,"tdur":65,"tts":1521277},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360591079,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":17,"tdur":17,"tts":1521320},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360591109,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":11726,"tdur":1766,"tts":1521350},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360591111,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":11721,"tdur":1761,"tts":1521352},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360602804,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":94},"dur":25,"tdur":22,"tts":1523087},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360602840,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1523122},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360602864,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":517,"tdur":372,"tts":1523146},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360602871,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":484,"tdur":338,"tts":1523153},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360603359,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":19,"tts":1523497},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360603387,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1523525},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360603406,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":364,"tdur":223,"tts":1523544},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360603412,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":331,"tdur":190,"tts":1523550},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360603747,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1523746},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360603776,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":543,"tdur":409,"tts":1523775},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360603782,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":295,"tdur":160,"tts":1523781},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360604079,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":237,"tdur":236,"tts":1523945},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360604123,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":94},"dur":37,"tdur":36,"tts":1523989},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360604233,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1524099,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360604239,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":291},"dur":74,"tdur":73,"tts":1524105},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360604242,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1524108},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360604340,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1524206},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360604349,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":533,"tdur":406,"tts":1524214},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360604353,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":502,"tdur":373,"tts":1524219},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360604859,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1524598},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360604900,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":109,"tdur":108,"tts":1524639},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360604907,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":100,"tdur":99,"tts":1524646},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360604946,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":48,"tdur":45,"tts":1524686},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360605014,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14381,"tdur":1713,"tts":1524752},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360605020,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14372,"tdur":1703,"tts":1524759},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360619362,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":102},"dur":26,"tdur":23,"tts":1526435},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360619416,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1526487},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360619424,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":517,"tdur":372,"tts":1526495},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360619430,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":486,"tdur":339,"tts":1526501},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360619920,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1526846},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360619959,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1526886},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360619967,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":405,"tdur":224,"tts":1526893},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360619972,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":373,"tdur":191,"tts":1526898},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360620349,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1527095},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360620390,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":567,"tdur":432,"tts":1527136},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360620397,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":307,"tdur":172,"tts":1527142},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360620708,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":246,"tdur":245,"tts":1527320},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360620762,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":102},"dur":37,"tdur":36,"tts":1527374},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360620871,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1527484,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360620877,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":292},"dur":74,"tdur":73,"tts":1527489},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360620880,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1527492},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360620963,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":24,"tdur":23,"tts":1527575},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360621258,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1527646},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360621775,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":302,"tdur":196,"tts":1527705},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360621789,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":261,"tdur":155,"tts":1527718},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360622054,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1527879},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360622083,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":72,"tdur":71,"tts":1527908},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360622090,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":64,"tdur":63,"tts":1527915},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360622125,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":20,"tdur":19,"tts":1527950},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360622915,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":12019,"tdur":865,"tts":1528021},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360622928,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12003,"tdur":849,"tts":1528034},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360634941,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":883,"tdur":883,"tts":1528894},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360634952,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":870,"tdur":869,"tts":1528905},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360635796,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":78},"dur":23,"tdur":21,"tts":1529750},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360635850,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1529803},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360635857,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":474,"tdur":310,"tts":1529811},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360635863,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":446,"tdur":282,"tts":1529817},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360636313,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":15,"tts":1530104},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360636347,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1530137},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360636354,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":219,"tdur":219,"tts":1530144},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360636359,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":212,"tdur":211,"tts":1530150},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360636388,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":78},"dur":34,"tdur":33,"tts":1530178},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360636492,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1530284,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360636498,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":293},"dur":71,"tdur":69,"tts":1530289},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360636501,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":66,"tdur":65,"tts":1530292},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360636592,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1530383},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360636600,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":421,"tdur":332,"tts":1530390},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360636604,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":408,"tdur":318,"tts":1530395},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360637013,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1530715},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360637026,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8,"tdur":7,"tts":1530728},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360637029,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":4,"tdur":4,"tts":1530731},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360637035,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":55,"tdur":54,"tts":1530737},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360637037,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":52,"tdur":52,"tts":1530738},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360637050,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":31,"tdur":30,"tts":1530752},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360637098,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15221,"tdur":1368,"tts":1530800},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360637102,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15215,"tdur":1363,"tts":1530803},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360652286,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":205},"dur":27,"tdur":25,"tts":1532137},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360652325,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1532175},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360652349,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":512,"tdur":372,"tts":1532199},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360652356,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":479,"tdur":339,"tts":1532205},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360652839,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":17,"tts":1532551},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360652866,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1532578},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360652886,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":240,"tdur":240,"tts":1532597},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360652893,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":231,"tdur":231,"tts":1532604},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360652925,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":205},"dur":37,"tdur":35,"tts":1532637},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360653034,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1532746,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360653040,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":294},"dur":81,"tdur":80,"tts":1532752},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360653043,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":77,"tdur":75,"tts":1532755},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360653132,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1532843},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360653152,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":495,"tdur":369,"tts":1532864},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360653158,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":478,"tdur":353,"tts":1532869},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360653638,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1533224},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360653650,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":7,"tdur":7,"tts":1533236},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360653652,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":5,"tdur":4,"tts":1533239},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360653664,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":98,"tdur":97,"tts":1533250},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360653666,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":94,"tdur":93,"tts":1533252},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360653698,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":48,"tdur":46,"tts":1533285},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360653766,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15197,"tdur":1396,"tts":1533352},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360653773,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15187,"tdur":1387,"tts":1533359},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360668930,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":54},"dur":26,"tdur":23,"tts":1534719},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360668983,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1534770},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360668992,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":355,"tdur":291,"tts":1534778},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360668998,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":334,"tdur":269,"tts":1534784},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360669334,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":12,"tdur":11,"tts":1535056},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360669358,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1535080},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360669363,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":175,"tdur":116,"tts":1535085},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360669367,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":156,"tdur":96,"tts":1535089},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360669525,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":12,"tdur":11,"tts":1535189},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360669549,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":466,"tdur":408,"tts":1535213},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360669553,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":141,"tdur":83,"tts":1535216},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360669696,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":316,"tdur":315,"tts":1535303},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360669736,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":54},"dur":73,"tdur":71,"tts":1535343},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360669900,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1535508,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360669909,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":295},"dur":100,"tdur":99,"tts":1535516},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360669914,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":93,"tdur":91,"tts":1535521},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360670022,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1535629},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360670045,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":406,"tdur":329,"tts":1535652},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360670050,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":390,"tdur":313,"tts":1535657},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360670442,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1535972},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360670453,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":80,"tdur":80,"tts":1535983},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360670455,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":76,"tdur":75,"tts":1535986},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360670464,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":53,"tdur":52,"tts":1535995},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360670550,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15565,"tdur":1794,"tts":1536080},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360670557,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15556,"tdur":1784,"tts":1536088},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360686083,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":13},"dur":26,"tdur":23,"tts":1537845},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360686121,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1537881},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360686145,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":642,"tdur":452,"tts":1537905},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360686151,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":623,"tdur":433,"tts":1537911},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360686776,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":9,"tts":1538347},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360686790,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1538361},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360686817,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":240,"tdur":239,"tts":1538388},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360686824,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":231,"tdur":230,"tts":1538395},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360686857,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":13},"dur":37,"tdur":35,"tts":1538429},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360686966,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1538538,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360686973,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":296},"dur":79,"tdur":79,"tts":1538543},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360686976,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":74,"tdur":74,"tts":1538546},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360687062,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":23,"tdur":22,"tts":1538633},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360687101,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":495,"tdur":417,"tts":1538672},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360687107,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":471,"tdur":393,"tts":1538678},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360687581,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13,"tdur":13,"tts":1539075},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360687600,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1539094},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360688775,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":36,"tdur":34,"tts":1539148},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360688789,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":18,"tts":1539161},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360688817,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":106,"tdur":105,"tts":1539189},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360688829,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":92,"tdur":91,"tts":1539201},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360688855,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":53,"tdur":50,"tts":1539228},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360690599,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":28685,"tdur":1731,"tts":1539347},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360690612,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":28669,"tdur":1716,"tts":1539360},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360719258,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":52},"dur":20,"tdur":17,"tts":1541055},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360719290,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1541085},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360719320,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":464,"tdur":359,"tts":1541115},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360719327,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":430,"tdur":324,"tts":1541122},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360719761,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":20,"tts":1541452},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360719789,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1541481},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360719809,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":277,"tdur":261,"tts":1541501},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360719816,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":268,"tdur":253,"tts":1541507},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360719848,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":52},"dur":36,"tdur":35,"tts":1541540},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360719956,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1541648,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360719962,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":297},"dur":119,"tdur":103,"tts":1541654},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360719965,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":115,"tdur":98,"tts":1541657},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360720092,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1541769},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360720114,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":362,"tdur":295,"tts":1541791},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360720120,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":347,"tdur":281,"tts":1541796},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360720468,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1542079},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360720477,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8,"tdur":7,"tts":1542088},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360720480,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":4,"tdur":4,"tts":1542090},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360720490,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":111,"tdur":110,"tts":1542101},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360720492,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":108,"tdur":94,"tts":1542116},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360720528,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":53,"tdur":52,"tts":1542139},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360720603,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15482,"tdur":1698,"tts":1542213},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360720606,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15478,"tdur":1694,"tts":1542216},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360736073,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":23},"dur":9,"tdur":8,"tts":1543900},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360736110,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1543936},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360736118,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":1020,"tdur":869,"tts":1543945},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360736125,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":978,"tdur":827,"tts":1543951},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360697281,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":32,"tdur":29,"tts":181050},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360697711,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":181300},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360697869,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":181451},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360697894,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":181476},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360698436,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":181623},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360700130,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":181762},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360700322,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":181867},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360700615,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":182050},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360700784,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":182192},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360700824,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":182231},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360771337,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":6,"tts":182447},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360771979,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":182569},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360773818,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":182799},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360774269,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":10,"tts":183035},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360774561,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":183240},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360775178,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":6,"tts":183396},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360777147,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":183653},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360777587,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":183938},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360777917,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":10,"tts":184197},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360778584,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":184462},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360780438,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":184730},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360780925,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":185007},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360781159,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":185207},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360781727,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":8,"tts":185480},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360783545,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":185738},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360783981,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":185973},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360784209,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":7,"tts":186164},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360838011,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":186398},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360838634,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":186619},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360840311,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":186846},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360840576,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":187003},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360840698,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":187105},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360840937,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":187207},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360841663,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":187286},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360841850,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":187336},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360841973,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":187398},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360841982,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":1,"tdur":2,"tts":187406},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360842245,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":187453},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360843022,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":187534},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360843258,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":187647},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360843338,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":187710},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360843347,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":187719},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360843592,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":187768},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360844213,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":187842},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360844383,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":187910},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360844561,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":187958},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360844669,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":2,"tts":188015},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360903126,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":188154},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360903655,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":188342},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360905241,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":188598},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360905712,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":188866},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360906020,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":189123},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360906678,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":189404},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360908492,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":189665},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360908958,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":189930},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360909237,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":9,"tdur":7,"tts":190168},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360909834,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":190350},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360911665,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":7,"tdur":5,"tts":190544},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360912114,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":190697},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360912321,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":190859},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360912341,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":190878},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360914163,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":191001},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360916059,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":20,"tdur":19,"tts":191179},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360916298,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":3,"tdur":3,"tts":191294},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360737107,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":29,"tdur":27,"tts":1544784},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360737157,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1544834},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360737165,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":427,"tdur":288,"tts":1544841},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360737170,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":395,"tdur":255,"tts":1544846},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360737569,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1545107},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360737610,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":506,"tdur":394,"tts":1545148},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360737617,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":260,"tdur":147,"tts":1545154},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360737881,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":233,"tdur":233,"tts":1545307},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360737921,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":23},"dur":37,"tdur":36,"tts":1545348},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360738031,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1545458,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360738037,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":298},"dur":74,"tdur":74,"tts":1545463},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360738040,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1545466},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360738123,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1545549},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360738146,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":536,"tdur":410,"tts":1545573},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360738151,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":504,"tdur":376,"tts":1545578},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360738659,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1545960},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360738688,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":96,"tdur":95,"tts":1545989},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360738695,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":87,"tdur":86,"tts":1545996},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360738716,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":52,"tdur":50,"tts":1546018},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360738803,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":14403,"tdur":2001,"tts":1546105},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360738810,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14394,"tdur":1993,"tts":1546111},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360753172,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":42},"dur":28,"tdur":26,"tts":1548074},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360753212,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1548113},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360753236,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":511,"tdur":375,"tts":1548136},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360753242,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":479,"tdur":341,"tts":1548143},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360753725,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1548490},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360753753,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1548518},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360753773,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":343,"tdur":206,"tts":1548538},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360753778,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":325,"tdur":187,"tts":1548543},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360754105,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1548733},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360754119,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":465,"tdur":390,"tts":1548747},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360754122,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":217,"tdur":141,"tts":1548750},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360754343,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":238,"tdur":237,"tts":1548897},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360754389,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":42},"dur":38,"tdur":37,"tts":1548943},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360754499,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1549054,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360754505,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":299},"dur":73,"tdur":72,"tts":1549059},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360754508,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1549062},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360754606,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1549160},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360754614,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":455,"tdur":378,"tts":1549168},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360754619,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":423,"tdur":345,"tts":1549173},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360755046,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1549524},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360755087,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":68,"tdur":67,"tts":1549565},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360755110,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":44,"tdur":44,"tts":1549587},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360755120,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":27,"tdur":26,"tts":1549598},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360755171,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":13503,"tdur":1000,"tts":1549649},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360755179,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13492,"tdur":988,"tts":1549656},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360768694,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":962,"tdur":962,"tts":1550670},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360768706,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":948,"tdur":947,"tts":1550682},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360769611,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":217},"dur":39,"tdur":37,"tts":1551588},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360769662,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1551638},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360769683,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":367,"tdur":229,"tts":1551659},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360769689,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":335,"tdur":196,"tts":1551665},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360770028,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1551867},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360770056,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1551894},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360770075,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":353,"tdur":216,"tts":1551914},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360770081,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":319,"tdur":182,"tts":1551920},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360770404,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":22,"tdur":20,"tts":1552108},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360770434,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":542,"tdur":410,"tts":1552137},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360770440,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":299,"tdur":165,"tts":1552143},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360770743,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":231,"tdur":230,"tts":1552314},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360770781,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":217},"dur":37,"tdur":35,"tts":1552353},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360770890,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1552462,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360770896,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":300},"dur":74,"tdur":74,"tts":1552467},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360770899,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1552470},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360770998,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":30,"tdur":30,"tts":1552569},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360771296,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1552643},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360771964,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":288,"tdur":197,"tts":1552680},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360771969,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":264,"tdur":172,"tts":1552686},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360772236,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":14,"tdur":13,"tts":1552862},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360772256,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":66,"tdur":65,"tts":1552882},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360772261,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":59,"tdur":59,"tts":1552886},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360772277,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":34,"tdur":33,"tts":1552903},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360773757,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29024,"tdur":1568,"tts":1553021},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360773768,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29012,"tdur":1555,"tts":1553032},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360802760,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":183},"dur":17,"tdur":15,"tts":1554569},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360802785,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1554593},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360802805,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":440,"tdur":292,"tts":1554613},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360802809,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":421,"tdur":273,"tts":1554617},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360803232,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":12,"tdur":11,"tts":1554893},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360803248,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1554909},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360803259,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":261,"tdur":119,"tts":1554920},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360803263,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":243,"tdur":101,"tts":1554924},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360803508,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1555028},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360803523,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":392,"tdur":244,"tts":1555042},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360803526,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":234,"tdur":85,"tts":1555046},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360803761,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":152,"tdur":152,"tts":1555133},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360803794,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":183},"dur":25,"tdur":24,"tts":1555166},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360803862,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1555234,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360803866,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":301},"dur":46,"tdur":46,"tts":1555237},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360803868,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":43,"tdur":43,"tts":1555239},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360803927,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":3,"tts":1555299},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360803933,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":388,"tdur":308,"tts":1555304},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360803936,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":376,"tdur":295,"tts":1555308},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360804313,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1555605},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360804327,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":95,"tdur":95,"tts":1555618},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360804329,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":92,"tdur":90,"tts":1555621},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360804365,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":42,"tdur":40,"tts":1555658},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360804427,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2562,"tdur":1841,"tts":1555719},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360804434,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2552,"tdur":1832,"tts":1555725},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360806964,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":132},"dur":18,"tdur":16,"tts":1557537},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360807010,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1557582},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360807018,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":267,"tdur":180,"tts":1557590},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360807024,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":224,"tdur":138,"tts":1557596},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360807262,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1557749},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360807302,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1557789},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360807311,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":230,"tdur":230,"tts":1557797},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360807317,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":222,"tdur":221,"tts":1557804},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360807350,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":132},"dur":35,"tdur":35,"tts":1557836},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360807457,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1557944,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360807463,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":302},"dur":73,"tdur":72,"tts":1557950},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360807466,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1557953},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360807560,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1558046},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360807567,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":409,"tdur":353,"tts":1558054},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360807572,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":377,"tdur":320,"tts":1558059},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360807953,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1558385},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360807995,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":62,"tdur":29,"tts":1558427},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360808047,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1558447},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360808059,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":63,"tdur":62,"tts":1558459},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360808062,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":58,"tdur":58,"tts":1558462},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360808075,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":37,"tdur":36,"tts":1558475},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360808131,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10966,"tdur":1331,"tts":1558531},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360808136,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10959,"tdur":1324,"tts":1558536},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360819082,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":244},"dur":11,"tdur":9,"tts":1559849},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360819100,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1559865},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360819113,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":375,"tdur":318,"tts":1559878},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360819116,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":358,"tdur":299,"tts":1559882},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360819476,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":11,"tdur":10,"tts":1560185},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360819491,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1560200},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360778445,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":67,"tdur":64,"tts":102635},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360780308,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":50,"tts":102778},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360780784,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":51,"tts":102890},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360781025,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":103002},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360781080,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":103055},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360781610,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":41,"tts":103131},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360783415,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":103234},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360783883,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":103344},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360784162,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":35,"tdur":33,"tts":103457},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360784201,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":12,"tts":103495},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360837916,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":49,"tdur":48,"tts":103570},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360838515,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":54,"tdur":51,"tts":103683},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360840180,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":62,"tdur":60,"tts":103804},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360840513,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":24,"tdur":23,"tts":103905},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360840640,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":103962},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360840658,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":9,"tdur":9,"tts":103980},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360840871,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":17,"tts":104005},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360841616,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":20,"tdur":19,"tts":104058},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360841822,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":104115},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360841949,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":16,"tts":104173},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360841968,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":10,"tts":104190},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360842221,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":16,"tts":104237},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360842962,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":19,"tts":104287},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360843211,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":104344},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360843315,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":104399},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360843333,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":10,"tdur":10,"tts":104416},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360843568,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":18,"tdur":17,"tts":104462},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360844175,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":11,"tts":104503},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360844361,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":104538},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360844540,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":15,"tdur":14,"tts":104575},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360844652,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":104612},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360844664,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":5,"tdur":5,"tts":104623},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360903047,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":29,"tdur":27,"tts":104667},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360903564,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":54,"tdur":52,"tts":104759},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360905102,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":63,"tdur":61,"tts":104874},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360905582,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":105002},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360905887,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":105111},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360905941,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":105164},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360906561,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":105241},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360908365,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":105345},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360908831,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":49,"tts":105459},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360909127,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":50,"tts":105569},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360909182,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":11,"tts":105622},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360909752,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":41,"tdur":40,"tts":105697},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360911561,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":50,"tdur":47,"tts":105806},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360911997,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":100,"tdur":75,"tts":105914},{"cat":"trace_event_overhead","pid":25863,"tid":25911,"ts":531360911997,"ph":"X","name":"overhead","args":{},"dur":53,"tdur":28,"tts":105914},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360912263,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":41,"tts":106049},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360912310,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":23,"tdur":23,"tts":106094},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360914105,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":41,"tts":106182},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360915949,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":82,"tdur":66,"tts":106289},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360916244,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":106397},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360916435,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":38,"tts":106473},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360916490,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":13,"tdur":12,"tts":106515},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360971158,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":26,"tdur":25,"tts":106653},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360971506,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":19,"tdur":17,"tts":106704},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360972835,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":47,"tdur":45,"tts":106780},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360973249,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":57,"tdur":55,"tts":106880},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360973571,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":40,"tdur":38,"tts":106991},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360973612,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":12,"tdur":11,"tts":107031},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360974159,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":107105},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360975950,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":47,"tdur":45,"tts":107176},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360976356,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":49,"tts":107280},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360976593,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":40,"tdur":38,"tts":107400},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360819502,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":132,"tdur":132,"tts":1560210},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360819510,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":122,"tdur":123,"tts":1560218},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360819527,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":244},"dur":20,"tdur":19,"tts":1560236},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360819587,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1560296,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360819590,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":303},"dur":41,"tdur":40,"tts":1560299},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360819592,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":38,"tdur":38,"tts":1560300},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360819637,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1560345},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360819648,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":464,"tdur":371,"tts":1560356},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360819651,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":425,"tdur":332,"tts":1560359},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360820078,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":31,"tdur":29,"tts":1560694},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360820118,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":22,"tdur":21,"tts":1560734},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360820126,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13,"tdur":11,"tts":1560742},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360820156,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":97,"tdur":97,"tts":1560772},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360820161,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":91,"tdur":90,"tts":1560777},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360820186,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":52,"tdur":50,"tts":1560802},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360820258,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15638,"tdur":1726,"tts":1560874},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360820264,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15629,"tdur":1717,"tts":1560880},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360835864,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":208},"dur":25,"tdur":23,"tts":1562570},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360835916,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1562621},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360835924,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":480,"tdur":356,"tts":1562629},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360835930,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":435,"tdur":310,"tts":1562635},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360836369,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1562951},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360836412,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1562993},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360836415,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":753,"tdur":648,"tts":1562997},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360836417,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":724,"tdur":618,"tts":1562999},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360837146,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":20,"tts":1563623},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360837187,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":502,"tdur":400,"tts":1563664},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360837193,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":250,"tdur":146,"tts":1563671},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360837447,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":239,"tdur":238,"tts":1563823},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360837493,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":208},"dur":38,"tdur":35,"tts":1563870},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360837603,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1563979,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360837609,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":304},"dur":74,"tdur":73,"tts":1563985},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360837612,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":70,"tdur":69,"tts":1563988},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360837695,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":24,"tdur":23,"tts":1564071},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360837996,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1564163},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360838576,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":254,"tdur":166,"tts":1564212},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360838587,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":219,"tdur":119,"tts":1564222},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360838810,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":18,"tdur":18,"tts":1564358},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360838835,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":80,"tdur":79,"tts":1564384},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360838841,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":73,"tdur":72,"tts":1564390},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360838865,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":43,"tdur":42,"tts":1564414},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360840265,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":29346,"tdur":1908,"tts":1564533},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360840275,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":29334,"tdur":1896,"tts":1564542},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360869576,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":4},"dur":29,"tdur":26,"tts":1566408},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360869617,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1566447},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360869646,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":502,"tdur":368,"tts":1566477},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360869653,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":470,"tdur":335,"tts":1566483},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360870127,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1566824},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360870155,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1566852},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360870175,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":351,"tdur":217,"tts":1566872},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360870180,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":320,"tdur":184,"tts":1566878},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360870504,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":20,"tdur":19,"tts":1567068},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360870532,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":549,"tdur":418,"tts":1567096},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360870538,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":294,"tdur":163,"tts":1567102},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360870836,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":242,"tdur":240,"tts":1567271},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360870876,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":4},"dur":36,"tdur":36,"tts":1567310},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360870984,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1567420,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360870990,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":305},"dur":83,"tdur":82,"tts":1567425},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360870993,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":79,"tdur":77,"tts":1567428},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360871110,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":9,"tdur":7,"tts":1567545},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360871122,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":513,"tdur":384,"tts":1567557},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360871130,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":478,"tdur":348,"tts":1567565},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360871612,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1567919},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360871653,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":123,"tdur":122,"tts":1567960},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360871660,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":114,"tdur":112,"tts":1567967},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360871718,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":42,"tdur":40,"tts":1568026},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360871781,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":3040,"tdur":1855,"tts":1568088},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360871787,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":3032,"tdur":1846,"tts":1568094},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360874782,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":223},"dur":33,"tdur":30,"tts":1569906},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360874842,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1569964},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360874850,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":409,"tdur":335,"tts":1569972},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360874856,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":381,"tdur":307,"tts":1569978},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360875241,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":15,"tts":1570290},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360875274,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1570323},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360875281,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":239,"tdur":153,"tts":1570330},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360875286,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":213,"tdur":127,"tts":1570334},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360875502,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1570466},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360875534,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":389,"tdur":335,"tts":1570498},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360875540,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":171,"tdur":117,"tts":1570503},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360875714,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":207,"tdur":206,"tts":1570625},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360875745,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":223},"dur":36,"tdur":35,"tts":1570656},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360875845,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1570756,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360875851,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":306},"dur":68,"tdur":66,"tts":1570762},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360875854,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":63,"tdur":62,"tts":1570765},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360875930,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1570840},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360875950,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":480,"tdur":346,"tts":1570861},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360875955,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":454,"tdur":319,"tts":1570866},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360876412,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1571190},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360876434,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":92,"tdur":91,"tts":1571212},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360876440,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":84,"tdur":83,"tts":1571218},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360876472,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":40,"tdur":39,"tts":1571250},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360876542,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":9518,"tdur":1586,"tts":1571320},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360876549,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9508,"tdur":1577,"tts":1571327},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360886037,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":57},"dur":17,"tdur":14,"tts":1572886},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360886065,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1572912},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360886086,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":414,"tdur":316,"tts":1572933},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360886092,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":374,"tdur":276,"tts":1572939},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360886481,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":17,"tdur":15,"tts":1573232},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360886505,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":4,"tdur":4,"tts":1573255},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360886521,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":225,"tdur":159,"tts":1573271},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360886526,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":199,"tdur":133,"tts":1573276},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360886728,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":15,"tts":1573413},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360886750,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":369,"tdur":312,"tts":1573435},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360886755,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":138,"tdur":81,"tts":1573440},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360886895,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":223,"tdur":222,"tts":1573523},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360886943,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":57},"dur":36,"tdur":35,"tts":1573572},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360887042,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1573671,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360887048,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":307},"dur":67,"tdur":66,"tts":1573677},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360887051,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":63,"tdur":61,"tts":1573680},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360887138,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1573767},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360887145,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":373,"tdur":286,"tts":1573774},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360887150,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":354,"tdur":269,"tts":1573778},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360887506,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":10,"tts":1574049},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360887543,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":104,"tdur":103,"tts":1574087},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360887550,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":82,"tdur":82,"tts":1574093},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360887568,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":52,"tdur":51,"tts":1574111},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360887651,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":13774,"tdur":603,"tts":1574194},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360887655,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13767,"tdur":594,"tts":1574199},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360901446,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":930,"tdur":929,"tts":1574819},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360901457,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":916,"tdur":916,"tts":1574830},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360902354,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":49},"dur":17,"tdur":15,"tts":1575728},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360902381,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1575754},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360902402,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":183,"tdur":123,"tts":1575775},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360902408,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":167,"tdur":107,"tts":1575781},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360902576,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":8,"tdur":7,"tts":1575890},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360902587,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":2,"tts":1575900},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360902595,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":116,"tdur":90,"tts":1575908},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360902597,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":86,"tdur":60,"tts":1575910},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360902684,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":26,"tdur":25,"tts":1575972},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360902713,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":190,"tdur":165,"tts":1576001},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360902715,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":79,"tdur":53,"tts":1576003},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360902795,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":107,"tdur":107,"tts":1576058},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360902817,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":49},"dur":16,"tdur":16,"tts":1576080},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360902865,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1576128,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360902868,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":308},"dur":33,"tdur":33,"tts":1576131},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360902869,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":32,"tdur":31,"tts":1576132},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360902912,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":11,"tdur":11,"tts":1576175},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360903076,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1576206},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360903607,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":153,"tdur":97,"tts":1576234},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360903613,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":138,"tdur":81,"tts":1576240},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360903752,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":7,"tts":1576323},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360903762,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":45,"tdur":45,"tts":1576333},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360903764,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":42,"tdur":41,"tts":1576336},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360903780,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":19,"tdur":19,"tts":1576351},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360905149,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":31727,"tdur":2266,"tts":1576412},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360905157,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":31716,"tdur":2255,"tts":1576420},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360936845,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":251},"dur":25,"tdur":23,"tts":1578649},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360936882,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1578685},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360936912,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":435,"tdur":302,"tts":1578715},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360936918,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":402,"tdur":268,"tts":1578721},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360937324,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":19,"tts":1578995},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360937353,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1579024},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360937373,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":232,"tdur":231,"tts":1579044},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360937380,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":223,"tdur":222,"tts":1579051},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360937413,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":251},"dur":36,"tdur":35,"tts":1579084},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360937521,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1579192,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360937527,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":309},"dur":73,"tdur":73,"tts":1579198},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360937530,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":68,"tts":1579201},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360937611,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1579282},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360937631,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":484,"tdur":351,"tts":1579302},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360937636,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":457,"tdur":324,"tts":1579307},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360938096,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":15,"tts":1579636},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360938119,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":17,"tdur":17,"tts":1579658},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360938125,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1579664},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360938160,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":47,"tdur":47,"tts":1579699},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360938163,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":43,"tdur":43,"tts":1579702},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360938174,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":26,"tdur":25,"tts":1579713},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360938209,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":2490,"tdur":1379,"tts":1579748},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360938228,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":2469,"tdur":1358,"tts":1579767},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360940679,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":214},"dur":16,"tdur":13,"tts":1581109},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360940713,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":3,"tts":1581141},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360940718,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":475,"tdur":337,"tts":1581146},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360940722,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":454,"tdur":316,"tts":1581150},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360941179,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":12,"tdur":11,"tts":1581470},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360941204,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1581495},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360941209,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":150,"tdur":150,"tts":1581499},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360941213,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":145,"tdur":145,"tts":1581503},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360941233,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":214},"dur":23,"tdur":22,"tts":1581524},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360941302,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1581593,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360941306,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":310},"dur":50,"tdur":49,"tts":1581597},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360941308,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":48,"tdur":46,"tts":1581599},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360941371,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1581662},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360941376,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":549,"tdur":389,"tts":1581667},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360941379,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":529,"tdur":369,"tts":1581670},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360941911,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":13,"tdur":12,"tts":1582043},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360941937,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":12,"tdur":12,"tts":1582068},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360941941,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":7,"tdur":6,"tts":1582073},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360941950,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":60,"tdur":59,"tts":1582082},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360941953,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":56,"tdur":55,"tts":1582085},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360941967,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":33,"tdur":33,"tts":1582098},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360942019,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":10522,"tdur":1588,"tts":1582151},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360942024,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10516,"tdur":1583,"tts":1582155},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360916526,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":28,"tdur":27,"tts":191474},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360971233,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":191723},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360971557,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":191871},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360972941,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":10,"tts":192088},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360973373,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":192311},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360973618,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":4,"tdur":3,"tts":192487},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360973628,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":1,"tts":192497},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360974212,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":2,"tdur":2,"tts":192586},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360976021,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":192761},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360976481,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":192995},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360976639,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":193140},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360976710,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":193203},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360977396,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":193455},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360979027,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":11,"tdur":9,"tts":193719},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360979180,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":5,"tts":193856},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360979677,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":12,"tdur":9,"tts":194115},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360979752,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":194189},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360979831,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":4,"tts":194262},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360980608,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":5,"tdur":5,"tts":194444},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360981626,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":4,"tts":194685},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360981922,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":194824},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531360982164,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":8,"tdur":6,"tts":194951},{"cat":"toplevel","pid":25863,"tid":25873,"ts":531361048867,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"AddRequest"},"dur":6,"tdur":5,"tts":195251},{"cat":"__metadata","pid":25863,"tid":25873,"ts":0,"ph":"M","name":"overhead","args":{"average_overhead":0.0033425034387895465}},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360952521,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":221},"dur":17,"tdur":16,"tts":1583720},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360952544,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1583743},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360952570,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":417,"tdur":356,"tts":1583769},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360952577,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":383,"tdur":322,"tts":1583776},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360952964,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":20,"tdur":18,"tts":1584104},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360952993,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1584132},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360953013,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":260,"tdur":205,"tts":1584152},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360953019,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":227,"tdur":171,"tts":1584158},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360953250,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1584335},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360953279,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":373,"tdur":318,"tts":1584364},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360953285,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":143,"tdur":89,"tts":1584370},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360953430,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":220,"tdur":219,"tts":1584461},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360953461,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":221},"dur":38,"tdur":37,"tts":1584492},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360953572,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1584603,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360953578,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":311},"dur":69,"tdur":68,"tts":1584609},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360953581,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":65,"tdur":64,"tts":1584612},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360953674,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1584705},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360953681,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":329,"tdur":267,"tts":1584712},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360953686,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":313,"tdur":251,"tts":1584717},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360954001,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8,"tdur":8,"tts":1584970},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360954016,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":105,"tdur":92,"tts":1584998},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360954035,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":85,"tdur":83,"tts":1585005},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360954055,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":50,"tdur":49,"tts":1585025},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360954139,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":15354,"tdur":1608,"tts":1585108},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360954143,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15348,"tdur":1601,"tts":1585112},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360969460,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":190},"dur":27,"tdur":24,"tts":1586685},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360969515,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1586738},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360969523,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":501,"tdur":368,"tts":1586746},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360969529,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":469,"tdur":335,"tts":1586752},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360970002,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":19,"tdur":18,"tts":1587093},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360970041,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1587132},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360970049,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":306,"tdur":219,"tts":1587140},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360970054,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":273,"tdur":186,"tts":1587145},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360970331,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":19,"tts":1587337},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360970373,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":495,"tdur":423,"tts":1587378},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360970379,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":238,"tdur":165,"tts":1587384},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360970621,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":245,"tdur":244,"tts":1587555},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360970672,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":190},"dur":38,"tdur":36,"tts":1587606},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531360970783,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1587717,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360970789,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":312},"dur":74,"tdur":73,"tts":1587722},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360970792,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":69,"tdur":69,"tts":1587725},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360970875,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":23,"tdur":23,"tts":1587808},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360971195,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1587882},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360971572,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":209,"tdur":137,"tts":1587954},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360971577,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":191,"tdur":119,"tts":1587959},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360971770,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":10,"tdur":9,"tts":1588080},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360971784,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":54,"tdur":54,"tts":1588094},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360971787,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":50,"tdur":50,"tts":1588097},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360971797,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":27,"tdur":25,"tts":1588108},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531360972908,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":30417,"tdur":1901,"tts":1588206},{"cat":"gpu","pid":25863,"tid":25870,"ts":531360972915,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":30407,"tdur":1893,"tts":1588211},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361003295,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":49},"dur":20,"tdur":17,"tts":1590079},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361003331,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1590114},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361003362,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":530,"tdur":388,"tts":1590144},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361003368,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":495,"tdur":351,"tts":1590151},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361003867,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":22,"tdur":19,"tts":1590510},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361003900,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1590540},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361003920,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":366,"tdur":241,"tts":1590561},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361003926,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":333,"tdur":208,"tts":1590566},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361004263,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":21,"tdur":20,"tts":1590780},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361004293,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":561,"tdur":421,"tts":1590810},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361004301,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":294,"tdur":153,"tts":1590818},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361004603,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":248,"tdur":247,"tts":1590982},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361004646,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":49},"dur":37,"tdur":36,"tts":1591024},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360976636,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":57,"tdur":57,"tts":107441},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360977277,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":43,"tdur":41,"tts":107562},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360978918,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":40,"tdur":38,"tts":107670},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360979095,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":42,"tdur":40,"tts":107741},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360979546,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":50,"tts":107845},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360979733,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":17,"tdur":16,"tts":107914},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360979795,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":30,"tdur":29,"tts":107943},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360980545,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":21,"tdur":20,"tts":108013},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360981489,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":51,"tdur":48,"tts":108095},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360981820,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":52,"tdur":49,"tts":108206},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360982095,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":53,"tdur":53,"tts":108294},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531360982151,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":11,"tdur":10,"tts":108350},{"cat":"toplevel","pid":25863,"tid":25911,"ts":531361048750,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"dur":31,"tdur":30,"tts":108399},{"cat":"__metadata","pid":25863,"tid":25911,"ts":0,"ph":"M","name":"overhead","args":{"average_overhead":0.0037748815165876775}},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531361004760,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1591139,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361004772,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":313},"dur":76,"tdur":74,"tts":1591151},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361004776,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":71,"tdur":70,"tts":1591154},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361004876,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1591254},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361004884,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":546,"tdur":414,"tts":1591262},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361004889,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":511,"tdur":378,"tts":1591267},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361005404,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":23,"tdur":22,"tts":1591651},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361005448,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":107,"tdur":106,"tts":1591695},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361005456,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":97,"tdur":97,"tts":1591702},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361005482,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":57,"tdur":56,"tts":1591729},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361005559,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":3065,"tdur":1992,"tts":1591806},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361005568,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":3053,"tdur":1980,"tts":1591815},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361008587,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":30},"dur":30,"tdur":28,"tts":1593763},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361008645,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":5,"tts":1593820},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361008654,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":360,"tdur":225,"tts":1593828},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361008659,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":334,"tdur":197,"tts":1593834},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361008996,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":15,"tts":1594036},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361009028,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1594068},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361009036,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":303,"tdur":163,"tts":1594075},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361009040,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":278,"tdur":136,"tts":1594080},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361009321,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":16,"tdur":16,"tts":1594220},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361009353,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":435,"tdur":340,"tts":1594253},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361009358,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":214,"tdur":119,"tts":1594258},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361009575,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":211,"tdur":210,"tts":1594381},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361009609,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":30},"dur":36,"tdur":35,"tts":1594415},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531361009709,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1594516,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361009715,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":314},"dur":68,"tdur":67,"tts":1594521},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361009718,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":64,"tdur":63,"tts":1594524},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361009793,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":5,"tts":1594599},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361009814,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":467,"tdur":329,"tts":1594620},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361009819,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":442,"tdur":303,"tts":1594625},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361010264,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":15,"tdur":15,"tts":1594932},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361010286,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":111,"tdur":110,"tts":1594955},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361010292,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":103,"tdur":102,"tts":1594961},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361010313,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":69,"tdur":67,"tts":1594982},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361010413,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":8196,"tdur":800,"tts":1595082},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361010420,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":8187,"tdur":789,"tts":1595089},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361018615,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":860,"tdur":858,"tts":1595889},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361018625,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":848,"tdur":848,"tts":1595898},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361019454,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":61},"dur":16,"tdur":13,"tts":1596729},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361019493,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1596767},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361019500,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":446,"tdur":304,"tts":1596774},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361019506,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":419,"tdur":278,"tts":1596779},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361019928,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":16,"tdur":15,"tts":1597061},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361019960,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":5,"tdur":4,"tts":1597093},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361019967,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":334,"tdur":179,"tts":1597100},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361019972,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":307,"tdur":152,"tts":1597105},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361020282,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":16,"tts":1597261},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361020315,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":490,"tdur":352,"tts":1597294},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361020320,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":248,"tdur":110,"tts":1597299},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361020571,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":232,"tdur":230,"tts":1597414},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361020603,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":61},"dur":35,"tdur":34,"tts":1597446},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531361020711,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1597554,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361020719,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":315},"dur":80,"tdur":80,"tts":1597561},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361020724,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":74,"tdur":73,"tts":1597566},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361020811,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":6,"tdur":4,"tts":1597654},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361020833,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":497,"tdur":366,"tts":1597675},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361020838,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":470,"tdur":339,"tts":1597680},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361021311,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":17,"tdur":15,"tts":1598024},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361021334,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":89,"tdur":88,"tts":1598046},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361021340,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":81,"tdur":80,"tts":1598052},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361021360,"ph":"X","name":"GLES2DecoderImpl::HandleTexImage2D","args":{"width":320,"height":640},"dur":48,"tdur":47,"tts":1598072},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361021438,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":26735,"tdur":1907,"tts":1598151},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361021445,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":26726,"tdur":1898,"tts":1598158},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361048152,"ph":"X","name":"GLES2DecoderImpl::DoProduceTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000","mailbox[0]":35},"dur":17,"tdur":16,"tts":1600038},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361048177,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":3,"tdur":2,"tts":1600063},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361048189,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":286,"tdur":170,"tts":1600074},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361048192,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":271,"tdur":154,"tts":1600077},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361048464,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":10,"tdur":9,"tts":1600234},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361048477,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"InsertSyncPoint"},"dur":2,"tdur":1,"tts":1600247},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361048486,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":110,"tdur":110,"tts":1600255},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361048489,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000"},"dur":106,"tdur":106,"tts":1600258},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361048505,"ph":"X","name":"GLES2DecoderImpl::DoConsumeTextureCHROMIUM","args":{"context":"GroupMarkerNotSet(crbug.com/242999)!:90BB3BFC167F0000","mailbox[0]":35},"dur":17,"tdur":16,"tts":1600275},{"cat":"test_gpu","pid":25863,"tid":25870,"ts":531361048557,"ph":"I","name":"SwapBuffersLatency","args":{"GLImpl":1,"width":320},"tts":1600327,"s":"t"},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361048560,"ph":"X","name":"GLES2DecoderImpl::DoSwapBuffers","args":{"offscreen":false,"frame":316},"dur":34,"tdur":34,"tts":1600329},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361048561,"ph":"X","name":"NativeViewGLSurfaceGLX:RealSwapBuffers","args":{"width":320,"height":640},"dur":32,"tdur":32,"tts":1600330},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361048598,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"MakeProgress"},"dur":16,"tdur":15,"tts":1600368},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361048621,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/services/gles2/command_buffer_impl.cc","src_func":"Flush"},"dur":378,"tdur":302,"tts":1600390},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361048623,"ph":"X","name":"GLContextGLX::MakeCurrent","args":{},"dur":365,"tdur":289,"tts":1600392},{"cat":"gpu","pid":25863,"tid":25870,"ts":531361048989,"ph":"X","name":"GpuScheduler:PutChanged","args":{"decoder":"GroupMarkerNotSet(crbug.com/242999)!:B01953FC167F0000"},"dur":9,"tdur":8,"tts":1600683},{"cat":"toplevel","pid":25863,"tid":25870,"ts":531361049002,"ph":"X","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/common/handle_watcher.cc","src_func":"RemoveAndNotify"},"tdur":0,"tts":1600696},{"cat":"__metadata","pid":25863,"tid":25870,"ts":0,"ph":"M","name":"overhead","args":{"average_overhead":0.0038832684824902726}},{"cat":"__metadata","pid":25863,"tid":0,"ts":0,"ph":"M","name":"num_cpus","args":{"number":32}},{"cat":"__metadata","pid":25863,"tid":25873,"ts":0,"ph":"M","name":"thread_name","args":{"name":"handle-watcher-thread"}},{"cat":"__metadata","pid":25863,"tid":25911,"ts":0,"ph":"M","name":"thread_name","args":{"name":"gpu_command_buffer_control"}}]}
\ No newline at end of file
diff --git a/testing/android/junit/java/src/org/chromium/testing/local/GtestFilter.java b/testing/android/junit/java/src/org/chromium/testing/local/GtestFilter.java
index 68dcbb8..d5527aa 100644
--- a/testing/android/junit/java/src/org/chromium/testing/local/GtestFilter.java
+++ b/testing/android/junit/java/src/org/chromium/testing/local/GtestFilter.java
@@ -9,6 +9,7 @@
 
 import java.util.HashSet;
 import java.util.Set;
+import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
 /**
@@ -24,6 +25,7 @@
     private static final Pattern ASTERISK = Pattern.compile("\\*");
     private static final Pattern COLON = Pattern.compile(":");
     private static final Pattern DASH = Pattern.compile("-");
+    private static final Pattern DOLLAR = Pattern.compile("\\$");
     private static final Pattern PERIOD = Pattern.compile("\\.");
 
     /**
@@ -39,7 +41,8 @@
         for (String f : filterStrings) {
             if (f.isEmpty()) continue;
 
-            String sanitized = PERIOD.matcher(f).replaceAll("\\\\.");
+            String sanitized = PERIOD.matcher(f).replaceAll(Matcher.quoteReplacement("\\."));
+            sanitized = DOLLAR.matcher(sanitized).replaceAll(Matcher.quoteReplacement("\\$"));
             sanitized = ASTERISK.matcher(sanitized).replaceAll(".*");
             int negIndex = sanitized.indexOf('-');
             if (negIndex == 0) {
diff --git a/testing/android/junit/javatests/src/org/chromium/testing/local/GtestFilterTest.java b/testing/android/junit/javatests/src/org/chromium/testing/local/GtestFilterTest.java
index 7b0e0f5..a19b379 100644
--- a/testing/android/junit/javatests/src/org/chromium/testing/local/GtestFilterTest.java
+++ b/testing/android/junit/javatests/src/org/chromium/testing/local/GtestFilterTest.java
@@ -17,102 +17,108 @@
 @RunWith(BlockJUnit4ClassRunner.class)
 public class GtestFilterTest {
 
+    private class TestClass {}
+    private class OtherTestClass {}
+
     @Test
     public void testDescription() {
-        Filter filterUnderTest = new GtestFilter("TestClass.*");
-        Assert.assertEquals("gtest-filter: TestClass.*", filterUnderTest.describe());
+        Filter filterUnderTest = new GtestFilter(TestClass.class.getName() + ".*");
+        Assert.assertEquals("gtest-filter: " + TestClass.class.getName() + ".*",
+                filterUnderTest.describe());
     }
 
     @Test
     public void testNoFilter() {
         Filter filterUnderTest = new GtestFilter("");
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "testMethod")));
+                Description.createTestDescription(TestClass.class, "testMethod")));
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "otherTestMethod")));
+                Description.createTestDescription(TestClass.class, "otherTestMethod")));
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("OtherTestClass", "testMethod")));
+                Description.createTestDescription(OtherTestClass.class, "testMethod")));
     }
 
     @Test
     public void testPositiveFilterExplicit() {
-        Filter filterUnderTest = new GtestFilter("TestClass.testMethod");
+        Filter filterUnderTest = new GtestFilter(TestClass.class.getName() + ".testMethod");
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "testMethod")));
+                Description.createTestDescription(TestClass.class, "testMethod")));
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "otherTestMethod")));
+                Description.createTestDescription(TestClass.class, "otherTestMethod")));
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("OtherTestClass", "testMethod")));
+                Description.createTestDescription(OtherTestClass.class, "testMethod")));
     }
 
     @Test
     public void testPositiveFilterClassRegex() {
-        Filter filterUnderTest = new GtestFilter("TestClass.*");
+        Filter filterUnderTest = new GtestFilter(TestClass.class.getName() + ".*");
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "testMethod")));
+                Description.createTestDescription(TestClass.class, "testMethod")));
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "otherTestMethod")));
+                Description.createTestDescription(TestClass.class, "otherTestMethod")));
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("OtherTestClass", "testMethod")));
+                Description.createTestDescription(OtherTestClass.class, "testMethod")));
     }
 
     @Test
     public void testNegativeFilterExplicit() {
-        Filter filterUnderTest = new GtestFilter("-TestClass.testMethod");
+        Filter filterUnderTest = new GtestFilter("-" + TestClass.class.getName() + ".testMethod");
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "testMethod")));
+                Description.createTestDescription(TestClass.class, "testMethod")));
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "otherTestMethod")));
+                Description.createTestDescription(TestClass.class, "otherTestMethod")));
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("OtherTestClass", "testMethod")));
+                Description.createTestDescription(OtherTestClass.class, "testMethod")));
     }
 
     @Test
     public void testNegativeFilterClassRegex() {
-        Filter filterUnderTest = new GtestFilter("-TestClass.*");
+        Filter filterUnderTest = new GtestFilter("-" + TestClass.class.getName() + ".*");
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "testMethod")));
+                Description.createTestDescription(TestClass.class, "testMethod")));
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "otherTestMethod")));
+                Description.createTestDescription(TestClass.class, "otherTestMethod")));
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("OtherTestClass", "testMethod")));
+                Description.createTestDescription(OtherTestClass.class, "testMethod")));
     }
 
     @Test
     public void testPositiveAndNegativeFilter() {
-        Filter filterUnderTest = new GtestFilter("TestClass.*-TestClass.testMethod");
+        Filter filterUnderTest = new GtestFilter(TestClass.class.getName() + ".*"
+                + "-" + TestClass.class.getName() + ".testMethod");
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "testMethod")));
+                Description.createTestDescription(TestClass.class, "testMethod")));
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "otherTestMethod")));
+                Description.createTestDescription(TestClass.class, "otherTestMethod")));
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("OtherTestClass", "testMethod")));
+                Description.createTestDescription(OtherTestClass.class, "testMethod")));
     }
 
     @Test
     public void testMultiplePositiveFilters() {
         Filter filterUnderTest = new GtestFilter(
-                "TestClass.otherTestMethod:OtherTestClass.otherTestMethod");
+                TestClass.class.getName() + ".otherTestMethod:"
+                + OtherTestClass.class.getName() + ".otherTestMethod");
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "testMethod")));
+                Description.createTestDescription(TestClass.class, "testMethod")));
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "otherTestMethod")));
+                Description.createTestDescription(TestClass.class, "otherTestMethod")));
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("OtherTestClass", "testMethod")));
+                Description.createTestDescription(OtherTestClass.class, "testMethod")));
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("OtherTestClass", "otherTestMethod")));
+                Description.createTestDescription(OtherTestClass.class, "otherTestMethod")));
     }
 
     @Test
     public void testMultipleFiltersPositiveAndNegative() {
-        Filter filterUnderTest = new GtestFilter("TestClass.*:-TestClass.testMethod");
+        Filter filterUnderTest = new GtestFilter(TestClass.class.getName() + ".*:"
+                + "-" + TestClass.class.getName() + ".testMethod");
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "testMethod")));
+                Description.createTestDescription(TestClass.class, "testMethod")));
         Assert.assertTrue(filterUnderTest.shouldRun(
-                Description.createTestDescription("TestClass", "otherTestMethod")));
+                Description.createTestDescription(TestClass.class, "otherTestMethod")));
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("OtherTestClass", "testMethod")));
+                Description.createTestDescription(OtherTestClass.class, "testMethod")));
     }
-
 }
 
diff --git a/testing/android/junit/javatests/src/org/chromium/testing/local/GtestLoggerTest.java b/testing/android/junit/javatests/src/org/chromium/testing/local/GtestLoggerTest.java
index 2bb3040..0520901 100644
--- a/testing/android/junit/javatests/src/org/chromium/testing/local/GtestLoggerTest.java
+++ b/testing/android/junit/javatests/src/org/chromium/testing/local/GtestLoggerTest.java
@@ -114,9 +114,9 @@
 
         Set<Description> failures = new TreeSet<Description>(new DescriptionComparator());
         failures.add(Description.createTestDescription(
-                "GtestLoggerTest", "testTestRunFinishedNoFailures"));
+                GtestLoggerTest.class, "testTestRunFinishedNoFailures"));
         failures.add(Description.createTestDescription(
-                "GtestLoggerTest", "testTestRunFinishedWithFailures"));
+                GtestLoggerTest.class, "testTestRunFinishedWithFailures"));
 
         loggerUnderTest.testRunFinished(1232, failures, 4312);
         Assert.assertEquals(
@@ -124,8 +124,10 @@
                         + "[==========] 1234 tests ran. (4312 ms total)\n"
                         + "[  PASSED  ] 1232 tests.\n"
                         + "[  FAILED  ] 2 tests.\n"
-                        + "[  FAILED  ] GtestLoggerTest.testTestRunFinishedNoFailures\n"
-                        + "[  FAILED  ] GtestLoggerTest.testTestRunFinishedWithFailures\n"
+                        + "[  FAILED  ] org.chromium.testing.local.GtestLoggerTest"
+                        + ".testTestRunFinishedNoFailures\n"
+                        + "[  FAILED  ] org.chromium.testing.local.GtestLoggerTest"
+                        + ".testTestRunFinishedWithFailures\n"
                         + "\n",
                 actual.toString());
     }
diff --git a/testing/android/junit/javatests/src/org/chromium/testing/local/RunnerFilterTest.java b/testing/android/junit/javatests/src/org/chromium/testing/local/RunnerFilterTest.java
index 9a73be7..9f54bfa 100644
--- a/testing/android/junit/javatests/src/org/chromium/testing/local/RunnerFilterTest.java
+++ b/testing/android/junit/javatests/src/org/chromium/testing/local/RunnerFilterTest.java
@@ -18,6 +18,8 @@
 @RunWith(BlockJUnit4ClassRunner.class)
 public class RunnerFilterTest {
 
+    private class FakeTestClass {}
+
     @Test
     public void testDescription() {
         Filter filterUnderTest = new RunnerFilter(BlockJUnit4ClassRunner.class);
@@ -50,7 +52,7 @@
     public void testClassNotFound() {
         Filter filterUnderTest = new RunnerFilter(BlockJUnit4ClassRunner.class);
         Assert.assertFalse(filterUnderTest.shouldRun(
-                Description.createTestDescription("FakeTestClass", "fakeTestMethod")));
+                Description.createTestDescription(FakeTestClass.class, "fakeTestMethod")));
     }
 }
 
diff --git a/testing/chromoting/browser_test_commands_linux.txt b/testing/chromoting/browser_test_commands_linux.txt
index 3b6a61b..2c3d462 100644
--- a/testing/chromoting/browser_test_commands_linux.txt
+++ b/testing/chromoting/browser_test_commands_linux.txt
@@ -1,6 +1,6 @@
-/usr/bin/python ../xvfb.py $(PROD_DIR) $(PROD_DIR)/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Launch --run-manual --ui-test-action-timeout=100000 --webapp-unpacked=$(PROD_DIR)/remoting/remoting.webapp --extension-name=Chromoting
-/usr/bin/python ../xvfb.py $(PROD_DIR) $(PROD_DIR)/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Auth --run-manual --ui-test-action-timeout=100000 --webapp-unpacked=$(PROD_DIR)/remoting/remoting.webapp --extension-name=Chromoting --accounts-file=../../remoting/tools/internal/test_accounts.json --account-type=gmail
-/usr/bin/python ../xvfb.py $(PROD_DIR) $(PROD_DIR)/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Auth --run-manual --ui-test-action-timeout=100000 --webapp-unpacked=$(PROD_DIR)/remoting/remoting.webapp --extension-name=Chromoting --accounts-file=../../remoting/tools/internal/test_accounts.json --account-type=gafyd
-/usr/bin/python ../xvfb.py $(PROD_DIR) $(PROD_DIR)/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Auth --run-manual --ui-test-action-timeout=100000 --webapp-unpacked=$(PROD_DIR)/remoting/remoting.webapp --extension-name=Chromoting --accounts-file=../../remoting/tools/internal/test_accounts.json --account-type=non-gmail
-/usr/bin/python ../xvfb.py $(PROD_DIR) $(PROD_DIR)/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Launch --run-manual --ui-test-action-timeout=100000 --webapp-unpacked=$(PROD_DIR)/remoting/remoting.webapp.v2 --extension-name=Chromoting
-/usr/bin/python ../xvfb.py $(PROD_DIR) $(PROD_DIR)/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Auth --run-manual --ui-test-action-timeout=20000 --webapp-unpacked=$(PROD_DIR)/remoting/remoting.webapp.v2 --extension-name=Chromoting --accounts-file=../../remoting/tools/internal/test_accounts.json --account-type=gmail
+/usr/bin/python ../xvfb.py #PROD_DIR# #PROD_DIR#/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Launch --run-manual --ui-test-action-timeout=100000 --webapp-unpacked=#PROD_DIR#/remoting/remoting.webapp --extension-name=Chromoting
+/usr/bin/python ../xvfb.py #PROD_DIR# #PROD_DIR#/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Auth --run-manual --ui-test-action-timeout=100000 --webapp-unpacked=#PROD_DIR#/remoting/remoting.webapp --extension-name=Chromoting --accounts-file=../../remoting/tools/internal/test_accounts.json --account-type=gmail
+/usr/bin/python ../xvfb.py #PROD_DIR# #PROD_DIR#/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Auth --run-manual --ui-test-action-timeout=100000 --webapp-unpacked=#PROD_DIR#/remoting/remoting.webapp --extension-name=Chromoting --accounts-file=../../remoting/tools/internal/test_accounts.json --account-type=gafyd
+/usr/bin/python ../xvfb.py #PROD_DIR# #PROD_DIR#/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Auth --run-manual --ui-test-action-timeout=100000 --webapp-unpacked=#PROD_DIR#/remoting/remoting.webapp --extension-name=Chromoting --accounts-file=../../remoting/tools/internal/test_accounts.json --account-type=non-gmail
+/usr/bin/python ../xvfb.py #PROD_DIR# #PROD_DIR#/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Launch --run-manual --ui-test-action-timeout=100000 --webapp-unpacked=#PROD_DIR#/remoting/remoting.webapp.v2 --extension-name=Chromoting
+/usr/bin/python ../xvfb.py #PROD_DIR# #PROD_DIR#/browser_tests --gtest_filter=RemoteDesktopBrowserTest.MANUAL_Auth --run-manual --ui-test-action-timeout=20000 --webapp-unpacked=#PROD_DIR#/remoting/remoting.webapp.v2 --extension-name=Chromoting --accounts-file=../../remoting/tools/internal/test_accounts.json --account-type=gmail
diff --git a/testing/chromoting/browser_tests_launcher.py b/testing/chromoting/browser_tests_launcher.py
index 8f4bba1..4347287 100644
--- a/testing/chromoting/browser_tests_launcher.py
+++ b/testing/chromoting/browser_tests_launcher.py
@@ -5,36 +5,112 @@
 
 """Utility script to launch browser-tests on the Chromoting bot."""
 import argparse
+import hashlib
+import os
+from os.path import expanduser
+import shutil
+import socket
 import subprocess
 
-PROD_DIR_ID = '$(PROD_DIR)'
+BROWSER_TEST_ID = 'browser_tests'
+PROD_DIR_ID = '#PROD_DIR#'
+HOST_HASH_VALUE = hashlib.md5(socket.gethostname()).hexdigest()
+SUCCESS_INDICATOR = 'SUCCESS: all tests passed.'
+NATIVE_MESSAGING_DIR = 'NativeMessagingHosts'
+CRD_ID = 'chrome-remote-desktop'  # Used in a few file/folder names
 
 
 def LaunchCommand(command):
-
   cmd_line = [command]
   try:
     p = subprocess.Popen(cmd_line, stdout=subprocess.PIPE, shell=True)
     results, err = p.communicate()
-    if 'SUCCESS: all tests passed.' not in results:
-      raise Exception('Test failed\n%s\n%s' % (results, err))
+    # Check that the test passed.
+    if SUCCESS_INDICATOR not in results:
+      raise Exception(
+          'Test failed. Command:%s\nResults:%s\nError:%s\n' %
+          (command, results, err))
   except subprocess.CalledProcessError, e:
     raise Exception('Exception %s running command %s' % (e, command))
   else:
     print results
 
 
-def main():
+def InitialiseTestMachineForLinux(cfg_file, manifest_file, user_profile_dir):
+  """Sets up a Linux machine for connect-to-host browser-tests.
 
+  Copy over me2me host-config and manifest files to expected locations.
+  By default, the Linux me2me host expects the host-config file to be under
+  $HOME/.config/chrome-remote-desktop
+  Its name is expected to have a hash that is specific to a machine.
+
+  When a user launches the remoting web-app, the native-message host process is
+  started. For this to work, the manifest file for me2me host is expected to be
+  in a specific folder under the user-profile dir.
+
+  This function performs both the above tasks.
+
+  TODO(anandc):
+  Once we have Linux machines in the swarming lab already installed with the
+  me2me host, this function should also perform the step of starting the host.
+  That is gated on this CL: https://chromereviews.googleplex.com/123957013/, and
+  then having base images in the chrome-labs be updated with it.
+
+  Args:
+    cfg_file: location of test account's host-config file.
+    manifest_file: location of me2me host manifest file.
+    user_profile_dir: user-profile-dir to be used by the connect-to-host tests.
+  """
+
+  # First get home directory on current machine.
+  home_dir = expanduser('~')
+  default_config_file_location = os.path.join(home_dir, '.config', CRD_ID)
+  if os.path.exists(default_config_file_location):
+    shutil.rmtree(default_config_file_location)
+  os.makedirs(default_config_file_location)
+
+  # Copy over test host-config to expected location, with expected file-name.
+  # The file-name should contain a hash-value that is machine-specific.
+  default_config_file_name = 'host#%s.json' % HOST_HASH_VALUE
+  config_file_src = os.path.join(os.getcwd(), cfg_file)
+  shutil.copyfile(
+      config_file_src,
+      os.path.join(default_config_file_location, default_config_file_name))
+
+  # Next, create a user-profile dir, and place the me2me manifest.json file in
+  # the expected location for native-messating-host to work properly.
+  native_messaging_folder = os.path.join(user_profile_dir, NATIVE_MESSAGING_DIR)
+
+  if os.path.exists(native_messaging_folder):
+    shutil.rmtree(native_messaging_folder)
+  os.makedirs(native_messaging_folder)
+
+  manifest_file_src = os.path.join(os.getcwd(), manifest_file)
+  manifest_file_dest = (
+      os.path.join(native_messaging_folder, os.path.basename(manifest_file)))
+  shutil.copyfile(manifest_file_src, manifest_file_dest)
+
+
+def main():
   parser = argparse.ArgumentParser()
-  parser.add_argument('-f', '--file',
+  parser.add_argument('-f', '--commands_file',
                       help='path to file listing commands to be launched.')
   parser.add_argument('-p', '--prod_dir',
                       help='path to folder having product and test binaries.')
+  parser.add_argument('-c', '--cfg_file',
+                      help='path to test host config file.')
+  parser.add_argument('-m', '--manifest_file',
+                      help='path to me2me host manifest file.')
+  parser.add_argument(
+      '-u', '--user_profile_dir',
+      help='path to user-profile-dir, used by connect-to-host tests.')
 
   args = parser.parse_args()
 
-  with open(args.file) as f:
+  InitialiseTestMachineForLinux(args.cfg_file, args.manifest_file,
+                                args.user_profile_dir)
+
+  with open(args.commands_file) as f:
     for line in f:
       # Replace the PROD_DIR value in the command-line with
       # the passed in value.
diff --git a/testing/chromoting/chromoting_integration_tests.isolate b/testing/chromoting/chromoting_integration_tests.isolate
index cdfd8c4..88fe162 100644
--- a/testing/chromoting/chromoting_integration_tests.isolate
+++ b/testing/chromoting/chromoting_integration_tests.isolate
@@ -7,10 +7,16 @@
       'variables': {
         'command': [
           './browser_tests_launcher.py',
-          '-f',
+          '--commands_file',
           './browser_test_commands_linux.txt',
-          '-p',
+          '--prod_dir',
           '<(PRODUCT_DIR)',
+          '--cfg_file',
+          '../../remoting/tools/internal/test-account-host-config.json',
+          '--manifest_file',
+          '<(PRODUCT_DIR)/remoting/com.google.chrome.remote_desktop.json',
+          '--user_profile_dir',
+          '/tmp/chromoting_test_profile',
         ],
         'files': [
           '../xvfb.py',
@@ -19,6 +25,8 @@
           '<(PRODUCT_DIR)/libffmpegsumo.so',
           '<(PRODUCT_DIR)/libosmesa.so',
           '<(PRODUCT_DIR)/nacl_irt_x86_64.nexe',
+          '../../remoting/tools/internal/test-account-host-config.json',
+          '<(PRODUCT_DIR)/remoting/com.google.chrome.remote_desktop.json',
         ],
       },
     }],
@@ -37,7 +45,7 @@
           '<(PRODUCT_DIR)/remoting/remoting.webapp/',
           '<(PRODUCT_DIR)/remoting/remoting.webapp.v2/',
           '<(PRODUCT_DIR)/resources.pak',
-          '../../remoting/tools/internal/test_accounts.json',          
+          '../../remoting/tools/internal/test_accounts.json',
         ],
         'read_only': 1,
       },
@@ -83,5 +91,6 @@
   ],
   'includes': [
     '../../base/base.isolate',
+    '../../gin/v8.isolate',
   ],
-}
\ No newline at end of file
+}
diff --git a/testing/chromoting/integration_tests.gyp b/testing/chromoting/integration_tests.gyp
index 78c1368..2588d24 100644
--- a/testing/chromoting/integration_tests.gyp
+++ b/testing/chromoting/integration_tests.gyp
@@ -26,7 +26,7 @@
                 '../../remoting/remoting.gyp:remoting_me2me_host_archive',
               ],
             }],  # OS=="linux"
-          ],          
+          ],
         },
       ],
     }],
diff --git a/third_party/boringssl/BUILD.gn b/third_party/boringssl/BUILD.gn
index ccd8424..88676ad 100644
--- a/third_party/boringssl/BUILD.gn
+++ b/third_party/boringssl/BUILD.gn
@@ -7,9 +7,7 @@
   include_dirs = []
   include_dirs += [ "src/include" ]
   if (is_component_build) {
-    defines = [
-      "BORINGSSL_SHARED_LIBRARY",
-    ]
+    defines = [ "BORINGSSL_SHARED_LIBRARY" ]
   }
 }
 
@@ -19,11 +17,11 @@
 }
 
 # The list of BoringSSL files is kept in boringssl.gypi.
-gypi_values = exec_script(
-    "//build/gypi_to_gn.py",
-    [ rebase_path("//third_party/boringssl/boringssl.gypi") ],
-    "scope",
-    [ "//third_party/boringssl/boringssl.gypi" ])
+gypi_values =
+    exec_script("//build/gypi_to_gn.py",
+                [ rebase_path("//third_party/boringssl/boringssl.gypi") ],
+                "scope",
+                [ "//third_party/boringssl/boringssl.gypi" ])
 
 # Windows' assembly is built with Yasm. The other platforms use the platform
 # assembler.
@@ -49,9 +47,7 @@
     "BORINGSSL_NO_STATIC_INITIALIZER",
   ]
   if (is_component_build) {
-    defines += [
-      "BORINGSSL_SHARED_LIBRARY",
-    ]
+    defines += [ "BORINGSSL_SHARED_LIBRARY" ]
   }
 
   configs -= [ "//build/config/compiler:chromium_code" ]
@@ -60,6 +56,7 @@
   # Also gets the include dirs from :openssl_config
   include_dirs = [
     "src/include",
+
     # This is for arm_arch.h, which is needed by some asm files. Since the
     # asm files are generated and kept in a different directory, they
     # cannot use relative paths to find this file.
@@ -69,7 +66,7 @@
   if (is_win) {
     # TODO(davidben): Fix size_t truncations in BoringSSL.
     # https://crbug.com/429039
-    cflags += [ "/wd4267"]
+    cflags += [ "/wd4267" ]
   }
 
   if (cpu_arch == "x64") {
diff --git a/third_party/brotli/BUILD.gn b/third_party/brotli/BUILD.gn
index 73fb5b9..fa856ee 100644
--- a/third_party/brotli/BUILD.gn
+++ b/third_party/brotli/BUILD.gn
@@ -42,7 +42,9 @@
   configs -= [ "//build/config/compiler:chromium_code" ]
   configs += [ "//build/config/compiler:no_chromium_code" ]
 
-  deps = [ ":brotli" ]
+  deps = [
+    ":brotli",
+  ]
 
   include_dirs = [
     "src/brotli/dec",
diff --git a/third_party/cython/cython_compiler.gypi b/third_party/cython/cython_compiler.gypi
deleted file mode 100644
index ca974a2..0000000
--- a/third_party/cython/cython_compiler.gypi
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 2014 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.
-
-{
-  'variables': {
-    'python_flags': '<(DEPTH)/third_party/cython/python_flags.py',
-  },
-  'conditions': [
-    ['OS=="mac"', {
-      'variables': {
-        'module_prefix': '',
-        'module_suffix': '.so',
-      },
-    }, {
-      'variables': {
-        'module_prefix': '<(SHARED_LIB_PREFIX)',
-        'module_suffix': '<(SHARED_LIB_SUFFIX)',
-      },
-    }],
-  ],
-  'type': 'loadable_module',
-  'rules': [
-    {
-      'rule_name': '<(_target_name)_cython_compiler',
-      'extension': 'pyx',
-      'variables': {
-        'cython_compiler': '<(DEPTH)/third_party/cython/src/cython.py',
-      },
-      'inputs': [
-        '<(cython_compiler)',
-      ],
-      'outputs': [
-        '<(SHARED_INTERMEDIATE_DIR)/cython/<(python_base_module)/<(RULE_INPUT_ROOT).cc',
-      ],
-      'action': [
-        'python', '<(cython_compiler)',
-        '--cplus',
-        '-I<(DEPTH)',
-        '-o', '<@(_outputs)',
-        '<(RULE_INPUT_PATH)',
-      ],
-      'message': 'Generating C++ source from <(RULE_INPUT_PATH)',
-      'process_outputs_as_sources': 1,
-    }
-  ],
-  'include_dirs': [
-    '<!@(python <(python_flags) --includes)',
-    '<(DEPTH)',
-  ],
-  'libraries': [
-    '<!@(python <(python_flags) --libraries)',
-  ],
-  'cflags': [
-    '-Wno-unused-function',
-  ],
-  'xcode_settings': {
-    'WARNING_CFLAGS': [ '-Wno-unused-function' ],
-  },
-  'library_dirs': [
-    '<!@(python <(python_flags) --library_dirs)',
-  ],
-  'hard_dependency': 1,
-}
diff --git a/third_party/cython/python_flags.py b/third_party/cython/python_flags.py
index b10aece..492c9a9 100644
--- a/third_party/cython/python_flags.py
+++ b/third_party/cython/python_flags.py
@@ -16,9 +16,6 @@
   """
   parser = argparse.ArgumentParser(
       description='Retrieves compilation options for python modules.')
-  parser.add_argument('--gn',
-                      help='Returns all values in a format suitable for gn',
-                      action='store_true')
   parser.add_argument('--libraries', help='Returns libraries',
                       action='store_true')
   parser.add_argument('--includes', help='Returns includes',
@@ -36,11 +33,6 @@
     libraries = b.get_libraries(ext)
     if sys.platform == 'darwin':
       libraries.append('python%s' % sys.version[:3])
-    if not opts.gn and sys.platform in ['darwin', 'linux2']:
-      # In case of GYP output for darwin and linux prefix all
-      # libraries (if there are any) so the result can be used as a
-      # compiler argument. GN handles platform-appropriate prefixing itself.
-      libraries = ['-l%s' % library for library in libraries]
     result.extend(libraries)
   if opts.includes:
     result = result  + b.include_dirs
@@ -48,11 +40,8 @@
     if sys.platform == 'darwin':
       result.append('%s/lib' % sysconfig.get_config_vars('prefix')[0])
 
-  if opts.gn:
-    for x in result:
-      print x
-  else:
-    print ''.join(['"%s"' % x for x in result])
+  for x in result:
+    print x
 
 if __name__ == '__main__':
   main()
diff --git a/third_party/cython/rules.gni b/third_party/cython/rules.gni
index efd9ca3..cea1e36 100644
--- a/third_party/cython/rules.gni
+++ b/third_party/cython/rules.gni
@@ -2,20 +2,78 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-template("python_binary_module") {
+template("python_binary_module_sources") {
   # Only available on linux for now.
   assert(is_linux)
   assert(defined(invoker.sources))
-  assert(defined(invoker.python_base_module))
 
   cython_root = "//third_party/cython"
   cython_script = "$cython_root/src/cython.py"
   cython_output = "${target_out_dir}/${target_name}.cc"
 
   generator_target_name = target_name + "_cython_compiler"
-  shared_library_name = target_name + "_shared_library"
   config_name = target_name + "_python_config"
 
+  target_visibility = [ ":$target_name" ]
+
+  action(generator_target_name) {
+    visibility = target_visibility
+    script = cython_script
+    sources = invoker.sources
+    outputs = [ cython_output ]
+    args = [
+             "--cplus",
+             "-I",
+             rebase_path("//", root_build_dir),
+             "-o",
+             rebase_path(cython_output, root_build_dir),
+           ] + rebase_path(sources, root_build_dir)
+  }
+
+  config(config_name) {
+    visibility = target_visibility
+    python_flags = "//third_party/cython/python_flags.py"
+    include_dirs = exec_script(python_flags, [ "--includes" ], "list lines")
+    libs = exec_script(python_flags, [ "--libraries" ], "list lines")
+    lib_dirs = exec_script(python_flags, [ "--library_dirs" ], "list lines")
+    if (!is_win) {
+      # Generated code includes static utility functions that often go unused.
+      cflags = [ "-Wno-unused-function" ]
+    }
+  }
+
+  source_set(target_name) {
+    deps = [
+      ":$generator_target_name",
+    ]
+    if (defined(invoker.visibility)) {
+      visibility = invoker.visibility
+    }
+    if (defined(invoker.deps)) {
+      deps += invoker.deps
+    }
+    if (defined(invoker.datadeps)) {
+      datadeps = invoker.datadeps
+    }
+    sources = [
+      cython_output,
+    ]
+    if (defined(invoker.additional_sources)) {
+      sources += invoker.additional_sources
+    }
+    all_dependent_configs = [ ":$config_name" ]
+  }
+}
+
+template("python_binary_module") {
+  # Only available on linux for now.
+  assert(is_linux)
+  assert(defined(invoker.sources))
+  assert(defined(invoker.python_base_module))
+
+  sources_target_name = target_name + "_cython_sources"
+  shared_library_name = target_name + "_shared_library"
+
   if (is_linux) {
     shared_library_prefix = "lib"
     shared_library_suffix = ".so"
@@ -23,47 +81,20 @@
   }
 
   target_visibility = [
-    ":$generator_target_name",
+    ":$sources_target_name",
     ":$shared_library_name",
     ":$target_name",
   ]
 
-  action(generator_target_name) {
+  python_binary_module_sources(sources_target_name) {
     visibility = target_visibility
-    script = cython_script
     sources = invoker.sources
-    outputs = [ cython_output ]
-    args = [
-      "--cplus",
-      "-I", rebase_path("//", root_build_dir),
-      "-o", rebase_path(cython_output, root_build_dir),
-    ] + rebase_path(sources, root_build_dir)
-  }
-
-  config(config_name) {
-    visibility = target_visibility
-    python_flags = "//third_party/cython/python_flags.py"
-    include_dirs = exec_script(python_flags,
-                               [ "--gn", "--includes" ],
-                               "list lines")
-    libs = exec_script(python_flags,
-                       [ "--gn", "--libraries" ],
-                       "list lines")
-    lib_dirs = exec_script(python_flags,
-                           [ "--gn", "--library_dirs" ],
-                           "list lines")
-    if (!is_win) {
-      # Generated code includes static utility functions that often go unused.
-      cflags = [
-        "-Wno-unused-function",
-      ]
-    }
   }
 
   shared_library(shared_library_name) {
     visibility = target_visibility
     deps = [
-      ":$generator_target_name",
+      ":$sources_target_name",
     ]
     if (defined(invoker.deps)) {
       deps += invoker.deps
@@ -71,11 +102,9 @@
     if (defined(invoker.datadeps)) {
       datadeps = invoker.datadeps
     }
-    sources = [ cython_output ]
     if (defined(invoker.additional_sources)) {
-      sources += invoker.additional_sources
+      sources = invoker.additional_sources
     }
-    configs += [ ":$config_name" ]
     if (defined(invoker.configs)) {
       configs += invoker.configs
     }
@@ -84,13 +113,12 @@
   copy(target_name) {
     python_base_module = invoker.python_base_module
     sources = [
-      "$root_out_dir/${shared_library_prefix}${shared_library_name}${shared_library_suffix}"
+      "$root_out_dir/${shared_library_prefix}${shared_library_name}${shared_library_suffix}",
     ]
-    outputs = [
-      "$root_out_dir/python/$python_base_module/${target_name}${python_module_suffix}"
-    ]
+    outputs =
+        [ "$root_out_dir/python/$python_base_module/${target_name}${python_module_suffix}" ]
     deps = [
-      ":$shared_library_name"
+      ":$shared_library_name",
     ]
   }
 }
diff --git a/third_party/freetype2/BUILD.gn b/third_party/freetype2/BUILD.gn
index 18ef5f5..fe3d921 100644
--- a/third_party/freetype2/BUILD.gn
+++ b/third_party/freetype2/BUILD.gn
@@ -5,7 +5,10 @@
 assert(is_linux, "This file should only be depended on from Linux.")
 
 config("freetype2_config") {
-  include_dirs = [ "include", "src/include" ]
+  include_dirs = [
+    "include",
+    "src/include",
+  ]
 }
 
 shared_library("freetype2") {
@@ -56,7 +59,6 @@
   defines = [
     "FT_CONFIG_OPTION_SYSTEM_ZLIB",
     "FT2_BUILD_LIBRARY",
-
     "FT_CONFIG_CONFIG_H=<ftconfig.h>",  # See comments in README.chromium.
     "FT_CONFIG_MODULES_H=<ftmodule.h>",  # See comments in README.chromium.
   ]
@@ -64,7 +66,7 @@
   configs -= [ "//build/config/compiler:chromium_code" ]
   configs += [ "//build/config/compiler:no_chromium_code" ]
   configs += [ ":freetype2_config" ]
- 
+
   public_configs = [ ":freetype2_config" ]
 
   libs = [ "z" ]
diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn
index 195c5c8..a1b25eb 100644
--- a/third_party/harfbuzz-ng/BUILD.gn
+++ b/third_party/harfbuzz-ng/BUILD.gn
@@ -28,10 +28,12 @@
     # Use the system harfbuzz for newer versions of pangoft, and not for older
     # ones. pangoft links to the system harfbuzz starting with 1.31.0, which
     # causes duplicate symbols when we link our own version.
-    use_system_harfbuzz = exec_script(
-        pkg_config_script,
-        pkg_config_args + [ "--atleast-version=1.31.0", "pangoft2" ],
-        "value")
+    use_system_harfbuzz = exec_script(pkg_config_script,
+                                      pkg_config_args + [
+                                            "--atleast-version=1.31.0",
+                                            "pangoft2",
+                                          ],
+                                      "value")
   } else {
     use_system_harfbuzz = false
   }
@@ -45,7 +47,6 @@
   group("harfbuzz-ng") {
     public_configs = [ ":harfbuzz_pkgconfig" ]
   }
-
 } else {
   config("harfbuzz-ng_config") {
     include_dirs = [ "src" ]
diff --git a/third_party/iccjpeg/BUILD.gn b/third_party/iccjpeg/BUILD.gn
index 86bdd73..4c4a995 100644
--- a/third_party/iccjpeg/BUILD.gn
+++ b/third_party/iccjpeg/BUILD.gn
@@ -9,9 +9,11 @@
 source_set("iccjpeg") {
   sources = [
     "iccjpeg.c",
-    "iccjpeg.h"
+    "iccjpeg.h",
   ]
 
   public_configs = [ ":iccjpeg_config" ]
-  deps = [ "//third_party:jpeg" ]
+  deps = [
+    "//third_party:jpeg",
+  ]
 }
diff --git a/third_party/khronos/GLES3/gl3.h b/third_party/khronos/GLES3/gl3.h
new file mode 100644
index 0000000..d98d8c6
--- /dev/null
+++ b/third_party/khronos/GLES3/gl3.h
@@ -0,0 +1,939 @@
+#ifndef __gl3_h_
+#define __gl3_h_ 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+** Copyright (c) 2013-2014 The Khronos Group Inc.
+**
+** Permission is hereby granted, free of charge, to any person obtaining a
+** copy of this software and/or associated documentation files (the
+** "Materials"), to deal in the Materials without restriction, including
+** without limitation the rights to use, copy, modify, merge, publish,
+** distribute, sublicense, and/or sell copies of the Materials, and to
+** permit persons to whom the Materials are furnished to do so, subject to
+** the following conditions:
+**
+** The above copyright notice and this permission notice shall be included
+** in all copies or substantial portions of the Materials.
+**
+** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
+*/
+/*
+** This header is generated from the Khronos OpenGL / OpenGL ES XML
+** API Registry. The current version of the Registry, generator scripts
+** used to make the header, and the header can be found at
+**   http://www.opengl.org/registry/
+**
+** Khronos $Revision: 28985 $ on $Date: 2014-11-18 18:42:43 -0800 (Tue, 18 Nov 2014) $
+*/
+
+#include <GLES3/gl3platform.h>
+
+/* Generated on date 20141118 */
+
+/* Generated C header for:
+ * API: gles2
+ * Profile: common
+ * Versions considered: 2\.[0-9]|3.0
+ * Versions emitted: .*
+ * Default extensions included: None
+ * Additional extensions included: _nomatch_^
+ * Extensions removed: _nomatch_^
+ */
+
+#ifndef GL_ES_VERSION_2_0
+#define GL_ES_VERSION_2_0 1
+#include <KHR/khrplatform.h>
+typedef khronos_int8_t GLbyte;
+typedef khronos_float_t GLclampf;
+typedef khronos_int32_t GLfixed;
+typedef short GLshort;
+typedef unsigned short GLushort;
+typedef void GLvoid;
+typedef struct __GLsync *GLsync;
+typedef khronos_int64_t GLint64;
+typedef khronos_uint64_t GLuint64;
+typedef unsigned int GLenum;
+typedef unsigned int GLuint;
+typedef char GLchar;
+typedef khronos_float_t GLfloat;
+typedef khronos_ssize_t GLsizeiptr;
+typedef khronos_intptr_t GLintptr;
+typedef unsigned int GLbitfield;
+typedef int GLint;
+typedef unsigned char GLboolean;
+typedef int GLsizei;
+typedef khronos_uint8_t GLubyte;
+#define GL_DEPTH_BUFFER_BIT               0x00000100
+#define GL_STENCIL_BUFFER_BIT             0x00000400
+#define GL_COLOR_BUFFER_BIT               0x00004000
+#define GL_FALSE                          0
+#define GL_TRUE                           1
+#define GL_POINTS                         0x0000
+#define GL_LINES                          0x0001
+#define GL_LINE_LOOP                      0x0002
+#define GL_LINE_STRIP                     0x0003
+#define GL_TRIANGLES                      0x0004
+#define GL_TRIANGLE_STRIP                 0x0005
+#define GL_TRIANGLE_FAN                   0x0006
+#define GL_ZERO                           0
+#define GL_ONE                            1
+#define GL_SRC_COLOR                      0x0300
+#define GL_ONE_MINUS_SRC_COLOR            0x0301
+#define GL_SRC_ALPHA                      0x0302
+#define GL_ONE_MINUS_SRC_ALPHA            0x0303
+#define GL_DST_ALPHA                      0x0304
+#define GL_ONE_MINUS_DST_ALPHA            0x0305
+#define GL_DST_COLOR                      0x0306
+#define GL_ONE_MINUS_DST_COLOR            0x0307
+#define GL_SRC_ALPHA_SATURATE             0x0308
+#define GL_FUNC_ADD                       0x8006
+#define GL_BLEND_EQUATION                 0x8009
+#define GL_BLEND_EQUATION_RGB             0x8009
+#define GL_BLEND_EQUATION_ALPHA           0x883D
+#define GL_FUNC_SUBTRACT                  0x800A
+#define GL_FUNC_REVERSE_SUBTRACT          0x800B
+#define GL_BLEND_DST_RGB                  0x80C8
+#define GL_BLEND_SRC_RGB                  0x80C9
+#define GL_BLEND_DST_ALPHA                0x80CA
+#define GL_BLEND_SRC_ALPHA                0x80CB
+#define GL_CONSTANT_COLOR                 0x8001
+#define GL_ONE_MINUS_CONSTANT_COLOR       0x8002
+#define GL_CONSTANT_ALPHA                 0x8003
+#define GL_ONE_MINUS_CONSTANT_ALPHA       0x8004
+#define GL_BLEND_COLOR                    0x8005
+#define GL_ARRAY_BUFFER                   0x8892
+#define GL_ELEMENT_ARRAY_BUFFER           0x8893
+#define GL_ARRAY_BUFFER_BINDING           0x8894
+#define GL_ELEMENT_ARRAY_BUFFER_BINDING   0x8895
+#define GL_STREAM_DRAW                    0x88E0
+#define GL_STATIC_DRAW                    0x88E4
+#define GL_DYNAMIC_DRAW                   0x88E8
+#define GL_BUFFER_SIZE                    0x8764
+#define GL_BUFFER_USAGE                   0x8765
+#define GL_CURRENT_VERTEX_ATTRIB          0x8626
+#define GL_FRONT                          0x0404
+#define GL_BACK                           0x0405
+#define GL_FRONT_AND_BACK                 0x0408
+#define GL_TEXTURE_2D                     0x0DE1
+#define GL_CULL_FACE                      0x0B44
+#define GL_BLEND                          0x0BE2
+#define GL_DITHER                         0x0BD0
+#define GL_STENCIL_TEST                   0x0B90
+#define GL_DEPTH_TEST                     0x0B71
+#define GL_SCISSOR_TEST                   0x0C11
+#define GL_POLYGON_OFFSET_FILL            0x8037
+#define GL_SAMPLE_ALPHA_TO_COVERAGE       0x809E
+#define GL_SAMPLE_COVERAGE                0x80A0
+#define GL_NO_ERROR                       0
+#define GL_INVALID_ENUM                   0x0500
+#define GL_INVALID_VALUE                  0x0501
+#define GL_INVALID_OPERATION              0x0502
+#define GL_OUT_OF_MEMORY                  0x0505
+#define GL_CW                             0x0900
+#define GL_CCW                            0x0901
+#define GL_LINE_WIDTH                     0x0B21
+#define GL_ALIASED_POINT_SIZE_RANGE       0x846D
+#define GL_ALIASED_LINE_WIDTH_RANGE       0x846E
+#define GL_CULL_FACE_MODE                 0x0B45
+#define GL_FRONT_FACE                     0x0B46
+#define GL_DEPTH_RANGE                    0x0B70
+#define GL_DEPTH_WRITEMASK                0x0B72
+#define GL_DEPTH_CLEAR_VALUE              0x0B73
+#define GL_DEPTH_FUNC                     0x0B74
+#define GL_STENCIL_CLEAR_VALUE            0x0B91
+#define GL_STENCIL_FUNC                   0x0B92
+#define GL_STENCIL_FAIL                   0x0B94
+#define GL_STENCIL_PASS_DEPTH_FAIL        0x0B95
+#define GL_STENCIL_PASS_DEPTH_PASS        0x0B96
+#define GL_STENCIL_REF                    0x0B97
+#define GL_STENCIL_VALUE_MASK             0x0B93
+#define GL_STENCIL_WRITEMASK              0x0B98
+#define GL_STENCIL_BACK_FUNC              0x8800
+#define GL_STENCIL_BACK_FAIL              0x8801
+#define GL_STENCIL_BACK_PASS_DEPTH_FAIL   0x8802
+#define GL_STENCIL_BACK_PASS_DEPTH_PASS   0x8803
+#define GL_STENCIL_BACK_REF               0x8CA3
+#define GL_STENCIL_BACK_VALUE_MASK        0x8CA4
+#define GL_STENCIL_BACK_WRITEMASK         0x8CA5
+#define GL_VIEWPORT                       0x0BA2
+#define GL_SCISSOR_BOX                    0x0C10
+#define GL_COLOR_CLEAR_VALUE              0x0C22
+#define GL_COLOR_WRITEMASK                0x0C23
+#define GL_UNPACK_ALIGNMENT               0x0CF5
+#define GL_PACK_ALIGNMENT                 0x0D05
+#define GL_MAX_TEXTURE_SIZE               0x0D33
+#define GL_MAX_VIEWPORT_DIMS              0x0D3A
+#define GL_SUBPIXEL_BITS                  0x0D50
+#define GL_RED_BITS                       0x0D52
+#define GL_GREEN_BITS                     0x0D53
+#define GL_BLUE_BITS                      0x0D54
+#define GL_ALPHA_BITS                     0x0D55
+#define GL_DEPTH_BITS                     0x0D56
+#define GL_STENCIL_BITS                   0x0D57
+#define GL_POLYGON_OFFSET_UNITS           0x2A00
+#define GL_POLYGON_OFFSET_FACTOR          0x8038
+#define GL_TEXTURE_BINDING_2D             0x8069
+#define GL_SAMPLE_BUFFERS                 0x80A8
+#define GL_SAMPLES                        0x80A9
+#define GL_SAMPLE_COVERAGE_VALUE          0x80AA
+#define GL_SAMPLE_COVERAGE_INVERT         0x80AB
+#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
+#define GL_COMPRESSED_TEXTURE_FORMATS     0x86A3
+#define GL_DONT_CARE                      0x1100
+#define GL_FASTEST                        0x1101
+#define GL_NICEST                         0x1102
+#define GL_GENERATE_MIPMAP_HINT           0x8192
+#define GL_BYTE                           0x1400
+#define GL_UNSIGNED_BYTE                  0x1401
+#define GL_SHORT                          0x1402
+#define GL_UNSIGNED_SHORT                 0x1403
+#define GL_INT                            0x1404
+#define GL_UNSIGNED_INT                   0x1405
+#define GL_FLOAT                          0x1406
+#define GL_FIXED                          0x140C
+#define GL_DEPTH_COMPONENT                0x1902
+#define GL_ALPHA                          0x1906
+#define GL_RGB                            0x1907
+#define GL_RGBA                           0x1908
+#define GL_LUMINANCE                      0x1909
+#define GL_LUMINANCE_ALPHA                0x190A
+#define GL_UNSIGNED_SHORT_4_4_4_4         0x8033
+#define GL_UNSIGNED_SHORT_5_5_5_1         0x8034
+#define GL_UNSIGNED_SHORT_5_6_5           0x8363
+#define GL_FRAGMENT_SHADER                0x8B30
+#define GL_VERTEX_SHADER                  0x8B31
+#define GL_MAX_VERTEX_ATTRIBS             0x8869
+#define GL_MAX_VERTEX_UNIFORM_VECTORS     0x8DFB
+#define GL_MAX_VARYING_VECTORS            0x8DFC
+#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
+#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
+#define GL_MAX_TEXTURE_IMAGE_UNITS        0x8872
+#define GL_MAX_FRAGMENT_UNIFORM_VECTORS   0x8DFD
+#define GL_SHADER_TYPE                    0x8B4F
+#define GL_DELETE_STATUS                  0x8B80
+#define GL_LINK_STATUS                    0x8B82
+#define GL_VALIDATE_STATUS                0x8B83
+#define GL_ATTACHED_SHADERS               0x8B85
+#define GL_ACTIVE_UNIFORMS                0x8B86
+#define GL_ACTIVE_UNIFORM_MAX_LENGTH      0x8B87
+#define GL_ACTIVE_ATTRIBUTES              0x8B89
+#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH    0x8B8A
+#define GL_SHADING_LANGUAGE_VERSION       0x8B8C
+#define GL_CURRENT_PROGRAM                0x8B8D
+#define GL_NEVER                          0x0200
+#define GL_LESS                           0x0201
+#define GL_EQUAL                          0x0202
+#define GL_LEQUAL                         0x0203
+#define GL_GREATER                        0x0204
+#define GL_NOTEQUAL                       0x0205
+#define GL_GEQUAL                         0x0206
+#define GL_ALWAYS                         0x0207
+#define GL_KEEP                           0x1E00
+#define GL_REPLACE                        0x1E01
+#define GL_INCR                           0x1E02
+#define GL_DECR                           0x1E03
+#define GL_INVERT                         0x150A
+#define GL_INCR_WRAP                      0x8507
+#define GL_DECR_WRAP                      0x8508
+#define GL_VENDOR                         0x1F00
+#define GL_RENDERER                       0x1F01
+#define GL_VERSION                        0x1F02
+#define GL_EXTENSIONS                     0x1F03
+#define GL_NEAREST                        0x2600
+#define GL_LINEAR                         0x2601
+#define GL_NEAREST_MIPMAP_NEAREST         0x2700
+#define GL_LINEAR_MIPMAP_NEAREST          0x2701
+#define GL_NEAREST_MIPMAP_LINEAR          0x2702
+#define GL_LINEAR_MIPMAP_LINEAR           0x2703
+#define GL_TEXTURE_MAG_FILTER             0x2800
+#define GL_TEXTURE_MIN_FILTER             0x2801
+#define GL_TEXTURE_WRAP_S                 0x2802
+#define GL_TEXTURE_WRAP_T                 0x2803
+#define GL_TEXTURE                        0x1702
+#define GL_TEXTURE_CUBE_MAP               0x8513
+#define GL_TEXTURE_BINDING_CUBE_MAP       0x8514
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_X    0x8515
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X    0x8516
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y    0x8517
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y    0x8518
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z    0x8519
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z    0x851A
+#define GL_MAX_CUBE_MAP_TEXTURE_SIZE      0x851C
+#define GL_TEXTURE0                       0x84C0
+#define GL_TEXTURE1                       0x84C1
+#define GL_TEXTURE2                       0x84C2
+#define GL_TEXTURE3                       0x84C3
+#define GL_TEXTURE4                       0x84C4
+#define GL_TEXTURE5                       0x84C5
+#define GL_TEXTURE6                       0x84C6
+#define GL_TEXTURE7                       0x84C7
+#define GL_TEXTURE8                       0x84C8
+#define GL_TEXTURE9                       0x84C9
+#define GL_TEXTURE10                      0x84CA
+#define GL_TEXTURE11                      0x84CB
+#define GL_TEXTURE12                      0x84CC
+#define GL_TEXTURE13                      0x84CD
+#define GL_TEXTURE14                      0x84CE
+#define GL_TEXTURE15                      0x84CF
+#define GL_TEXTURE16                      0x84D0
+#define GL_TEXTURE17                      0x84D1
+#define GL_TEXTURE18                      0x84D2
+#define GL_TEXTURE19                      0x84D3
+#define GL_TEXTURE20                      0x84D4
+#define GL_TEXTURE21                      0x84D5
+#define GL_TEXTURE22                      0x84D6
+#define GL_TEXTURE23                      0x84D7
+#define GL_TEXTURE24                      0x84D8
+#define GL_TEXTURE25                      0x84D9
+#define GL_TEXTURE26                      0x84DA
+#define GL_TEXTURE27                      0x84DB
+#define GL_TEXTURE28                      0x84DC
+#define GL_TEXTURE29                      0x84DD
+#define GL_TEXTURE30                      0x84DE
+#define GL_TEXTURE31                      0x84DF
+#define GL_ACTIVE_TEXTURE                 0x84E0
+#define GL_REPEAT                         0x2901
+#define GL_CLAMP_TO_EDGE                  0x812F
+#define GL_MIRRORED_REPEAT                0x8370
+#define GL_FLOAT_VEC2                     0x8B50
+#define GL_FLOAT_VEC3                     0x8B51
+#define GL_FLOAT_VEC4                     0x8B52
+#define GL_INT_VEC2                       0x8B53
+#define GL_INT_VEC3                       0x8B54
+#define GL_INT_VEC4                       0x8B55
+#define GL_BOOL                           0x8B56
+#define GL_BOOL_VEC2                      0x8B57
+#define GL_BOOL_VEC3                      0x8B58
+#define GL_BOOL_VEC4                      0x8B59
+#define GL_FLOAT_MAT2                     0x8B5A
+#define GL_FLOAT_MAT3                     0x8B5B
+#define GL_FLOAT_MAT4                     0x8B5C
+#define GL_SAMPLER_2D                     0x8B5E
+#define GL_SAMPLER_CUBE                   0x8B60
+#define GL_VERTEX_ATTRIB_ARRAY_ENABLED    0x8622
+#define GL_VERTEX_ATTRIB_ARRAY_SIZE       0x8623
+#define GL_VERTEX_ATTRIB_ARRAY_STRIDE     0x8624
+#define GL_VERTEX_ATTRIB_ARRAY_TYPE       0x8625
+#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
+#define GL_VERTEX_ATTRIB_ARRAY_POINTER    0x8645
+#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
+#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A
+#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
+#define GL_COMPILE_STATUS                 0x8B81
+#define GL_INFO_LOG_LENGTH                0x8B84
+#define GL_SHADER_SOURCE_LENGTH           0x8B88
+#define GL_SHADER_COMPILER                0x8DFA
+#define GL_SHADER_BINARY_FORMATS          0x8DF8
+#define GL_NUM_SHADER_BINARY_FORMATS      0x8DF9
+#define GL_LOW_FLOAT                      0x8DF0
+#define GL_MEDIUM_FLOAT                   0x8DF1
+#define GL_HIGH_FLOAT                     0x8DF2
+#define GL_LOW_INT                        0x8DF3
+#define GL_MEDIUM_INT                     0x8DF4
+#define GL_HIGH_INT                       0x8DF5
+#define GL_FRAMEBUFFER                    0x8D40
+#define GL_RENDERBUFFER                   0x8D41
+#define GL_RGBA4                          0x8056
+#define GL_RGB5_A1                        0x8057
+#define GL_RGB565                         0x8D62
+#define GL_DEPTH_COMPONENT16              0x81A5
+#define GL_STENCIL_INDEX8                 0x8D48
+#define GL_RENDERBUFFER_WIDTH             0x8D42
+#define GL_RENDERBUFFER_HEIGHT            0x8D43
+#define GL_RENDERBUFFER_INTERNAL_FORMAT   0x8D44
+#define GL_RENDERBUFFER_RED_SIZE          0x8D50
+#define GL_RENDERBUFFER_GREEN_SIZE        0x8D51
+#define GL_RENDERBUFFER_BLUE_SIZE         0x8D52
+#define GL_RENDERBUFFER_ALPHA_SIZE        0x8D53
+#define GL_RENDERBUFFER_DEPTH_SIZE        0x8D54
+#define GL_RENDERBUFFER_STENCIL_SIZE      0x8D55
+#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
+#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
+#define GL_COLOR_ATTACHMENT0              0x8CE0
+#define GL_DEPTH_ATTACHMENT               0x8D00
+#define GL_STENCIL_ATTACHMENT             0x8D20
+#define GL_NONE                           0
+#define GL_FRAMEBUFFER_COMPLETE           0x8CD5
+#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
+#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
+#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 0x8CD9
+#define GL_FRAMEBUFFER_UNSUPPORTED        0x8CDD
+#define GL_FRAMEBUFFER_BINDING            0x8CA6
+#define GL_RENDERBUFFER_BINDING           0x8CA7
+#define GL_MAX_RENDERBUFFER_SIZE          0x84E8
+#define GL_INVALID_FRAMEBUFFER_OPERATION  0x0506
+GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture);
+GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
+GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar *name);
+GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
+GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
+GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
+GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
+GL_APICALL void GL_APIENTRY glBlendColor (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+GL_APICALL void GL_APIENTRY glBlendEquation (GLenum mode);
+GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
+GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
+GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const void *data, GLenum usage);
+GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const void *data);
+GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target);
+GL_APICALL void GL_APIENTRY glClear (GLbitfield mask);
+GL_APICALL void GL_APIENTRY glClearColor (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+GL_APICALL void GL_APIENTRY glClearDepthf (GLfloat d);
+GL_APICALL void GL_APIENTRY glClearStencil (GLint s);
+GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader);
+GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
+GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
+GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL GLuint GL_APIENTRY glCreateProgram (void);
+GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type);
+GL_APICALL void GL_APIENTRY glCullFace (GLenum mode);
+GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint *buffers);
+GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint *framebuffers);
+GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint *renderbuffers);
+GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader);
+GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint *textures);
+GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func);
+GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag);
+GL_APICALL void GL_APIENTRY glDepthRangef (GLfloat n, GLfloat f);
+GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
+GL_APICALL void GL_APIENTRY glDisable (GLenum cap);
+GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index);
+GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
+GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const void *indices);
+GL_APICALL void GL_APIENTRY glEnable (GLenum cap);
+GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index);
+GL_APICALL void GL_APIENTRY glFinish (void);
+GL_APICALL void GL_APIENTRY glFlush (void);
+GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode);
+GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint *buffers);
+GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target);
+GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint *framebuffers);
+GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint *renderbuffers);
+GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint *textures);
+GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders);
+GL_APICALL GLint GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar *name);
+GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean *data);
+GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint *params);
+GL_APICALL GLenum GL_APIENTRY glGetError (void);
+GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat *data);
+GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint *data);
+GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+GL_APICALL const GLubyte *GL_APIENTRY glGetString (GLenum name);
+GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat *params);
+GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat *params);
+GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint *params);
+GL_APICALL GLint GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar *name);
+GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat *params);
+GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, void **pointer);
+GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode);
+GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer);
+GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap);
+GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
+GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program);
+GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
+GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader);
+GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture);
+GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width);
+GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
+GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
+GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels);
+GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void);
+GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glSampleCoverage (GLfloat value, GLboolean invert);
+GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei count, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length);
+GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length);
+GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
+GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels);
+GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
+GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat *params);
+GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
+GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint *params);
+GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
+GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat v0);
+GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint v0);
+GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat v0, GLfloat v1);
+GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint v0, GLint v1);
+GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint v0, GLint v1, GLint v2);
+GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUseProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint index, GLfloat x);
+GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint index, const GLfloat *v);
+GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint index, GLfloat x, GLfloat y);
+GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint index, const GLfloat *v);
+GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint index, GLfloat x, GLfloat y, GLfloat z);
+GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint index, const GLfloat *v);
+GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint index, const GLfloat *v);
+GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer);
+GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
+#endif /* GL_ES_VERSION_2_0 */
+
+#ifndef GL_ES_VERSION_3_0
+#define GL_ES_VERSION_3_0 1
+typedef unsigned short GLhalf;
+#define GL_READ_BUFFER                    0x0C02
+#define GL_UNPACK_ROW_LENGTH              0x0CF2
+#define GL_UNPACK_SKIP_ROWS               0x0CF3
+#define GL_UNPACK_SKIP_PIXELS             0x0CF4
+#define GL_PACK_ROW_LENGTH                0x0D02
+#define GL_PACK_SKIP_ROWS                 0x0D03
+#define GL_PACK_SKIP_PIXELS               0x0D04
+#define GL_COLOR                          0x1800
+#define GL_DEPTH                          0x1801
+#define GL_STENCIL                        0x1802
+#define GL_RED                            0x1903
+#define GL_RGB8                           0x8051
+#define GL_RGBA8                          0x8058
+#define GL_RGB10_A2                       0x8059
+#define GL_TEXTURE_BINDING_3D             0x806A
+#define GL_UNPACK_SKIP_IMAGES             0x806D
+#define GL_UNPACK_IMAGE_HEIGHT            0x806E
+#define GL_TEXTURE_3D                     0x806F
+#define GL_TEXTURE_WRAP_R                 0x8072
+#define GL_MAX_3D_TEXTURE_SIZE            0x8073
+#define GL_UNSIGNED_INT_2_10_10_10_REV    0x8368
+#define GL_MAX_ELEMENTS_VERTICES          0x80E8
+#define GL_MAX_ELEMENTS_INDICES           0x80E9
+#define GL_TEXTURE_MIN_LOD                0x813A
+#define GL_TEXTURE_MAX_LOD                0x813B
+#define GL_TEXTURE_BASE_LEVEL             0x813C
+#define GL_TEXTURE_MAX_LEVEL              0x813D
+#define GL_MIN                            0x8007
+#define GL_MAX                            0x8008
+#define GL_DEPTH_COMPONENT24              0x81A6
+#define GL_MAX_TEXTURE_LOD_BIAS           0x84FD
+#define GL_TEXTURE_COMPARE_MODE           0x884C
+#define GL_TEXTURE_COMPARE_FUNC           0x884D
+#define GL_CURRENT_QUERY                  0x8865
+#define GL_QUERY_RESULT                   0x8866
+#define GL_QUERY_RESULT_AVAILABLE         0x8867
+#define GL_BUFFER_MAPPED                  0x88BC
+#define GL_BUFFER_MAP_POINTER             0x88BD
+#define GL_STREAM_READ                    0x88E1
+#define GL_STREAM_COPY                    0x88E2
+#define GL_STATIC_READ                    0x88E5
+#define GL_STATIC_COPY                    0x88E6
+#define GL_DYNAMIC_READ                   0x88E9
+#define GL_DYNAMIC_COPY                   0x88EA
+#define GL_MAX_DRAW_BUFFERS               0x8824
+#define GL_DRAW_BUFFER0                   0x8825
+#define GL_DRAW_BUFFER1                   0x8826
+#define GL_DRAW_BUFFER2                   0x8827
+#define GL_DRAW_BUFFER3                   0x8828
+#define GL_DRAW_BUFFER4                   0x8829
+#define GL_DRAW_BUFFER5                   0x882A
+#define GL_DRAW_BUFFER6                   0x882B
+#define GL_DRAW_BUFFER7                   0x882C
+#define GL_DRAW_BUFFER8                   0x882D
+#define GL_DRAW_BUFFER9                   0x882E
+#define GL_DRAW_BUFFER10                  0x882F
+#define GL_DRAW_BUFFER11                  0x8830
+#define GL_DRAW_BUFFER12                  0x8831
+#define GL_DRAW_BUFFER13                  0x8832
+#define GL_DRAW_BUFFER14                  0x8833
+#define GL_DRAW_BUFFER15                  0x8834
+#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49
+#define GL_MAX_VERTEX_UNIFORM_COMPONENTS  0x8B4A
+#define GL_SAMPLER_3D                     0x8B5F
+#define GL_SAMPLER_2D_SHADOW              0x8B62
+#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B
+#define GL_PIXEL_PACK_BUFFER              0x88EB
+#define GL_PIXEL_UNPACK_BUFFER            0x88EC
+#define GL_PIXEL_PACK_BUFFER_BINDING      0x88ED
+#define GL_PIXEL_UNPACK_BUFFER_BINDING    0x88EF
+#define GL_FLOAT_MAT2x3                   0x8B65
+#define GL_FLOAT_MAT2x4                   0x8B66
+#define GL_FLOAT_MAT3x2                   0x8B67
+#define GL_FLOAT_MAT3x4                   0x8B68
+#define GL_FLOAT_MAT4x2                   0x8B69
+#define GL_FLOAT_MAT4x3                   0x8B6A
+#define GL_SRGB                           0x8C40
+#define GL_SRGB8                          0x8C41
+#define GL_SRGB8_ALPHA8                   0x8C43
+#define GL_COMPARE_REF_TO_TEXTURE         0x884E
+#define GL_MAJOR_VERSION                  0x821B
+#define GL_MINOR_VERSION                  0x821C
+#define GL_NUM_EXTENSIONS                 0x821D
+#define GL_RGBA32F                        0x8814
+#define GL_RGB32F                         0x8815
+#define GL_RGBA16F                        0x881A
+#define GL_RGB16F                         0x881B
+#define GL_VERTEX_ATTRIB_ARRAY_INTEGER    0x88FD
+#define GL_MAX_ARRAY_TEXTURE_LAYERS       0x88FF
+#define GL_MIN_PROGRAM_TEXEL_OFFSET       0x8904
+#define GL_MAX_PROGRAM_TEXEL_OFFSET       0x8905
+#define GL_MAX_VARYING_COMPONENTS         0x8B4B
+#define GL_TEXTURE_2D_ARRAY               0x8C1A
+#define GL_TEXTURE_BINDING_2D_ARRAY       0x8C1D
+#define GL_R11F_G11F_B10F                 0x8C3A
+#define GL_UNSIGNED_INT_10F_11F_11F_REV   0x8C3B
+#define GL_RGB9_E5                        0x8C3D
+#define GL_UNSIGNED_INT_5_9_9_9_REV       0x8C3E
+#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76
+#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F
+#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80
+#define GL_TRANSFORM_FEEDBACK_VARYINGS    0x8C83
+#define GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84
+#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85
+#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88
+#define GL_RASTERIZER_DISCARD             0x8C89
+#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A
+#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B
+#define GL_INTERLEAVED_ATTRIBS            0x8C8C
+#define GL_SEPARATE_ATTRIBS               0x8C8D
+#define GL_TRANSFORM_FEEDBACK_BUFFER      0x8C8E
+#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F
+#define GL_RGBA32UI                       0x8D70
+#define GL_RGB32UI                        0x8D71
+#define GL_RGBA16UI                       0x8D76
+#define GL_RGB16UI                        0x8D77
+#define GL_RGBA8UI                        0x8D7C
+#define GL_RGB8UI                         0x8D7D
+#define GL_RGBA32I                        0x8D82
+#define GL_RGB32I                         0x8D83
+#define GL_RGBA16I                        0x8D88
+#define GL_RGB16I                         0x8D89
+#define GL_RGBA8I                         0x8D8E
+#define GL_RGB8I                          0x8D8F
+#define GL_RED_INTEGER                    0x8D94
+#define GL_RGB_INTEGER                    0x8D98
+#define GL_RGBA_INTEGER                   0x8D99
+#define GL_SAMPLER_2D_ARRAY               0x8DC1
+#define GL_SAMPLER_2D_ARRAY_SHADOW        0x8DC4
+#define GL_SAMPLER_CUBE_SHADOW            0x8DC5
+#define GL_UNSIGNED_INT_VEC2              0x8DC6
+#define GL_UNSIGNED_INT_VEC3              0x8DC7
+#define GL_UNSIGNED_INT_VEC4              0x8DC8
+#define GL_INT_SAMPLER_2D                 0x8DCA
+#define GL_INT_SAMPLER_3D                 0x8DCB
+#define GL_INT_SAMPLER_CUBE               0x8DCC
+#define GL_INT_SAMPLER_2D_ARRAY           0x8DCF
+#define GL_UNSIGNED_INT_SAMPLER_2D        0x8DD2
+#define GL_UNSIGNED_INT_SAMPLER_3D        0x8DD3
+#define GL_UNSIGNED_INT_SAMPLER_CUBE      0x8DD4
+#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY  0x8DD7
+#define GL_BUFFER_ACCESS_FLAGS            0x911F
+#define GL_BUFFER_MAP_LENGTH              0x9120
+#define GL_BUFFER_MAP_OFFSET              0x9121
+#define GL_DEPTH_COMPONENT32F             0x8CAC
+#define GL_DEPTH32F_STENCIL8              0x8CAD
+#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD
+#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210
+#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211
+#define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212
+#define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213
+#define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214
+#define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215
+#define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216
+#define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217
+#define GL_FRAMEBUFFER_DEFAULT            0x8218
+#define GL_FRAMEBUFFER_UNDEFINED          0x8219
+#define GL_DEPTH_STENCIL_ATTACHMENT       0x821A
+#define GL_DEPTH_STENCIL                  0x84F9
+#define GL_UNSIGNED_INT_24_8              0x84FA
+#define GL_DEPTH24_STENCIL8               0x88F0
+#define GL_UNSIGNED_NORMALIZED            0x8C17
+#define GL_DRAW_FRAMEBUFFER_BINDING       0x8CA6
+#define GL_READ_FRAMEBUFFER               0x8CA8
+#define GL_DRAW_FRAMEBUFFER               0x8CA9
+#define GL_READ_FRAMEBUFFER_BINDING       0x8CAA
+#define GL_RENDERBUFFER_SAMPLES           0x8CAB
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4
+#define GL_MAX_COLOR_ATTACHMENTS          0x8CDF
+#define GL_COLOR_ATTACHMENT1              0x8CE1
+#define GL_COLOR_ATTACHMENT2              0x8CE2
+#define GL_COLOR_ATTACHMENT3              0x8CE3
+#define GL_COLOR_ATTACHMENT4              0x8CE4
+#define GL_COLOR_ATTACHMENT5              0x8CE5
+#define GL_COLOR_ATTACHMENT6              0x8CE6
+#define GL_COLOR_ATTACHMENT7              0x8CE7
+#define GL_COLOR_ATTACHMENT8              0x8CE8
+#define GL_COLOR_ATTACHMENT9              0x8CE9
+#define GL_COLOR_ATTACHMENT10             0x8CEA
+#define GL_COLOR_ATTACHMENT11             0x8CEB
+#define GL_COLOR_ATTACHMENT12             0x8CEC
+#define GL_COLOR_ATTACHMENT13             0x8CED
+#define GL_COLOR_ATTACHMENT14             0x8CEE
+#define GL_COLOR_ATTACHMENT15             0x8CEF
+#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
+#define GL_MAX_SAMPLES                    0x8D57
+#define GL_HALF_FLOAT                     0x140B
+#define GL_MAP_READ_BIT                   0x0001
+#define GL_MAP_WRITE_BIT                  0x0002
+#define GL_MAP_INVALIDATE_RANGE_BIT       0x0004
+#define GL_MAP_INVALIDATE_BUFFER_BIT      0x0008
+#define GL_MAP_FLUSH_EXPLICIT_BIT         0x0010
+#define GL_MAP_UNSYNCHRONIZED_BIT         0x0020
+#define GL_RG                             0x8227
+#define GL_RG_INTEGER                     0x8228
+#define GL_R8                             0x8229
+#define GL_RG8                            0x822B
+#define GL_R16F                           0x822D
+#define GL_R32F                           0x822E
+#define GL_RG16F                          0x822F
+#define GL_RG32F                          0x8230
+#define GL_R8I                            0x8231
+#define GL_R8UI                           0x8232
+#define GL_R16I                           0x8233
+#define GL_R16UI                          0x8234
+#define GL_R32I                           0x8235
+#define GL_R32UI                          0x8236
+#define GL_RG8I                           0x8237
+#define GL_RG8UI                          0x8238
+#define GL_RG16I                          0x8239
+#define GL_RG16UI                         0x823A
+#define GL_RG32I                          0x823B
+#define GL_RG32UI                         0x823C
+#define GL_VERTEX_ARRAY_BINDING           0x85B5
+#define GL_R8_SNORM                       0x8F94
+#define GL_RG8_SNORM                      0x8F95
+#define GL_RGB8_SNORM                     0x8F96
+#define GL_RGBA8_SNORM                    0x8F97
+#define GL_SIGNED_NORMALIZED              0x8F9C
+#define GL_PRIMITIVE_RESTART_FIXED_INDEX  0x8D69
+#define GL_COPY_READ_BUFFER               0x8F36
+#define GL_COPY_WRITE_BUFFER              0x8F37
+#define GL_COPY_READ_BUFFER_BINDING       0x8F36
+#define GL_COPY_WRITE_BUFFER_BINDING      0x8F37
+#define GL_UNIFORM_BUFFER                 0x8A11
+#define GL_UNIFORM_BUFFER_BINDING         0x8A28
+#define GL_UNIFORM_BUFFER_START           0x8A29
+#define GL_UNIFORM_BUFFER_SIZE            0x8A2A
+#define GL_MAX_VERTEX_UNIFORM_BLOCKS      0x8A2B
+#define GL_MAX_FRAGMENT_UNIFORM_BLOCKS    0x8A2D
+#define GL_MAX_COMBINED_UNIFORM_BLOCKS    0x8A2E
+#define GL_MAX_UNIFORM_BUFFER_BINDINGS    0x8A2F
+#define GL_MAX_UNIFORM_BLOCK_SIZE         0x8A30
+#define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31
+#define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33
+#define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34
+#define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35
+#define GL_ACTIVE_UNIFORM_BLOCKS          0x8A36
+#define GL_UNIFORM_TYPE                   0x8A37
+#define GL_UNIFORM_SIZE                   0x8A38
+#define GL_UNIFORM_NAME_LENGTH            0x8A39
+#define GL_UNIFORM_BLOCK_INDEX            0x8A3A
+#define GL_UNIFORM_OFFSET                 0x8A3B
+#define GL_UNIFORM_ARRAY_STRIDE           0x8A3C
+#define GL_UNIFORM_MATRIX_STRIDE          0x8A3D
+#define GL_UNIFORM_IS_ROW_MAJOR           0x8A3E
+#define GL_UNIFORM_BLOCK_BINDING          0x8A3F
+#define GL_UNIFORM_BLOCK_DATA_SIZE        0x8A40
+#define GL_UNIFORM_BLOCK_NAME_LENGTH      0x8A41
+#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS  0x8A42
+#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43
+#define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44
+#define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46
+#define GL_INVALID_INDEX                  0xFFFFFFFFu
+#define GL_MAX_VERTEX_OUTPUT_COMPONENTS   0x9122
+#define GL_MAX_FRAGMENT_INPUT_COMPONENTS  0x9125
+#define GL_MAX_SERVER_WAIT_TIMEOUT        0x9111
+#define GL_OBJECT_TYPE                    0x9112
+#define GL_SYNC_CONDITION                 0x9113
+#define GL_SYNC_STATUS                    0x9114
+#define GL_SYNC_FLAGS                     0x9115
+#define GL_SYNC_FENCE                     0x9116
+#define GL_SYNC_GPU_COMMANDS_COMPLETE     0x9117
+#define GL_UNSIGNALED                     0x9118
+#define GL_SIGNALED                       0x9119
+#define GL_ALREADY_SIGNALED               0x911A
+#define GL_TIMEOUT_EXPIRED                0x911B
+#define GL_CONDITION_SATISFIED            0x911C
+#define GL_WAIT_FAILED                    0x911D
+#define GL_SYNC_FLUSH_COMMANDS_BIT        0x00000001
+#define GL_TIMEOUT_IGNORED                0xFFFFFFFFFFFFFFFFull
+#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR    0x88FE
+#define GL_ANY_SAMPLES_PASSED             0x8C2F
+#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE 0x8D6A
+#define GL_SAMPLER_BINDING                0x8919
+#define GL_RGB10_A2UI                     0x906F
+#define GL_TEXTURE_SWIZZLE_R              0x8E42
+#define GL_TEXTURE_SWIZZLE_G              0x8E43
+#define GL_TEXTURE_SWIZZLE_B              0x8E44
+#define GL_TEXTURE_SWIZZLE_A              0x8E45
+#define GL_GREEN                          0x1904
+#define GL_BLUE                           0x1905
+#define GL_INT_2_10_10_10_REV             0x8D9F
+#define GL_TRANSFORM_FEEDBACK             0x8E22
+#define GL_TRANSFORM_FEEDBACK_PAUSED      0x8E23
+#define GL_TRANSFORM_FEEDBACK_ACTIVE      0x8E24
+#define GL_TRANSFORM_FEEDBACK_BINDING     0x8E25
+#define GL_PROGRAM_BINARY_RETRIEVABLE_HINT 0x8257
+#define GL_PROGRAM_BINARY_LENGTH          0x8741
+#define GL_NUM_PROGRAM_BINARY_FORMATS     0x87FE
+#define GL_PROGRAM_BINARY_FORMATS         0x87FF
+#define GL_COMPRESSED_R11_EAC             0x9270
+#define GL_COMPRESSED_SIGNED_R11_EAC      0x9271
+#define GL_COMPRESSED_RG11_EAC            0x9272
+#define GL_COMPRESSED_SIGNED_RG11_EAC     0x9273
+#define GL_COMPRESSED_RGB8_ETC2           0x9274
+#define GL_COMPRESSED_SRGB8_ETC2          0x9275
+#define GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9276
+#define GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9277
+#define GL_COMPRESSED_RGBA8_ETC2_EAC      0x9278
+#define GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC 0x9279
+#define GL_TEXTURE_IMMUTABLE_FORMAT       0x912F
+#define GL_MAX_ELEMENT_INDEX              0x8D6B
+#define GL_NUM_SAMPLE_COUNTS              0x9380
+#define GL_TEXTURE_IMMUTABLE_LEVELS       0x82DF
+GL_APICALL void GL_APIENTRY glReadBuffer (GLenum src);
+GL_APICALL void GL_APIENTRY glDrawRangeElements (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices);
+GL_APICALL void GL_APIENTRY glTexImage3D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
+GL_APICALL void GL_APIENTRY glTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
+GL_APICALL void GL_APIENTRY glCopyTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glCompressedTexImage3D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
+GL_APICALL void GL_APIENTRY glCompressedTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
+GL_APICALL void GL_APIENTRY glGenQueries (GLsizei n, GLuint *ids);
+GL_APICALL void GL_APIENTRY glDeleteQueries (GLsizei n, const GLuint *ids);
+GL_APICALL GLboolean GL_APIENTRY glIsQuery (GLuint id);
+GL_APICALL void GL_APIENTRY glBeginQuery (GLenum target, GLuint id);
+GL_APICALL void GL_APIENTRY glEndQuery (GLenum target);
+GL_APICALL void GL_APIENTRY glGetQueryiv (GLenum target, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetQueryObjectuiv (GLuint id, GLenum pname, GLuint *params);
+GL_APICALL GLboolean GL_APIENTRY glUnmapBuffer (GLenum target);
+GL_APICALL void GL_APIENTRY glGetBufferPointerv (GLenum target, GLenum pname, void **params);
+GL_APICALL void GL_APIENTRY glDrawBuffers (GLsizei n, const GLenum *bufs);
+GL_APICALL void GL_APIENTRY glUniformMatrix2x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix3x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix2x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix4x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix3x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix4x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glBlitFramebuffer (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisample (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glFramebufferTextureLayer (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+GL_APICALL void *GL_APIENTRY glMapBufferRange (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+GL_APICALL void GL_APIENTRY glFlushMappedBufferRange (GLenum target, GLintptr offset, GLsizeiptr length);
+GL_APICALL void GL_APIENTRY glBindVertexArray (GLuint array);
+GL_APICALL void GL_APIENTRY glDeleteVertexArrays (GLsizei n, const GLuint *arrays);
+GL_APICALL void GL_APIENTRY glGenVertexArrays (GLsizei n, GLuint *arrays);
+GL_APICALL GLboolean GL_APIENTRY glIsVertexArray (GLuint array);
+GL_APICALL void GL_APIENTRY glGetIntegeri_v (GLenum target, GLuint index, GLint *data);
+GL_APICALL void GL_APIENTRY glBeginTransformFeedback (GLenum primitiveMode);
+GL_APICALL void GL_APIENTRY glEndTransformFeedback (void);
+GL_APICALL void GL_APIENTRY glBindBufferRange (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+GL_APICALL void GL_APIENTRY glBindBufferBase (GLenum target, GLuint index, GLuint buffer);
+GL_APICALL void GL_APIENTRY glTransformFeedbackVaryings (GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode);
+GL_APICALL void GL_APIENTRY glGetTransformFeedbackVarying (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+GL_APICALL void GL_APIENTRY glVertexAttribIPointer (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
+GL_APICALL void GL_APIENTRY glGetVertexAttribIiv (GLuint index, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetVertexAttribIuiv (GLuint index, GLenum pname, GLuint *params);
+GL_APICALL void GL_APIENTRY glVertexAttribI4i (GLuint index, GLint x, GLint y, GLint z, GLint w);
+GL_APICALL void GL_APIENTRY glVertexAttribI4ui (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+GL_APICALL void GL_APIENTRY glVertexAttribI4iv (GLuint index, const GLint *v);
+GL_APICALL void GL_APIENTRY glVertexAttribI4uiv (GLuint index, const GLuint *v);
+GL_APICALL void GL_APIENTRY glGetUniformuiv (GLuint program, GLint location, GLuint *params);
+GL_APICALL GLint GL_APIENTRY glGetFragDataLocation (GLuint program, const GLchar *name);
+GL_APICALL void GL_APIENTRY glUniform1ui (GLint location, GLuint v0);
+GL_APICALL void GL_APIENTRY glUniform2ui (GLint location, GLuint v0, GLuint v1);
+GL_APICALL void GL_APIENTRY glUniform3ui (GLint location, GLuint v0, GLuint v1, GLuint v2);
+GL_APICALL void GL_APIENTRY glUniform4ui (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+GL_APICALL void GL_APIENTRY glUniform1uiv (GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glUniform2uiv (GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glUniform3uiv (GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glUniform4uiv (GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glClearBufferiv (GLenum buffer, GLint drawbuffer, const GLint *value);
+GL_APICALL void GL_APIENTRY glClearBufferuiv (GLenum buffer, GLint drawbuffer, const GLuint *value);
+GL_APICALL void GL_APIENTRY glClearBufferfv (GLenum buffer, GLint drawbuffer, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glClearBufferfi (GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+GL_APICALL const GLubyte *GL_APIENTRY glGetStringi (GLenum name, GLuint index);
+GL_APICALL void GL_APIENTRY glCopyBufferSubData (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+GL_APICALL void GL_APIENTRY glGetUniformIndices (GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices);
+GL_APICALL void GL_APIENTRY glGetActiveUniformsiv (GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+GL_APICALL GLuint GL_APIENTRY glGetUniformBlockIndex (GLuint program, const GLchar *uniformBlockName);
+GL_APICALL void GL_APIENTRY glGetActiveUniformBlockiv (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetActiveUniformBlockName (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+GL_APICALL void GL_APIENTRY glUniformBlockBinding (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+GL_APICALL void GL_APIENTRY glDrawArraysInstanced (GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+GL_APICALL void GL_APIENTRY glDrawElementsInstanced (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount);
+GL_APICALL GLsync GL_APIENTRY glFenceSync (GLenum condition, GLbitfield flags);
+GL_APICALL GLboolean GL_APIENTRY glIsSync (GLsync sync);
+GL_APICALL void GL_APIENTRY glDeleteSync (GLsync sync);
+GL_APICALL GLenum GL_APIENTRY glClientWaitSync (GLsync sync, GLbitfield flags, GLuint64 timeout);
+GL_APICALL void GL_APIENTRY glWaitSync (GLsync sync, GLbitfield flags, GLuint64 timeout);
+GL_APICALL void GL_APIENTRY glGetInteger64v (GLenum pname, GLint64 *data);
+GL_APICALL void GL_APIENTRY glGetSynciv (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+GL_APICALL void GL_APIENTRY glGetInteger64i_v (GLenum target, GLuint index, GLint64 *data);
+GL_APICALL void GL_APIENTRY glGetBufferParameteri64v (GLenum target, GLenum pname, GLint64 *params);
+GL_APICALL void GL_APIENTRY glGenSamplers (GLsizei count, GLuint *samplers);
+GL_APICALL void GL_APIENTRY glDeleteSamplers (GLsizei count, const GLuint *samplers);
+GL_APICALL GLboolean GL_APIENTRY glIsSampler (GLuint sampler);
+GL_APICALL void GL_APIENTRY glBindSampler (GLuint unit, GLuint sampler);
+GL_APICALL void GL_APIENTRY glSamplerParameteri (GLuint sampler, GLenum pname, GLint param);
+GL_APICALL void GL_APIENTRY glSamplerParameteriv (GLuint sampler, GLenum pname, const GLint *param);
+GL_APICALL void GL_APIENTRY glSamplerParameterf (GLuint sampler, GLenum pname, GLfloat param);
+GL_APICALL void GL_APIENTRY glSamplerParameterfv (GLuint sampler, GLenum pname, const GLfloat *param);
+GL_APICALL void GL_APIENTRY glGetSamplerParameteriv (GLuint sampler, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetSamplerParameterfv (GLuint sampler, GLenum pname, GLfloat *params);
+GL_APICALL void GL_APIENTRY glVertexAttribDivisor (GLuint index, GLuint divisor);
+GL_APICALL void GL_APIENTRY glBindTransformFeedback (GLenum target, GLuint id);
+GL_APICALL void GL_APIENTRY glDeleteTransformFeedbacks (GLsizei n, const GLuint *ids);
+GL_APICALL void GL_APIENTRY glGenTransformFeedbacks (GLsizei n, GLuint *ids);
+GL_APICALL GLboolean GL_APIENTRY glIsTransformFeedback (GLuint id);
+GL_APICALL void GL_APIENTRY glPauseTransformFeedback (void);
+GL_APICALL void GL_APIENTRY glResumeTransformFeedback (void);
+GL_APICALL void GL_APIENTRY glGetProgramBinary (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
+GL_APICALL void GL_APIENTRY glProgramBinary (GLuint program, GLenum binaryFormat, const void *binary, GLsizei length);
+GL_APICALL void GL_APIENTRY glProgramParameteri (GLuint program, GLenum pname, GLint value);
+GL_APICALL void GL_APIENTRY glInvalidateFramebuffer (GLenum target, GLsizei numAttachments, const GLenum *attachments);
+GL_APICALL void GL_APIENTRY glInvalidateSubFramebuffer (GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glTexStorage2D (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glTexStorage3D (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
+GL_APICALL void GL_APIENTRY glGetInternalformativ (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
+#endif /* GL_ES_VERSION_3_0 */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/third_party/khronos/GLES3/gl31.h b/third_party/khronos/GLES3/gl31.h
new file mode 100644
index 0000000..89406bd
--- /dev/null
+++ b/third_party/khronos/GLES3/gl31.h
@@ -0,0 +1,1184 @@
+#ifndef __gl31_h_
+#define __gl31_h_ 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+** Copyright (c) 2013-2014 The Khronos Group Inc.
+**
+** Permission is hereby granted, free of charge, to any person obtaining a
+** copy of this software and/or associated documentation files (the
+** "Materials"), to deal in the Materials without restriction, including
+** without limitation the rights to use, copy, modify, merge, publish,
+** distribute, sublicense, and/or sell copies of the Materials, and to
+** permit persons to whom the Materials are furnished to do so, subject to
+** the following conditions:
+**
+** The above copyright notice and this permission notice shall be included
+** in all copies or substantial portions of the Materials.
+**
+** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
+*/
+/*
+** This header is generated from the Khronos OpenGL / OpenGL ES XML
+** API Registry. The current version of the Registry, generator scripts
+** used to make the header, and the header can be found at
+**   http://www.opengl.org/registry/
+**
+** Khronos $Revision$ on $Date$
+*/
+
+#include <GLES3/gl3platform.h>
+
+/* Generated on date 20141118 */
+
+/* Generated C header for:
+ * API: gles2
+ * Profile: common
+ * Versions considered: 2.[0-9]|3.[01]
+ * Versions emitted: .*
+ * Default extensions included: None
+ * Additional extensions included: _nomatch_^
+ * Extensions removed: _nomatch_^
+ */
+
+#ifndef GL_ES_VERSION_2_0
+#define GL_ES_VERSION_2_0 1
+#include <KHR/khrplatform.h>
+typedef khronos_int8_t GLbyte;
+typedef khronos_float_t GLclampf;
+typedef khronos_int32_t GLfixed;
+typedef short GLshort;
+typedef unsigned short GLushort;
+typedef void GLvoid;
+typedef struct __GLsync *GLsync;
+typedef khronos_int64_t GLint64;
+typedef khronos_uint64_t GLuint64;
+typedef unsigned int GLenum;
+typedef unsigned int GLuint;
+typedef char GLchar;
+typedef khronos_float_t GLfloat;
+typedef khronos_ssize_t GLsizeiptr;
+typedef khronos_intptr_t GLintptr;
+typedef unsigned int GLbitfield;
+typedef int GLint;
+typedef unsigned char GLboolean;
+typedef int GLsizei;
+typedef khronos_uint8_t GLubyte;
+#define GL_DEPTH_BUFFER_BIT               0x00000100
+#define GL_STENCIL_BUFFER_BIT             0x00000400
+#define GL_COLOR_BUFFER_BIT               0x00004000
+#define GL_FALSE                          0
+#define GL_TRUE                           1
+#define GL_POINTS                         0x0000
+#define GL_LINES                          0x0001
+#define GL_LINE_LOOP                      0x0002
+#define GL_LINE_STRIP                     0x0003
+#define GL_TRIANGLES                      0x0004
+#define GL_TRIANGLE_STRIP                 0x0005
+#define GL_TRIANGLE_FAN                   0x0006
+#define GL_ZERO                           0
+#define GL_ONE                            1
+#define GL_SRC_COLOR                      0x0300
+#define GL_ONE_MINUS_SRC_COLOR            0x0301
+#define GL_SRC_ALPHA                      0x0302
+#define GL_ONE_MINUS_SRC_ALPHA            0x0303
+#define GL_DST_ALPHA                      0x0304
+#define GL_ONE_MINUS_DST_ALPHA            0x0305
+#define GL_DST_COLOR                      0x0306
+#define GL_ONE_MINUS_DST_COLOR            0x0307
+#define GL_SRC_ALPHA_SATURATE             0x0308
+#define GL_FUNC_ADD                       0x8006
+#define GL_BLEND_EQUATION                 0x8009
+#define GL_BLEND_EQUATION_RGB             0x8009
+#define GL_BLEND_EQUATION_ALPHA           0x883D
+#define GL_FUNC_SUBTRACT                  0x800A
+#define GL_FUNC_REVERSE_SUBTRACT          0x800B
+#define GL_BLEND_DST_RGB                  0x80C8
+#define GL_BLEND_SRC_RGB                  0x80C9
+#define GL_BLEND_DST_ALPHA                0x80CA
+#define GL_BLEND_SRC_ALPHA                0x80CB
+#define GL_CONSTANT_COLOR                 0x8001
+#define GL_ONE_MINUS_CONSTANT_COLOR       0x8002
+#define GL_CONSTANT_ALPHA                 0x8003
+#define GL_ONE_MINUS_CONSTANT_ALPHA       0x8004
+#define GL_BLEND_COLOR                    0x8005
+#define GL_ARRAY_BUFFER                   0x8892
+#define GL_ELEMENT_ARRAY_BUFFER           0x8893
+#define GL_ARRAY_BUFFER_BINDING           0x8894
+#define GL_ELEMENT_ARRAY_BUFFER_BINDING   0x8895
+#define GL_STREAM_DRAW                    0x88E0
+#define GL_STATIC_DRAW                    0x88E4
+#define GL_DYNAMIC_DRAW                   0x88E8
+#define GL_BUFFER_SIZE                    0x8764
+#define GL_BUFFER_USAGE                   0x8765
+#define GL_CURRENT_VERTEX_ATTRIB          0x8626
+#define GL_FRONT                          0x0404
+#define GL_BACK                           0x0405
+#define GL_FRONT_AND_BACK                 0x0408
+#define GL_TEXTURE_2D                     0x0DE1
+#define GL_CULL_FACE                      0x0B44
+#define GL_BLEND                          0x0BE2
+#define GL_DITHER                         0x0BD0
+#define GL_STENCIL_TEST                   0x0B90
+#define GL_DEPTH_TEST                     0x0B71
+#define GL_SCISSOR_TEST                   0x0C11
+#define GL_POLYGON_OFFSET_FILL            0x8037
+#define GL_SAMPLE_ALPHA_TO_COVERAGE       0x809E
+#define GL_SAMPLE_COVERAGE                0x80A0
+#define GL_NO_ERROR                       0
+#define GL_INVALID_ENUM                   0x0500
+#define GL_INVALID_VALUE                  0x0501
+#define GL_INVALID_OPERATION              0x0502
+#define GL_OUT_OF_MEMORY                  0x0505
+#define GL_CW                             0x0900
+#define GL_CCW                            0x0901
+#define GL_LINE_WIDTH                     0x0B21
+#define GL_ALIASED_POINT_SIZE_RANGE       0x846D
+#define GL_ALIASED_LINE_WIDTH_RANGE       0x846E
+#define GL_CULL_FACE_MODE                 0x0B45
+#define GL_FRONT_FACE                     0x0B46
+#define GL_DEPTH_RANGE                    0x0B70
+#define GL_DEPTH_WRITEMASK                0x0B72
+#define GL_DEPTH_CLEAR_VALUE              0x0B73
+#define GL_DEPTH_FUNC                     0x0B74
+#define GL_STENCIL_CLEAR_VALUE            0x0B91
+#define GL_STENCIL_FUNC                   0x0B92
+#define GL_STENCIL_FAIL                   0x0B94
+#define GL_STENCIL_PASS_DEPTH_FAIL        0x0B95
+#define GL_STENCIL_PASS_DEPTH_PASS        0x0B96
+#define GL_STENCIL_REF                    0x0B97
+#define GL_STENCIL_VALUE_MASK             0x0B93
+#define GL_STENCIL_WRITEMASK              0x0B98
+#define GL_STENCIL_BACK_FUNC              0x8800
+#define GL_STENCIL_BACK_FAIL              0x8801
+#define GL_STENCIL_BACK_PASS_DEPTH_FAIL   0x8802
+#define GL_STENCIL_BACK_PASS_DEPTH_PASS   0x8803
+#define GL_STENCIL_BACK_REF               0x8CA3
+#define GL_STENCIL_BACK_VALUE_MASK        0x8CA4
+#define GL_STENCIL_BACK_WRITEMASK         0x8CA5
+#define GL_VIEWPORT                       0x0BA2
+#define GL_SCISSOR_BOX                    0x0C10
+#define GL_COLOR_CLEAR_VALUE              0x0C22
+#define GL_COLOR_WRITEMASK                0x0C23
+#define GL_UNPACK_ALIGNMENT               0x0CF5
+#define GL_PACK_ALIGNMENT                 0x0D05
+#define GL_MAX_TEXTURE_SIZE               0x0D33
+#define GL_MAX_VIEWPORT_DIMS              0x0D3A
+#define GL_SUBPIXEL_BITS                  0x0D50
+#define GL_RED_BITS                       0x0D52
+#define GL_GREEN_BITS                     0x0D53
+#define GL_BLUE_BITS                      0x0D54
+#define GL_ALPHA_BITS                     0x0D55
+#define GL_DEPTH_BITS                     0x0D56
+#define GL_STENCIL_BITS                   0x0D57
+#define GL_POLYGON_OFFSET_UNITS           0x2A00
+#define GL_POLYGON_OFFSET_FACTOR          0x8038
+#define GL_TEXTURE_BINDING_2D             0x8069
+#define GL_SAMPLE_BUFFERS                 0x80A8
+#define GL_SAMPLES                        0x80A9
+#define GL_SAMPLE_COVERAGE_VALUE          0x80AA
+#define GL_SAMPLE_COVERAGE_INVERT         0x80AB
+#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
+#define GL_COMPRESSED_TEXTURE_FORMATS     0x86A3
+#define GL_DONT_CARE                      0x1100
+#define GL_FASTEST                        0x1101
+#define GL_NICEST                         0x1102
+#define GL_GENERATE_MIPMAP_HINT           0x8192
+#define GL_BYTE                           0x1400
+#define GL_UNSIGNED_BYTE                  0x1401
+#define GL_SHORT                          0x1402
+#define GL_UNSIGNED_SHORT                 0x1403
+#define GL_INT                            0x1404
+#define GL_UNSIGNED_INT                   0x1405
+#define GL_FLOAT                          0x1406
+#define GL_FIXED                          0x140C
+#define GL_DEPTH_COMPONENT                0x1902
+#define GL_ALPHA                          0x1906
+#define GL_RGB                            0x1907
+#define GL_RGBA                           0x1908
+#define GL_LUMINANCE                      0x1909
+#define GL_LUMINANCE_ALPHA                0x190A
+#define GL_UNSIGNED_SHORT_4_4_4_4         0x8033
+#define GL_UNSIGNED_SHORT_5_5_5_1         0x8034
+#define GL_UNSIGNED_SHORT_5_6_5           0x8363
+#define GL_FRAGMENT_SHADER                0x8B30
+#define GL_VERTEX_SHADER                  0x8B31
+#define GL_MAX_VERTEX_ATTRIBS             0x8869
+#define GL_MAX_VERTEX_UNIFORM_VECTORS     0x8DFB
+#define GL_MAX_VARYING_VECTORS            0x8DFC
+#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
+#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
+#define GL_MAX_TEXTURE_IMAGE_UNITS        0x8872
+#define GL_MAX_FRAGMENT_UNIFORM_VECTORS   0x8DFD
+#define GL_SHADER_TYPE                    0x8B4F
+#define GL_DELETE_STATUS                  0x8B80
+#define GL_LINK_STATUS                    0x8B82
+#define GL_VALIDATE_STATUS                0x8B83
+#define GL_ATTACHED_SHADERS               0x8B85
+#define GL_ACTIVE_UNIFORMS                0x8B86
+#define GL_ACTIVE_UNIFORM_MAX_LENGTH      0x8B87
+#define GL_ACTIVE_ATTRIBUTES              0x8B89
+#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH    0x8B8A
+#define GL_SHADING_LANGUAGE_VERSION       0x8B8C
+#define GL_CURRENT_PROGRAM                0x8B8D
+#define GL_NEVER                          0x0200
+#define GL_LESS                           0x0201
+#define GL_EQUAL                          0x0202
+#define GL_LEQUAL                         0x0203
+#define GL_GREATER                        0x0204
+#define GL_NOTEQUAL                       0x0205
+#define GL_GEQUAL                         0x0206
+#define GL_ALWAYS                         0x0207
+#define GL_KEEP                           0x1E00
+#define GL_REPLACE                        0x1E01
+#define GL_INCR                           0x1E02
+#define GL_DECR                           0x1E03
+#define GL_INVERT                         0x150A
+#define GL_INCR_WRAP                      0x8507
+#define GL_DECR_WRAP                      0x8508
+#define GL_VENDOR                         0x1F00
+#define GL_RENDERER                       0x1F01
+#define GL_VERSION                        0x1F02
+#define GL_EXTENSIONS                     0x1F03
+#define GL_NEAREST                        0x2600
+#define GL_LINEAR                         0x2601
+#define GL_NEAREST_MIPMAP_NEAREST         0x2700
+#define GL_LINEAR_MIPMAP_NEAREST          0x2701
+#define GL_NEAREST_MIPMAP_LINEAR          0x2702
+#define GL_LINEAR_MIPMAP_LINEAR           0x2703
+#define GL_TEXTURE_MAG_FILTER             0x2800
+#define GL_TEXTURE_MIN_FILTER             0x2801
+#define GL_TEXTURE_WRAP_S                 0x2802
+#define GL_TEXTURE_WRAP_T                 0x2803
+#define GL_TEXTURE                        0x1702
+#define GL_TEXTURE_CUBE_MAP               0x8513
+#define GL_TEXTURE_BINDING_CUBE_MAP       0x8514
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_X    0x8515
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X    0x8516
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y    0x8517
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y    0x8518
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z    0x8519
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z    0x851A
+#define GL_MAX_CUBE_MAP_TEXTURE_SIZE      0x851C
+#define GL_TEXTURE0                       0x84C0
+#define GL_TEXTURE1                       0x84C1
+#define GL_TEXTURE2                       0x84C2
+#define GL_TEXTURE3                       0x84C3
+#define GL_TEXTURE4                       0x84C4
+#define GL_TEXTURE5                       0x84C5
+#define GL_TEXTURE6                       0x84C6
+#define GL_TEXTURE7                       0x84C7
+#define GL_TEXTURE8                       0x84C8
+#define GL_TEXTURE9                       0x84C9
+#define GL_TEXTURE10                      0x84CA
+#define GL_TEXTURE11                      0x84CB
+#define GL_TEXTURE12                      0x84CC
+#define GL_TEXTURE13                      0x84CD
+#define GL_TEXTURE14                      0x84CE
+#define GL_TEXTURE15                      0x84CF
+#define GL_TEXTURE16                      0x84D0
+#define GL_TEXTURE17                      0x84D1
+#define GL_TEXTURE18                      0x84D2
+#define GL_TEXTURE19                      0x84D3
+#define GL_TEXTURE20                      0x84D4
+#define GL_TEXTURE21                      0x84D5
+#define GL_TEXTURE22                      0x84D6
+#define GL_TEXTURE23                      0x84D7
+#define GL_TEXTURE24                      0x84D8
+#define GL_TEXTURE25                      0x84D9
+#define GL_TEXTURE26                      0x84DA
+#define GL_TEXTURE27                      0x84DB
+#define GL_TEXTURE28                      0x84DC
+#define GL_TEXTURE29                      0x84DD
+#define GL_TEXTURE30                      0x84DE
+#define GL_TEXTURE31                      0x84DF
+#define GL_ACTIVE_TEXTURE                 0x84E0
+#define GL_REPEAT                         0x2901
+#define GL_CLAMP_TO_EDGE                  0x812F
+#define GL_MIRRORED_REPEAT                0x8370
+#define GL_FLOAT_VEC2                     0x8B50
+#define GL_FLOAT_VEC3                     0x8B51
+#define GL_FLOAT_VEC4                     0x8B52
+#define GL_INT_VEC2                       0x8B53
+#define GL_INT_VEC3                       0x8B54
+#define GL_INT_VEC4                       0x8B55
+#define GL_BOOL                           0x8B56
+#define GL_BOOL_VEC2                      0x8B57
+#define GL_BOOL_VEC3                      0x8B58
+#define GL_BOOL_VEC4                      0x8B59
+#define GL_FLOAT_MAT2                     0x8B5A
+#define GL_FLOAT_MAT3                     0x8B5B
+#define GL_FLOAT_MAT4                     0x8B5C
+#define GL_SAMPLER_2D                     0x8B5E
+#define GL_SAMPLER_CUBE                   0x8B60
+#define GL_VERTEX_ATTRIB_ARRAY_ENABLED    0x8622
+#define GL_VERTEX_ATTRIB_ARRAY_SIZE       0x8623
+#define GL_VERTEX_ATTRIB_ARRAY_STRIDE     0x8624
+#define GL_VERTEX_ATTRIB_ARRAY_TYPE       0x8625
+#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
+#define GL_VERTEX_ATTRIB_ARRAY_POINTER    0x8645
+#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
+#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A
+#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
+#define GL_COMPILE_STATUS                 0x8B81
+#define GL_INFO_LOG_LENGTH                0x8B84
+#define GL_SHADER_SOURCE_LENGTH           0x8B88
+#define GL_SHADER_COMPILER                0x8DFA
+#define GL_SHADER_BINARY_FORMATS          0x8DF8
+#define GL_NUM_SHADER_BINARY_FORMATS      0x8DF9
+#define GL_LOW_FLOAT                      0x8DF0
+#define GL_MEDIUM_FLOAT                   0x8DF1
+#define GL_HIGH_FLOAT                     0x8DF2
+#define GL_LOW_INT                        0x8DF3
+#define GL_MEDIUM_INT                     0x8DF4
+#define GL_HIGH_INT                       0x8DF5
+#define GL_FRAMEBUFFER                    0x8D40
+#define GL_RENDERBUFFER                   0x8D41
+#define GL_RGBA4                          0x8056
+#define GL_RGB5_A1                        0x8057
+#define GL_RGB565                         0x8D62
+#define GL_DEPTH_COMPONENT16              0x81A5
+#define GL_STENCIL_INDEX8                 0x8D48
+#define GL_RENDERBUFFER_WIDTH             0x8D42
+#define GL_RENDERBUFFER_HEIGHT            0x8D43
+#define GL_RENDERBUFFER_INTERNAL_FORMAT   0x8D44
+#define GL_RENDERBUFFER_RED_SIZE          0x8D50
+#define GL_RENDERBUFFER_GREEN_SIZE        0x8D51
+#define GL_RENDERBUFFER_BLUE_SIZE         0x8D52
+#define GL_RENDERBUFFER_ALPHA_SIZE        0x8D53
+#define GL_RENDERBUFFER_DEPTH_SIZE        0x8D54
+#define GL_RENDERBUFFER_STENCIL_SIZE      0x8D55
+#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
+#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
+#define GL_COLOR_ATTACHMENT0              0x8CE0
+#define GL_DEPTH_ATTACHMENT               0x8D00
+#define GL_STENCIL_ATTACHMENT             0x8D20
+#define GL_NONE                           0
+#define GL_FRAMEBUFFER_COMPLETE           0x8CD5
+#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
+#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
+#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 0x8CD9
+#define GL_FRAMEBUFFER_UNSUPPORTED        0x8CDD
+#define GL_FRAMEBUFFER_BINDING            0x8CA6
+#define GL_RENDERBUFFER_BINDING           0x8CA7
+#define GL_MAX_RENDERBUFFER_SIZE          0x84E8
+#define GL_INVALID_FRAMEBUFFER_OPERATION  0x0506
+GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture);
+GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
+GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar *name);
+GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
+GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
+GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
+GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
+GL_APICALL void GL_APIENTRY glBlendColor (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+GL_APICALL void GL_APIENTRY glBlendEquation (GLenum mode);
+GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
+GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
+GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const void *data, GLenum usage);
+GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const void *data);
+GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target);
+GL_APICALL void GL_APIENTRY glClear (GLbitfield mask);
+GL_APICALL void GL_APIENTRY glClearColor (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+GL_APICALL void GL_APIENTRY glClearDepthf (GLfloat d);
+GL_APICALL void GL_APIENTRY glClearStencil (GLint s);
+GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader);
+GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
+GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
+GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL GLuint GL_APIENTRY glCreateProgram (void);
+GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type);
+GL_APICALL void GL_APIENTRY glCullFace (GLenum mode);
+GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint *buffers);
+GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint *framebuffers);
+GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint *renderbuffers);
+GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader);
+GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint *textures);
+GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func);
+GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag);
+GL_APICALL void GL_APIENTRY glDepthRangef (GLfloat n, GLfloat f);
+GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
+GL_APICALL void GL_APIENTRY glDisable (GLenum cap);
+GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index);
+GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
+GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const void *indices);
+GL_APICALL void GL_APIENTRY glEnable (GLenum cap);
+GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index);
+GL_APICALL void GL_APIENTRY glFinish (void);
+GL_APICALL void GL_APIENTRY glFlush (void);
+GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode);
+GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint *buffers);
+GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target);
+GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint *framebuffers);
+GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint *renderbuffers);
+GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint *textures);
+GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
+GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders);
+GL_APICALL GLint GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar *name);
+GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean *data);
+GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint *params);
+GL_APICALL GLenum GL_APIENTRY glGetError (void);
+GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat *data);
+GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint *data);
+GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
+GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
+GL_APICALL const GLubyte *GL_APIENTRY glGetString (GLenum name);
+GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat *params);
+GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat *params);
+GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint *params);
+GL_APICALL GLint GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar *name);
+GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat *params);
+GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, void **pointer);
+GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode);
+GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer);
+GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap);
+GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
+GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program);
+GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
+GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader);
+GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture);
+GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width);
+GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
+GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
+GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels);
+GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void);
+GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glSampleCoverage (GLfloat value, GLboolean invert);
+GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei count, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length);
+GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length);
+GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
+GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
+GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels);
+GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
+GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat *params);
+GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
+GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint *params);
+GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
+GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat v0);
+GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint v0);
+GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat v0, GLfloat v1);
+GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint v0, GLint v1);
+GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint v0, GLint v1, GLint v2);
+GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUseProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint index, GLfloat x);
+GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint index, const GLfloat *v);
+GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint index, GLfloat x, GLfloat y);
+GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint index, const GLfloat *v);
+GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint index, GLfloat x, GLfloat y, GLfloat z);
+GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint index, const GLfloat *v);
+GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint index, const GLfloat *v);
+GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer);
+GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
+#endif /* GL_ES_VERSION_2_0 */
+
+#ifndef GL_ES_VERSION_3_0
+#define GL_ES_VERSION_3_0 1
+typedef unsigned short GLhalf;
+#define GL_READ_BUFFER                    0x0C02
+#define GL_UNPACK_ROW_LENGTH              0x0CF2
+#define GL_UNPACK_SKIP_ROWS               0x0CF3
+#define GL_UNPACK_SKIP_PIXELS             0x0CF4
+#define GL_PACK_ROW_LENGTH                0x0D02
+#define GL_PACK_SKIP_ROWS                 0x0D03
+#define GL_PACK_SKIP_PIXELS               0x0D04
+#define GL_COLOR                          0x1800
+#define GL_DEPTH                          0x1801
+#define GL_STENCIL                        0x1802
+#define GL_RED                            0x1903
+#define GL_RGB8                           0x8051
+#define GL_RGBA8                          0x8058
+#define GL_RGB10_A2                       0x8059
+#define GL_TEXTURE_BINDING_3D             0x806A
+#define GL_UNPACK_SKIP_IMAGES             0x806D
+#define GL_UNPACK_IMAGE_HEIGHT            0x806E
+#define GL_TEXTURE_3D                     0x806F
+#define GL_TEXTURE_WRAP_R                 0x8072
+#define GL_MAX_3D_TEXTURE_SIZE            0x8073
+#define GL_UNSIGNED_INT_2_10_10_10_REV    0x8368
+#define GL_MAX_ELEMENTS_VERTICES          0x80E8
+#define GL_MAX_ELEMENTS_INDICES           0x80E9
+#define GL_TEXTURE_MIN_LOD                0x813A
+#define GL_TEXTURE_MAX_LOD                0x813B
+#define GL_TEXTURE_BASE_LEVEL             0x813C
+#define GL_TEXTURE_MAX_LEVEL              0x813D
+#define GL_MIN                            0x8007
+#define GL_MAX                            0x8008
+#define GL_DEPTH_COMPONENT24              0x81A6
+#define GL_MAX_TEXTURE_LOD_BIAS           0x84FD
+#define GL_TEXTURE_COMPARE_MODE           0x884C
+#define GL_TEXTURE_COMPARE_FUNC           0x884D
+#define GL_CURRENT_QUERY                  0x8865
+#define GL_QUERY_RESULT                   0x8866
+#define GL_QUERY_RESULT_AVAILABLE         0x8867
+#define GL_BUFFER_MAPPED                  0x88BC
+#define GL_BUFFER_MAP_POINTER             0x88BD
+#define GL_STREAM_READ                    0x88E1
+#define GL_STREAM_COPY                    0x88E2
+#define GL_STATIC_READ                    0x88E5
+#define GL_STATIC_COPY                    0x88E6
+#define GL_DYNAMIC_READ                   0x88E9
+#define GL_DYNAMIC_COPY                   0x88EA
+#define GL_MAX_DRAW_BUFFERS               0x8824
+#define GL_DRAW_BUFFER0                   0x8825
+#define GL_DRAW_BUFFER1                   0x8826
+#define GL_DRAW_BUFFER2                   0x8827
+#define GL_DRAW_BUFFER3                   0x8828
+#define GL_DRAW_BUFFER4                   0x8829
+#define GL_DRAW_BUFFER5                   0x882A
+#define GL_DRAW_BUFFER6                   0x882B
+#define GL_DRAW_BUFFER7                   0x882C
+#define GL_DRAW_BUFFER8                   0x882D
+#define GL_DRAW_BUFFER9                   0x882E
+#define GL_DRAW_BUFFER10                  0x882F
+#define GL_DRAW_BUFFER11                  0x8830
+#define GL_DRAW_BUFFER12                  0x8831
+#define GL_DRAW_BUFFER13                  0x8832
+#define GL_DRAW_BUFFER14                  0x8833
+#define GL_DRAW_BUFFER15                  0x8834
+#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49
+#define GL_MAX_VERTEX_UNIFORM_COMPONENTS  0x8B4A
+#define GL_SAMPLER_3D                     0x8B5F
+#define GL_SAMPLER_2D_SHADOW              0x8B62
+#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B
+#define GL_PIXEL_PACK_BUFFER              0x88EB
+#define GL_PIXEL_UNPACK_BUFFER            0x88EC
+#define GL_PIXEL_PACK_BUFFER_BINDING      0x88ED
+#define GL_PIXEL_UNPACK_BUFFER_BINDING    0x88EF
+#define GL_FLOAT_MAT2x3                   0x8B65
+#define GL_FLOAT_MAT2x4                   0x8B66
+#define GL_FLOAT_MAT3x2                   0x8B67
+#define GL_FLOAT_MAT3x4                   0x8B68
+#define GL_FLOAT_MAT4x2                   0x8B69
+#define GL_FLOAT_MAT4x3                   0x8B6A
+#define GL_SRGB                           0x8C40
+#define GL_SRGB8                          0x8C41
+#define GL_SRGB8_ALPHA8                   0x8C43
+#define GL_COMPARE_REF_TO_TEXTURE         0x884E
+#define GL_MAJOR_VERSION                  0x821B
+#define GL_MINOR_VERSION                  0x821C
+#define GL_NUM_EXTENSIONS                 0x821D
+#define GL_RGBA32F                        0x8814
+#define GL_RGB32F                         0x8815
+#define GL_RGBA16F                        0x881A
+#define GL_RGB16F                         0x881B
+#define GL_VERTEX_ATTRIB_ARRAY_INTEGER    0x88FD
+#define GL_MAX_ARRAY_TEXTURE_LAYERS       0x88FF
+#define GL_MIN_PROGRAM_TEXEL_OFFSET       0x8904
+#define GL_MAX_PROGRAM_TEXEL_OFFSET       0x8905
+#define GL_MAX_VARYING_COMPONENTS         0x8B4B
+#define GL_TEXTURE_2D_ARRAY               0x8C1A
+#define GL_TEXTURE_BINDING_2D_ARRAY       0x8C1D
+#define GL_R11F_G11F_B10F                 0x8C3A
+#define GL_UNSIGNED_INT_10F_11F_11F_REV   0x8C3B
+#define GL_RGB9_E5                        0x8C3D
+#define GL_UNSIGNED_INT_5_9_9_9_REV       0x8C3E
+#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76
+#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F
+#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80
+#define GL_TRANSFORM_FEEDBACK_VARYINGS    0x8C83
+#define GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84
+#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85
+#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88
+#define GL_RASTERIZER_DISCARD             0x8C89
+#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A
+#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B
+#define GL_INTERLEAVED_ATTRIBS            0x8C8C
+#define GL_SEPARATE_ATTRIBS               0x8C8D
+#define GL_TRANSFORM_FEEDBACK_BUFFER      0x8C8E
+#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F
+#define GL_RGBA32UI                       0x8D70
+#define GL_RGB32UI                        0x8D71
+#define GL_RGBA16UI                       0x8D76
+#define GL_RGB16UI                        0x8D77
+#define GL_RGBA8UI                        0x8D7C
+#define GL_RGB8UI                         0x8D7D
+#define GL_RGBA32I                        0x8D82
+#define GL_RGB32I                         0x8D83
+#define GL_RGBA16I                        0x8D88
+#define GL_RGB16I                         0x8D89
+#define GL_RGBA8I                         0x8D8E
+#define GL_RGB8I                          0x8D8F
+#define GL_RED_INTEGER                    0x8D94
+#define GL_RGB_INTEGER                    0x8D98
+#define GL_RGBA_INTEGER                   0x8D99
+#define GL_SAMPLER_2D_ARRAY               0x8DC1
+#define GL_SAMPLER_2D_ARRAY_SHADOW        0x8DC4
+#define GL_SAMPLER_CUBE_SHADOW            0x8DC5
+#define GL_UNSIGNED_INT_VEC2              0x8DC6
+#define GL_UNSIGNED_INT_VEC3              0x8DC7
+#define GL_UNSIGNED_INT_VEC4              0x8DC8
+#define GL_INT_SAMPLER_2D                 0x8DCA
+#define GL_INT_SAMPLER_3D                 0x8DCB
+#define GL_INT_SAMPLER_CUBE               0x8DCC
+#define GL_INT_SAMPLER_2D_ARRAY           0x8DCF
+#define GL_UNSIGNED_INT_SAMPLER_2D        0x8DD2
+#define GL_UNSIGNED_INT_SAMPLER_3D        0x8DD3
+#define GL_UNSIGNED_INT_SAMPLER_CUBE      0x8DD4
+#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY  0x8DD7
+#define GL_BUFFER_ACCESS_FLAGS            0x911F
+#define GL_BUFFER_MAP_LENGTH              0x9120
+#define GL_BUFFER_MAP_OFFSET              0x9121
+#define GL_DEPTH_COMPONENT32F             0x8CAC
+#define GL_DEPTH32F_STENCIL8              0x8CAD
+#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD
+#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210
+#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211
+#define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212
+#define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213
+#define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214
+#define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215
+#define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216
+#define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217
+#define GL_FRAMEBUFFER_DEFAULT            0x8218
+#define GL_FRAMEBUFFER_UNDEFINED          0x8219
+#define GL_DEPTH_STENCIL_ATTACHMENT       0x821A
+#define GL_DEPTH_STENCIL                  0x84F9
+#define GL_UNSIGNED_INT_24_8              0x84FA
+#define GL_DEPTH24_STENCIL8               0x88F0
+#define GL_UNSIGNED_NORMALIZED            0x8C17
+#define GL_DRAW_FRAMEBUFFER_BINDING       0x8CA6
+#define GL_READ_FRAMEBUFFER               0x8CA8
+#define GL_DRAW_FRAMEBUFFER               0x8CA9
+#define GL_READ_FRAMEBUFFER_BINDING       0x8CAA
+#define GL_RENDERBUFFER_SAMPLES           0x8CAB
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4
+#define GL_MAX_COLOR_ATTACHMENTS          0x8CDF
+#define GL_COLOR_ATTACHMENT1              0x8CE1
+#define GL_COLOR_ATTACHMENT2              0x8CE2
+#define GL_COLOR_ATTACHMENT3              0x8CE3
+#define GL_COLOR_ATTACHMENT4              0x8CE4
+#define GL_COLOR_ATTACHMENT5              0x8CE5
+#define GL_COLOR_ATTACHMENT6              0x8CE6
+#define GL_COLOR_ATTACHMENT7              0x8CE7
+#define GL_COLOR_ATTACHMENT8              0x8CE8
+#define GL_COLOR_ATTACHMENT9              0x8CE9
+#define GL_COLOR_ATTACHMENT10             0x8CEA
+#define GL_COLOR_ATTACHMENT11             0x8CEB
+#define GL_COLOR_ATTACHMENT12             0x8CEC
+#define GL_COLOR_ATTACHMENT13             0x8CED
+#define GL_COLOR_ATTACHMENT14             0x8CEE
+#define GL_COLOR_ATTACHMENT15             0x8CEF
+#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
+#define GL_MAX_SAMPLES                    0x8D57
+#define GL_HALF_FLOAT                     0x140B
+#define GL_MAP_READ_BIT                   0x0001
+#define GL_MAP_WRITE_BIT                  0x0002
+#define GL_MAP_INVALIDATE_RANGE_BIT       0x0004
+#define GL_MAP_INVALIDATE_BUFFER_BIT      0x0008
+#define GL_MAP_FLUSH_EXPLICIT_BIT         0x0010
+#define GL_MAP_UNSYNCHRONIZED_BIT         0x0020
+#define GL_RG                             0x8227
+#define GL_RG_INTEGER                     0x8228
+#define GL_R8                             0x8229
+#define GL_RG8                            0x822B
+#define GL_R16F                           0x822D
+#define GL_R32F                           0x822E
+#define GL_RG16F                          0x822F
+#define GL_RG32F                          0x8230
+#define GL_R8I                            0x8231
+#define GL_R8UI                           0x8232
+#define GL_R16I                           0x8233
+#define GL_R16UI                          0x8234
+#define GL_R32I                           0x8235
+#define GL_R32UI                          0x8236
+#define GL_RG8I                           0x8237
+#define GL_RG8UI                          0x8238
+#define GL_RG16I                          0x8239
+#define GL_RG16UI                         0x823A
+#define GL_RG32I                          0x823B
+#define GL_RG32UI                         0x823C
+#define GL_VERTEX_ARRAY_BINDING           0x85B5
+#define GL_R8_SNORM                       0x8F94
+#define GL_RG8_SNORM                      0x8F95
+#define GL_RGB8_SNORM                     0x8F96
+#define GL_RGBA8_SNORM                    0x8F97
+#define GL_SIGNED_NORMALIZED              0x8F9C
+#define GL_PRIMITIVE_RESTART_FIXED_INDEX  0x8D69
+#define GL_COPY_READ_BUFFER               0x8F36
+#define GL_COPY_WRITE_BUFFER              0x8F37
+#define GL_COPY_READ_BUFFER_BINDING       0x8F36
+#define GL_COPY_WRITE_BUFFER_BINDING      0x8F37
+#define GL_UNIFORM_BUFFER                 0x8A11
+#define GL_UNIFORM_BUFFER_BINDING         0x8A28
+#define GL_UNIFORM_BUFFER_START           0x8A29
+#define GL_UNIFORM_BUFFER_SIZE            0x8A2A
+#define GL_MAX_VERTEX_UNIFORM_BLOCKS      0x8A2B
+#define GL_MAX_FRAGMENT_UNIFORM_BLOCKS    0x8A2D
+#define GL_MAX_COMBINED_UNIFORM_BLOCKS    0x8A2E
+#define GL_MAX_UNIFORM_BUFFER_BINDINGS    0x8A2F
+#define GL_MAX_UNIFORM_BLOCK_SIZE         0x8A30
+#define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31
+#define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33
+#define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34
+#define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35
+#define GL_ACTIVE_UNIFORM_BLOCKS          0x8A36
+#define GL_UNIFORM_TYPE                   0x8A37
+#define GL_UNIFORM_SIZE                   0x8A38
+#define GL_UNIFORM_NAME_LENGTH            0x8A39
+#define GL_UNIFORM_BLOCK_INDEX            0x8A3A
+#define GL_UNIFORM_OFFSET                 0x8A3B
+#define GL_UNIFORM_ARRAY_STRIDE           0x8A3C
+#define GL_UNIFORM_MATRIX_STRIDE          0x8A3D
+#define GL_UNIFORM_IS_ROW_MAJOR           0x8A3E
+#define GL_UNIFORM_BLOCK_BINDING          0x8A3F
+#define GL_UNIFORM_BLOCK_DATA_SIZE        0x8A40
+#define GL_UNIFORM_BLOCK_NAME_LENGTH      0x8A41
+#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS  0x8A42
+#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43
+#define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44
+#define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46
+#define GL_INVALID_INDEX                  0xFFFFFFFFu
+#define GL_MAX_VERTEX_OUTPUT_COMPONENTS   0x9122
+#define GL_MAX_FRAGMENT_INPUT_COMPONENTS  0x9125
+#define GL_MAX_SERVER_WAIT_TIMEOUT        0x9111
+#define GL_OBJECT_TYPE                    0x9112
+#define GL_SYNC_CONDITION                 0x9113
+#define GL_SYNC_STATUS                    0x9114
+#define GL_SYNC_FLAGS                     0x9115
+#define GL_SYNC_FENCE                     0x9116
+#define GL_SYNC_GPU_COMMANDS_COMPLETE     0x9117
+#define GL_UNSIGNALED                     0x9118
+#define GL_SIGNALED                       0x9119
+#define GL_ALREADY_SIGNALED               0x911A
+#define GL_TIMEOUT_EXPIRED                0x911B
+#define GL_CONDITION_SATISFIED            0x911C
+#define GL_WAIT_FAILED                    0x911D
+#define GL_SYNC_FLUSH_COMMANDS_BIT        0x00000001
+#define GL_TIMEOUT_IGNORED                0xFFFFFFFFFFFFFFFFull
+#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR    0x88FE
+#define GL_ANY_SAMPLES_PASSED             0x8C2F
+#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE 0x8D6A
+#define GL_SAMPLER_BINDING                0x8919
+#define GL_RGB10_A2UI                     0x906F
+#define GL_TEXTURE_SWIZZLE_R              0x8E42
+#define GL_TEXTURE_SWIZZLE_G              0x8E43
+#define GL_TEXTURE_SWIZZLE_B              0x8E44
+#define GL_TEXTURE_SWIZZLE_A              0x8E45
+#define GL_GREEN                          0x1904
+#define GL_BLUE                           0x1905
+#define GL_INT_2_10_10_10_REV             0x8D9F
+#define GL_TRANSFORM_FEEDBACK             0x8E22
+#define GL_TRANSFORM_FEEDBACK_PAUSED      0x8E23
+#define GL_TRANSFORM_FEEDBACK_ACTIVE      0x8E24
+#define GL_TRANSFORM_FEEDBACK_BINDING     0x8E25
+#define GL_PROGRAM_BINARY_RETRIEVABLE_HINT 0x8257
+#define GL_PROGRAM_BINARY_LENGTH          0x8741
+#define GL_NUM_PROGRAM_BINARY_FORMATS     0x87FE
+#define GL_PROGRAM_BINARY_FORMATS         0x87FF
+#define GL_COMPRESSED_R11_EAC             0x9270
+#define GL_COMPRESSED_SIGNED_R11_EAC      0x9271
+#define GL_COMPRESSED_RG11_EAC            0x9272
+#define GL_COMPRESSED_SIGNED_RG11_EAC     0x9273
+#define GL_COMPRESSED_RGB8_ETC2           0x9274
+#define GL_COMPRESSED_SRGB8_ETC2          0x9275
+#define GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9276
+#define GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9277
+#define GL_COMPRESSED_RGBA8_ETC2_EAC      0x9278
+#define GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC 0x9279
+#define GL_TEXTURE_IMMUTABLE_FORMAT       0x912F
+#define GL_MAX_ELEMENT_INDEX              0x8D6B
+#define GL_NUM_SAMPLE_COUNTS              0x9380
+#define GL_TEXTURE_IMMUTABLE_LEVELS       0x82DF
+GL_APICALL void GL_APIENTRY glReadBuffer (GLenum src);
+GL_APICALL void GL_APIENTRY glDrawRangeElements (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices);
+GL_APICALL void GL_APIENTRY glTexImage3D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
+GL_APICALL void GL_APIENTRY glTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
+GL_APICALL void GL_APIENTRY glCopyTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glCompressedTexImage3D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
+GL_APICALL void GL_APIENTRY glCompressedTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
+GL_APICALL void GL_APIENTRY glGenQueries (GLsizei n, GLuint *ids);
+GL_APICALL void GL_APIENTRY glDeleteQueries (GLsizei n, const GLuint *ids);
+GL_APICALL GLboolean GL_APIENTRY glIsQuery (GLuint id);
+GL_APICALL void GL_APIENTRY glBeginQuery (GLenum target, GLuint id);
+GL_APICALL void GL_APIENTRY glEndQuery (GLenum target);
+GL_APICALL void GL_APIENTRY glGetQueryiv (GLenum target, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetQueryObjectuiv (GLuint id, GLenum pname, GLuint *params);
+GL_APICALL GLboolean GL_APIENTRY glUnmapBuffer (GLenum target);
+GL_APICALL void GL_APIENTRY glGetBufferPointerv (GLenum target, GLenum pname, void **params);
+GL_APICALL void GL_APIENTRY glDrawBuffers (GLsizei n, const GLenum *bufs);
+GL_APICALL void GL_APIENTRY glUniformMatrix2x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix3x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix2x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix4x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix3x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glUniformMatrix4x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glBlitFramebuffer (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
+GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisample (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glFramebufferTextureLayer (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+GL_APICALL void *GL_APIENTRY glMapBufferRange (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
+GL_APICALL void GL_APIENTRY glFlushMappedBufferRange (GLenum target, GLintptr offset, GLsizeiptr length);
+GL_APICALL void GL_APIENTRY glBindVertexArray (GLuint array);
+GL_APICALL void GL_APIENTRY glDeleteVertexArrays (GLsizei n, const GLuint *arrays);
+GL_APICALL void GL_APIENTRY glGenVertexArrays (GLsizei n, GLuint *arrays);
+GL_APICALL GLboolean GL_APIENTRY glIsVertexArray (GLuint array);
+GL_APICALL void GL_APIENTRY glGetIntegeri_v (GLenum target, GLuint index, GLint *data);
+GL_APICALL void GL_APIENTRY glBeginTransformFeedback (GLenum primitiveMode);
+GL_APICALL void GL_APIENTRY glEndTransformFeedback (void);
+GL_APICALL void GL_APIENTRY glBindBufferRange (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+GL_APICALL void GL_APIENTRY glBindBufferBase (GLenum target, GLuint index, GLuint buffer);
+GL_APICALL void GL_APIENTRY glTransformFeedbackVaryings (GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode);
+GL_APICALL void GL_APIENTRY glGetTransformFeedbackVarying (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
+GL_APICALL void GL_APIENTRY glVertexAttribIPointer (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
+GL_APICALL void GL_APIENTRY glGetVertexAttribIiv (GLuint index, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetVertexAttribIuiv (GLuint index, GLenum pname, GLuint *params);
+GL_APICALL void GL_APIENTRY glVertexAttribI4i (GLuint index, GLint x, GLint y, GLint z, GLint w);
+GL_APICALL void GL_APIENTRY glVertexAttribI4ui (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+GL_APICALL void GL_APIENTRY glVertexAttribI4iv (GLuint index, const GLint *v);
+GL_APICALL void GL_APIENTRY glVertexAttribI4uiv (GLuint index, const GLuint *v);
+GL_APICALL void GL_APIENTRY glGetUniformuiv (GLuint program, GLint location, GLuint *params);
+GL_APICALL GLint GL_APIENTRY glGetFragDataLocation (GLuint program, const GLchar *name);
+GL_APICALL void GL_APIENTRY glUniform1ui (GLint location, GLuint v0);
+GL_APICALL void GL_APIENTRY glUniform2ui (GLint location, GLuint v0, GLuint v1);
+GL_APICALL void GL_APIENTRY glUniform3ui (GLint location, GLuint v0, GLuint v1, GLuint v2);
+GL_APICALL void GL_APIENTRY glUniform4ui (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+GL_APICALL void GL_APIENTRY glUniform1uiv (GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glUniform2uiv (GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glUniform3uiv (GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glUniform4uiv (GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glClearBufferiv (GLenum buffer, GLint drawbuffer, const GLint *value);
+GL_APICALL void GL_APIENTRY glClearBufferuiv (GLenum buffer, GLint drawbuffer, const GLuint *value);
+GL_APICALL void GL_APIENTRY glClearBufferfv (GLenum buffer, GLint drawbuffer, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glClearBufferfi (GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
+GL_APICALL const GLubyte *GL_APIENTRY glGetStringi (GLenum name, GLuint index);
+GL_APICALL void GL_APIENTRY glCopyBufferSubData (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
+GL_APICALL void GL_APIENTRY glGetUniformIndices (GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices);
+GL_APICALL void GL_APIENTRY glGetActiveUniformsiv (GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
+GL_APICALL GLuint GL_APIENTRY glGetUniformBlockIndex (GLuint program, const GLchar *uniformBlockName);
+GL_APICALL void GL_APIENTRY glGetActiveUniformBlockiv (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetActiveUniformBlockName (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
+GL_APICALL void GL_APIENTRY glUniformBlockBinding (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
+GL_APICALL void GL_APIENTRY glDrawArraysInstanced (GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
+GL_APICALL void GL_APIENTRY glDrawElementsInstanced (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount);
+GL_APICALL GLsync GL_APIENTRY glFenceSync (GLenum condition, GLbitfield flags);
+GL_APICALL GLboolean GL_APIENTRY glIsSync (GLsync sync);
+GL_APICALL void GL_APIENTRY glDeleteSync (GLsync sync);
+GL_APICALL GLenum GL_APIENTRY glClientWaitSync (GLsync sync, GLbitfield flags, GLuint64 timeout);
+GL_APICALL void GL_APIENTRY glWaitSync (GLsync sync, GLbitfield flags, GLuint64 timeout);
+GL_APICALL void GL_APIENTRY glGetInteger64v (GLenum pname, GLint64 *data);
+GL_APICALL void GL_APIENTRY glGetSynciv (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+GL_APICALL void GL_APIENTRY glGetInteger64i_v (GLenum target, GLuint index, GLint64 *data);
+GL_APICALL void GL_APIENTRY glGetBufferParameteri64v (GLenum target, GLenum pname, GLint64 *params);
+GL_APICALL void GL_APIENTRY glGenSamplers (GLsizei count, GLuint *samplers);
+GL_APICALL void GL_APIENTRY glDeleteSamplers (GLsizei count, const GLuint *samplers);
+GL_APICALL GLboolean GL_APIENTRY glIsSampler (GLuint sampler);
+GL_APICALL void GL_APIENTRY glBindSampler (GLuint unit, GLuint sampler);
+GL_APICALL void GL_APIENTRY glSamplerParameteri (GLuint sampler, GLenum pname, GLint param);
+GL_APICALL void GL_APIENTRY glSamplerParameteriv (GLuint sampler, GLenum pname, const GLint *param);
+GL_APICALL void GL_APIENTRY glSamplerParameterf (GLuint sampler, GLenum pname, GLfloat param);
+GL_APICALL void GL_APIENTRY glSamplerParameterfv (GLuint sampler, GLenum pname, const GLfloat *param);
+GL_APICALL void GL_APIENTRY glGetSamplerParameteriv (GLuint sampler, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetSamplerParameterfv (GLuint sampler, GLenum pname, GLfloat *params);
+GL_APICALL void GL_APIENTRY glVertexAttribDivisor (GLuint index, GLuint divisor);
+GL_APICALL void GL_APIENTRY glBindTransformFeedback (GLenum target, GLuint id);
+GL_APICALL void GL_APIENTRY glDeleteTransformFeedbacks (GLsizei n, const GLuint *ids);
+GL_APICALL void GL_APIENTRY glGenTransformFeedbacks (GLsizei n, GLuint *ids);
+GL_APICALL GLboolean GL_APIENTRY glIsTransformFeedback (GLuint id);
+GL_APICALL void GL_APIENTRY glPauseTransformFeedback (void);
+GL_APICALL void GL_APIENTRY glResumeTransformFeedback (void);
+GL_APICALL void GL_APIENTRY glGetProgramBinary (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
+GL_APICALL void GL_APIENTRY glProgramBinary (GLuint program, GLenum binaryFormat, const void *binary, GLsizei length);
+GL_APICALL void GL_APIENTRY glProgramParameteri (GLuint program, GLenum pname, GLint value);
+GL_APICALL void GL_APIENTRY glInvalidateFramebuffer (GLenum target, GLsizei numAttachments, const GLenum *attachments);
+GL_APICALL void GL_APIENTRY glInvalidateSubFramebuffer (GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glTexStorage2D (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glTexStorage3D (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
+GL_APICALL void GL_APIENTRY glGetInternalformativ (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
+#endif /* GL_ES_VERSION_3_0 */
+
+#ifndef GL_ES_VERSION_3_1
+#define GL_ES_VERSION_3_1 1
+#define GL_COMPUTE_SHADER                 0x91B9
+#define GL_MAX_COMPUTE_UNIFORM_BLOCKS     0x91BB
+#define GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS 0x91BC
+#define GL_MAX_COMPUTE_IMAGE_UNIFORMS     0x91BD
+#define GL_MAX_COMPUTE_SHARED_MEMORY_SIZE 0x8262
+#define GL_MAX_COMPUTE_UNIFORM_COMPONENTS 0x8263
+#define GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS 0x8264
+#define GL_MAX_COMPUTE_ATOMIC_COUNTERS    0x8265
+#define GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS 0x8266
+#define GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS 0x90EB
+#define GL_MAX_COMPUTE_WORK_GROUP_COUNT   0x91BE
+#define GL_MAX_COMPUTE_WORK_GROUP_SIZE    0x91BF
+#define GL_COMPUTE_WORK_GROUP_SIZE        0x8267
+#define GL_DISPATCH_INDIRECT_BUFFER       0x90EE
+#define GL_DISPATCH_INDIRECT_BUFFER_BINDING 0x90EF
+#define GL_COMPUTE_SHADER_BIT             0x00000020
+#define GL_DRAW_INDIRECT_BUFFER           0x8F3F
+#define GL_DRAW_INDIRECT_BUFFER_BINDING   0x8F43
+#define GL_MAX_UNIFORM_LOCATIONS          0x826E
+#define GL_FRAMEBUFFER_DEFAULT_WIDTH      0x9310
+#define GL_FRAMEBUFFER_DEFAULT_HEIGHT     0x9311
+#define GL_FRAMEBUFFER_DEFAULT_SAMPLES    0x9313
+#define GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS 0x9314
+#define GL_MAX_FRAMEBUFFER_WIDTH          0x9315
+#define GL_MAX_FRAMEBUFFER_HEIGHT         0x9316
+#define GL_MAX_FRAMEBUFFER_SAMPLES        0x9318
+#define GL_UNIFORM                        0x92E1
+#define GL_UNIFORM_BLOCK                  0x92E2
+#define GL_PROGRAM_INPUT                  0x92E3
+#define GL_PROGRAM_OUTPUT                 0x92E4
+#define GL_BUFFER_VARIABLE                0x92E5
+#define GL_SHADER_STORAGE_BLOCK           0x92E6
+#define GL_ATOMIC_COUNTER_BUFFER          0x92C0
+#define GL_TRANSFORM_FEEDBACK_VARYING     0x92F4
+#define GL_ACTIVE_RESOURCES               0x92F5
+#define GL_MAX_NAME_LENGTH                0x92F6
+#define GL_MAX_NUM_ACTIVE_VARIABLES       0x92F7
+#define GL_NAME_LENGTH                    0x92F9
+#define GL_TYPE                           0x92FA
+#define GL_ARRAY_SIZE                     0x92FB
+#define GL_OFFSET                         0x92FC
+#define GL_BLOCK_INDEX                    0x92FD
+#define GL_ARRAY_STRIDE                   0x92FE
+#define GL_MATRIX_STRIDE                  0x92FF
+#define GL_IS_ROW_MAJOR                   0x9300
+#define GL_ATOMIC_COUNTER_BUFFER_INDEX    0x9301
+#define GL_BUFFER_BINDING                 0x9302
+#define GL_BUFFER_DATA_SIZE               0x9303
+#define GL_NUM_ACTIVE_VARIABLES           0x9304
+#define GL_ACTIVE_VARIABLES               0x9305
+#define GL_REFERENCED_BY_VERTEX_SHADER    0x9306
+#define GL_REFERENCED_BY_FRAGMENT_SHADER  0x930A
+#define GL_REFERENCED_BY_COMPUTE_SHADER   0x930B
+#define GL_TOP_LEVEL_ARRAY_SIZE           0x930C
+#define GL_TOP_LEVEL_ARRAY_STRIDE         0x930D
+#define GL_LOCATION                       0x930E
+#define GL_VERTEX_SHADER_BIT              0x00000001
+#define GL_FRAGMENT_SHADER_BIT            0x00000002
+#define GL_ALL_SHADER_BITS                0xFFFFFFFF
+#define GL_PROGRAM_SEPARABLE              0x8258
+#define GL_ACTIVE_PROGRAM                 0x8259
+#define GL_PROGRAM_PIPELINE_BINDING       0x825A
+#define GL_ATOMIC_COUNTER_BUFFER_BINDING  0x92C1
+#define GL_ATOMIC_COUNTER_BUFFER_START    0x92C2
+#define GL_ATOMIC_COUNTER_BUFFER_SIZE     0x92C3
+#define GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS 0x92CC
+#define GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS 0x92D0
+#define GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS 0x92D1
+#define GL_MAX_VERTEX_ATOMIC_COUNTERS     0x92D2
+#define GL_MAX_FRAGMENT_ATOMIC_COUNTERS   0x92D6
+#define GL_MAX_COMBINED_ATOMIC_COUNTERS   0x92D7
+#define GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE 0x92D8
+#define GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS 0x92DC
+#define GL_ACTIVE_ATOMIC_COUNTER_BUFFERS  0x92D9
+#define GL_UNSIGNED_INT_ATOMIC_COUNTER    0x92DB
+#define GL_MAX_IMAGE_UNITS                0x8F38
+#define GL_MAX_VERTEX_IMAGE_UNIFORMS      0x90CA
+#define GL_MAX_FRAGMENT_IMAGE_UNIFORMS    0x90CE
+#define GL_MAX_COMBINED_IMAGE_UNIFORMS    0x90CF
+#define GL_IMAGE_BINDING_NAME             0x8F3A
+#define GL_IMAGE_BINDING_LEVEL            0x8F3B
+#define GL_IMAGE_BINDING_LAYERED          0x8F3C
+#define GL_IMAGE_BINDING_LAYER            0x8F3D
+#define GL_IMAGE_BINDING_ACCESS           0x8F3E
+#define GL_IMAGE_BINDING_FORMAT           0x906E
+#define GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT 0x00000001
+#define GL_ELEMENT_ARRAY_BARRIER_BIT      0x00000002
+#define GL_UNIFORM_BARRIER_BIT            0x00000004
+#define GL_TEXTURE_FETCH_BARRIER_BIT      0x00000008
+#define GL_SHADER_IMAGE_ACCESS_BARRIER_BIT 0x00000020
+#define GL_COMMAND_BARRIER_BIT            0x00000040
+#define GL_PIXEL_BUFFER_BARRIER_BIT       0x00000080
+#define GL_TEXTURE_UPDATE_BARRIER_BIT     0x00000100
+#define GL_BUFFER_UPDATE_BARRIER_BIT      0x00000200
+#define GL_FRAMEBUFFER_BARRIER_BIT        0x00000400
+#define GL_TRANSFORM_FEEDBACK_BARRIER_BIT 0x00000800
+#define GL_ATOMIC_COUNTER_BARRIER_BIT     0x00001000
+#define GL_ALL_BARRIER_BITS               0xFFFFFFFF
+#define GL_IMAGE_2D                       0x904D
+#define GL_IMAGE_3D                       0x904E
+#define GL_IMAGE_CUBE                     0x9050
+#define GL_IMAGE_2D_ARRAY                 0x9053
+#define GL_INT_IMAGE_2D                   0x9058
+#define GL_INT_IMAGE_3D                   0x9059
+#define GL_INT_IMAGE_CUBE                 0x905B
+#define GL_INT_IMAGE_2D_ARRAY             0x905E
+#define GL_UNSIGNED_INT_IMAGE_2D          0x9063
+#define GL_UNSIGNED_INT_IMAGE_3D          0x9064
+#define GL_UNSIGNED_INT_IMAGE_CUBE        0x9066
+#define GL_UNSIGNED_INT_IMAGE_2D_ARRAY    0x9069
+#define GL_IMAGE_FORMAT_COMPATIBILITY_TYPE 0x90C7
+#define GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE 0x90C8
+#define GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS 0x90C9
+#define GL_READ_ONLY                      0x88B8
+#define GL_WRITE_ONLY                     0x88B9
+#define GL_READ_WRITE                     0x88BA
+#define GL_SHADER_STORAGE_BUFFER          0x90D2
+#define GL_SHADER_STORAGE_BUFFER_BINDING  0x90D3
+#define GL_SHADER_STORAGE_BUFFER_START    0x90D4
+#define GL_SHADER_STORAGE_BUFFER_SIZE     0x90D5
+#define GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS 0x90D6
+#define GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS 0x90DA
+#define GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS 0x90DB
+#define GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS 0x90DC
+#define GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS 0x90DD
+#define GL_MAX_SHADER_STORAGE_BLOCK_SIZE  0x90DE
+#define GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT 0x90DF
+#define GL_SHADER_STORAGE_BARRIER_BIT     0x00002000
+#define GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES 0x8F39
+#define GL_DEPTH_STENCIL_TEXTURE_MODE     0x90EA
+#define GL_STENCIL_INDEX                  0x1901
+#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5E
+#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5F
+#define GL_SAMPLE_POSITION                0x8E50
+#define GL_SAMPLE_MASK                    0x8E51
+#define GL_SAMPLE_MASK_VALUE              0x8E52
+#define GL_TEXTURE_2D_MULTISAMPLE         0x9100
+#define GL_MAX_SAMPLE_MASK_WORDS          0x8E59
+#define GL_MAX_COLOR_TEXTURE_SAMPLES      0x910E
+#define GL_MAX_DEPTH_TEXTURE_SAMPLES      0x910F
+#define GL_MAX_INTEGER_SAMPLES            0x9110
+#define GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104
+#define GL_TEXTURE_SAMPLES                0x9106
+#define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS 0x9107
+#define GL_TEXTURE_WIDTH                  0x1000
+#define GL_TEXTURE_HEIGHT                 0x1001
+#define GL_TEXTURE_DEPTH                  0x8071
+#define GL_TEXTURE_INTERNAL_FORMAT        0x1003
+#define GL_TEXTURE_RED_SIZE               0x805C
+#define GL_TEXTURE_GREEN_SIZE             0x805D
+#define GL_TEXTURE_BLUE_SIZE              0x805E
+#define GL_TEXTURE_ALPHA_SIZE             0x805F
+#define GL_TEXTURE_DEPTH_SIZE             0x884A
+#define GL_TEXTURE_STENCIL_SIZE           0x88F1
+#define GL_TEXTURE_SHARED_SIZE            0x8C3F
+#define GL_TEXTURE_RED_TYPE               0x8C10
+#define GL_TEXTURE_GREEN_TYPE             0x8C11
+#define GL_TEXTURE_BLUE_TYPE              0x8C12
+#define GL_TEXTURE_ALPHA_TYPE             0x8C13
+#define GL_TEXTURE_DEPTH_TYPE             0x8C16
+#define GL_TEXTURE_COMPRESSED             0x86A1
+#define GL_SAMPLER_2D_MULTISAMPLE         0x9108
+#define GL_INT_SAMPLER_2D_MULTISAMPLE     0x9109
+#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A
+#define GL_VERTEX_ATTRIB_BINDING          0x82D4
+#define GL_VERTEX_ATTRIB_RELATIVE_OFFSET  0x82D5
+#define GL_VERTEX_BINDING_DIVISOR         0x82D6
+#define GL_VERTEX_BINDING_OFFSET          0x82D7
+#define GL_VERTEX_BINDING_STRIDE          0x82D8
+#define GL_VERTEX_BINDING_BUFFER          0x8F4F
+#define GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET 0x82D9
+#define GL_MAX_VERTEX_ATTRIB_BINDINGS     0x82DA
+#define GL_MAX_VERTEX_ATTRIB_STRIDE       0x82E5
+GL_APICALL void GL_APIENTRY glDispatchCompute (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
+GL_APICALL void GL_APIENTRY glDispatchComputeIndirect (GLintptr indirect);
+GL_APICALL void GL_APIENTRY glDrawArraysIndirect (GLenum mode, const void *indirect);
+GL_APICALL void GL_APIENTRY glDrawElementsIndirect (GLenum mode, GLenum type, const void *indirect);
+GL_APICALL void GL_APIENTRY glFramebufferParameteri (GLenum target, GLenum pname, GLint param);
+GL_APICALL void GL_APIENTRY glGetFramebufferParameteriv (GLenum target, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetProgramInterfaceiv (GLuint program, GLenum programInterface, GLenum pname, GLint *params);
+GL_APICALL GLuint GL_APIENTRY glGetProgramResourceIndex (GLuint program, GLenum programInterface, const GLchar *name);
+GL_APICALL void GL_APIENTRY glGetProgramResourceName (GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
+GL_APICALL void GL_APIENTRY glGetProgramResourceiv (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
+GL_APICALL GLint GL_APIENTRY glGetProgramResourceLocation (GLuint program, GLenum programInterface, const GLchar *name);
+GL_APICALL void GL_APIENTRY glUseProgramStages (GLuint pipeline, GLbitfield stages, GLuint program);
+GL_APICALL void GL_APIENTRY glActiveShaderProgram (GLuint pipeline, GLuint program);
+GL_APICALL GLuint GL_APIENTRY glCreateShaderProgramv (GLenum type, GLsizei count, const GLchar *const*strings);
+GL_APICALL void GL_APIENTRY glBindProgramPipeline (GLuint pipeline);
+GL_APICALL void GL_APIENTRY glDeleteProgramPipelines (GLsizei n, const GLuint *pipelines);
+GL_APICALL void GL_APIENTRY glGenProgramPipelines (GLsizei n, GLuint *pipelines);
+GL_APICALL GLboolean GL_APIENTRY glIsProgramPipeline (GLuint pipeline);
+GL_APICALL void GL_APIENTRY glGetProgramPipelineiv (GLuint pipeline, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glProgramUniform1i (GLuint program, GLint location, GLint v0);
+GL_APICALL void GL_APIENTRY glProgramUniform2i (GLuint program, GLint location, GLint v0, GLint v1);
+GL_APICALL void GL_APIENTRY glProgramUniform3i (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
+GL_APICALL void GL_APIENTRY glProgramUniform4i (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+GL_APICALL void GL_APIENTRY glProgramUniform1ui (GLuint program, GLint location, GLuint v0);
+GL_APICALL void GL_APIENTRY glProgramUniform2ui (GLuint program, GLint location, GLuint v0, GLuint v1);
+GL_APICALL void GL_APIENTRY glProgramUniform3ui (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
+GL_APICALL void GL_APIENTRY glProgramUniform4ui (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+GL_APICALL void GL_APIENTRY glProgramUniform1f (GLuint program, GLint location, GLfloat v0);
+GL_APICALL void GL_APIENTRY glProgramUniform2f (GLuint program, GLint location, GLfloat v0, GLfloat v1);
+GL_APICALL void GL_APIENTRY glProgramUniform3f (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+GL_APICALL void GL_APIENTRY glProgramUniform4f (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+GL_APICALL void GL_APIENTRY glProgramUniform1iv (GLuint program, GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glProgramUniform2iv (GLuint program, GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glProgramUniform3iv (GLuint program, GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glProgramUniform4iv (GLuint program, GLint location, GLsizei count, const GLint *value);
+GL_APICALL void GL_APIENTRY glProgramUniform1uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glProgramUniform2uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glProgramUniform3uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glProgramUniform4uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
+GL_APICALL void GL_APIENTRY glProgramUniform1fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniform2fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniform3fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniform4fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniformMatrix2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniformMatrix3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniformMatrix4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniformMatrix2x3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniformMatrix3x2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniformMatrix2x4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniformMatrix4x2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniformMatrix3x4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glProgramUniformMatrix4x3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
+GL_APICALL void GL_APIENTRY glValidateProgramPipeline (GLuint pipeline);
+GL_APICALL void GL_APIENTRY glGetProgramPipelineInfoLog (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
+GL_APICALL void GL_APIENTRY glBindImageTexture (GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
+GL_APICALL void GL_APIENTRY glGetBooleani_v (GLenum target, GLuint index, GLboolean *data);
+GL_APICALL void GL_APIENTRY glMemoryBarrier (GLbitfield barriers);
+GL_APICALL void GL_APIENTRY glMemoryBarrierByRegion (GLbitfield barriers);
+GL_APICALL void GL_APIENTRY glTexStorage2DMultisample (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+GL_APICALL void GL_APIENTRY glGetMultisamplefv (GLenum pname, GLuint index, GLfloat *val);
+GL_APICALL void GL_APIENTRY glSampleMaski (GLuint maskNumber, GLbitfield mask);
+GL_APICALL void GL_APIENTRY glGetTexLevelParameteriv (GLenum target, GLint level, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glGetTexLevelParameterfv (GLenum target, GLint level, GLenum pname, GLfloat *params);
+GL_APICALL void GL_APIENTRY glBindVertexBuffer (GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
+GL_APICALL void GL_APIENTRY glVertexAttribFormat (GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
+GL_APICALL void GL_APIENTRY glVertexAttribIFormat (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+GL_APICALL void GL_APIENTRY glVertexAttribBinding (GLuint attribindex, GLuint bindingindex);
+GL_APICALL void GL_APIENTRY glVertexBindingDivisor (GLuint bindingindex, GLuint divisor);
+#endif /* GL_ES_VERSION_3_1 */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/third_party/khronos/GLES3/gl3platform.h b/third_party/khronos/GLES3/gl3platform.h
new file mode 100644
index 0000000..b1e869d
--- /dev/null
+++ b/third_party/khronos/GLES3/gl3platform.h
@@ -0,0 +1,30 @@
+#ifndef __gl3platform_h_
+#define __gl3platform_h_
+
+/* $Revision: 23328 $ on $Date:: 2013-10-02 02:28:28 -0700 #$ */
+
+/*
+ * This document is licensed under the SGI Free Software B License Version
+ * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
+ */
+
+/* Platform-specific types and definitions for OpenGL ES 3.X  gl3.h
+ *
+ * Adopters may modify khrplatform.h and this file to suit their platform.
+ * You are encouraged to submit all modifications to the Khronos group so that
+ * they can be included in future versions of this file.  Please submit changes
+ * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
+ * by filing a bug against product "OpenGL-ES" component "Registry".
+ */
+
+#include <KHR/khrplatform.h>
+
+#ifndef GL_APICALL
+#define GL_APICALL  KHRONOS_APICALL
+#endif
+
+#ifndef GL_APIENTRY
+#define GL_APIENTRY KHRONOS_APIENTRY
+#endif
+
+#endif /* __gl3platform_h_ */
diff --git a/third_party/khronos/README.chromium b/third_party/khronos/README.chromium
index d803f14..10259c9 100644
--- a/third_party/khronos/README.chromium
+++ b/third_party/khronos/README.chromium
@@ -2,17 +2,17 @@
 Short Name: khronos_headers
 URL: http://www.khronos.org/registry
 Version: unknown
-Date: 2014-10-20
+Date: 2014-11-26
 License: MIT/X11, SGI Free Software License B
 Security Critical: no
 
 Description:
-This package contains header files for the EGL and OpenGL ES 2.0 APIs from
+This package contains header files for the EGL and OpenGL ES APIs from
 Khronos. They are used for compiling code against these APIs as well as for
 generating the GL binding initialization logic.
 
 MIT/X11 (BSD like) license is for {EGL,KHR}/*, SGI Free Software License B is
-for GLES2/*.
+for GLES2/* and GLES3/*.
 
 Local Modifications:
 
diff --git a/third_party/libpng/BUILD.gn b/third_party/libpng/BUILD.gn
index d4aaf18..488ef43 100644
--- a/third_party/libpng/BUILD.gn
+++ b/third_party/libpng/BUILD.gn
@@ -3,9 +3,7 @@
 # found in the LICENSE file.
 
 config("libpng_config") {
-  include_dirs = [
-    ".",
-  ]
+  include_dirs = [ "." ]
 
   defines = [
     "CHROME_PNG_WRITE_SUPPORT",
@@ -14,9 +12,7 @@
 
   if (is_android) {
     #'toolsets': ['target', 'host'],
-    defines += [
-      "CHROME_PNG_READ_PACK_SUPPORT",  # Required by freetype.
-    ]
+    defines += [ "CHROME_PNG_READ_PACK_SUPPORT" ]  # Required by freetype.
   }
 
   if (is_win) {
@@ -30,7 +26,7 @@
 }
 
 source_set("libpng_sources") {
-  sources =  [
+  sources = [
     "png.c",
     "png.h",
     "pngconf.h",
@@ -66,15 +62,21 @@
 
   public_configs = [ ":libpng_config" ]
 
-  public_deps = [ "//third_party/zlib" ]
+  public_deps = [
+    "//third_party/zlib",
+  ]
 }
 
 if (is_win) {
   component("libpng") {
-    public_deps = [ ":libpng_sources" ]
+    public_deps = [
+      ":libpng_sources",
+    ]
   }
 } else {
   group("libpng") {
-    public_deps = [ ":libpng_sources" ]
+    public_deps = [
+      ":libpng_sources",
+    ]
   }
 }
diff --git a/third_party/libxml/BUILD.gn b/third_party/libxml/BUILD.gn
index 73bb3dc..17ea09a 100644
--- a/third_party/libxml/BUILD.gn
+++ b/third_party/libxml/BUILD.gn
@@ -110,6 +110,7 @@
     "src/schematron.c",
     "src/threads.c",
     "src/tree.c",
+
     #"src/trio.c",
     #"src/trio.h",
     #"src/triodef.h",
@@ -151,9 +152,7 @@
   ]
 
   if (is_win) {
-    cflags_c = [
-      "/wd4101",  # Unreferenced local variable.
-    ]
+    cflags_c = [ "/wd4101" ]  # Unreferenced local variable.
   } else if (is_mac || is_android) {
     # http://www.xmlsoft.org/threads.html says that this is required when using
     # libxml from several threads, which can possibly happen in chrome. On
@@ -181,7 +180,5 @@
     ]
   }
 
-  include_dirs = [
-    "$os_include",
-  ]
+  include_dirs = [ "$os_include" ]
 }
diff --git a/third_party/mesa/BUILD.gn b/third_party/mesa/BUILD.gn
index 48b772c..4989a37 100644
--- a/third_party/mesa/BUILD.gn
+++ b/third_party/mesa/BUILD.gn
@@ -49,6 +49,7 @@
     "HAVE_LIBXCB_DRI2=1",
     "FEATURE_GL=1",
     "MAPI_MODE_GLAPI",
+
     #"USE_X86_64_ASM",
     "IN_DRI_DRIVER",
     "USE_XCB",
@@ -89,9 +90,7 @@
   }
 
   if (is_linux) {
-    defines += [
-      "_GNU_SOURCE",
-    ]
+    defines += [ "_GNU_SOURCE" ]
   }
 
   if (is_posix) {
@@ -223,6 +222,7 @@
     "src/src/glsl/ralloc.h",
     "src/src/glsl/s_expression.cpp",
     "src/src/glsl/s_expression.h",
+
     # Skipped in the GN build. This file duplicates symbols from errors.c and
     # happens to link in GYP due to static library link ordering.
     #"src/src/glsl/standalone_scaffolding.cpp",
@@ -231,12 +231,8 @@
     "src/src/glsl/strtod.h",
   ]
 
-  configs -= [
-    "//build/config/compiler:chromium_code",
-  ]
-  configs += [
-    "//build/config/compiler:no_chromium_code",
-  ]
+  configs -= [ "//build/config/compiler:chromium_code" ]
+  configs += [ "//build/config/compiler:no_chromium_code" ]
   previous_configs = configs
   configs = []
   configs = [ ":mesa_internal_config" ] + previous_configs
@@ -617,12 +613,8 @@
     "src/src/mesa/x86-64/x86-64.h",
   ]
 
-  configs -= [
-    "//build/config/compiler:chromium_code",
-  ]
-  configs += [
-    "//build/config/compiler:no_chromium_code",
-  ]
+  configs -= [ "//build/config/compiler:chromium_code" ]
+  configs += [ "//build/config/compiler:no_chromium_code" ]
   previous_configs = configs
   configs = []
   configs = [ ":mesa_internal_config" ] + previous_configs
@@ -651,49 +643,49 @@
 }
 
 if (!is_android) {  # TODO(GYP) enable for Android.
-
-# Building this target will hide the native OpenGL shared library and
-# replace it with a slow software renderer.
-# TODO(GYP) http://crbug.com/380327 need support for loadable_module.
-#loadable_module("osmesa") {
-shared_library("osmesa") {
-  sources = [
-    "src/src/mesa/drivers/common/driverfuncs.c",
-    "src/src/mesa/drivers/common/driverfuncs.h",
-    "src/src/mesa/drivers/common/meta.c",
-    "src/src/mesa/drivers/common/meta.h",
-    "src/src/mesa/drivers/osmesa/osmesa.c",
-    "src/src/mesa/drivers/osmesa/osmesa.def",
-  ]
-
-  configs -= [
-    "//build/config/compiler:chromium_code",
-  ]
-  configs += [
-    ":mesa_headers_config",
-    "//build/config/compiler:no_chromium_code",
-  ]
-  previous_configs = configs
-  configs = []
-  configs = [ ":mesa_internal_config" ] + previous_configs
-
-  include_dirs = [ "src/src/mesa/drivers" ]
-
-  deps = [
-    ":mesa_headers",
-    ":mesa",
-    ":mesa_libglslcommon",
-  ]
-
-  if (is_win) {
-    defines = [
-      "BUILD_GL32",
-      "KEYWORD1=GLAPI",
-      "KEYWORD2=GLAPIENTRY",
+  # Building this target will hide the native OpenGL shared library and
+  # replace it with a slow software renderer.
+  # TODO(GYP) http://crbug.com/380327 need support for loadable_module.
+  #loadable_module("osmesa") {
+  shared_library("osmesa") {
+    sources = [
+      "src/src/mesa/drivers/common/driverfuncs.c",
+      "src/src/mesa/drivers/common/driverfuncs.h",
+      "src/src/mesa/drivers/common/meta.c",
+      "src/src/mesa/drivers/common/meta.h",
+      "src/src/mesa/drivers/osmesa/osmesa.c",
+      "src/src/mesa/drivers/osmesa/osmesa.def",
     ]
+
+    configs -= [ "//build/config/compiler:chromium_code" ]
+    configs += [
+      ":mesa_headers_config",
+      "//build/config/compiler:no_chromium_code",
+    ]
+    previous_configs = configs
+    configs = []
+    configs = [ ":mesa_internal_config" ] + previous_configs
+
+    include_dirs = [ "src/src/mesa/drivers" ]
+
+    if (is_clang) {
+      # Mesa triggers some of these Clang warnings.
+      configs -= [ "//build/config/clang:extra_warnings" ]
+    }
+
+    deps = [
+      ":mesa_headers",
+      ":mesa",
+      ":mesa_libglslcommon",
+    ]
+
+    if (is_win) {
+      defines = [
+        "BUILD_GL32",
+        "KEYWORD1=GLAPI",
+        "KEYWORD2=GLAPIENTRY",
+      ]
+    }
   }
-}
-
 }  # !is_android
-
 # TODO(GYP) Android osmesa_in_lib_dir target.
diff --git a/third_party/mesa/mesa.gyp b/third_party/mesa/mesa.gyp
index bc115e1..3db0d4c 100644
--- a/third_party/mesa/mesa.gyp
+++ b/third_party/mesa/mesa.gyp
@@ -700,6 +700,12 @@
         'src/src/mesa/drivers/osmesa/osmesa.c',
         'src/src/mesa/drivers/osmesa/osmesa.def',
       ],
+      'variables': {
+        'clang_warning_flags_unset': [
+          # Don't warn about string->bool used in asserts.
+          '-Wstring-conversion',
+        ],
+      },
     },
   ],
   'conditions': [
diff --git a/third_party/protobuf/BUILD.gn b/third_party/protobuf/BUILD.gn
index eddfc8a..973672b 100644
--- a/third_party/protobuf/BUILD.gn
+++ b/third_party/protobuf/BUILD.gn
@@ -33,9 +33,7 @@
 # This condif should be applied to targets using generated code from the proto
 # compiler. It sets up the include directories properly.
 config("using_proto") {
-  include_dirs = [
-    "$root_gen_dir/protoc_out",
-  ]
+  include_dirs = [ "$root_gen_dir/protoc_out" ]
 }
 
 protobuf_lite_sources = [
@@ -139,7 +137,6 @@
     "src/google/protobuf/compiler/java/java_doc_comment.cc",
     "src/google/protobuf/compiler/java/java_doc_comment.h",
     "src/google/protobuf/compiler/parser.h",
-
     "src/google/protobuf/stubs/strutil.cc",
     "src/google/protobuf/stubs/strutil.h",
     "src/google/protobuf/stubs/substitute.cc",
@@ -150,7 +147,6 @@
     "src/google/protobuf/stubs/structurally_valid.cc",
     "src/google/protobuf/stubs/template_util.h",
     "src/google/protobuf/stubs/type_traits.h",
-
     "src/google/protobuf/descriptor.cc",
     "src/google/protobuf/descriptor.pb.cc",
     "src/google/protobuf/descriptor_database.cc",
@@ -162,6 +158,7 @@
     "src/google/protobuf/service.cc",
     "src/google/protobuf/text_format.cc",
     "src/google/protobuf/wire_format.cc",
+
     # This file pulls in zlib, but it's not actually used by protoc, so
     # instead of compiling zlib for the host, let's just exclude this.
     # "src/src/google/protobuf/io/gzip_stream.cc",
diff --git a/third_party/protobuf/proto_library.gni b/third_party/protobuf/proto_library.gni
index 40fb80f..7bbf56d 100644
--- a/third_party/protobuf/proto_library.gni
+++ b/third_party/protobuf/proto_library.gni
@@ -84,25 +84,34 @@
 
     args = []
     if (defined(invoker.cc_include)) {
-      args += [ "--include", invoker.cc_include ]
+      args += [
+        "--include",
+        invoker.cc_include,
+      ]
     }
 
     args += [
-      "--protobuf", "$rel_out_dir/{{source_name_part}}.pb.h",
-      "--proto-in-dir", "{{source_dir}}",
-      "--proto-in-file", "{{source_file_part}}",
+      "--protobuf",
+      "$rel_out_dir/{{source_name_part}}.pb.h",
+      "--proto-in-dir",
+      "{{source_dir}}",
+      "--proto-in-file",
+      "{{source_file_part}}",
+
       # TODO(brettw) support system protobuf compiler.
       "--use-system-protobuf=0",
     ]
 
     protoc_label = "//third_party/protobuf:protoc($host_toolchain)"
     args += [
-      "--", 
+      "--",
+
       # Prepend with "./" so this will never pick up the system one (normally
       # when not cross-compiling, protoc's output directory will be the same
       # as the build dir, so the relative location will be empty).
-      "./" + rebase_path(get_label_info(protoc_label, "root_out_dir") +
-             "/protoc", root_build_dir),
+      "./" +
+          rebase_path(get_label_info(protoc_label, "root_out_dir") + "/protoc",
+                      root_build_dir),
     ]
 
     # If passed cc_generator_options should end in a colon, which will separate
@@ -115,11 +124,15 @@
     }
     args += [
       # cc_generator_options is supposed to end in a colon if it's nonempty.
-      "--cpp_out", "$cc_generator_options$rel_out_dir",
-      "--python_out", rel_out_dir,
+      "--cpp_out",
+      "$cc_generator_options$rel_out_dir",
+      "--python_out",
+      rel_out_dir,
     ]
 
-    deps = [ protoc_label ]
+    deps = [
+      protoc_label,
+    ]
 
     if (defined(invoker.deps)) {
       deps += invoker.deps
diff --git a/third_party/yasm/BUILD.gn b/third_party/yasm/BUILD.gn
index 700e745..3b2b884 100644
--- a/third_party/yasm/BUILD.gn
+++ b/third_party/yasm/BUILD.gn
@@ -28,7 +28,6 @@
 #              turn intermediate files into .c files.
 
 if (current_toolchain == host_toolchain) {
-
   # Various files referenced by multiple targets.
   yasm_gen_include_dir = "$target_gen_dir/include"
   yasm_os = os
@@ -52,17 +51,25 @@
   }
 
   executable("genmacro") {
-    sources = [ "source/patched-yasm/tools/genmacro/genmacro.c" ]
+    sources = [
+      "source/patched-yasm/tools/genmacro/genmacro.c",
+    ]
     configs -= [ "//build/config/compiler:chromium_code" ]
-    configs += [ ":yasm_config",
-                 "//build/config/compiler:no_chromium_code" ]
+    configs += [
+      ":yasm_config",
+      "//build/config/compiler:no_chromium_code",
+    ]
   }
 
   executable("genmodule") {
-    sources = [ "source/patched-yasm/libyasm/genmodule.c" ]
+    sources = [
+      "source/patched-yasm/libyasm/genmodule.c",
+    ]
     configs -= [ "//build/config/compiler:chromium_code" ]
-    configs += [ ":yasm_config",
-                 "//build/config/compiler:no_chromium_code" ]
+    configs += [
+      ":yasm_config",
+      "//build/config/compiler:no_chromium_code",
+    ]
   }
 
   executable("genperf") {
@@ -72,10 +79,14 @@
     ]
 
     configs -= [ "//build/config/compiler:chromium_code" ]
-    configs += [ ":yasm_config",
-                 "//build/config/compiler:no_chromium_code" ]
+    configs += [
+      ":yasm_config",
+      "//build/config/compiler:no_chromium_code",
+    ]
 
-    deps = [ ":yasm_utils" ]
+    deps = [
+      ":yasm_utils",
+    ]
   }
 
   # Used by both yasm and genperf binaries.
@@ -87,40 +98,52 @@
     ]
 
     configs -= [ "//build/config/compiler:chromium_code" ]
-    configs += [ ":yasm_config",
-                 "//build/config/compiler:no_chromium_code" ]
+    configs += [
+      ":yasm_config",
+      "//build/config/compiler:no_chromium_code",
+    ]
   }
 
   executable("genstring") {
-    sources = [ "source/patched-yasm/genstring.c", ]
+    sources = [
+      "source/patched-yasm/genstring.c",
+    ]
     configs -= [ "//build/config/compiler:chromium_code" ]
-    configs += [ ":yasm_config",
-                 "//build/config/compiler:no_chromium_code" ]
+    configs += [
+      ":yasm_config",
+      "//build/config/compiler:no_chromium_code",
+    ]
   }
 
   executable("genversion") {
-    sources = [ "source/patched-yasm/modules/preprocs/nasm/genversion.c" ]
+    sources = [
+      "source/patched-yasm/modules/preprocs/nasm/genversion.c",
+    ]
     configs -= [ "//build/config/compiler:chromium_code" ]
-    configs += [ ":yasm_config",
-                 "//build/config/compiler:no_chromium_code" ]
+    configs += [
+      ":yasm_config",
+      "//build/config/compiler:no_chromium_code",
+    ]
   }
 
   executable("re2c") {
     sources = [
-       "source/patched-yasm/tools/re2c/main.c",
-       "source/patched-yasm/tools/re2c/code.c",
-       "source/patched-yasm/tools/re2c/dfa.c",
-       "source/patched-yasm/tools/re2c/parser.c",
-       "source/patched-yasm/tools/re2c/actions.c",
-       "source/patched-yasm/tools/re2c/scanner.c",
-       "source/patched-yasm/tools/re2c/mbo_getopt.c",
-       "source/patched-yasm/tools/re2c/substr.c",
-       "source/patched-yasm/tools/re2c/translate.c",
+      "source/patched-yasm/tools/re2c/main.c",
+      "source/patched-yasm/tools/re2c/code.c",
+      "source/patched-yasm/tools/re2c/dfa.c",
+      "source/patched-yasm/tools/re2c/parser.c",
+      "source/patched-yasm/tools/re2c/actions.c",
+      "source/patched-yasm/tools/re2c/scanner.c",
+      "source/patched-yasm/tools/re2c/mbo_getopt.c",
+      "source/patched-yasm/tools/re2c/substr.c",
+      "source/patched-yasm/tools/re2c/translate.c",
     ]
 
     configs -= [ "//build/config/compiler:chromium_code" ]
-    configs += [ ":yasm_config",
-                 "//build/config/compiler:no_chromium_code" ]
+    configs += [
+      ":yasm_config",
+      "//build/config/compiler:no_chromium_code",
+    ]
 
     # re2c is missing CLOSEVOP from one switch.
     if (is_posix) {
@@ -210,12 +233,14 @@
       "$target_gen_dir/lc3bid.c",
 
       # File generated by generate_module
-      "$target_gen_dir/module.c"
+      "$target_gen_dir/module.c",
     ]
 
     configs -= [ "//build/config/compiler:chromium_code" ]
-    configs += [ ":yasm_config",
-                 "//build/config/compiler:no_chromium_code" ]
+    configs += [
+      ":yasm_config",
+      "//build/config/compiler:no_chromium_code",
+    ]
 
     # Yasm generates a bunch of .c files which its source file #include.
     # Add the |target_gen_dir| into the include path so it can find them.
@@ -226,7 +251,10 @@
     if (is_win) {
       cflags = [ "/wd4267" ]  # size_t to int conversion.
     } else {
-      cflags = [ "-ansi", "-pedantic" ]
+      cflags = [
+        "-ansi",
+        "-pedantic",
+      ]
       if (is_clang) {
         cflags += [ "-Wno-incompatible-pointer-types" ]
       }
@@ -263,7 +291,7 @@
       rebase_path(target_gen_dir, root_build_dir) + "/{{source_name_part}}.c",
     ]
     deps = [
-      ":generate_x86_insn"
+      ":generate_x86_insn",
     ]
   }
 
@@ -288,13 +316,14 @@
           "/{{source_name_part}}.c",
     ]
     deps = [
-      ":generate_x86_insn"
+      ":generate_x86_insn",
     ]
   }
 
   template("compile_macro") {
     compiled_action(target_name) {
       tool = ":genmacro"
+
       # Output #included by source/patched-yasm/frontends/yasm/yasm.c.
       inputs = invoker.sources
       outputs = invoker.outputs
@@ -312,7 +341,9 @@
   compile_macro("compile_nasm_macros") {
     # Output #included by
     #   source/patched-yasm/modules/preprocs/nasm/nasm-parser.c
-    sources = [ "source/patched-yasm/modules/parsers/nasm/nasm-std.mac" ]
+    sources = [
+      "source/patched-yasm/modules/parsers/nasm/nasm-std.mac",
+    ]
     outputs = [ "$yasm_gen_include_dir/nasm-macros.c" ]
     macro_varname = "nasm_standard_mac"
   }
@@ -320,22 +351,30 @@
   compile_macro("compile_nasm_version") {
     # Output #included by
     #   source/patched-yasm/modules/preprocs/nasm/nasm-preproc.c
-    sources = [ "$target_gen_dir/$version_file" ]
+    sources = [
+      "$target_gen_dir/$version_file",
+    ]
     outputs = [ "$yasm_gen_include_dir/nasm-version.c" ]
     macro_varname = "nasm_version_mac"
-    deps = [ ":generate_version" ]
+    deps = [
+      ":generate_version",
+    ]
   }
 
   compile_macro("compile_win64_gas") {
     # Output #included by source/patched-yasm/frontends/yasm/yasm.c.
-    sources = [ "source/patched-yasm/modules/objfmts/coff/win64-gas.mac" ]
+    sources = [
+      "source/patched-yasm/modules/objfmts/coff/win64-gas.mac",
+    ]
     outputs = [ "$yasm_gen_include_dir/win64-gas.c" ]
     macro_varname = "win64_gas_stdmac"
   }
 
   compile_macro("compile_win64_nasm") {
     # Output #included by source/patched-yasm/frontends/yasm/yasm.c.
-    sources = [ "source/patched-yasm/modules/objfmts/coff/win64-nasm.mac" ]
+    sources = [
+      "source/patched-yasm/modules/objfmts/coff/win64-nasm.mac",
+    ]
     outputs = [ "$yasm_gen_include_dir/win64-nasm.c" ]
     macro_varname = "win64_nasm_stdmac"
   }
@@ -358,7 +397,9 @@
   # This call doesn't fit into the re2c template above.
   compiled_action("compile_re2c_lc3b") {
     tool = ":re2c"
-    inputs = [ "source/patched-yasm/modules/arch/lc3b/lc3bid.re" ]
+    inputs = [
+      "source/patched-yasm/modules/arch/lc3b/lc3bid.re",
+    ]
     outputs = [ "$target_gen_dir/lc3bid.c" ]
     args = [
       "-s",
@@ -370,8 +411,11 @@
 
   compiled_action("generate_license") {
     tool = ":genstring"
+
     # Output #included by source/patched-yasm/frontends/yasm/yasm.c.
-    inputs = [ "source/patched-yasm/COPYING" ]
+    inputs = [
+      "source/patched-yasm/COPYING",
+    ]
     outputs = [ "$yasm_gen_include_dir/license.c" ]
     args = [
       "license_msg",
@@ -397,14 +441,12 @@
   compiled_action("generate_version") {
     tool = ":genversion"
     outputs = [ "$target_gen_dir/$version_file" ]
-    args = [
-      rebase_path(outputs[0],
-      root_build_dir)
-    ]
+    args = [ rebase_path(outputs[0], root_build_dir) ]
   }
 
   action("generate_x86_insn") {
     script = "source/patched-yasm/modules/arch/x86/gen_x86_insn.py"
+
     # Output eventually #included by source/patched-yasm/frontends/yasm/x86id.c
     outputs = [
       "$yasm_gen_include_dir/x86insns.c",
diff --git a/third_party/yasm/CHROMIUM.diff b/third_party/yasm/CHROMIUM.diff
new file mode 100644
index 0000000..764cbf7
--- /dev/null
+++ b/third_party/yasm/CHROMIUM.diff
@@ -0,0 +1,24 @@
+--- frontends/tasm/tasm.c
++++ frontends/tasm/tasm.c
+@@ -224,7 +224,9 @@
+ /* version message */
+ /*@observer@*/ static const char *version_msg[] = {
+     PACKAGE_STRING,
++#if !defined(DONT_EMBED_BUILD_METADATA) || defined(OFFICIAL_BUILD)
+     "Compiled on " __DATE__ ".",
++#endif
+     "Copyright (c) 2001-2010 Peter Johnson and other Yasm developers.",
+     "Run yasm --license for licensing overview and summary."
+ };
+--- frontends/yasm/yasm.c
++++ frontends/yasm/yasm.c
+@@ -213,7 +213,9 @@
+ /* version message */
+ /*@observer@*/ static const char *version_msg[] = {
+     PACKAGE_STRING,
++#if !defined(DONT_EMBED_BUILD_METADATA) || defined(OFFICIAL_BUILD)
+     "Compiled on " __DATE__ ".",
++#endif
+     "Copyright (c) 2001-2011 Peter Johnson and other Yasm developers.",
+     "Run yasm --license for licensing overview and summary."
+ };
diff --git a/third_party/yasm/README.chromium b/third_party/yasm/README.chromium
index 56513f7..7006a63 100644
--- a/third_party/yasm/README.chromium
+++ b/third_party/yasm/README.chromium
@@ -13,6 +13,7 @@
 * https://github.com/yasm/yasm/commit/2bd66514b6b100887c19d8598da38347b3cff40e
 * https://github.com/yasm/yasm/commit/ab19547382660d81e0b4a0232dccb38f44c52a36
 * https://github.com/yasm/yasm/commit/9728322335cba96500861ef766b1546d096e5600
+* CHROMIUM.diff
 
 
 See also the yasm.gyp file for a description of the yasm build process.
diff --git a/third_party/yasm/yasm_assemble.gni b/third_party/yasm/yasm_assemble.gni
index 48c9f8b..fdbf624 100644
--- a/third_party/yasm/yasm_assemble.gni
+++ b/third_party/yasm/yasm_assemble.gni
@@ -45,25 +45,29 @@
   if (cpu_arch == "x86") {
     _yasm_flags = [
       "-fmacho32",
-      "-m", "x86",
+      "-m",
+      "x86",
     ]
   } else if (cpu_arch == "x64") {
     _yasm_flags = [
       "-fmacho64",
-      "-m", "amd64",
+      "-m",
+      "amd64",
     ]
   }
 } else if (is_posix) {
   if (cpu_arch == "x86") {
     _yasm_flags = [
       "-felf32",
-      "-m", "x86",
+      "-m",
+      "x86",
     ]
   } else if (cpu_arch == "x64") {
     _yasm_flags = [
       "-DPIC",
       "-felf64",
-      "-m", "amd64",
+      "-m",
+      "amd64",
     ]
   }
 } else if (is_win) {
@@ -71,12 +75,14 @@
     _yasm_flags = [
       "-DPREFIX",
       "-fwin32",
-      "-m", "x86",
+      "-m",
+      "x86",
     ]
   } else if (cpu_arch == "x64") {
     _yasm_flags = [
       "-fwin64",
-      "-m", "amd64",
+      "-m",
+      "amd64",
     ]
   }
 }
@@ -114,12 +120,13 @@
     # (when cross-compiling).
     yasm_label = "//third_party/yasm($host_toolchain)"
     args = [ "./" +  # Force current dir.
-      rebase_path(get_label_info(yasm_label, "root_out_dir") + "/yasm",
-                  root_build_dir)
-    ]
+             rebase_path(get_label_info(yasm_label, "root_out_dir") + "/yasm",
+                         root_build_dir) ]
 
     # Deps.
-    deps = [ yasm_label ]
+    deps = [
+      yasm_label,
+    ]
     if (defined(invoker.deps)) {
       deps += invoker.deps
     }
@@ -142,6 +149,7 @@
     # This goes to the end of include list.
     args += [
       "-I.",
+
       # Using "//." will produce a relative path "../.." which looks better than
       # "../../" which will result from using "//" as the base (although both
       # work). This is because rebase_path will terminate the result in a
@@ -150,7 +158,6 @@
       "-I" + rebase_path(root_gen_dir, root_build_dir),
     ]
 
-
     # Extra defines.
     if (defined(invoker.defines)) {
       foreach(def, invoker.defines) {
@@ -167,8 +174,9 @@
     # "$root_out_dir/${target_name}.{{source_dir_part}}.$asm_obj_extension"
     outputs = [ "$target_out_dir/{{source_name_part}}.o" ]
     args += [
-      "-o", rebase_path(outputs[0], root_build_dir),
-      "{{source}}"
+      "-o",
+      rebase_path(outputs[0], root_build_dir),
+      "{{source}}",
     ]
 
     # The wrapper script run_yasm will write the depfile to the same name as
@@ -186,6 +194,8 @@
 
     sources = get_target_outputs(":$action_name")
 
-    deps = [ ":$action_name" ]
+    deps = [
+      ":$action_name",
+    ]
   }
 }
diff --git a/third_party/zlib/BUILD.gn b/third_party/zlib/BUILD.gn
index b4d9cfd..e49b5e9 100644
--- a/third_party/zlib/BUILD.gn
+++ b/third_party/zlib/BUILD.gn
@@ -8,12 +8,20 @@
 
 static_library("zlib_x86_simd") {
   if (!is_ios && (cpu_arch == "x86" || cpu_arch == "x64")) {
-    sources = [ "crc_folding.c", "fill_window_sse.c" ]
+    sources = [
+      "crc_folding.c",
+      "fill_window_sse.c",
+    ]
     if (!is_win || is_clang) {
-      cflags = [ "-msse4.2", "-mpclmul" ]
+      cflags = [
+        "-msse4.2",
+        "-mpclmul",
+      ]
     }
   } else {
-    sources = [ "simd_stub.c"]
+    sources = [
+      "simd_stub.c",
+    ]
   }
 
   configs -= [ "//build/config/compiler:chromium_code" ]
@@ -65,7 +73,9 @@
   configs += [ "//build/config/compiler:no_chromium_code" ]
 
   public_configs = [ ":zlib_config" ]
-  deps = [ ":zlib_x86_simd" ]
+  deps = [
+    ":zlib_x86_simd",
+  ]
 }
 
 static_library("minizip") {
@@ -97,7 +107,9 @@
     cflags = [ "-Wno-parentheses-equality" ]
   }
 
-  deps = [ ":zlib" ]
+  deps = [
+    ":zlib",
+  ]
 
   configs -= [ "//build/config/compiler:chromium_code" ]
   configs += [ "//build/config/compiler:no_chromium_code" ]
diff --git a/third_party/zlib/google.patch b/third_party/zlib/google.patch
index 9c3450d..3818b11 100644
--- a/third_party/zlib/google.patch
+++ b/third_party/zlib/google.patch
@@ -7,7 +7,7 @@
  
 -#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
 +#if defined(_WIN32)
-+#  define LSEEK _lseeki64
++#  define LSEEK (z_off64_t)_lseeki64
 +#elif defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
  #  define LSEEK lseek64
  #else
diff --git a/third_party/zlib/google/zip_reader.cc b/third_party/zlib/google/zip_reader.cc
index 339eb11..a1dddfb 100644
--- a/third_party/zlib/google/zip_reader.cc
+++ b/third_party/zlib/google/zip_reader.cc
@@ -364,8 +364,9 @@
   // correct. However, we need to assume that the uncompressed size could be
   // incorrect therefore this function needs to read as much data as possible.
   std::string contents;
-  contents.reserve(std::min<size_t>(
-      max_read_bytes, current_entry_info()->original_size()));
+  contents.reserve(static_cast<size_t>(std::min(
+      static_cast<int64>(max_read_bytes),
+      current_entry_info()->original_size())));
 
   bool success = true;  // This becomes false when something bad happens.
   char buf[internal::kZipBufSize];
diff --git a/third_party/zlib/gzlib.c b/third_party/zlib/gzlib.c
index feffbb1..54e8344 100644
--- a/third_party/zlib/gzlib.c
+++ b/third_party/zlib/gzlib.c
@@ -6,7 +6,7 @@
 #include "gzguts.h"
 
 #if defined(_WIN32) && !defined(__BORLANDC__)
-#  define LSEEK _lseeki64
+#  define LSEEK (z_off64_t)_lseeki64
 #elif defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
 #  define LSEEK lseek64
 #else
diff --git a/tools/android/adb_remote_setup.sh b/tools/android/adb_remote_setup.sh
index 87c6601..2bb2c46 100755
--- a/tools/android/adb_remote_setup.sh
+++ b/tools/android/adb_remote_setup.sh
@@ -84,12 +84,16 @@
 #   5037: adb
 #   8001: http server
 #   9031: sync server
+#   9041: search by image server
+#   9051: policy server
 #   10000: net unittests
 #   10201: net unittests
 ssh -C \
     -R 5037:localhost:5037 \
     -L 8001:localhost:8001 \
     -L 9031:localhost:9031 \
+    -L 9041:localhost:9041 \
+    -L 9051:localhost:9051 \
     -R 10000:localhost:10000 \
     -R 10201:localhost:10201 \
     "$remote_host"
diff --git a/tools/clang/scripts/run_tool.py b/tools/clang/scripts/run_tool.py
index 3725ca3..58a9a86 100755
--- a/tools/clang/scripts/run_tool.py
+++ b/tools/clang/scripts/run_tool.py
@@ -314,14 +314,14 @@
     clang_format_diff_path = None
 
   if len(argv) == 3 and argv[2] == '--all':
-    filenames = frozenset(_GetFilesFromCompileDB(argv[1]))
+    filenames = set(_GetFilesFromCompileDB(argv[1]))
   else:
-    filenames = frozenset(_GetFilesFromGit(argv[2:]))
-  # Filter out files that aren't C/C++/Obj-C/Obj-C++.
-  extensions = frozenset(('.c', '.cc', '.m', '.mm'))
-  dispatcher = _CompilerDispatcher(argv[0], argv[1],
-                                   [f for f in filenames
-                                    if os.path.splitext(f)[1] in extensions])
+    filenames = set(_GetFilesFromGit(argv[2:]))
+    # Filter out files that aren't C/C++/Obj-C/Obj-C++.
+    extensions = frozenset(('.c', '.cc', '.m', '.mm'))
+    filenames = [f for f in filenames
+                 if os.path.splitext(f)[1] in extensions]
+  dispatcher = _CompilerDispatcher(argv[0], argv[1], filenames)
   dispatcher.Run()
   # Filter out edits to files that aren't in the git repository, since it's not
   # useful to modify files that aren't under source control--typically, these
diff --git a/tools/git/move_source_file.py b/tools/git/move_source_file.py
index a60c7e1..2de0b5b 100755
--- a/tools/git/move_source_file.py
+++ b/tools/git/move_source_file.py
@@ -33,7 +33,7 @@
 sort_headers = __import__('sort-headers')
 
 
-HANDLED_EXTENSIONS = ['.cc', '.mm', '.h', '.hh']
+HANDLED_EXTENSIONS = ['.cc', '.mm', '.h', '.hh', '.cpp']
 
 
 def IsHandledFile(path):
@@ -84,7 +84,7 @@
     files_with_changed_includes = mffr.MultiFileFindReplace(
         r'(#(include|import)\s*["<])%s([>"])' % re.escape(from_path),
         r'\1%s\3' % to_path,
-        ['*.cc', '*.h', '*.m', '*.mm'])
+        ['*.cc', '*.h', '*.m', '*.mm', '*.cpp'])
 
     # Reorder headers in files that changed.
     for changed_file in files_with_changed_includes:
@@ -100,7 +100,7 @@
   mffr.MultiFileFindReplace(
       r'(//.*)%s' % re.escape(from_path),
       r'\1%s' % to_path,
-      ['*.cc', '*.h', '*.m', '*.mm'])
+      ['*.cc', '*.h', '*.m', '*.mm', '*.cpp'])
 
   # Update references in .gyp(i) files.
   def PathMinusFirstComponent(path):
diff --git a/tools/idl_parser/idl_parser.py b/tools/idl_parser/idl_parser.py
index 9b63f94..16ecc6e 100755
--- a/tools/idl_parser/idl_parser.py
+++ b/tools/idl_parser/idl_parser.py
@@ -283,6 +283,12 @@
     """Dictionary : DICTIONARY error ';'"""
     p[0] = self.BuildError(p, 'Dictionary')
 
+  # [11.2] Error recovery for regular Dictionary
+  # (for errors inside dictionary definition)
+  def p_DictionaryError2(self, p):
+    """Dictionary : DICTIONARY identifier Inheritance '{' error"""
+    p[0] = self.BuildError(p, 'Dictionary')
+
   # [12]
   def p_DictionaryMembers(self, p):
     """DictionaryMembers : ExtendedAttributeList DictionaryMember DictionaryMembers
@@ -590,6 +596,11 @@
     if len(p) > 1:
       p[0] = ListFromConcat(p[2], p[3])
 
+  # [54.1] Arguments error recovery
+  def p_ArgumentsError(self, p):
+    """Arguments : ',' error"""
+    p[0] = self.BuildError(p, 'Arguments')
+
   # [55]
   def p_Argument(self, p):
     """Argument : ExtendedAttributeList OptionalOrRequiredArgument"""
diff --git a/tools/idl_parser/test_parser/dictionary_web.idl b/tools/idl_parser/test_parser/dictionary_web.idl
index 5030686..ba5b164 100644
--- a/tools/idl_parser/test_parser/dictionary_web.idl
+++ b/tools/idl_parser/test_parser/dictionary_web.idl
@@ -92,4 +92,7 @@
   DOMString? setString = null;
 };
 
-
+/* ERROR Unexpected keyword "attribute" after "{". */
+dictionary MyDictUnexpectedAttribute {
+  attribute DOMString foo = "";
+};
diff --git a/tools/idl_parser/test_parser/interface_web.idl b/tools/idl_parser/test_parser/interface_web.idl
index 09a2902..2d19f89 100644
--- a/tools/idl_parser/test_parser/interface_web.idl
+++ b/tools/idl_parser/test_parser/interface_web.idl
@@ -50,6 +50,21 @@
 partial interface MyIFaceInherit : Foo {};
 
 /* TREE
+ *Interface(MyIFaceMissingArgument)
+ *  Operation(foo)
+ *    Arguments()
+ *      Argument(arg)
+ *        Type()
+ *          PrimitiveType(DOMString)
+ *      Error(Missing argument.)
+ *    Type()
+ *      PrimitiveType(void)
+ */
+interface MyIFaceMissingArgument {
+  void foo(DOMString arg, );
+};
+
+/* TREE
  *Interface(MyIFaceBig)
  *  Const(setString)
  *    PrimitiveType(DOMString)
diff --git a/tools/lsan/suppressions.txt b/tools/lsan/suppressions.txt
index 493ebfc..41f8679 100644
--- a/tools/lsan/suppressions.txt
+++ b/tools/lsan/suppressions.txt
@@ -58,6 +58,7 @@
 leak:blink::V8PerIsolateData::ensureDomInJSContext
 leak:gin/object_template_builder.h
 leak:gin::internal::Dispatcher
+leak:blink::LocalDOMWindow::getComputedStyle
 
 # http://crbug.com/356785
 leak:content::RenderViewImplTest_DecideNavigationPolicyForWebUI_Test::TestBody
diff --git a/tools/valgrind/browser_wrapper_win.py b/tools/valgrind/browser_wrapper_win.py
index ee0a961..0023ca7 100644
--- a/tools/valgrind/browser_wrapper_win.py
+++ b/tools/valgrind/browser_wrapper_win.py
@@ -26,7 +26,7 @@
 # Usually, we pass "-logdir" "foo\bar\spam path" args to Dr. Memory.
 # To group reports per UI test, we want to put the reports for each test into a
 # separate directory. This code can be simplified when we have
-# http://code.google.com/p/drmemory/issues/detail?id=684 fixed.
+# https://github.com/DynamoRIO/drmemory/issues/684 fixed.
 logdir_idx = cmd_to_run.index("-logdir")
 old_logdir = cmd_to_run[logdir_idx + 1]
 
diff --git a/tools/valgrind/drmemory/suppressions.txt b/tools/valgrind/drmemory/suppressions.txt
index 96ae6fa..4310d8a 100644
--- a/tools/valgrind/drmemory/suppressions.txt
+++ b/tools/valgrind/drmemory/suppressions.txt
@@ -45,32 +45,32 @@
 # private symbols so may need to be updated when we switch to auto-loading PDBs
 
 UNADDRESSABLE ACCESS
-name=http://code.google.com/p/drmemory/issues/detail?id=12 UNADDR
+name=https://github.com/DynamoRIO/drmemory/issues/12 UNADDR
 ...
 SHELL32.dll!SHFileOperation*
 
 UNADDRESSABLE ACCESS
-name=http://code.google.com/p/drmemory/issues/detail?id=40 UNADDR
+name=https://github.com/DynamoRIO/drmemory/issues/40 UNADDR
 ...
 WINSPOOL.DRV!*
 
 INVALID HEAP ARGUMENT
-name=http://code.google.com/p/drmemory/issues/detail?id=40 INVALID HEAP
+name=https://github.com/DynamoRIO/drmemory/issues/40 INVALID HEAP
 ...
 WINSPOOL.DRV!*
 
 UNADDRESSABLE ACCESS
-name=http://code.google.com/p/drmemory/issues/detail?id=59
+name=https://github.com/DynamoRIO/drmemory/issues/59
 ...
 *!SetEnvironmentVariable*
 
 UNADDRESSABLE ACCESS
-name=http://code.google.com/p/drmemory/issues/detail?id=68 (UNADDR 1)
+name=https://github.com/DynamoRIO/drmemory/issues/68 (UNADDR 1)
 ...
 MSWSOCK.dll!WSPStartup
 
 UNADDRESSABLE ACCESS
-name=http://code.google.com/p/drmemory/issues/detail?id=68 (UNADDR 2)
+name=https://github.com/DynamoRIO/drmemory/issues/68 (UNADDR 2)
 ...
 ntdll.dll!RtlValidateUnicodeString
 
@@ -132,7 +132,7 @@
 base_unittests.exe!operator new[]
 base_unittests.exe!base::ToolsSanityTest_MemoryLeak_Test::TestBody
 
-# "..." is needed due to http://code.google.com/p/drmemory/issues/detail?id=666
+# "..." is needed due to https://github.com/DynamoRIO/drmemory/issues/666
 UNADDRESSABLE ACCESS
 name=sanity test 02 (malloc/read left)
 base_unittests.exe!*ReadValueOutOfArrayBoundsLeft
@@ -157,7 +157,7 @@
 base_unittests.exe!*MakeSomeErrors
 base_unittests.exe!base::ToolsSanityTest_AccessesToMallocMemory_Test::TestBody
 
-# "..." is needed due to http://code.google.com/p/drmemory/issues/detail?id=666
+# "..." is needed due to https://github.com/DynamoRIO/drmemory/issues/666
 UNADDRESSABLE ACCESS
 name=sanity test 06 (new/read left)
 base_unittests.exe!*ReadValueOutOfArrayBoundsLeft
@@ -252,7 +252,7 @@
 igdumd32.dll!*
 
 UNADDRESSABLE ACCESS
-name=http://code.google.com/p/drmemory/issues/detail?id=582 bizarre cl-generated read-beyond-TOS
+name=https://github.com/DynamoRIO/drmemory/issues/582 bizarre cl-generated read-beyond-TOS
 instruction=mov    0xfffffffc(%esp) -> %eax
 chrome.dll!blink::RenderStyle::resetBorder*
 
@@ -271,7 +271,7 @@
 *!sandbox::GetPathFromHandle
 
 GDI USAGE ERROR
-name=http://code.google.com/p/drmemory/issues/detail?id=899 deleting bitmap which is probably safe
+name=https://github.com/DynamoRIO/drmemory/issues/899 deleting bitmap which is probably safe
 system call NtGdiDeleteObjectApp
 *!skia::`anonymous namespace'::Bitmap::~Bitmap
 *!skia::`anonymous namespace'::Bitmap::`scalar deleting destructor'
@@ -325,7 +325,7 @@
 name=http://crbug.com/119552 c
 # optional gdi32.dll frame followed by user32.dll
 # TODO(bruening): once have
-# http://code.google.com/p/drmemory/issues/detail?id=846
+# https://github.com/DynamoRIO/drmemory/issues/846
 # I would do "gdi32.dll!...\nuser32.dll!*"
 *32.dll!*
 ...
@@ -462,7 +462,7 @@
 system call NtCreateSection
 KERNELBASE.dll!CreateFileMappingW
 base.dll!base::SharedMemory::Create
-base.dll!base::SharedMemory::CreateAndMapAnonymous
+base.dll!base::SharedMemory::CreateAnonymous
 content.dll!content::ChildThread::AllocateSharedMemory
 content.dll!content::ChildSharedBitmapManager::AllocateSharedBitmap
 cc.dll!cc::ResourceProvider::CreateBitmap
@@ -525,7 +525,7 @@
 *!blink::RenderBlock::layout
 
 HANDLE LEAK
-name=https://code.google.com/p/drmemory/issues/detail?id=1545
+name=https://github.com/DynamoRIO/drmemory/issues/1545
 system call NtGdiCreateCompatibleDC
 GDI32.dll!CreateCompatibleDC
 skia.dll!LogFontTypeface::onGetTableData
@@ -603,9 +603,9 @@
 
 # This suppression is deliberately general, as bugs reported in
 # v8 generated code are difficult to track down. Xref Dr. Memory issue
-# https://code.google.com/p/drmemory/issues/detail?id=1582
+# https://github.com/DynamoRIO/drmemory/issues/1582
 UNADDRESSABLE ACCESS
-name=https://code.google.com/p/drmemory/issues/detail?id=1582
+name=https://github.com/DynamoRIO/drmemory/issues/1582
 ...
 *!v8::internal::Invoke
 *!v8::internal::Execution::Call
@@ -623,7 +623,11 @@
 *!content::RenderViewHostImpl::CreateRenderView
 
 UNADDRESSABLE ACCESS
-name=http://code.google.com/p/dynamorio/issues/detail?id=1443
+name=https://github.com/DynamoRIO/dynamorio/issues/1443
+dynamorio.dll!*
+
+UNINITIALIZED READ
+name=https://github.com/DynamoRIO/dynamorio/issues/1443 (another instance)
 dynamorio.dll!*
 
 UNADDRESSABLE ACCESS
diff --git a/tools/valgrind/drmemory/suppressions_full.txt b/tools/valgrind/drmemory/suppressions_full.txt
index ca3d29a..050e507 100644
--- a/tools/valgrind/drmemory/suppressions_full.txt
+++ b/tools/valgrind/drmemory/suppressions_full.txt
@@ -16,7 +16,7 @@
 
 # TODO(timurrrr): check if these frames change when NT_SYMBOLS are present.
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=406
+name=https://github.com/DynamoRIO/drmemory/issues/406
 ADVAPI32.dll!WmiOpenBlock
 ADVAPI32.dll!WmiOpenBlock
 
@@ -28,7 +28,7 @@
 
 # They deliberately use uninit local var in sqlite random generator.
 # Random bytes may mess up the call stack between randomByte and
-# sqlite3_* frames (http://code.google.com/p/drmemory/issues/detail?id=1514)
+# sqlite3_* frames (https://github.com/DynamoRIO/drmemory/issues/1514)
 # so we just look for randomByte.
 UNINITIALIZED READ
 name=sqlite3_randomness UNINIT
@@ -76,168 +76,168 @@
 # Please note: the following suppressions were written in the abscense of
 # private symbols so may need to be updated when we switch to auto-loading PDBs
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (1)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (1)
 ntdll.dll!Rtl*
 ntdll.dll!Rtl*
 ntdll.dll!RtlFindActivationContextSectionString
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (2)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (2)
 ...
 SHELL32.dll!SHFileOperation*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (3)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (3)
 ...
 SHELL32.dll!SHGetFolderPath*
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (4)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (4)
 ...
 SHELL32.dll!SHGetFolderPath*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (5)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (5)
 ...
 SHELL32.dll!SHCreateDirectory*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (6)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (6)
 ...
 SHELL32.dll!ILLoadFromStream*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (7)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (7)
 ...
 SHELL32.dll!ILSaveToStream*
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (8)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (8)
 ...
 SHELL32.dll!SHFileOperation*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (9)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (9)
 ...
 SHELL32.dll!SHGetItemFromDataObject
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (10)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (10)
 ...
 SHELL32.dll!SHGetItemFromDataObject
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=12 (11)
+name=https://github.com/DynamoRIO/drmemory/issues/12 (11)
 ...
 ole32.dll!*
 SHELL32.dll!SHChangeNotifySuspendResume
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=14 (1)
+name=https://github.com/DynamoRIO/drmemory/issues/14 (1)
 ...
 *!CreateProcess*
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=14 (2)
+name=https://github.com/DynamoRIO/drmemory/issues/14 (2)
 ...
 *!CreateProcess*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=14 (3)
+name=https://github.com/DynamoRIO/drmemory/issues/14 (3)
 ...
 *!base::LaunchApp*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=17 (1)
+name=https://github.com/DynamoRIO/drmemory/issues/17 (1)
 ...
 *!CreateWindow*
 
 POSSIBLE LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=17 (2)
+name=https://github.com/DynamoRIO/drmemory/issues/17 (2)
 GDI32.dll!*
 GDI32.dll!CreateFontIndirectExW
 GDI32.dll!CreateFontIndirectW
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=17 (3)
+name=https://github.com/DynamoRIO/drmemory/issues/17 (3)
 KERNELBASE.dll!LocalAlloc
 ...
 USER32.dll!CreateWindow*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=18 a
+name=https://github.com/DynamoRIO/drmemory/issues/18 a
 ...
 *!CoInitialize*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=18 b
+name=https://github.com/DynamoRIO/drmemory/issues/18 b
 ...
 *!CoCreateInstance*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=18 c
+name=https://github.com/DynamoRIO/drmemory/issues/18 c
 ...
 *!CoUninitialize*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=18 d
+name=https://github.com/DynamoRIO/drmemory/issues/18 d
 ...
 UxTheme.dll!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=40 a
+name=https://github.com/DynamoRIO/drmemory/issues/40 a
 ...
 WINSPOOL.DRV!*
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=40 b
+name=https://github.com/DynamoRIO/drmemory/issues/40 b
 ...
 WINSPOOL.DRV!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=48 a
+name=https://github.com/DynamoRIO/drmemory/issues/48 a
 system call NtContinue
 ...
 *!*SetThreadName
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=48 b
+name=https://github.com/DynamoRIO/drmemory/issues/48 b
 system call NtContinue
 *!WTF::initializeCurrentThreadInternal
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=52 a
+name=https://github.com/DynamoRIO/drmemory/issues/52 a
 ...
 DBGHELP.dll!SymInitialize
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=52 b
+name=https://github.com/DynamoRIO/drmemory/issues/52 b
 ...
 DBGHELP.dll!SymEnumSourceFiles
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=52 c
+name=https://github.com/DynamoRIO/drmemory/issues/52 c
 ...
 msvcrt.dll!_RTDynamicCast
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=52 bit-level fp in dbghelp
+name=https://github.com/DynamoRIO/drmemory/issues/52 bit-level fp in dbghelp
 instruction=test   0x*(%*) $0x??
 DBGHELP.dll!SymUnloadModule64
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=53
+name=https://github.com/DynamoRIO/drmemory/issues/53
 ADVAPI32.dll!WmiMofEnumerateResourcesA
 ADVAPI32.dll!WmiMofEnumerateResourcesA
 ADVAPI32.dll!Sta*TraceW
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=58
+name=https://github.com/DynamoRIO/drmemory/issues/58
 ...
 *!_cfltcvt_l
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=60
+name=https://github.com/DynamoRIO/drmemory/issues/60
 USP10.dll!*
 ...
 USP10.dll!ScriptStringAnalyse
@@ -250,65 +250,65 @@
 USER32.dll!IMPSetIMEA
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=65 a
+name=https://github.com/DynamoRIO/drmemory/issues/65 a
 ...
 *!SystemFunction036
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=65 b
+name=https://github.com/DynamoRIO/drmemory/issues/65 b
 ...
 *!talk_base::CreateRandomString
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=68 a
+name=https://github.com/DynamoRIO/drmemory/issues/68 a
 ...
 WS2_32.dll!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=68 b
+name=https://github.com/DynamoRIO/drmemory/issues/68 b
 ...
 ADVAPI32.dll!SetSecurityDescriptorDacl
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=68 c
+name=https://github.com/DynamoRIO/drmemory/issues/68 c
 ...
 MSWSOCK.dll!WSPStartup
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=68 d
+name=https://github.com/DynamoRIO/drmemory/issues/68 d
 ...
 ntdll.dll!RtlValidateUnicodeString
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=256
+name=https://github.com/DynamoRIO/drmemory/issues/256
 *!_mtinit
 *!__tmainCRTStartup
 *!mainCRTStartup
 
 POSSIBLE LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=274 a
+name=https://github.com/DynamoRIO/drmemory/issues/274 a
 ...
 GDI32.dll!CreateDCW
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=274 b
+name=https://github.com/DynamoRIO/drmemory/issues/274 b
 ...
 GDI32.dll!CreateDCW
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=275
+name=https://github.com/DynamoRIO/drmemory/issues/275
 ...
 *!_getptd*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=276
+name=https://github.com/DynamoRIO/drmemory/issues/276
 ...
 ntdll.dll!RtlConvertUlongToLargeInteger
 ntdll.dll!RtlConvertUlongToLargeInteger
 ntdll.dll!KiUserExceptionDispatcher
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=305
+name=https://github.com/DynamoRIO/drmemory/issues/305
 *!free
 *!free
 *!operator new
@@ -316,57 +316,57 @@
 *!MiniDumpWriteDump
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=346 a
+name=https://github.com/DynamoRIO/drmemory/issues/346 a
 ...
 GDI32.dll!CloseEnhMetaFile
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=346 b
+name=https://github.com/DynamoRIO/drmemory/issues/346 b
 GDI32.dll!SetPolyFillMode
 GDI32.dll!CreateICW
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=362
+name=https://github.com/DynamoRIO/drmemory/issues/362
 USER32.dll!UnregisterClass*
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=382
+name=https://github.com/DynamoRIO/drmemory/issues/382
 ...
 ntdll.dll!CsrNewThread
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=397
+name=https://github.com/DynamoRIO/drmemory/issues/397
 system call NtDeviceIoControlFile InputBuffer
 ADVAPI32.dll!ImpersonateAnonymousToken
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=407 a
+name=https://github.com/DynamoRIO/drmemory/issues/407 a
 system call NtRequestWaitReplyPort
 RPCRT4.dll!I_RpcSendReceive
 RPCRT4.dll!NdrSendReceive
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=407 b
+name=https://github.com/DynamoRIO/drmemory/issues/407 b
 IMM32.dll!*
 ntdll.dll!LdrInitializeThunk
 ntdll.dll!LdrShutdownThread
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=412 a
+name=https://github.com/DynamoRIO/drmemory/issues/412 a
 ADVAPI32.dll!RegDeleteValue*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=412 b
+name=https://github.com/DynamoRIO/drmemory/issues/412 b
 ...
 ADVAPI32.dll!Crypt*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=412 c
+name=https://github.com/DynamoRIO/drmemory/issues/412 c
 ...
 RPCRT4.dll!NdrClientCall2
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=412 d
+name=https://github.com/DynamoRIO/drmemory/issues/412 d
 RSAENH.dll!DllUnregisterServer
 ...
 ADVAPI32.dll!CryptAcquireContextA
@@ -375,17 +375,17 @@
 CRYPT32.dll!CertFindCertificateInStore
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=412 e
+name=https://github.com/DynamoRIO/drmemory/issues/412 e
 ...
 RSAENH.dll!CPGenRandom
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=412 f
+name=https://github.com/DynamoRIO/drmemory/issues/412 f
 ...
 CRYPT??.dll!Crypt*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=412 g
+name=https://github.com/DynamoRIO/drmemory/issues/412 g
 *!replace_memcmp
 ...
 *!testing::internal::CmpHelperEQ*
@@ -396,30 +396,30 @@
 # have frame pointers, and we have trouble unwinding from it.  Therefore, we use
 # this broad suppression, effectively disabling uninit checks in rsaenh.dll.
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=412 h
+name=https://github.com/DynamoRIO/drmemory/issues/412 h
 RSAENH.dll!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=425 a
+name=https://github.com/DynamoRIO/drmemory/issues/425 a
 CLBCatQ.DLL!DestroyStgDatabase
 CLBCatQ.DLL!PostError
 CLBCatQ.DLL!PostError
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=425 b
+name=https://github.com/DynamoRIO/drmemory/issues/425 b
 RPCRT4.dll!I_RpcBCacheFree
 RPCRT4.dll!I_RpcBCacheFree
 ...
 RPCRT4.dll!NdrClientCall2
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=425 c
+name=https://github.com/DynamoRIO/drmemory/issues/425 c
 msdmo.dll!*
 msdmo.dll!*
 DEVENUM.DLL!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=435 a
+name=https://github.com/DynamoRIO/drmemory/issues/435 a
 ...
 ntdll.dll!RtlSetSecurityObject
 ntdll.dll!RtlNewSecurityObjectEx
@@ -427,7 +427,7 @@
 NTMARTA.dll!AccRewriteSetNamedRights
 
 POSSIBLE LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=435 b
+name=https://github.com/DynamoRIO/drmemory/issues/435 b
 WLDAP32.dll!Ordinal325
 ...
 WLDAP32.dll!Ordinal325
@@ -440,34 +440,34 @@
 # mod+offs suppression because the symbolic makes no sense and changes
 # completely in the presence of WS2_32.dll symbols.
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=438
+name=https://github.com/DynamoRIO/drmemory/issues/438
 <WS2_32.dll+0x260c>
 <WS2_32.dll+0x2b76>
 <WS2_32.dll+0x2c61>
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=454 a
+name=https://github.com/DynamoRIO/drmemory/issues/454 a
 ...
 WINMM.dll!wave*GetNumDevs
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=454 b
+name=https://github.com/DynamoRIO/drmemory/issues/454 b
 ...
 WINMM.dll!wave*GetNumDevs
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=466
+name=https://github.com/DynamoRIO/drmemory/issues/466
 ntdll.dll!RtlRunOnceBeginInitialize
 ntdll.dll!RtlInitializeCriticalSectionAndSpinCount
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=473 a
+name=https://github.com/DynamoRIO/drmemory/issues/473 a
 system call NtDeviceIoControlFile InputBuffer
 ...
 iphlpapi.dll!GetAdaptersAddresses
 
 POSSIBLE LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=473 b
+name=https://github.com/DynamoRIO/drmemory/issues/473 b
 ESENT.dll!*
 ESENT.dll!*
 ESENT.dll!*
@@ -481,14 +481,14 @@
 iphlpapi.dll!GetAdaptersAddresses
 
 POSSIBLE LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=473 c
+name=https://github.com/DynamoRIO/drmemory/issues/473 c
 RPCRT4.dll!*
 RPCRT4.dll!*
 ...
 IPHLPAPI.DLL!GetAdaptersAddresses
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=475
+name=https://github.com/DynamoRIO/drmemory/issues/475
 ...
 ADVAPI32.dll!CryptAcquireContextA
 ...
@@ -499,105 +499,105 @@
 # Lots of leaks from our interactions with the system certificate store.  May be
 # worth reviewing our use of their API.
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=476 a
+name=https://github.com/DynamoRIO/drmemory/issues/476 a
 KERNEL*.dll!LocalAlloc
 ...
 CRYPT32.dll!CertGetCRLContextProperty
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=476 b
+name=https://github.com/DynamoRIO/drmemory/issues/476 b
 KERNEL*.dll!LocalAlloc
 ...
 CRYPT32.dll!CertAddCRLContextToStore
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=476 c
+name=https://github.com/DynamoRIO/drmemory/issues/476 c
 KERNEL*.dll!LocalAlloc
 ...
 CRYPT32.dll!CertOpenStore
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=476 d
+name=https://github.com/DynamoRIO/drmemory/issues/476 d
 ...
 CRYPT32.dll!CertOpenSystemStore?
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=476 e
+name=https://github.com/DynamoRIO/drmemory/issues/476 e
 ...
 CRYPT32.dll!CertGetCertificateChain
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=476 f
+name=https://github.com/DynamoRIO/drmemory/issues/476 f
 ...
 CRYPT32.dll!CertCompareIntegerBlob
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=476 g
+name=https://github.com/DynamoRIO/drmemory/issues/476 g
 ...
 CRYPT32.dll!CryptUnprotectData
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=476 h
+name=https://github.com/DynamoRIO/drmemory/issues/476 h
 KERNEL*.dll!LocalAlloc
 ...
 CRYPT32.dll!CertEnumCertificatesInStore
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=476 i
+name=https://github.com/DynamoRIO/drmemory/issues/476 i
 ...
 CRYPT32.dll!CryptProtectData
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=476 j
+name=https://github.com/DynamoRIO/drmemory/issues/476 j
 ...
 CRYPT32.dll!CryptExportPublicKeyInfoEx
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=502 a
+name=https://github.com/DynamoRIO/drmemory/issues/502 a
 system call NtSecureConnectPort parameter #3
 GDI32.dll!*
 GDI32.dll!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=502 b
+name=https://github.com/DynamoRIO/drmemory/issues/502 b
 system call NtGdiEnumFonts parameter #6
 GDI32.dll!*
 GDI32.dll!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=511 a
+name=https://github.com/DynamoRIO/drmemory/issues/511 a
 RPCRT4.dll!...
 ole32.dll!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=511 b
+name=https://github.com/DynamoRIO/drmemory/issues/511 b
 ole32.dll!*
 ole32.dll!*
 ole32.dll!StringFromGUID2
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=512 a
+name=https://github.com/DynamoRIO/drmemory/issues/512 a
 ...
 *!browser_sync::Cryptographer::PackBootstrapToken
 *!browser_sync::Cryptographer::GetBootstrapToken
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=512 b
+name=https://github.com/DynamoRIO/drmemory/issues/512 b
 ...
 *!Encrypt*
 
 # TODO(bruening): remove these once we have v8 bitfields handled
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=513 a
+name=https://github.com/DynamoRIO/drmemory/issues/513 a
 *!v8*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=513 b
+name=https://github.com/DynamoRIO/drmemory/issues/513 b
 *!*
 *!v8*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=513 c
+name=https://github.com/DynamoRIO/drmemory/issues/513 c
 <not in a module>
 ...
 *!v8*
@@ -606,17 +606,17 @@
 # has no symbols.  These are all on the bots using component build, so we use
 # v8.dll.  TODO(bruening): remove these once we've fixed the symbol issue.
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=513 d
+name=https://github.com/DynamoRIO/drmemory/issues/513 d
 v8.dll!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=513 e
+name=https://github.com/DynamoRIO/drmemory/issues/513 e
 <not in a module>
 ...
 v8.dll!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=546
+name=https://github.com/DynamoRIO/drmemory/issues/546
 ...
 mscms.dll!*
 ...
@@ -631,13 +631,13 @@
 *!views::TooltipManagerWin::TooltipManagerWin
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=567 a
+name=https://github.com/DynamoRIO/drmemory/issues/567 a
 dbghelp.dll!*
 ...
 dbghelp.dll!StackWalk64
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=567 b
+name=https://github.com/DynamoRIO/drmemory/issues/567 b
 *!*
 dbghelp.dll!*
 ...
@@ -647,7 +647,7 @@
 # TppWorkerThread w/ syms.  We used to use mod+offs here, but that was too
 # brittle, so we switched to RPCRT4.dll!*.
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=569
+name=https://github.com/DynamoRIO/drmemory/issues/569
 RPCRT4.dll!...
 ntdll.dll!*
 ntdll.dll!*
@@ -772,7 +772,7 @@
 
 # False pos uninit in shell32 when resolving links.
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=745
+name=https://github.com/DynamoRIO/drmemory/issues/745
 SHELL*.dll!*
 ...
 SHELL*.dll!*
@@ -781,31 +781,31 @@
 # Probable false pos uninit in ffmpeg.  Probably due to running off the end of a
 # buffer with SSE/MMX instructions whose results are then masked out later.
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=747 a
+name=https://github.com/DynamoRIO/drmemory/issues/747 a
 *!ff_pred4x4_vertical_vp8_mmxext
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=747 b
+name=https://github.com/DynamoRIO/drmemory/issues/747 b
 *!ff_pred4x4_down_left_mmxext
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=747 c
+name=https://github.com/DynamoRIO/drmemory/issues/747 c
 *!ff_vorbis_floor1_render_list
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=747 d
+name=https://github.com/DynamoRIO/drmemory/issues/747 d
 *!ff_put_vp8_epel8_h6_ssse3
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=747 e
+name=https://github.com/DynamoRIO/drmemory/issues/747 e
 *!ff_put_vp8_epel8_h4_ssse3
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=747 f
+name=https://github.com/DynamoRIO/drmemory/issues/747 f
 *!ff_fft_permute_sse
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=747 g
+name=https://github.com/DynamoRIO/drmemory/issues/747 g
 *!ff_simple_idct_add_mmx
 
 # ffmpeg seems to leak a pthread condition variable.
@@ -820,7 +820,7 @@
 
 # Improperly handled ioctl in bcrypt.
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=748
+name=https://github.com/DynamoRIO/drmemory/issues/748
 system call NtDeviceIoControlFile InputBuffer
 ...
 bcrypt.dll!BCryptUnregisterConfigChangeNotify
@@ -829,7 +829,7 @@
 
 # Not sure what this is.
 POSSIBLE LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=749
+name=https://github.com/DynamoRIO/drmemory/issues/749
 ...
 fwpuclnt.dll!*
 ...
@@ -849,37 +849,37 @@
 
 # More uninit false pos in rpcrt4.dll not caught by default suppressions.
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=529
+name=https://github.com/DynamoRIO/drmemory/issues/529
 RPCRT4.dll!*
 ...
 *!base::LaunchProcess
 
 # System leak from CreateEnvironmentBlock.
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=757
+name=https://github.com/DynamoRIO/drmemory/issues/757
 ...
 USERENV.dll!CreateEnvironmentBlock
 
 # Looks like another instance of 753
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=753
+name=https://github.com/DynamoRIO/drmemory/issues/753
 ...
 ntdll.dll!RtlLoadString
 
 # More bit manip fps
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=493
+name=https://github.com/DynamoRIO/drmemory/issues/493
 USP10.dll!ScriptPositionSingleGlyph
 
 # Various TLS leaks that we don't understand yet.  We should be finding a root
 # for these.
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=778 a
+name=https://github.com/DynamoRIO/drmemory/issues/778 a
 KERNELBASE.dll!TlsSetValue
 
 # Originally filed as: http://crbug.com/109281
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=778 b
+name=https://github.com/DynamoRIO/drmemory/issues/778 b
 *!operator new
 *!operator new[]
 *!*::ConstructTlsVector
@@ -888,14 +888,14 @@
 # This is an NSS PRThread object installed in TLS.  Why isn't this detected as a
 # root?  See also http://crbug.com/32624
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=778 c
+name=https://github.com/DynamoRIO/drmemory/issues/778 c
 *!PR_Calloc
 *!_PR_AttachThread
 *!_PRI_AttachThread
 
 # Bit-level fps in rich edit layer.
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=791
+name=https://github.com/DynamoRIO/drmemory/issues/791
 RICHED20.dll!*
 RICHED20.dll!*
 
@@ -910,13 +910,13 @@
 # Async NtReadFile false positives.  This was fixed in drmemory r772, remove
 # this supp when we pull that rev.
 UNADDRESSABLE ACCESS
-name=http://code.google.com/p/drmemory/issues/detail?id=798
+name=https://github.com/DynamoRIO/drmemory/issues/798
 system call NtReadFile parameter #5
 KERNEL32.dll!ReadFile
 
 # Probable syscall false positive.
 UNADDRESSABLE ACCESS
-name=http://code.google.com/p/drmemory/issues/detail?id=809
+name=https://github.com/DynamoRIO/drmemory/issues/809
 system call NtGdiPolyPolyDraw parameter #1
 *!gfx::Path::CreateNativeRegion
 
@@ -925,39 +925,39 @@
 # write precise suppressions.  Until we have bit-level tracking (DRMi#113) we
 # should keep this.
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=113 rpcrt4.dll wildcard
+name=https://github.com/DynamoRIO/drmemory/issues/113 rpcrt4.dll wildcard
 RPCRT4.dll!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=841 a
+name=https://github.com/DynamoRIO/drmemory/issues/841 a
 ...
 CRYPTNET.dll!I_CryptNetGetConnectivity
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=841 b
+name=https://github.com/DynamoRIO/drmemory/issues/841 b
 ...
 webio.dll!*
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=841 c
+name=https://github.com/DynamoRIO/drmemory/issues/841 c
 ...
 winhttp.dll!*
 
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=841 d
+name=https://github.com/DynamoRIO/drmemory/issues/841 d
 ...
 CRYPTNET.dll!I_CryptNetGetConnectivity
 
 # Often missing a ntdll.dll!KiUserCallbackDispatcher frame.
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=810
+name=https://github.com/DynamoRIO/drmemory/issues/810
 instruction=test   %edx %edx
 USER32.dll!GetClassLongW
 ...
 *!ui::CenterAndSizeWindow
 
 UNINITIALIZED READ
-name=http://code.google.com/p/drmemory/issues/detail?id=815
+name=https://github.com/DynamoRIO/drmemory/issues/815
 KERNEL*.dll!...
 dxgi.dll!*
 USER32.dll!GetMonitorInfoA
@@ -974,7 +974,7 @@
 
 # Possible true system use after free.
 UNADDRESSABLE ACCESS
-name=http://code.google.com/p/drmemory/issues/detail?id=623
+name=https://github.com/DynamoRIO/drmemory/issues/623
 KERNELBASE.dll!TlsGetValue
 OLEAUT32.dll!SysFreeString
 OLEAUT32.dll!SysAllocStringByteLen
@@ -985,7 +985,7 @@
 
 # basic_streambuf seems to leak something in creating a std::_Mutex
 LEAK
-name=http://code.google.com/p/drmemory/issues/detail?id=857
+name=https://github.com/DynamoRIO/drmemory/issues/857
 ntdll.dll!...
 ntdll.dll!RtlInitializeCriticalSection
 *!_Mtxinit
@@ -1631,7 +1631,7 @@
 # There are so many osmesa errors we have to suppress (mostly the unpack_RGB*
 # variety) that it's a performance hit.  We avoid that by requesting
 # whole-module suppression
-# (see https://code.google.com/p/drmemory/issues/detail?id=1529).
+# (see https://github.com/DynamoRIO/drmemory/issues/1529).
 UNINITIALIZED READ
 name=bug_347967_all_osmesa
 osmesa.dll!*
@@ -1883,3 +1883,21 @@
 *!TCompiler::compile
 *!TypeTrackingTest::compile
 *!TypeTrackingTest_StructConstructorResultNoPrecision_Test::TestBody
+
+UNADDRESSABLE ACCESS
+name=bug_436131
+*!ash::test::ShelfViewTestAPI::RunMessageLoopUntilAnimationsDone
+*!ash::test::ShelfViewTest_OverflowBubbleSize_Test::TestBody
+*!testing::internal::HandleExceptionsInMethodIfSupported<>
+
+UNADDRESSABLE ACCESS
+name=bug_436131_b
+views.dll!ObserverListBase<>::RemoveObserver
+*!ash::test::ShelfViewTestAPI::RunMessageLoopUntilAnimationsDone
+*!testing::internal::HandleExceptionsInMethodIfSupported<>
+
+UNADDRESSABLE ACCESS
+name=bug_436131_c
+*!ash::test::ShelfViewTestAPI::GetPreferredSize
+*!ash::test::ShelfViewTest_OverflowBubbleSize_Test::TestBody
+*!testing::internal::HandleExceptionsInMethodIfSupported<>
diff --git a/tools/valgrind/gtest_exclude/base_unittests.gtest.txt b/tools/valgrind/gtest_exclude/base_unittests.gtest.txt
index 74a4ac5..aa85c27 100644
--- a/tools/valgrind/gtest_exclude/base_unittests.gtest.txt
+++ b/tools/valgrind/gtest_exclude/base_unittests.gtest.txt
@@ -27,6 +27,3 @@
 
 # Crashes under Valgrind, see http://crbug.com/355436
 OutOfMemoryHandledTest.Unchecked*
-
-# Fail under Valgrind, see http://crbug.com/431702
-ProcMapsTest.ReadProcMaps
diff --git a/tools/valgrind/gtest_exclude/browser_tests.gtest-drmemory_win32.txt b/tools/valgrind/gtest_exclude/browser_tests.gtest-drmemory_win32.txt
index 2a23eee..425b359 100644
--- a/tools/valgrind/gtest_exclude/browser_tests.gtest-drmemory_win32.txt
+++ b/tools/valgrind/gtest_exclude/browser_tests.gtest-drmemory_win32.txt
@@ -1,6 +1,6 @@
 # TODO(zhaoqin): File bugs for those failing browser tests.
 
-# Dr.Memory i#1052: http://code.google.com/p/drmemory/issues/detail?id=1052
+# Dr.Memory i#1052: https://github.com/DynamoRIO/drmemory/issues/1052
 #
 # The list is too long for gtest_filter, so we exclude the whole
 # test case if any of its tests failed.
diff --git a/tools/valgrind/gtest_exclude/chromeos_unittests.gtest.txt b/tools/valgrind/gtest_exclude/chromeos_unittests.gtest.txt
new file mode 100644
index 0000000..ee21d7e
--- /dev/null
+++ b/tools/valgrind/gtest_exclude/chromeos_unittests.gtest.txt
@@ -0,0 +1,3 @@
+# crbug.com/437847
+AutoConnectHandlerTest.ReconnectOnCertPatternResolved
+NetworkConnectionHandlerTest.ConnectWithCertificateSuccess
diff --git a/tools/valgrind/gtest_exclude/content_browsertests.gtest-drmemory_win32.txt b/tools/valgrind/gtest_exclude/content_browsertests.gtest-drmemory_win32.txt
index cd8ecc4..569be95 100644
--- a/tools/valgrind/gtest_exclude/content_browsertests.gtest-drmemory_win32.txt
+++ b/tools/valgrind/gtest_exclude/content_browsertests.gtest-drmemory_win32.txt
@@ -1,7 +1,7 @@
 # crbug.com/389132
 WebRtcAecDumpBrowserTest.*WithAecDump*
 
-# http://code.google.com/p/drmemory/issues/detail?id=1528
+# https://github.com/DynamoRIO/drmemory/issues/1528
 # Un-analyzed test failures:
 DeviceInertialSensorBrowserTest.MotionNullTestWithAlert
 DeviceInertialSensorBrowserTest.OrientationNullTestWithAlert
diff --git a/tools/valgrind/gtest_exclude/content_unittests.gtest.txt b/tools/valgrind/gtest_exclude/content_unittests.gtest.txt
index 03eb062..3376b22 100644
--- a/tools/valgrind/gtest_exclude/content_unittests.gtest.txt
+++ b/tools/valgrind/gtest_exclude/content_unittests.gtest.txt
@@ -10,6 +10,3 @@
 
 # http://crbug.com/430391
 WebDataConsumerHandleImplTest.*
-
-# http://crbug.com/435441
-PluginLoaderPosixTest.*
diff --git a/tools/valgrind/gtest_exclude/media_unittests.gtest-drmemory_win32.txt b/tools/valgrind/gtest_exclude/media_unittests.gtest-drmemory_win32.txt
index 3152445..8ee264d 100644
--- a/tools/valgrind/gtest_exclude/media_unittests.gtest-drmemory_win32.txt
+++ b/tools/valgrind/gtest_exclude/media_unittests.gtest-drmemory_win32.txt
@@ -1,4 +1,4 @@
 # Hangs under Dr. Memory
-# http://code.google.com/p/drmemory/issues/detail?id=978
+# https://github.com/DynamoRIO/drmemory/issues/978
 WinAudioTest.SyncSocketBasic
 AudioBusTest.CopyTo
diff --git a/tools/valgrind/gtest_exclude/net_unittests.gtest-drmemory_win-xp.txt b/tools/valgrind/gtest_exclude/net_unittests.gtest-drmemory_win-xp.txt
index 46717dc..9d77b20 100644
--- a/tools/valgrind/gtest_exclude/net_unittests.gtest-drmemory_win-xp.txt
+++ b/tools/valgrind/gtest_exclude/net_unittests.gtest-drmemory_win-xp.txt
@@ -1,3 +1,3 @@
-# http://code.google.com/p/drmemory/issues/detail?id=842
+# https://github.com/DynamoRIO/drmemory/issues/842
 # Failing and then crashing.
 HttpNetworkTransationSpdy21Test.HttpsProxySpdy*
diff --git a/tools/valgrind/gtest_exclude/net_unittests.gtest-drmemory_win32.txt b/tools/valgrind/gtest_exclude/net_unittests.gtest-drmemory_win32.txt
index 465d258..2f7a211 100644
--- a/tools/valgrind/gtest_exclude/net_unittests.gtest-drmemory_win32.txt
+++ b/tools/valgrind/gtest_exclude/net_unittests.gtest-drmemory_win32.txt
@@ -5,7 +5,7 @@
 URLRequestTestHTTP.GetTest_ManyCookies
 
 # Dr. Memory hits an assertion:
-# http://code.google.com/p/drmemory/issues/detail?id=422
+# https://github.com/DynamoRIO/drmemory/issues/422
 HttpAuthTest.*
 HttpAuthHandlerFactoryTest.*
 X509CertificateTest.*
diff --git a/tools/valgrind/gtest_exclude/unit_tests.gtest-drmemory_win-xp.txt b/tools/valgrind/gtest_exclude/unit_tests.gtest-drmemory_win-xp.txt
index 2ef9d50..18a4d45 100644
--- a/tools/valgrind/gtest_exclude/unit_tests.gtest-drmemory_win-xp.txt
+++ b/tools/valgrind/gtest_exclude/unit_tests.gtest-drmemory_win-xp.txt
@@ -1,7 +1,7 @@
 # Crashing (!) since forever, needs analysis.
 BookmarkNodeDataTest.*
 
-# http://code.google.com/p/drmemory/issues/detail?id=842
+# https://github.com/DynamoRIO/drmemory/issues/842
 # Fails assertion.  App data corrupted by DrMemory?
 JsonSchemaTest.TestType
 JsonSchemaTest.TestNumber
diff --git a/tools/valgrind/gtest_exclude/unit_tests.gtest-drmemory_win32.txt b/tools/valgrind/gtest_exclude/unit_tests.gtest-drmemory_win32.txt
index 7e28846..dc461a9 100644
--- a/tools/valgrind/gtest_exclude/unit_tests.gtest-drmemory_win32.txt
+++ b/tools/valgrind/gtest_exclude/unit_tests.gtest-drmemory_win32.txt
@@ -1,16 +1,16 @@
 ##################################################
 # known Dr. Memory bugs:
 
-# http://code.google.com/p/drmemory/issues/detail?id=318
+# https://github.com/DynamoRIO/drmemory/issues/318
 AudioRendererHostTest.*
 
 ##################################################
 # un-analyzed Dr. Memory bugs:
 
-# http://code.google.com/p/drmemory/issues/detail?id=979
+# https://github.com/DynamoRIO/drmemory/issues/979
 FirefoxProfileImporterTest.Firefox35Importer
 
-# http://code.google.com/p/drmemory/issues/detail?id=980
+# https://github.com/DynamoRIO/drmemory/issues/980
 MetricsLogManagerTest.*
 
 ##################################################
@@ -60,7 +60,7 @@
 SyncBackendHostTest.DownloadControlTypes
 SyncBackendHostTest.SilentlyFailToDownloadControlTypes
 
-# DrM-i#1339: https://code.google.com/p/drmemory/issues/detail?id=1339
+# DrM-i#1339: https://github.com/DynamoRIO/drmemory/issues/1339
 ExtensionServiceTest.InstallTheme
 
 # http://crbug.com/302156
diff --git a/tools/valgrind/memcheck/suppressions.txt b/tools/valgrind/memcheck/suppressions.txt
index fa0f599..299cab2 100644
--- a/tools/valgrind/memcheck/suppressions.txt
+++ b/tools/valgrind/memcheck/suppressions.txt
@@ -3435,3 +3435,93 @@
    fun:_ZN3gin21ObjectTemplateBuilder9SetMethodIMN4mojo2js13HandleWrapperEFSsvEEERS0_RKN4base16BasicStringPieceISsEERKT_
    fun:_ZN4mojo2js13HandleWrapper24GetObjectTemplateBuilderEPN2v87IsolateE
 }
+{
+   bug_436110
+   Memcheck:Param
+   socketcall.sendto(msg)
+   fun:send
+   fun:_ZN4mojo8embedder20PlatformChannelWriteENS0_14PlatformHandleEPKvm
+   fun:_ZN4mojo6system12_GLOBAL__N_115RawChannelPosix11WriteNoLockEPmS3_
+   fun:_ZN4mojo6system12_GLOBAL__N_115RawChannelPosix29OnFileCanWriteWithoutBlockingEi
+   fun:_ZThn112_N4mojo6system12_GLOBAL__N_115RawChannelPosix29OnFileCanWriteWithoutBlockingEi
+   fun:_ZN4base19MessagePumpLibevent21FileDescriptorWatcher29OnFileCanWriteWithoutBlockingEiPS0_
+   fun:_ZN4base19MessagePumpLibevent22OnLibeventNotificationEisPv
+   fun:event_process_active
+   fun:event_base_loop
+   fun:_ZN4base19MessagePumpLibevent3RunEPNS_11MessagePump8DelegateE
+   fun:_ZN4base11MessageLoop10RunHandlerEv
+}
+{
+   bug_436110_a
+   Memcheck:Param
+   socketcall.sendto(msg)
+   fun:send
+   fun:_ZN4mojo8embedder20PlatformChannelWriteENS0_14PlatformHandleEPKvm
+   fun:_ZN4mojo6system12_GLOBAL__N_115RawChannelPosix11WriteNoLockEPmS3_
+   fun:_ZN4mojo6system10RawChannel12WriteMessageE10scoped_ptrINS0_16MessageInTransitEN4base14DefaultDeleterIS3_EEE
+   fun:_ZN4mojo6system7Channel12WriteMessageE10scoped_ptrINS0_16MessageInTransitEN4base14DefaultDeleterIS3_EEE
+   fun:_ZN4mojo6system15ChannelEndpoint18WriteMessageNoLockE10scoped_ptrINS0_16MessageInTransitEN4base14DefaultDeleterIS3_EEE
+   fun:_ZN4mojo6system15ChannelEndpoint14EnqueueMessageE10scoped_ptrINS0_16MessageInTransitEN4base14DefaultDeleterIS3_EEE
+   fun:_ZN4mojo6system24ProxyMessagePipeEndpoint14EnqueueMessageE10scoped_ptrINS0_16MessageInTransitEN4base14DefaultDeleterIS3_EEE
+   fun:_ZN4mojo6system11MessagePipe14EnqueueMessageEj10scoped_ptrINS0_16MessageInTransitEN4base14DefaultDeleterIS3_EEEPSt6vectorINS0_19DispatcherTransportESaIS9_EE
+   fun:_ZN4mojo6system11MessagePipe12WriteMessageEjNS0_11UserPointerIKvEEjPSt6vectorINS0_19DispatcherTransportESaIS6_EEj
+   fun:_ZN4mojo6system21MessagePipeDispatcher22WriteMessageImplNoLockENS0_11UserPointerIKvEEjPSt6vectorINS0_19DispatcherTransportESaIS6_EEj
+   fun:_ZN4mojo6system10Dispatcher12WriteMessageENS0_11UserPointerIKvEEjPSt6vectorINS0_19DispatcherTransportESaIS6_EEj
+   fun:_ZN4mojo6system4Core12WriteMessageEjNS0_11UserPointerIKvEEjNS2_IKjEEjj
+   fun:MojoWriteMessage
+}
+{
+   bug_436110_b
+   Memcheck:Param
+   sendmsg(msg.msg_iov[0])
+   obj:/lib/x86_64-linux-gnu/libpthread-2.15.so
+   fun:_ZN4mojo8embedder33PlatformChannelSendmsgWithHandlesENS0_14PlatformHandleEP5iovecmPS1_m
+   ...
+   fun:MojoWriteMessage
+}
+{
+   bug_436172
+   Memcheck:Leak
+   fun:_Znw*
+   fun:_ZN3IPC11SyncChannelC1EPNS_8ListenerERK13scoped_refptrIN4base22SingleThreadTaskRunnerEEPNS4_13WaitableEventE
+   ...
+   fun:_ZN7content28BrowserGpuChannelHostFactory16EstablishRequest12FinishOnMainEv
+}
+{
+   bug_436172_b
+   Memcheck:Leak
+   fun:_Znw*
+   fun:_ZN3IPC7Channel6CreateERKNS_13ChannelHandleENS0_4ModeEPNS_8ListenerE
+   fun:_ZN3IPC12_GLOBAL__N_122PlatformChannelFactory12BuildChannelEPNS_8ListenerE
+   fun:_ZN3IPC12ChannelProxy7Context13CreateChannelE10scoped_ptrINS_14ChannelFactoryEN4base14DefaultDeleterIS3_EEE
+   ...
+   fun:_ZN7content28BrowserGpuChannelHostFactory16EstablishRequest12FinishOnMainEv
+}
+{
+   bug_436172_c
+   Memcheck:Leak
+   fun:_Znw*
+   fun:_ZN3IPC12ChannelProxy7ContextC1EPNS_8ListenerERK13scoped_refptrIN4base22SingleThreadTaskRunnerEE
+   fun:_ZN3IPC11SyncChannel11SyncContextC1EPNS_8ListenerERK13scoped_refptrIN4base22SingleThreadTaskRunnerEEPNS5_13WaitableEventE
+   fun:_ZN3IPC11SyncChannelC1EPNS_8ListenerERK13scoped_refptrIN4base22SingleThreadTaskRunnerEEPNS4_13WaitableEventE
+   fun:_ZN3IPC11SyncChannel6CreateEPNS_8ListenerERK13scoped_refptrIN4base22SingleThreadTaskRunnerEEPNS4_13WaitableEventE
+   ...
+   fun:_ZN7content28BrowserGpuChannelHostFactory16EstablishRequest12FinishOnMainEv
+}
+{
+   bug_436172_d
+   Memcheck:Leak
+   fun:_Znw*
+   fun:_ZN7content14GpuChannelHost7ConnectERKN3IPC13ChannelHandleEPN4base13WaitableEventE
+   fun:_ZN7content14GpuChannelHost6CreateEPNS_21GpuChannelHostFactoryERKN3gpu7GPUInfoERKN3IPC13ChannelHandleEPN4base13WaitableEventEPNS3_22GpuMemoryBufferManagerE
+   fun:_ZN7content28BrowserGpuChannelHostFactory21GpuChannelEstablishedEv
+   fun:_ZN7content28BrowserGpuChannelHostFactory16EstablishRequest12FinishOnMainEv
+}
+{
+   Expected_leak_due_to_gpu_thread_leaked_by_lazy_instance
+   Memcheck:Leak
+   fun:calloc
+   fun:pthread_setspecific
+   ...
+   fun:_ZN3gpu22InProcessCommandBuffer21InitializeOnGpuThreadERKNS0_27InitializeOnGpuThreadParamsE
+}
diff --git a/tools/valgrind/memcheck/suppressions_linux.txt b/tools/valgrind/memcheck/suppressions_linux.txt
index 6ce4607..dae3936 100644
--- a/tools/valgrind/memcheck/suppressions_linux.txt
+++ b/tools/valgrind/memcheck/suppressions_linux.txt
@@ -21,4 +21,34 @@
 # in our own code, or stuff that is so trivial it's not worth fixing.
 
 # 3. Suppressions for real chromium bugs that are not yet fixed.
-
+{
+   bug_436253
+   Memcheck:Overlap
+   fun:memcpy@@GLIBC_2.14
+   fun:_ZN7content14WebPreferencesaSERKS0_
+   fun:_ZN7content14RenderViewImpl22OnUpdateWebPreferencesERKNS_14WebPreferencesE
+   fun:_ZN7content14RenderViewImpl20SetWebkitPreferencesERKNS_14WebPreferencesE
+   fun:_ZThn784_N7content14RenderViewImpl20SetWebkitPreferencesERKNS_14WebPreferencesE
+   fun:_ZN7content16WebKitTestRunner5ResetEv
+}
+{
+   bug_436292
+   Memcheck:Param
+   sendmsg(msg.msg_iov[0])
+   ...
+   fun:MojoWriteMessage
+   fun:_ZN3IPC8internal13MessageReader4SendE10scoped_ptrINS_7MessageEN4base14DefaultDeleterIS3_EEE
+   fun:_ZN3IPC11ChannelMojo4SendEPNS_7MessageE
+   fun:_ZN7content20BrowserMessageFilter4SendEPN3IPC7MessageE
+   fun:_ZN7content17AudioRendererHost18DoCompleteCreationEi
+}
+{
+   bug_436292_b
+   Memcheck:Param
+   sendmsg(msg.msg_iov[0])
+   ...
+   fun:MojoWriteMessage
+   fun:_ZN3IPC8internal13MessageReader4SendE10scoped_ptrINS_7MessageEN4base14DefaultDeleterIS3_EEE
+   fun:_ZN3IPC11ChannelMojo17InitMessageReaderEN4mojo16ScopedHandleBaseINS1_17MessagePipeHandleEEEi
+   fun:_ZN3IPC12_GLOBAL__N_117ServerChannelMojo27ClientChannelWasInitializedEi
+}
diff --git a/tools/valgrind/memcheck/suppressions_mac.txt b/tools/valgrind/memcheck/suppressions_mac.txt
index 4ae5e47..dc9850b 100644
--- a/tools/valgrind/memcheck/suppressions_mac.txt
+++ b/tools/valgrind/memcheck/suppressions_mac.txt
@@ -242,3 +242,10 @@
    fun:_ZN7content45PluginLoaderPosixTest_PluginLaunchFailed_TestC1Ev
    fun:_ZN7testing8internal15TestFactoryImplIN7content45PluginLoaderPosixTest_PluginLaunchFailed_TestEE10CreateTestEv
 }
+{
+   bug_437807
+   Memcheck:Leak
+   ...
+   fun:_ZN4base3mac30PathForFrameworkBundleResourceEPK10__CFString
+   fun:_ZN3gin13IsolateHolder14LoadV8SnapshotEv
+}
diff --git a/tools/valgrind/scan-build.py b/tools/valgrind/scan-build.py
index b58b6cc..b117d1e 100755
--- a/tools/valgrind/scan-build.py
+++ b/tools/valgrind/scan-build.py
@@ -5,6 +5,7 @@
 
 import argparse
 import errno
+import json
 import os
 import re
 import sys
@@ -24,7 +25,7 @@
 CACHE_DIR = "buildlogs.tmp"
 
 # If we don't find anything after searching |CUTOFF| logs, we're probably done.
-CUTOFF = 100
+CUTOFF = 200
 
 def EnsurePath(path):
   """Makes sure |path| does exist, tries to create it if it doesn't."""
@@ -191,6 +192,8 @@
   commands = parser.add_mutually_exclusive_group(required=True)
   commands.add_argument("--update", action='store_true')
   commands.add_argument("--find", metavar='search term')
+  parser.add_argument("--json", action='store_true',
+                      help="Output in JSON format")
   args = parser.parse_args()
 
   path = os.path.abspath(os.path.dirname(argv[0]))
@@ -205,22 +208,38 @@
       builder.ScanLogs(lambda x:False)
 
   if args.find:
+    result = []
     tester = MultiLineChange(args.find.splitlines())
     fyi.FetchInfo()
 
-    print "SCANNING FOR ", args.find
+    if not args.json:
+      print "SCANNING FOR ", args.find
     for builder in fyi.Builders():
-      print "Scanning", builder.Name()
+      if not args.json:
+        print "Scanning", builder.Name()
       occurrences = builder.ScanLogs(tester)
       if occurrences:
         min_build = min(occurrences)
         path = builder.GetBuildPath(min_build)
-        print "Earliest occurrence in build %d" % min_build
-        print "Latest occurrence in build %d" % max(occurrences)
-        print "Latest build: %d" % builder.LatestBuild()
-        print path
-        print "%d total" % len(occurrences)
-
+        if args.json:
+          data = {}
+          data['builder'] = builder.Name()
+          data['first_affected'] = min_build
+          data['last_affected'] = max(occurrences)
+          data['last_build'] = builder.LatestBuild()
+          data['frequency'] = ((int(builder.LatestBuild()) - int(min_build)) /
+              len(occurrences))
+          data['total'] = len(occurrences)
+          data['first_url'] = path
+          result.append(data)
+        else:
+          print "Earliest occurrence in build %d" % min_build
+          print "Latest occurrence in build %d" % max(occurrences)
+          print "Latest build: %d" % builder.LatestBuild()
+          print path
+          print "%d total" % len(occurrences)
+    if args.json:
+      json.dump(result, sys.stdout, indent=2, sort_keys=True)
 
 if __name__ == "__main__":
   sys.exit(main(sys.argv))
diff --git a/tools/valgrind/valgrind_test.py b/tools/valgrind/valgrind_test.py
index f568b5e..24fa32a 100644
--- a/tools/valgrind/valgrind_test.py
+++ b/tools/valgrind/valgrind_test.py
@@ -833,11 +833,11 @@
   def ToolCommand(self):
     """Get the tool command to run."""
     # WINHEAP is what Dr. Memory supports as there are issues w/ both
-    # jemalloc (http://code.google.com/p/drmemory/issues/detail?id=320) and
-    # tcmalloc (http://code.google.com/p/drmemory/issues/detail?id=314)
+    # jemalloc (https://github.com/DynamoRIO/drmemory/issues/320) and
+    # tcmalloc (https://github.com/DynamoRIO/drmemory/issues/314)
     add_env = {
       "CHROME_ALLOCATOR" : "WINHEAP",
-      "JSIMD_FORCEMMX"   : "1",  # http://code.google.com/p/drmemory/issues/detail?id=540
+      "JSIMD_FORCEMMX"   : "1",  # https://github.com/DynamoRIO/drmemory/issues/540
     }
     for k,v in add_env.iteritems():
       logging.info("export %s=%s", k, v)
@@ -855,7 +855,7 @@
     # With file-based config we must update the file every time, and
     # it will affect simultaneous drmem uses by this user.  While file-based
     # config has many advantages, here we may want this-instance-only
-    # (http://code.google.com/p/drmemory/issues/detail?id=334).
+    # (https://github.com/DynamoRIO/drmemory/issues/334).
     drconfig_cmd = [ proc[0].replace("drmemory.exe", "drconfig.exe") ]
     drconfig_cmd += ["-quiet"] # suppress errors about no 64-bit libs
     run_drconfig = True
@@ -990,7 +990,7 @@
     # Use one analyzer for all the log files to avoid printing duplicate reports
     #
     # TODO(timurrrr): unify this with Valgrind and other tools when we have
-    # http://code.google.com/p/drmemory/issues/detail?id=684
+    # https://github.com/DynamoRIO/drmemory/issues/684
     analyzer = drmemory_analyze.DrMemoryAnalyzer()
 
     ret = 0
diff --git a/ui/compositor/compositor.cc b/ui/compositor/compositor.cc
index e0b125a..58297e6 100644
--- a/ui/compositor/compositor.cc
+++ b/ui/compositor/compositor.cc
@@ -254,7 +254,7 @@
     // TODO(nduca): Temporary while compositor calls
     // compositeImmediately() directly.
     cc::BeginFrameArgs args = cc::BeginFrameArgs::Create(
-        gfx::FrameTime::Now(), base::TimeTicks(),
+        BEGINFRAME_FROM_HERE, gfx::FrameTime::Now(), base::TimeTicks(),
         cc::BeginFrameArgs::DefaultInterval(), cc::BeginFrameArgs::SYNCHRONOUS);
     BeginMainFrame(args);
     host_->Composite(args.frame_time);
diff --git a/ui/compositor/layer.cc b/ui/compositor/layer.cc
index ea30852..2d7b5b3 100644
--- a/ui/compositor/layer.cc
+++ b/ui/compositor/layer.cc
@@ -724,6 +724,13 @@
     delegate_->OnPaintLayer(canvas.get());
 }
 
+scoped_refptr<cc::DisplayItemList> Layer::PaintContentsToDisplayList(
+    const gfx::Rect& clip,
+    ContentLayerClient::GraphicsContextStatus gc_status) {
+  NOTIMPLEMENTED();
+  return cc::DisplayItemList::Create();
+}
+
 bool Layer::FillsBoundsCompletely() const { return fills_bounds_completely_; }
 
 bool Layer::PrepareTextureMailbox(
diff --git a/ui/compositor/layer.h b/ui/compositor/layer.h
index eb4628d..0aa9e0b 100644
--- a/ui/compositor/layer.h
+++ b/ui/compositor/layer.h
@@ -333,6 +333,9 @@
       SkCanvas* canvas,
       const gfx::Rect& clip,
       ContentLayerClient::GraphicsContextStatus gc_status) override;
+  scoped_refptr<cc::DisplayItemList> PaintContentsToDisplayList(
+      const gfx::Rect& clip,
+      GraphicsContextStatus gc_status) override;
   bool FillsBoundsCompletely() const override;
 
   cc::Layer* cc_layer() { return cc_layer_; }
diff --git a/ui/gl/BUILD.gn b/ui/gl/BUILD.gn
index 6968f2c..55218bc 100644
--- a/ui/gl/BUILD.gn
+++ b/ui/gl/BUILD.gn
@@ -179,9 +179,7 @@
       "//build/config/linux:xext",
     ]
 
-    deps += [
-      "//ui/gfx/x",
-    ]
+    deps += [ "//ui/gfx/x" ]
   }
   if (is_win) {
     sources += [
@@ -232,9 +230,7 @@
 
     libs = [ "android" ]
 
-    deps += [
-      ":gl_jni_headers",
-    ]
+    deps += [ ":gl_jni_headers" ]
   }
   if (use_ozone) {
     sources += [
@@ -300,10 +296,9 @@
   ]
 
   args = [
-    "--header-paths=" +
-        rebase_path("//third_party/khronos", root_build_dir) + ":" +
-        rebase_path("//third_party/mesa/src/include", root_build_dir) + ":" +
-        rebase_path("//ui/gl", root_build_dir) + ":" +
+    "--header-paths=" + rebase_path("//third_party/khronos", root_build_dir) +
+        ":" + rebase_path("//third_party/mesa/src/include", root_build_dir) +
+        ":" + rebase_path("//ui/gl", root_build_dir) + ":" +
         rebase_path("//gpu", root_build_dir),
     rebase_path(gl_binding_output_dir, root_build_dir),
   ]
@@ -339,7 +334,9 @@
   }
 
   generate_jni("gl_jni_headers") {
-    deps = [ ":surface_jni_headers" ]
+    deps = [
+      ":surface_jni_headers",
+    ]
     sources = [
       "../android/java/src/org/chromium/ui/gl/SurfaceTextureListener.java",
       "../android/java/src/org/chromium/ui/gl/SurfaceTexturePlatformWrapper.java",
diff --git a/ui/gl/gl_bindings.h b/ui/gl/gl_bindings.h
index 595a31f..0d25bbe 100644
--- a/ui/gl/gl_bindings.h
+++ b/ui/gl/gl_bindings.h
@@ -272,6 +272,14 @@
 #define GL_CONTEXT_LOST_KHR               0x0507
 #endif /* GL_KHR_robustness */
 
+#ifndef GL_EXT_texture_rg
+#define GL_EXT_texture_rg 1
+#define GL_RED_EXT 0x1903
+#define GL_RG_EXT 0x8227
+#define GL_R8_EXT 0x8229
+#define GL_RG8_EXT 0x822B
+#endif /* GL_EXT_texture_rg */
+
 #define GL_GLEXT_PROTOTYPES 1
 
 #if defined(OS_WIN)
diff --git a/ui/gl/gl_context.cc b/ui/gl/gl_context.cc
index 533b7d3..e358069 100644
--- a/ui/gl/gl_context.cc
+++ b/ui/gl/gl_context.cc
@@ -82,6 +82,10 @@
 void GLContext::SetSafeToForceGpuSwitch() {
 }
 
+bool GLContext::ForceGpuSwitchIfNeeded() {
+  return true;
+}
+
 void GLContext::SetUnbindFboOnMakeCurrent() {
   NOTIMPLEMENTED();
 }
@@ -199,6 +203,8 @@
 bool GLContext::MakeVirtuallyCurrent(
     GLContext* virtual_context, GLSurface* surface) {
   DCHECK(virtual_gl_api_);
+  if (!ForceGpuSwitchIfNeeded())
+    return false;
   return virtual_gl_api_->MakeCurrent(virtual_context, surface);
 }
 
diff --git a/ui/gl/gl_context.h b/ui/gl/gl_context.h
index 372f513..cdebd68 100644
--- a/ui/gl/gl_context.h
+++ b/ui/gl/gl_context.h
@@ -90,6 +90,10 @@
   // transitioning can cause corruption and hangs (OS X only).
   virtual void SetSafeToForceGpuSwitch();
 
+  // Attempt to force the context to move to the GPU of its sharegroup. Return
+  // false only in the event of an unexpected error on the context.
+  virtual bool ForceGpuSwitchIfNeeded();
+
   // Indicate that the real context switches should unbind the FBO first
   // (For an Android work-around only).
   virtual void SetUnbindFboOnMakeCurrent();
diff --git a/ui/gl/gl_context_cgl.cc b/ui/gl/gl_context_cgl.cc
index 10f854a..277780a 100644
--- a/ui/gl/gl_context_cgl.cc
+++ b/ui/gl/gl_context_cgl.cc
@@ -136,7 +136,7 @@
   }
 }
 
-bool GLContextCGL::MakeCurrent(GLSurface* surface) {
+bool GLContextCGL::ForceGpuSwitchIfNeeded() {
   DCHECK(context_);
 
   // The call to CGLSetVirtualScreen can hang on some AMD drivers
@@ -174,6 +174,14 @@
       renderer_id_ = renderer_id;
     }
   }
+  return true;
+}
+
+bool GLContextCGL::MakeCurrent(GLSurface* surface) {
+  DCHECK(context_);
+
+  if (!ForceGpuSwitchIfNeeded())
+    return false;
 
   if (IsCurrent(surface))
     return true;
diff --git a/ui/gl/gl_context_cgl.h b/ui/gl/gl_context_cgl.h
index beeb9f9..456ea08 100644
--- a/ui/gl/gl_context_cgl.h
+++ b/ui/gl/gl_context_cgl.h
@@ -29,6 +29,7 @@
   void SetSwapInterval(int interval) override;
   bool GetTotalGpuMemory(size_t* bytes) override;
   void SetSafeToForceGpuSwitch() override;
+  bool ForceGpuSwitchIfNeeded() override;
 
  protected:
   ~GLContextCGL() override;
diff --git a/url/BUILD.gn b/url/BUILD.gn
index ec15c43..feece8d 100644
--- a/url/BUILD.gn
+++ b/url/BUILD.gn
@@ -117,6 +117,7 @@
 
     deps = [
       ":url",
+      "//base",
       "//base/test:run_all_unittests",
       "//testing/gtest",
       "//third_party/icu:icuuc",
diff --git a/url/gurl.cc b/url/gurl.cc
index b7374b1..b580125 100644
--- a/url/gurl.cc
+++ b/url/gurl.cc
@@ -322,8 +322,10 @@
 }
 
 GURL GURL::GetAsReferrer() const {
-  if (!is_valid_ ||
-      (!has_ref() && !has_username() && !has_password()))
+  if (!is_valid_ || !SchemeIsHTTPOrHTTPS())
+    return GURL();
+
+  if (!has_ref() && !has_username() && !has_password())
     return GURL(*this);
 
   url::Replacements<char> replacements;
diff --git a/url/gurl.h b/url/gurl.h
index 1d388cd..f370934 100644
--- a/url/gurl.h
+++ b/url/gurl.h
@@ -198,7 +198,8 @@
 
   // A helper function to return a GURL stripped from the elements that are not
   // supposed to be sent as HTTP referrer: username, password and ref fragment.
-  // For invalid URLs the original URL will be returned.
+  // For invalid URLs or URLs that no valid referrers, an empty URL will be
+  // returned.
   GURL GetAsReferrer() const;
 
   // Returns true if the scheme for the current URL is a known "standard"
diff --git a/url/gurl_unittest.cc b/url/gurl_unittest.cc
index 3e94550..a699189 100644
--- a/url/gurl_unittest.cc
+++ b/url/gurl_unittest.cc
@@ -343,6 +343,10 @@
     {"http://:pass@www.google.com", "http://www.google.com/"},
     {"http://:@www.google.com", "http://www.google.com/"},
     {"http://www.google.com/temp/foo?q#b", "http://www.google.com/temp/foo?q"},
+    {"not a url", ""},
+    {"unknown-scheme://foo.html", ""},
+    {"file:///tmp/test.html", ""},
+    {"https://www.google.com", "https://www.google.com/"},
   };
   for (size_t i = 0; i < arraysize(cases); i++) {
     GURL url(cases[i].input);
diff --git a/url/origin.cc b/url/origin.cc
index eb2cf14..8aaa173 100644
--- a/url/origin.cc
+++ b/url/origin.cc
@@ -13,7 +13,7 @@
 Origin::Origin(const std::string& origin) : string_(origin) {
   DCHECK(origin == "null" || MatchPattern(origin, "?*://?*"));
   DCHECK_GT(origin.size(), 0u);
-  DCHECK_NE(origin[origin.size() - 1], '/');
+  DCHECK(origin == "file://" || origin[origin.size() - 1] != '/');
 }
 
 }  // namespace url
diff --git a/url/origin_unittest.cc b/url/origin_unittest.cc
index d08342e..c094ee6 100644
--- a/url/origin_unittest.cc
+++ b/url/origin_unittest.cc
@@ -26,6 +26,11 @@
   EXPECT_EQ("http://example.com:8080", origin.string());
 }
 
+TEST(OriginTest, constructValidFileOrigin) {
+  Origin origin("file://");
+  EXPECT_EQ("file://", origin.string());
+}
+
 TEST(OriginTest, constructValidOriginWithoutPort) {
   Origin origin("wss://example2.com");
   EXPECT_EQ("wss://example2.com", origin.string());
diff --git a/url/url_constants.cc b/url/url_constants.cc
index 9ef0e63..2dc1478 100644
--- a/url/url_constants.cc
+++ b/url/url_constants.cc
@@ -10,6 +10,7 @@
 
 const char kAboutScheme[] = "about";
 const char kBlobScheme[] = "blob";
+const char kContentScheme[] = "content";
 const char kDataScheme[] = "data";
 const char kFileScheme[] = "file";
 const char kFileSystemScheme[] = "filesystem";
diff --git a/url/url_constants.h b/url/url_constants.h
index 3228bbb..c48dafc 100644
--- a/url/url_constants.h
+++ b/url/url_constants.h
@@ -13,6 +13,8 @@
 
 URL_EXPORT extern const char kAboutScheme[];
 URL_EXPORT extern const char kBlobScheme[];
+// The content scheme is specific to Android for identifying a stored file.
+URL_EXPORT extern const char kContentScheme[];
 URL_EXPORT extern const char kDataScheme[];
 URL_EXPORT extern const char kFileScheme[];
 URL_EXPORT extern const char kFileSystemScheme[];
