    ]
  }
 +}
-diff --git a/third_party/WebKit/LayoutTests/canvas/philip/tests/2d.pattern.image.string-expected.txt b/third_party/WebKit/LayoutTests/canvas/philip/tests/2d.pattern.image.string-expected.txt
-index 179897237ccc0d6c7f7f33b4b2640c1661d3af74..0b1ad080a18c9986729844703a6e7d1fbf94c27b 100644
---- a/third_party/WebKit/LayoutTests/canvas/philip/tests/2d.pattern.image.string-expected.txt
-+++ b/third_party/WebKit/LayoutTests/canvas/philip/tests/2d.pattern.image.string-expected.txt
-@@ -1 +1 @@
--Failed assertion: expected exception of type TYPE_MISMATCH_ERR, got: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'
-+Failed assertion: expected exception of type TYPE_MISMATCH_ERR, got: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'
-diff --git a/third_party/WebKit/LayoutTests/canvas/philip/tests/2d.pattern.image.undefined-expected.txt b/third_party/WebKit/LayoutTests/canvas/philip/tests/2d.pattern.image.undefined-expected.txt
-index 179897237ccc0d6c7f7f33b4b2640c1661d3af74..0b1ad080a18c9986729844703a6e7d1fbf94c27b 100644
---- a/third_party/WebKit/LayoutTests/canvas/philip/tests/2d.pattern.image.undefined-expected.txt
-+++ b/third_party/WebKit/LayoutTests/canvas/philip/tests/2d.pattern.image.undefined-expected.txt
-@@ -1 +1 @@
--Failed assertion: expected exception of type TYPE_MISMATCH_ERR, got: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'
-+Failed assertion: expected exception of type TYPE_MISMATCH_ERR, got: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'
-diff --git a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-drawImage-expected.html b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-drawImage-expected.html
-index 89e26a06369ee074fca1a55544e1fa11cfb691e6..c09dbc71b4025e5e29b4e56caa43819a6503bbd6 100644
---- a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-drawImage-expected.html
-+++ b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-drawImage-expected.html
-@@ -13,6 +13,8 @@
- <canvas id="videoOutput" width="150" height="150"></canvas>
- <canvas id="imageOutput" width="150" height="150"></canvas>
- <canvas id="canvasOutput" width="150" height="150"></canvas>
-+<canvas id="offscreenCanvas2DOutput" width="150" height="150"></canvas>
-+<canvas id="offscreenCanvasWebGLOutput" width="150" height="150"></canvas>
- 
- <script>
- function drawImageSourceToHTMLCanvas(imageSource, outputCanvas) { 
-@@ -55,6 +57,17 @@ htmlCanvasCtx.fillStyle = "red";
- htmlCanvasCtx.fillRect(15, 0, 30, 30);
- drawImageSourceToHTMLCanvas(htmlCanvas, document.getElementById('canvasOutput'));
- 
-+// Assume html and offscreen canvases should yield identical results
-+drawImageSourceToHTMLCanvas(htmlCanvas, document.getElementById('offscreenCanvas2DOutput'));
-+
-+// Image source as OffscreenCanvas with webGL context
-+var glCanvas = document.createElement('canvas');
-+glCanvas.width = glCanvas.height = 30;
-+var gl = glCanvas.getContext("webgl");
-+gl.clearColor(0.0, 0.0, 1.0, 1.0);
-+gl.clear(gl.COLOR_BUFFER_BIT);
-+drawImageSourceToHTMLCanvas(glCanvas, document.getElementById('offscreenCanvasWebGLOutput'));
-+
- </script>
- </body>
- 
-diff --git a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-drawImage.html b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-drawImage.html
-index f4e1a1c045cc5a37ba8f76297e20a1b45be89635..f62058299c1f9552715021ea2ec66df53c758ad3 100644
---- a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-drawImage.html
-+++ b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-drawImage.html
-@@ -13,6 +13,8 @@
- <canvas id="videoOutput" width="150" height="150"></canvas>
- <canvas id="imageOutput" width="150" height="150"></canvas>
- <canvas id="canvasOutput" width="150" height="150"></canvas>
-+<canvas id="offscreenCanvas2DOutput" width="150" height="150"></canvas>
-+<canvas id="offscreenCanvasWebGLOutput" width="150" height="150"></canvas>
- 
- <script>
- function drawImageSourceToOffscreenCanvas(imageSource, outputCanvas) {
-@@ -59,6 +61,22 @@ htmlCanvasCtx.fillStyle = "red";
- htmlCanvasCtx.fillRect(15, 0, 30, 30);
- drawImageSourceToOffscreenCanvas(htmlCanvas, document.getElementById('canvasOutput'));
- 
-+// image source as OffscreenCanvas with 2D context
-+var offscreenCanvas2D = new OffscreenCanvas(30, 30);
-+var offscreenCanvas2DCtx = offscreenCanvas2D.getContext("2d");
-+offscreenCanvas2DCtx.fillStyle = "blue";
-+offscreenCanvas2DCtx.fillRect(0, 0, 15, 30);
-+offscreenCanvas2DCtx.fillStyle = "red";
-+offscreenCanvas2DCtx.fillRect(15, 0, 30, 30);
-+drawImageSourceToOffscreenCanvas(offscreenCanvas2D, document.getElementById('offscreenCanvas2DOutput'));
-+
-+// Image source as OffscreenCanvas with webGL context
-+var offscreenCanvasWebGL = new OffscreenCanvas(30, 30);
-+var gl = offscreenCanvasWebGL.getContext("webgl");
-+gl.clearColor(0.0, 0.0, 1.0, 1.0);
-+gl.clear(gl.COLOR_BUFFER_BIT);
-+drawImageSourceToOffscreenCanvas(offscreenCanvasWebGL, document.getElementById('offscreenCanvasWebGLOutput'));
-+
- </script>
- </body>
- 
-diff --git a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-pattern-in-worker.html b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-pattern-in-worker.html
-index 4d43564d11c017d397ca852d1c08e9498d6a4194..8772383b48bdefde3839e92da78a66eedec1f86f 100644
---- a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-pattern-in-worker.html
-+++ b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-pattern-in-worker.html
-@@ -4,10 +4,21 @@
- <canvas id='output' width='150' height='150'></canvas>
- <script id='myWorker' type='text/worker'>
- self.onmessage = function(e) {
-+    var patternCanvas = new OffscreenCanvas(30, 30);
-+    var patternCtx = patternCanvas.getContext('2d');        
-+    patternCtx.fillStyle = '#f00';                                                     
-+    patternCtx.fillRect(0, 0, 15, 15);                                              
-+    patternCtx.fillStyle = '#0f0';                                                     
-+    patternCtx.fillRect(15, 0, 15, 15);                                             
-+    patternCtx.fillStyle = '#00f';
-+    patternCtx.fillRect(0, 15, 15, 15);
-+    patternCtx.fillStyle = "#ff0";
-+    patternCtx.fillRect(15, 15, 15, 15);
-+
-     var aCanvas = new OffscreenCanvas(150, 150);
-     var ctx = aCanvas.getContext('2d');
-    
--    var myPattern = ctx.createPattern(e.data, 'repeat');
-+    var myPattern = ctx.createPattern(patternCanvas, 'repeat');
-     ctx.fillStyle = myPattern;
-     ctx.fillRect(0, 0, aCanvas.width, aCanvas.height);
- 
-@@ -20,32 +31,16 @@ if (window.testRunner) {
-   testRunner.waitUntilDone();
- }
- 
--var patternCanvas = document.createElement('canvas');
--patternCanvas.width = 30;
--patternCanvas.height = 30;
--var patternCtx = patternCanvas.getContext('2d');        
--patternCtx.fillStyle = '#f00';                                                     
--patternCtx.fillRect(0, 0, 15, 15);                                              
--patternCtx.fillStyle = '#0f0';                                                     
--patternCtx.fillRect(15, 0, 15, 15);                                             
--patternCtx.fillStyle = '#00f';
--patternCtx.fillRect(0, 15, 15, 15);
--patternCtx.fillStyle = "#ff0";
--patternCtx.fillRect(15, 15, 15, 15);
--createImageBitmap(patternCanvas).then(consumeImageBitmap);
--
--function consumeImageBitmap(patternImage) {
--    var blob = new Blob([document.getElementById('myWorker').textContent]);
--    var worker = new Worker(URL.createObjectURL(blob));
--    worker.addEventListener('message', msg => {
--      var outputCtx = document.getElementById('output').getContext('bitmaprenderer');
--      outputCtx.transferFromImageBitmap(msg.data);
--      if (window.testRunner) {
--        testRunner.notifyDone();
--      }
--    });
--    worker.postMessage(patternImage, [patternImage]);
--}
-+var blob = new Blob([document.getElementById('myWorker').textContent]);
-+var worker = new Worker(URL.createObjectURL(blob));
-+worker.addEventListener('message', msg => {
-+  var outputCtx = document.getElementById('output').getContext('bitmaprenderer');
-+  outputCtx.transferFromImageBitmap(msg.data);
-+  if (window.testRunner) {
-+    testRunner.notifyDone();
-+  }
-+});
-+worker.postMessage("go");
- </script>
- </body>
- 
-diff --git a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-transferable-exceptions-expected.txt b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-transferable-exceptions-expected.txt
-index cc00da90ee792cbb071c17ea7ea2257779d0a0b2..80ad9481c1503fb9bedee1d69861745ceaba17e1 100644
---- a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-transferable-exceptions-expected.txt
-+++ b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-transferable-exceptions-expected.txt
-@@ -9,6 +9,7 @@ PASS worker.postMessage({data: offscreenCanvas1}, [offscreenCanvas1]) threw exce
- PASS offscreenCanvas2.transferToImageBitmap() threw exception InvalidStateError: Failed to execute 'transferToImageBitmap' on 'OffscreenCanvas': Cannot transfer an ImageBitmap from a detached OffscreenCanvas.
- PASS worker.postMessage({data: offscreenCanvas2}, [offscreenCanvas2]) threw exception DataCloneError: Failed to execute 'postMessage' on 'Worker': An OffscreenCanvas is detached and could not be cloned..
- PASS offscreenCanvas2.getContext('2d') threw exception InvalidStateError: Failed to execute 'getContext' on 'OffscreenCanvas': OffscreenCanvas object is detached.
-+PASS ctx.drawImage(offscreenCanvas2, 0, 0) threw exception InvalidStateError: Failed to execute 'drawImage' on 'OffscreenCanvasRenderingContext2D': The image source is detached.
- PASS successfullyParsed is true
- 
- TEST COMPLETE
-diff --git a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-transferable-exceptions.html b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-transferable-exceptions.html
-index 18dc0b0a6fc17fa6804a5b67de29b92a75fe1adc..97944a2caba6c0c0cb200f9df19fc7bcb9968acc 100644
---- a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-transferable-exceptions.html
-+++ b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-transferable-exceptions.html
-@@ -26,6 +26,9 @@ shouldThrow("offscreenCanvas2.transferToImageBitmap()");
- shouldThrow("worker.postMessage({data: offscreenCanvas2}, [offscreenCanvas2])");
- shouldThrow("offscreenCanvas2.getContext('2d')");
- 
-+// using a transferred OffscreenCanvas as a source image throws.
-+shouldThrow("ctx.drawImage(offscreenCanvas2, 0, 0)");
-+
- finishJSTest();
- </script>
- </body>
-diff --git a/third_party/WebKit/LayoutTests/fast/canvas/canvas-pattern-behaviour-expected.txt b/third_party/WebKit/LayoutTests/fast/canvas/canvas-pattern-behaviour-expected.txt
-index 5ed3b3144e0811e3ac33feafa355be9c21e0c97e..19ca0fc29354185166c7de720b7ebbda7c3eee50 100644
---- a/third_party/WebKit/LayoutTests/fast/canvas/canvas-pattern-behaviour-expected.txt
-+++ b/third_party/WebKit/LayoutTests/fast/canvas/canvas-pattern-behaviour-expected.txt
-@@ -12,10 +12,10 @@ PASS context.createPattern(green1x1, 'null') threw exception SyntaxError: Failed
- PASS context.createPattern(green1x1, undefined) threw exception SyntaxError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided type ('undefined') is not one of 'repeat', 'no-repeat', 'repeat-x', or 'repeat-y'..
- PASS context.createPattern(green1x1, 'undefined') threw exception SyntaxError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided type ('undefined') is not one of 'repeat', 'no-repeat', 'repeat-x', or 'repeat-y'..
- PASS context.createPattern(green1x1, {toString:function(){ return null;}}) threw exception SyntaxError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided type ('null') is not one of 'repeat', 'no-repeat', 'repeat-x', or 'repeat-y'..
--PASS context.createPattern(null, '') threw exception TypeError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'.
--PASS context.createPattern(undefined, '') threw exception TypeError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'.
--PASS context.createPattern({}, '') threw exception TypeError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'.
--PASS context.createPattern([], '') threw exception TypeError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'.
-+PASS context.createPattern(null, '') threw exception TypeError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'.
-+PASS context.createPattern(undefined, '') threw exception TypeError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'.
-+PASS context.createPattern({}, '') threw exception TypeError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'.
-+PASS context.createPattern([], '') threw exception TypeError: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'.
- PASS context.createPattern(green1x1, '') did not throw an exception
- PASS getPixel(1,1) is [0,128,0,255]
- PASS getPixel(98,1) is [0,128,0,255]
-diff --git a/third_party/WebKit/LayoutTests/fast/canvas/drawImage-with-broken-image-expected.txt b/third_party/WebKit/LayoutTests/fast/canvas/drawImage-with-broken-image-expected.txt
-index cdebf4db1cde25cfdd92512a03cbe7e7ba14bf83..d113cf592710b7e6cfe8eec1a68c0504365a61d2 100644
---- a/third_party/WebKit/LayoutTests/fast/canvas/drawImage-with-broken-image-expected.txt
-+++ b/third_party/WebKit/LayoutTests/fast/canvas/drawImage-with-broken-image-expected.txt
-@@ -3,12 +3,12 @@ This test checks behavior of Canvas::drawImage with a broken source image.
- On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
- 
- 
--PASS ctx.drawImage(null, 0, 0) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'.
--PASS ctx.drawImage(null, 0, 0, 20, 20) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'.
--PASS ctx.drawImage(null, 0, 0, 20, 20, 0, 0, 20, 20) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'.
--PASS ctx.drawImage(undefined, 0, 0) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'.
--PASS ctx.drawImage(undefined, 0, 0, 20, 20) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'.
--PASS ctx.drawImage(undefined, 0, 0, 20, 20, 0, 0, 20, 20) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'.
-+PASS ctx.drawImage(null, 0, 0) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'.
-+PASS ctx.drawImage(null, 0, 0, 20, 20) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'.
-+PASS ctx.drawImage(null, 0, 0, 20, 20, 0, 0, 20, 20) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'.
-+PASS ctx.drawImage(undefined, 0, 0) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'.
-+PASS ctx.drawImage(undefined, 0, 0, 20, 20) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'.
-+PASS ctx.drawImage(undefined, 0, 0, 20, 20, 0, 0, 20, 20) threw exception TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap or OffscreenCanvas)'.
- PASS ctx.drawImage(invalidImage, 0, 0) threw exception InvalidStateError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The HTMLImageElement provided is in the 'broken' state..
- PASS ctx.drawImage(invalidImage, 0, 0, 20, 20) threw exception InvalidStateError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The HTMLImageElement provided is in the 'broken' state..
- PASS ctx.drawImage(invalidImage, 0, 0, 20, 20, 0, 0, 20, 20) threw exception InvalidStateError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The HTMLImageElement provided is in the 'broken' state..
-diff --git a/third_party/WebKit/Source/bindings/modules/v8/generated.gni b/third_party/WebKit/Source/bindings/modules/v8/generated.gni
-index 7d2ba8db8aa8b886526a5ef1f98b7cb38e011abe..0dcfce93b172ea64ed543fbef6d09f7e41c83f28 100644
---- a/third_party/WebKit/Source/bindings/modules/v8/generated.gni
-+++ b/third_party/WebKit/Source/bindings/modules/v8/generated.gni
-@@ -123,8 +123,8 @@ bindings_modules_generated_union_type_files = [
-   "$bindings_modules_v8_output_dir/FormDataOrURLSearchParams.h",
-   "$bindings_modules_v8_output_dir/HTMLCanvasElementOrOffscreenCanvas.cpp",
-   "$bindings_modules_v8_output_dir/HTMLCanvasElementOrOffscreenCanvas.h",
--  "$bindings_modules_v8_output_dir/HTMLImageElementOrHTMLVideoElementOrHTMLCanvasElementOrImageBitmap.cpp",
--  "$bindings_modules_v8_output_dir/HTMLImageElementOrHTMLVideoElementOrHTMLCanvasElementOrImageBitmap.h",
-+  "$bindings_modules_v8_output_dir/HTMLImageElementOrHTMLVideoElementOrHTMLCanvasElementOrImageBitmapOrOffscreenCanvas.cpp",
-+  "$bindings_modules_v8_output_dir/HTMLImageElementOrHTMLVideoElementOrHTMLCanvasElementOrImageBitmapOrOffscreenCanvas.h",
-   "$bindings_modules_v8_output_dir/LongOrConstrainLongRange.cpp",
-   "$bindings_modules_v8_output_dir/LongOrConstrainLongRange.h",
-   "$bindings_modules_v8_output_dir/OffscreenCanvasRenderingContext2DOrWebGLRenderingContextOrWebGL2RenderingContext.cpp",
-diff --git a/third_party/WebKit/Source/core/animation/Keyframe.h b/third_party/WebKit/Source/core/animation/Keyframe.h
-index cafa26f71da35b072c0b737d255c3f739c01a686..1d17bcc3063e35c1a47cbd6161c2e46e5db76eab 100644
---- a/third_party/WebKit/Source/core/animation/Keyframe.h
-+++ b/third_party/WebKit/Source/core/animation/Keyframe.h
-@@ -73,7 +73,7 @@ public:
- 
-         // FIXME: Remove this once CompositorAnimations no longer depends on AnimatableValues
-         virtual bool populateAnimatableValue(CSSPropertyID, Element&, const ComputedStyle& baseStyle, const ComputedStyle* parentStyle) const { return false; }
--        virtual const PassRefPtr<AnimatableValue> getAnimatableValue() const = 0;
-+        virtual PassRefPtr<AnimatableValue> getAnimatableValue() const = 0;
- 
-         virtual bool isAnimatableValuePropertySpecificKeyframe() const { return false; }
-         virtual bool isCSSPropertySpecificKeyframe() const { return false; }
-diff --git a/third_party/WebKit/Source/core/animation/StringKeyframe.h b/third_party/WebKit/Source/core/animation/StringKeyframe.h
-index bf7beae52b59fee6a766b5901ff24b141b97b161..bcf41220321d038d9448a3f2aa90e93ea1275ffb 100644
---- a/third_party/WebKit/Source/core/animation/StringKeyframe.h
-+++ b/third_party/WebKit/Source/core/animation/StringKeyframe.h
-@@ -58,7 +58,7 @@ public:
-         const CSSValue* value() const { return m_value.get(); }
- 
-         bool populateAnimatableValue(CSSPropertyID, Element&, const ComputedStyle& baseStyle, const ComputedStyle* parentStyle) const final;
--        const PassRefPtr<AnimatableValue> getAnimatableValue() const final { return m_animatableValueCache.get(); }
-+        PassRefPtr<AnimatableValue> getAnimatableValue() const final { return m_animatableValueCache.get(); }
-         void setAnimatableValue(PassRefPtr<AnimatableValue> value) { m_animatableValueCache = value; }
- 
-         bool isNeutral() const final { return !m_value; }
-@@ -91,7 +91,7 @@ public:
- 
-         PassRefPtr<PropertySpecificKeyframe> cloneWithOffset(double offset) const final;
- 
--        const PassRefPtr<AnimatableValue> getAnimatableValue() const final { return nullptr; }
-+        PassRefPtr<AnimatableValue> getAnimatableValue() const final { return nullptr; }
- 
-         bool isNeutral() const final { return m_value.isNull(); }
-         PassRefPtr<PropertySpecificKeyframe> neutralKeyframe(double offset, PassRefPtr<TimingFunction> easing) const final;
-diff --git a/third_party/WebKit/Source/core/animation/animatable/AnimatableValueKeyframe.h b/third_party/WebKit/Source/core/animation/animatable/AnimatableValueKeyframe.h
-index bb3f5ea9506ae4a34be55e72effc1eb31a90c660..fb7d216e8c2446534a88598b8f61360cf1fd7063 100644
---- a/third_party/WebKit/Source/core/animation/animatable/AnimatableValueKeyframe.h
-+++ b/third_party/WebKit/Source/core/animation/animatable/AnimatableValueKeyframe.h
-@@ -38,7 +38,7 @@ public:
-         }
- 
-         AnimatableValue* value() const { return m_value.get(); }
--        const PassRefPtr<AnimatableValue> getAnimatableValue() const final { return m_value; }
-+        PassRefPtr<AnimatableValue> getAnimatableValue() const final { return m_value; }
- 
-         PassRefPtr<Keyframe::PropertySpecificKeyframe> neutralKeyframe(double offset, PassRefPtr<TimingFunction> easing) const final;
-         PassRefPtr<Interpolation> createInterpolation(PropertyHandle, const Keyframe::PropertySpecificKeyframe& end) const final;
-diff --git a/third_party/WebKit/Source/core/css/CSSFontFaceSourceTest.cpp b/third_party/WebKit/Source/core/css/CSSFontFaceSourceTest.cpp
-index 4a66edeac4d9cb73e3837c8a9fe66e4194ef4987..629c39602568bb70eb7cb11519c32ef17b278f0c 100644
---- a/third_party/WebKit/Source/core/css/CSSFontFaceSourceTest.cpp
-+++ b/third_party/WebKit/Source/core/css/CSSFontFaceSourceTest.cpp
-@@ -17,7 +17,7 @@ class DummyFontFaceSource : public CSSFontFaceSource {
- public:
-     PassRefPtr<SimpleFontData> createFontData(const FontDescription&) override
-     {
--        return SimpleFontData::create(FontPlatformData(fromSkSp(SkTypeface::MakeDefault()), "", 0, false, false));
-+        return SimpleFontData::create(FontPlatformData(SkTypeface::MakeDefault(), "", 0, false, false));
-     }
- 
-     DummyFontFaceSource() { }
 diff --git a/third_party/WebKit/Source/core/dom/DOMArrayBuffer.h b/third_party/WebKit/Source/core/dom/DOMArrayBuffer.h
 index e436a079e835ad465a5262249f0a402d58e25f02..872df7f2c47de00abc32a95f7564172090b75527 100644
 --- a/third_party/WebKit/Source/core/dom/DOMArrayBuffer.h

 
     BLINK_EXPORT void reset();
     BLINK_EXPORT void assign(const WebArrayBuffer&);
diff --git a/third_party/WebKit/public/web/WebSerializedScriptValue.h b/third_party/WebKit/public/web/WebSerializedScriptValue.h
index a5719d66e4b8376ce3ec884cd8aad070f9e8dee9..3fbca98cc06619d3205ba5e358e6a25763440092 100644
--- a/third_party/WebKit/public/web/WebSerializedScriptValue.h
+++ b/third_party/WebKit/public/web/WebSerializedScriptValue.h
@@ -31,8 +31,8 @@
 #ifndef WebSerializedScriptValue_h
 #define WebSerializedScriptValue_h
 
-#include "../platform/WebCommon.h"
-#include "../platform/WebPrivatePtr.h"
+#include "public/platform/WebCommon.h"
+#include "public/platform/WebPrivatePtr.h"
 
 namespace v8 {
 class Value;
@@ -76,8 +76,8 @@ public:
     BLINK_EXPORT v8::Local<v8::Value> deserialize();
 
 #if BLINK_IMPLEMENTATION
-    WebSerializedScriptValue(const WTF::PassRefPtr<SerializedScriptValue>&);
-    WebSerializedScriptValue& operator=(const WTF::PassRefPtr<SerializedScriptValue>&);
+    WebSerializedScriptValue(WTF::PassRefPtr<SerializedScriptValue>);
+    WebSerializedScriptValue& operator=(WTF::PassRefPtr<SerializedScriptValue>);
     operator WTF::PassRefPtr<SerializedScriptValue>() const;
 #endif
 
diff --git a/third_party/widevine/cdm/BUILD.gn b/third_party/widevine/cdm/BUILD.gn
index e5fdb29e858fec1137a2182c18db6304279b4c24..8a860a334c2204a890ba73de9eacc2ba8ae8bb91 100644
--- a/third_party/widevine/cdm/BUILD.gn

 void WebArrayBuffer::reset()
 {
     m_private.reset();
diff --git a/third_party/WebKit/public/web/WebArrayBuffer.h b/third_party/WebKit/public/web/WebArrayBuffer.h
index 668bbfdbe72ebe2607e67785d267d03a6434dda5..85a6c28349001aebd7538eae21213668022acd24 100644
--- a/third_party/WebKit/public/web/WebArrayBuffer.h
