<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>221820</bug_id>
          
          <creation_ts>2021-02-12 09:43:49 -0800</creation_ts>
          <short_desc>[GPUP] Some media tests related to canvas fail when media in GPU Process is enabled</short_desc>
          <delta_ts>2021-04-01 12:09:01 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=222461</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=222500</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=224064</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>221830</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Peng Liu">peng.liu6</reporter>
          <assigned_to name="Peng Liu">peng.liu6</assigned_to>
          <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>tommyw</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1728611</commentid>
    <comment_count>0</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-02-12 09:43:49 -0800</bug_when>
    <thetext>EVENT(canplaythrough)
 EVENT(seeked)
-Saw close enough to (194, 193, 14) at (40, 165) OK
-Saw close enough to (17, 197, 195) at (56, 165) OK
-Saw close enough to (20, 200, 18) at (73, 165) OK
+Expected (194, 193, 14) at (40, 165) but saw (0, 0, 0) FAIL
+Expected (17, 197, 195) at (56, 165) but saw (0, 0, 0) FAIL
+Expected (20, 200, 18) at (73, 165) but saw (0, 0, 0) FAIL
 EVENT(seeked)
-Saw close enough to (194, 193, 14) at (40, 165) OK
-Saw close enough to (17, 197, 195) at (56, 165) OK
-Saw close enough to (20, 200, 18) at (73, 165) OK
+Expected (194, 193, 14) at (40, 165) but saw (0, 0, 0) FAIL
+Expected (17, 197, 195) at (56, 165) but saw (0, 0, 0) FAIL
+Expected (20, 200, 18) at (73, 165) but saw (0, 0, 0) FAIL
 EVENT(seeked)
-Saw close enough to (194, 193, 14) at (40, 165) OK
-Saw close enough to (17, 197, 195) at (56, 165) OK
-Saw close enough to (20, 200, 18) at (73, 165) OK
+Expected (194, 193, 14) at (40, 165) but saw (0, 0, 0) FAIL
+Expected (17, 197, 195) at (56, 165) but saw (0, 0, 0) FAIL
+Expected (20, 200, 18) at (73, 165) but saw (0, 0, 0) FAIL
 EVENT(seeked)
-Saw close enough to (194, 193, 14) at (40, 165) OK
-Saw close enough to (17, 197, 195) at (56, 165) OK
-Saw close enough to (20, 200, 18) at (73, 165) OK
+Expected (194, 193, 14) at (40, 165) but saw (0, 0, 0) FAIL
+Expected (17, 197, 195) at (56, 165) but saw (0, 0, 0) FAIL
+Expected (20, 200, 18) at (73, 165) but saw (0, 0, 0) FAIL
 END OF TEST</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731392</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-02-19 09:44:13 -0800</bug_when>
    <thetext>&lt;rdar://problem/74525909&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733599</commentid>
    <comment_count>2</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-02-25 16:49:45 -0800</bug_when>
    <thetext>media/video-canvas-drawing-output.html [ Failure ]
media/video-canvas-createPattern.html [ Crash ]
media/video-orientation-canvas.html [ Failure ]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734019</commentid>
    <comment_count>3</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-02-26 15:18:38 -0800</bug_when>
    <thetext>The patch for bug 222461 fixes following two failures:

media/video-canvas-drawing-output.html [ Failure ]
media/video-canvas-createPattern.html [ Crash ]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736165</commentid>
    <comment_count>4</comment_count>
      <attachid>422330</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-03-04 20:35:10 -0800</bug_when>
    <thetext>Created attachment 422330
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736657</commentid>
    <comment_count>5</comment_count>
      <attachid>422330</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2021-03-05 16:45:09 -0800</bug_when>
    <thetext>Comment on attachment 422330
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=422330&amp;action=review

&gt; Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:2053
&gt; +    m_imageRotationSession = makeUnique&lt;ImageRotationSessionVT&gt;(WTFMove(finalTransform), naturalSize, kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange, ImageRotationSessionVT::IsCGImageCompatible::Yes);

You should check to make sure this is the preferred pixel format on both iOS and macOS. 

We found that at least for capture and compression, kCVPixelFormatType_420YpCbCr8BiPlanarFullRange is more efficient on iOS so we use the function `preferedPixelBufferFormat()` from RealtimeVideoUtilities.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736690</commentid>
    <comment_count>6</comment_count>
      <attachid>422330</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-03-05 17:43:14 -0800</bug_when>
    <thetext>Comment on attachment 422330
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=422330&amp;action=review

&gt;&gt; Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:2053
&gt;&gt; +    m_imageRotationSession = makeUnique&lt;ImageRotationSessionVT&gt;(WTFMove(finalTransform), naturalSize, kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange, ImageRotationSessionVT::IsCGImageCompatible::Yes);
&gt; 
&gt; You should check to make sure this is the preferred pixel format on both iOS and macOS. 
&gt; 
&gt; We found that at least for capture and compression, kCVPixelFormatType_420YpCbCr8BiPlanarFullRange is more efficient on iOS so we use the function `preferedPixelBufferFormat()` from RealtimeVideoUtilities.h

Good point!

However, in this case, the ImageRotationSessionVT&apos;s pixel format (essentially its PixelBufferPool&apos;s pixel format) needs to match the pixel buffers need to be rotated. Otherwise, the rotation will fail.

Based on some discussions with Jer, I am going to implement a mechanism to configure ImageRotationSessionVT&apos;s pixel format based on the pixel buffers from AVPlayerItemVideoOutput to ensure the rotation will always succeed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736855</commentid>
    <comment_count>7</comment_count>
      <attachid>422511</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-03-06 16:03:12 -0800</bug_when>
    <thetext>Created attachment 422511
Revise the patch based on Jer&apos;s suggestions</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736857</commentid>
    <comment_count>8</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2021-03-06 16:09:13 -0800</bug_when>
    <thetext>(In reply to Peng Liu from comment #7)
&gt; Created attachment 422511 [details]
&gt; Revise the patch based on Jer&apos;s suggestions

Thanks for Darin&apos;s review.

This patch needs another review because of some nontrivial changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1737131</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-08 09:51:36 -0800</bug_when>
    <thetext>Committed r274076: &lt;https://commits.webkit.org/r274076&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 422511.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422330</attachid>
            <date>2021-03-04 20:35:10 -0800</date>
            <delta_ts>2021-03-05 16:05:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221820-20210304203509.patch</filename>
            <type>text/plain</type>
            <size>5256</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczOTE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDFmOTFjZjdlMGE2OGMw
MDE1ZDE5ODlkODc5MzBiMGYyZGMyNjNiZC4uMDZhNThiZDg0ZTE4MTI2MGE3ZDNjMjkzZDI1MzIy
MTNjNWMzNmY2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIxLTAzLTA0ICBQZW5n
IExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVVBdIFNvbWUgbWVkaWEg
dGVzdHMgcmVsYXRlZCB0byBjYW52YXMgZmFpbCB3aGVuIG1lZGlhIGluIEdQVSBQcm9jZXNzIGlz
IGVuYWJsZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyMTgyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFdoZW4gIkdQVSBQcm9jZXNzOiBNZWRpYSIgaXMgZW5hYmxlZCBhbmQgIkdQVSBQcm9jZXNzOiBD
YW52YXMgUmVuZGVyaW5nIiBpcyBkaXNhYmxlZCwKKyAgICAgICAgYE1lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbk9iakM6Om5hdGl2ZUltYWdlRm9yQ3VycmVudFRpbWUoKWAgd2lsbCBiZSBj
YWxsZWQKKyAgICAgICAgdG8gZ2V0IG5hdGl2ZSBpbWFnZXMgKHZpZGVvIGZyYW1lcykgZnJvbSBh
IHZpZGVvIHBsYXllci4gVGhpcyBmdW5jdGlvbiB3aWxsIGNvcHkKKyAgICAgICAgcGl4ZWwgYnVm
ZmVycyBmcm9tIENvcmUgVmlkZW8sIGFuZCB3ZSBtYXkgbmVlZCB0byByb3RhdGUgdGhlIHBpeGVs
IGJ1ZmZlcnMgYmVmb3JlCisgICAgICAgIGNvbnZlcnRpbmcgdGhlbSB0byBuYXRpdmUgaW1hZ2Vz
LgorCisgICAgICAgIFRoZSBwcm9jZXNzIGlzIGltcGxlbWVudGVkIGluIGBNZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb25PYmpDOjp1cGRhdGVMYXN0UGl4ZWxCdWZmZXIoKWAuCisgICAgICAg
IEl0IHJvdGF0ZXMgcGl4ZWwgYnVmZmVycyB3aXRoIGFuIGBJbWFnZVJvdGF0aW9uU2Vzc2lvblZU
YCBvYmplY3QgKG1faW1hZ2VSb3RhdGlvblNlc3Npb24pLgorICAgICAgICBXZSBuZWVkIHRvIGlu
aXRpYWxpemUgdGhlIGBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUYCBvYmplY3Qgd2l0aCBhIHBpeGVs
IGZvcm1hdAorICAgICAgICBjb21wYXRpYmxlIHdpdGggcGl4ZWwgYnVmZmVycyBmcm9tIENvcmUg
VmlkZW8gKGBBVlBsYXllckl0ZW1WaWRlb091dHB1dGApLgorCisgICAgICAgIE5vIG5ldyB0ZXN0
cy4gRml4IGEgdGVzdCBmYWlsdXJlOgorICAgICAgICAtIG1lZGlhL3ZpZGVvLW9yaWVudGF0aW9u
LWNhbnZhcy5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24v
b2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tOgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6dXBkYXRlUm90YXRpb25T
ZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bk9iakM6Om5hdGl2ZUltYWdlRm9yQ3VycmVudFRpbWUpOgorICAgICAgICBXZSBoYXZlIHRvIHVw
ZGF0ZSB0aGUgaW1hZ2Ugc3luY2hyb25vdXNseSB0byBlbnN1cmUgdGhhdCB0aGUgY2FsbGVyIGdl
dHMgdGhlIGNvcnJlY3QgaW1hZ2UuCisKIDIwMjEtMDMtMDQgIFlvdWVubiBGYWJsZXQgIDx5b3Vl
bm5AYXBwbGUuY29tPgogCiAgICAgICAgIEluIGNhc2Ugb2YgUE9TVCBuYXZpZ2F0aW9uIHJlZGly
ZWN0ZWQgYnkgYSAzMDIsIHRoZSAnT3JpZ2luJyBoZWFkZXIgaXMga2VwdCBpbiB0aGUgcmVkaXJl
Y3RlZCByZXF1ZXN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1t
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVk
aWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbQppbmRleCA1NzYxYzA5OWIxZjE5NGZh
MWYwZDgwM2M2OTVkMDQyZmJlNDQ4M2E5Li42ZTQzOTRlMWE3ZmZhZmYwZjM2YTU2NmZiYjY5ZDky
ZWRhMzJjN2IzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0KQEAgLTIwNTAsNyArMjA1MCw3IEBA
IHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6dXBkYXRlUm90YXRpb25T
ZXNzaW9uKCkKICAgICAgICAgJiYgbV9pbWFnZVJvdGF0aW9uU2Vzc2lvbi0+c2l6ZSgpID09IG5h
dHVyYWxTaXplKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2ltYWdlUm90YXRpb25TZXNzaW9u
ID0gbWFrZVVuaXF1ZTxJbWFnZVJvdGF0aW9uU2Vzc2lvblZUPihXVEZNb3ZlKGZpbmFsVHJhbnNm
b3JtKSwgbmF0dXJhbFNpemUsIGtDVlBpeGVsRm9ybWF0VHlwZV8zMkJHUkEsIEltYWdlUm90YXRp
b25TZXNzaW9uVlQ6OklzQ0dJbWFnZUNvbXBhdGlibGU6Olllcyk7CisgICAgbV9pbWFnZVJvdGF0
aW9uU2Vzc2lvbiA9IG1ha2VVbmlxdWU8SW1hZ2VSb3RhdGlvblNlc3Npb25WVD4oV1RGTW92ZShm
aW5hbFRyYW5zZm9ybSksIG5hdHVyYWxTaXplLCBrQ1ZQaXhlbEZvcm1hdFR5cGVfNDIwWXBDYkNy
OEJpUGxhbmFyVmlkZW9SYW5nZSwgSW1hZ2VSb3RhdGlvblNlc3Npb25WVDo6SXNDR0ltYWdlQ29t
cGF0aWJsZTo6WWVzKTsKIH0KIAogdGVtcGxhdGUgPHR5cGVuYW1lIFJlZlQsIHR5cGVuYW1lIFBh
c3NSZWZUPgpAQCAtMjQwMiw3ICsyNDAyLDcgQEAgUmV0YWluUHRyPENWUGl4ZWxCdWZmZXJSZWY+
IE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnBpeGVsQnVmZmVyRm9yQ3UKIAog
UmVmUHRyPE5hdGl2ZUltYWdlPiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpu
YXRpdmVJbWFnZUZvckN1cnJlbnRUaW1lKCkKIHsKLSAgICB1cGRhdGVMYXN0SW1hZ2UoKTsKKyAg
ICB1cGRhdGVMYXN0SW1hZ2UoVXBkYXRlVHlwZTo6VXBkYXRlU3luY2hyb25vdXNseSk7CiAgICAg
cmV0dXJuIG1fbGFzdEltYWdlOwogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTQ3YjQ5N2I1ZjRmOWZmNDZmMWM5Y2Iw
ZTc0MDEyOWNlMGE2YzJjMC4uZDI1NGI3YWQxNzhmMmI4Yzg1N2IwMjc1MjVhMzM3NjRmNTNhYWZm
NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTAzLTA0ICBQZW5nIExpdSAgPHBlbmcubGl1
NkBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVVBdIFNvbWUgbWVkaWEgdGVzdHMgcmVsYXRlZCB0
byBjYW52YXMgZmFpbCB3aGVuIG1lZGlhIGluIEdQVSBQcm9jZXNzIGlzIGVuYWJsZWQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTgyMAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogbWVkaWEvdmlkZW8t
b3JpZW50YXRpb24tY2FudmFzLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vd2syL1Rlc3RFeHBl
Y3RhdGlvbnM6CisKIDIwMjEtMDMtMDQgIFBlbmcgTGl1ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4K
IAogICAgICAgICBbR1BVUF0gU29tZSBtZWRpYSB0ZXN0cyBhcmUgZmxha3kgd2hlbiBtZWRpYSBp
biBHUFUgUHJvY2VzcyBpcyBlbmFibGVkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1vcmllbnRhdGlvbi1jYW52YXMuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW9y
aWVudGF0aW9uLWNhbnZhcy5odG1sCmluZGV4IDU0ZTI4OGE4Nzk5MWE0Zjk3MGNjZDYwZWIzZGI1
OTVkYmJjM2IzMzcuLmVjNTU0OTUxMTllNGFhNjg4MTVhM2E4MTQ2YzhhNGVhMDU4NzIwMzQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW9yaWVudGF0aW9uLWNhbnZhcy5odG1s
CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW9yaWVudGF0aW9uLWNhbnZhcy5odG1sCkBA
IC02NSw3ICs2NSw2IEBACiAgICAgICAgICAgICBjb250ZXh0LmRyYXdJbWFnZSh2aWRlbzMsIDAs
IDApOwogICAgICAgICAgICAgYXJyYXlzQXJlQXBwcm94aW1hdGVseUVxdWFsKCdjb250ZXh0Lmdl
dEltYWdlRGF0YSgyMDAsIDIzNywgMSwgMSkuZGF0YScsIHJlZENvbG9yLCA1KTsKIAotCiAgICAg
ICAgICAgICBlbmRUZXN0KCk7CiAgICAgICAgIH0pOwogICAgIDwvc2NyaXB0PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBlMjVkYTQwZmMwY2Q1MWRlYjEw
OGQxMTQ5YzE3YTBhYWFjODQ4N2ZkLi4xZjM2MGQ1NzQ5ZDllNTdhYWFiM2QyMGIxYWRkYjBiOTk5
NWIxM2U2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0
aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAt
MjY2LDkgKzI2Niw2IEBAIHdlYmtpdC5vcmcvYi8yMjE4MTcgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9mZXRjaC9yYW5nZS9nZW5lcmFsLndpbmRvdy5oCiAKIHdlYmtpdC5vcmcvYi8y
MjE4MTkgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1tZWRpYWVsZW1lbnRhdWRpb3NvdXJjZW5vZGUtaW50ZXJmYWNlL21lZGlhRWxlbWVu
dEF1ZGlvU291cmNlVG9TY3JpcHRQcm9jZXNzb3JUZXN0Lmh0bWwgWyBGYWlsdXJlIF0KIAotIyB3
ZWJraXQub3JnL2IvMjIxODIwCi1tZWRpYS92aWRlby1vcmllbnRhdGlvbi1jYW52YXMuaHRtbCBb
IEZhaWx1cmUgXQotCiB3ZWJraXQub3JnL2IvMjIxNzgzIFsgRGVidWcgXSBsb2FkZXIvY2hhbmdl
LXNyYy1kdXJpbmctaWZyYW1lLWxvYWQtY3Jhc2guaHRtbCBbIFNraXAgXQogCiAjIHdlYmtpdC5v
cmcvYi8yMjAzNzUK
</data>
<flag name="review"
          id="441403"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="441445"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422511</attachid>
            <date>2021-03-06 16:03:12 -0800</date>
            <delta_ts>2021-03-08 09:51:37 -0800</delta_ts>
            <desc>Revise the patch based on Jer&apos;s suggestions</desc>
            <filename>bug-221820-20210306160311.patch</filename>
            <type>text/plain</type>
            <size>17059</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc0MDMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2E5MDI1NGY1MWI1NzYx
N2I3MTZhMDEyZjAzYjkwYTViYjc4ZmI0YS4uYTM0YzI4NzRjZjRiM2EyMGE0ZGI4Y2FmOWEzZTUz
NzhlOWE4YTlmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU5IEBACisyMDIxLTAzLTA2ICBQZW5n
IExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgW0dQVVBdIFNvbWUgbWVkaWEg
dGVzdHMgcmVsYXRlZCB0byBjYW52YXMgZmFpbCB3aGVuIG1lZGlhIGluIEdQVSBQcm9jZXNzIGlz
IGVuYWJsZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyMTgyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFdoZW4gIkdQVSBQcm9jZXNzOiBNZWRpYSIgaXMgZW5hYmxlZCBhbmQgIkdQVSBQcm9jZXNzOiBD
YW52YXMgUmVuZGVyaW5nIiBpcyBkaXNhYmxlZCwKKyAgICAgICAgYE1lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbk9iakM6Om5hdGl2ZUltYWdlRm9yQ3VycmVudFRpbWUoKWAgd2lsbCBiZSBj
YWxsZWQKKyAgICAgICAgdG8gZ2V0IG5hdGl2ZSBpbWFnZXMgKHZpZGVvIGZyYW1lcykgZnJvbSBh
IHZpZGVvIHBsYXllci4gVGhpcyBmdW5jdGlvbiB3aWxsIGNvcHkKKyAgICAgICAgcGl4ZWwgYnVm
ZmVycyBmcm9tIENvcmVWaWRlbywgYW5kIHdlIG1heSBuZWVkIHRvIHJvdGF0ZSB0aGUgcGl4ZWwg
YnVmZmVycyBiZWZvcmUKKyAgICAgICAgY29udmVydGluZyB0aGVtIHRvIG5hdGl2ZSBpbWFnZXMu
IFRoZSBwcm9jZXNzIHRvIGNvcHkgcGl4ZWwgYnVmZmVycyBmcm9tIENvcmVWaWRlbworICAgICAg
ICBhbmQgcm90YXRlIHRoZW0gaXMgaW1wbGVtZW50ZWQgaW4gYE1lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbk9iakM6OnVwZGF0ZUxhc3RQaXhlbEJ1ZmZlcigpYC4KKyAgICAgICAgSXQgcm90
YXRlcyBwaXhlbCBidWZmZXJzIHdpdGggYW4gYEltYWdlUm90YXRpb25TZXNzaW9uVlRgIG9iamVj
dCAoYG1faW1hZ2VSb3RhdGlvblNlc3Npb25gKS4KKworICAgICAgICBXaXRoIHRoZSBjdXJyZW50
IGltcGxlbWVudGF0aW9uIG9mIGBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUYCwgd2UgY2FuIHJvdGF0
ZSBwaXhlbCBidWZmZXJzCisgICAgICAgIHdpdGggZm9sbG93aW5nIHR3byBhcHByb2FjaGVzOgor
ICAgICAgICAtIENvbnN0cnVjdCBhbiB1bmluaXRpYWxpemVkIGluc3RhbmNlLCBhbmQgY2FsbCBg
SW1hZ2VSb3RhdGlvblNlc3Npb25WVDo6cm90YXRlKAorICAgICAgICBNZWRpYVNhbXBsZSYsIGNv
bnN0IFJvdGF0aW9uUHJvcGVydGllcyYsIElzQ0dJbWFnZUNvbXBhdGlibGUpYC4gVGhlIGByb3Rh
dGVgIGZ1bmN0aW9uCisgICAgICAgIHdpbGwgaW5pdGlhbGl6ZSB0aGUgb2JqZWN0IGlmIG5lZWRl
ZC4KKyAgICAgICAgLSBDb25zdHJ1Y3QgYW4gaW5zdGFuY2Ugd2l0aCBnaXZlbiByb3RhdGlvbiBw
cm9wZXJ0aWVzLCBzaXplLCBwaXhlbCBidWZmZXIgZm9ybWF0LAorICAgICAgICBhbmQgQ0dJbWFn
ZSBjb21wYXRpYmlsaXR5LCB0aGVuIGNhbGwgYEltYWdlUm90YXRpb25TZXNzaW9uVlQ6OnJvdGF0
ZShDVlBpeGVsQnVmZmVyUmVmKWAuCisgICAgICAgIFdoZW4gd2UgY2FsbCB0aGUgYHJvdGF0ZWAg
ZnVuY3Rpb24sIHdlIG5lZWQgdG8gbWFrZSBzdXJlIHRoZSBwaXhlbCBidWZmZXIncyBmb3JtYXQK
KyAgICAgICAgaXMgY29uc2lzdGVudCB3aXRoIHRoZSBgSW1hZ2VSb3RhdGlvblNlc3Npb25WVGAg
aW5zdGFuY2UuIE90aGVyd2lzZSwgdGhlIHJvdGF0aW9uIHdpbGwKKyAgICAgICAgZmFpbCBhbmQg
dGhlIGNhbGxlciB3aWxsIGdldCBhbiBlbXB0eSBwaXhlbCBidWZmZXIgKHRoaXMgYnVnKS4KKwor
ICAgICAgICBJbiBvcmRlciB0byB1c2UgdGhlIHNlY29uZCBhcHByb2FjaCBpbiBgTWVkaWFQbGF5
ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQ2AsIHdlIG5lZWQgdG8KKyAgICAgICAgZmlndXJlIG91
dCB0aGUgcGl4ZWwgYnVmZmVyIGZvcm1hdCB0byBjb25zdHJ1Y3QgYW4gSW1hZ2VSb3RhdGlvblNl
c3Npb25WVCBpbnN0YW5jZS4KKyAgICAgICAgQnV0IHRoYXQgY2FuIG9ubHkgYmUgZG9uZSBhZnRl
ciB3ZSBnZXQgYSBwaXhlbCBidWZmZXIgZnJvbSBDb3JlVmlkZW8uCisKKyAgICAgICAgVGhpcyBw
YXRjaCByZWZhY3RvcnMgYEltYWdlUm90YXRpb25TZXNzaW9uVlRgIHRvIGJldHRlciBzdXBwb3J0
IHRoZSBhZm9yZW1lbnRpb25lZAorICAgICAgICBzZWNvbmQgYXBwcm9hY2guIGBNZWRpYVBsYXll
clByaXZhdGVBVkZvdW5kYXRpb25PYmpDYCBjb25zdHJ1Y3RzIGFuIGBJbWFnZVJvdGF0aW9uU2Vz
c2lvblZUYAorICAgICAgICBpbnN0YW5jZSB3aXRob3V0IHBpeGVsIGJ1ZmZlciBmb3JtYXQsIGFu
ZCB0aGUgYEltYWdlUm90YXRpb25TZXNzaW9uVlRgIGluc3RhbmNlCisgICAgICAgIHdpbGwgZmln
dXJlIG91dCB0aGUgcGl4ZWwgYnVmZmVyIGZvcm1hdCBieSBpdHNlbGYgYW5kIGNvbmZpZ3VyZXMg
aXRzIGBDVlBpeGVsQnVmZmVyUG9vbGAKKyAgICAgICAgcHJvcGVybHkgd2hlbiB3ZSBjYWxsIGBy
b3RhdGVgIGZ1bmN0aW9uLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gRml4IGEgdGVzdCBmYWls
dXJlOgorICAgICAgICAtIG1lZGlhL3ZpZGVvLW9yaWVudGF0aW9uLWNhbnZhcy5odG1sCisKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9JbWFnZURlY29kZXJB
VkZPYmpDLm1tOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VEZWNvZGVyQVZGT2JqQzo6cmVhZFRy
YWNrTWV0YWRhdGEpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9v
YmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW06CisgICAgICAgIChXZWJD
b3JlOjpNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjp1cGRhdGVSb3RhdGlvblNl
c3Npb24pOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9u
T2JqQzo6bmF0aXZlSW1hZ2VGb3JDdXJyZW50VGltZSk6CisgICAgICAgIFdlIGhhdmUgdG8gdXBk
YXRlIHRoZSBpbWFnZSBzeW5jaHJvbm91c2x5IHRvIGVuc3VyZSB0aGF0IHRoZSBjYWxsZXIgZ2V0
cyB0aGUgY29ycmVjdCBpbWFnZS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2N2L0lt
YWdlUm90YXRpb25TZXNzaW9uVlQuaDoKKyAgICAgICAgUmVtb3ZlIGlzTWF0Y2hpbmcoKSBiZWNh
dXNlIGl0IGlzIG5vdCBkZWZpbmVkL3VzZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y3YvSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5tbToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUm90
YXRpb25TZXNzaW9uVlQ6OkltYWdlUm90YXRpb25TZXNzaW9uVlQpOgorICAgICAgICAoV2ViQ29y
ZTo6SW1hZ2VSb3RhdGlvblNlc3Npb25WVDo6aW5pdGlhbGl6ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpJbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpyb3RhdGUpOgorCisgICAgICAgICogcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lT3V0Z29pbmdWaWRlb1NvdXJjZUNvY29hLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6UmVhbHRpbWVPdXRnb2luZ1ZpZGVvU291cmNlQ29jb2E6OnJvdGF0ZVBp
eGVsQnVmZmVyKToKKwogMjAyMS0wMy0wNSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBJbmxpbmUgaXNEaXNhYmxlZEZvcm1Db250cm9sKCkgaW4gaXNEaXNhYmxl
ZE9yUmVhZE9ubHkoKSBieSBtYWtpbmcgaXQgZmluYWwgcmF0aGVyIHRoYW4gZHVwbGljYXRpbmcg
Y29kZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3Vu
ZGF0aW9uL29iamMvSW1hZ2VEZWNvZGVyQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0ltYWdlRGVjb2RlckFWRk9iakMubW0KaW5k
ZXggZjM2OWNmMGMyOWY2NjlkY2YyZmFkZjhhNWRjYTljMjgxMmJkZDE2MC4uZTk3ZDAwNGNjOTQ3
ZDZkYzFmNzUxMDFjMGU3M2IyNzUzMDNhZjQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvSW1hZ2VEZWNvZGVyQVZGT2JqQy5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2Jq
Yy9JbWFnZURlY29kZXJBVkZPYmpDLm1tCkBAIC0zOTAsNyArMzkwLDcgQEAgdm9pZCBJbWFnZURl
Y29kZXJBVkZPYmpDOjpyZWFkVHJhY2tNZXRhZGF0YSgpCiAgICAgICAgIHx8ICFtX2ltYWdlUm90
YXRpb25TZXNzaW9uLT50cmFuc2Zvcm0oKQogICAgICAgICB8fCBtX2ltYWdlUm90YXRpb25TZXNz
aW9uLT50cmFuc2Zvcm0oKS52YWx1ZSgpICE9IGZpbmFsVHJhbnNmb3JtCiAgICAgICAgIHx8IG1f
aW1hZ2VSb3RhdGlvblNlc3Npb24tPnNpemUoKSAhPSBzaXplKQotICAgICAgICBtX2ltYWdlUm90
YXRpb25TZXNzaW9uID0gbWFrZVVuaXF1ZTxJbWFnZVJvdGF0aW9uU2Vzc2lvblZUPihXVEZNb3Zl
KGZpbmFsVHJhbnNmb3JtKSwgc2l6ZSwga0NWUGl4ZWxGb3JtYXRUeXBlXzMyQkdSQSwgSW1hZ2VS
b3RhdGlvblNlc3Npb25WVDo6SXNDR0ltYWdlQ29tcGF0aWJsZTo6WWVzKTsKKyAgICAgICAgbV9p
bWFnZVJvdGF0aW9uU2Vzc2lvbiA9IG1ha2VVbmlxdWU8SW1hZ2VSb3RhdGlvblNlc3Npb25WVD4o
V1RGTW92ZShmaW5hbFRyYW5zZm9ybSksIHNpemUsIEltYWdlUm90YXRpb25TZXNzaW9uVlQ6Oklz
Q0dJbWFnZUNvbXBhdGlibGU6Olllcyk7CiAKICAgICBtX3NpemUgPSBleHBhbmRlZEludFNpemUo
bV9pbWFnZVJvdGF0aW9uU2Vzc2lvbi0+cm90YXRlZFNpemUoKSk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9u
T2JqQy5tbQppbmRleCA3MjI0MzkxMjM1MzBjYmVmY2Y2YWIwMWIxNDE2MTJlZGE4MjU4YWQyLi45
ODE5YzhlOTU1OWJhMDU2MWRiN2ViYTgxNmRmNTFhZWEwN2NlZGZjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXll
clByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bk9iakMubW0KQEAgLTIwNTAsNyArMjA1MCw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uT2JqQzo6dXBkYXRlUm90YXRpb25TZXNzaW9uKCkKICAgICAgICAgJiYgbV9pbWFn
ZVJvdGF0aW9uU2Vzc2lvbi0+c2l6ZSgpID09IG5hdHVyYWxTaXplKQogICAgICAgICByZXR1cm47
CiAKLSAgICBtX2ltYWdlUm90YXRpb25TZXNzaW9uID0gbWFrZVVuaXF1ZTxJbWFnZVJvdGF0aW9u
U2Vzc2lvblZUPihXVEZNb3ZlKGZpbmFsVHJhbnNmb3JtKSwgbmF0dXJhbFNpemUsIGtDVlBpeGVs
Rm9ybWF0VHlwZV8zMkJHUkEsIEltYWdlUm90YXRpb25TZXNzaW9uVlQ6OklzQ0dJbWFnZUNvbXBh
dGlibGU6Olllcyk7CisgICAgbV9pbWFnZVJvdGF0aW9uU2Vzc2lvbiA9IG1ha2VVbmlxdWU8SW1h
Z2VSb3RhdGlvblNlc3Npb25WVD4oV1RGTW92ZShmaW5hbFRyYW5zZm9ybSksIG5hdHVyYWxTaXpl
LCBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpJc0NHSW1hZ2VDb21wYXRpYmxlOjpZZXMpOwogfQog
CiB0ZW1wbGF0ZSA8dHlwZW5hbWUgUmVmVCwgdHlwZW5hbWUgUGFzc1JlZlQ+CkBAIC0yNDAyLDcg
KzI0MDIsNyBAQCBSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gTWVkaWFQbGF5ZXJQcml2YXRl
QVZGb3VuZGF0aW9uT2JqQzo6cGl4ZWxCdWZmZXJGb3JDdQogCiBSZWZQdHI8TmF0aXZlSW1hZ2U+
IE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6Om5hdGl2ZUltYWdlRm9yQ3VycmVu
dFRpbWUoKQogewotICAgIHVwZGF0ZUxhc3RJbWFnZSgpOworICAgIHVwZGF0ZUxhc3RJbWFnZShV
cGRhdGVUeXBlOjpVcGRhdGVTeW5jaHJvbm91c2x5KTsKICAgICByZXR1cm4gbV9sYXN0SW1hZ2U7
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2N2L0lt
YWdlUm90YXRpb25TZXNzaW9uVlQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2N2L0ltYWdlUm90YXRpb25TZXNzaW9uVlQuaAppbmRleCA0OGE0MGFjMTFhNjI1OTNjYzE1YjJm
YWRjM2VmMTgyNDI3MWM0M2U0Li4xMTU2ZDcwMmU2ODNmZDYyMDNlNWM1YmZmNTFhMjJlNWY5MjI1
OTBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFn
ZVJvdGF0aW9uU2Vzc2lvblZULmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY3YvSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5oCkBAIC01Miw4ICs1Miw4IEBAIHB1YmxpYzoK
ICAgICAgICAgWWVzLAogICAgIH07CiAKLSAgICBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUKEFmZmlu
ZVRyYW5zZm9ybSYmLCBGbG9hdFNpemUsIE9TVHlwZSwgSXNDR0ltYWdlQ29tcGF0aWJsZSk7Ci0g
ICAgSW1hZ2VSb3RhdGlvblNlc3Npb25WVChjb25zdCBSb3RhdGlvblByb3BlcnRpZXMmLCBGbG9h
dFNpemUsIE9TVHlwZSwgSXNDR0ltYWdlQ29tcGF0aWJsZSk7CisgICAgSW1hZ2VSb3RhdGlvblNl
c3Npb25WVChBZmZpbmVUcmFuc2Zvcm0mJiwgRmxvYXRTaXplLCBJc0NHSW1hZ2VDb21wYXRpYmxl
KTsKKyAgICBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUKGNvbnN0IFJvdGF0aW9uUHJvcGVydGllcyYs
IEZsb2F0U2l6ZSwgSXNDR0ltYWdlQ29tcGF0aWJsZSk7CiAgICAgSW1hZ2VSb3RhdGlvblNlc3Np
b25WVCgpID0gZGVmYXVsdDsKIAogICAgIGNvbnN0IE9wdGlvbmFsPEFmZmluZVRyYW5zZm9ybT4m
IHRyYW5zZm9ybSgpIGNvbnN0IHsgcmV0dXJuIG1fdHJhbnNmb3JtOyB9CkBAIC02NCwxNCArNjQs
MTQgQEAgcHVibGljOgogICAgIFJldGFpblB0cjxDVlBpeGVsQnVmZmVyUmVmPiByb3RhdGUoQ1ZQ
aXhlbEJ1ZmZlclJlZik7CiAgICAgV0VCQ09SRV9FWFBPUlQgUmV0YWluUHRyPENWUGl4ZWxCdWZm
ZXJSZWY+IHJvdGF0ZShNZWRpYVNhbXBsZSYsIGNvbnN0IFJvdGF0aW9uUHJvcGVydGllcyYsIElz
Q0dJbWFnZUNvbXBhdGlibGUpOwogCi0gICAgYm9vbCBpc01hdGNoaW5nKE1lZGlhU2FtcGxlJiwg
Y29uc3QgUm90YXRpb25Qcm9wZXJ0aWVzJik7Ci0KIHByaXZhdGU6Ci0gICAgdm9pZCBpbml0aWFs
aXplKGNvbnN0IFJvdGF0aW9uUHJvcGVydGllcyYsIEZsb2F0U2l6ZSwgT1NUeXBlIHBpeGVsRm9y
bWF0LCBJc0NHSW1hZ2VDb21wYXRpYmxlKTsKKyAgICB2b2lkIGluaXRpYWxpemUoY29uc3QgUm90
YXRpb25Qcm9wZXJ0aWVzJiwgRmxvYXRTaXplLCBJc0NHSW1hZ2VDb21wYXRpYmxlKTsKIAotICAg
IE9wdGlvbmFsPEFmZmluZVRyYW5zZm9ybT4gbV90cmFuc2Zvcm07CiAgICAgUm90YXRpb25Qcm9w
ZXJ0aWVzIG1fcm90YXRpb25Qcm9wZXJ0aWVzOwogICAgIEZsb2F0U2l6ZSBtX3NpemU7CisgICAg
T3B0aW9uYWw8QWZmaW5lVHJhbnNmb3JtPiBtX3RyYW5zZm9ybTsKKyAgICBPU1R5cGUgbV9waXhl
bEZvcm1hdDsKKyAgICBJc0NHSW1hZ2VDb21wYXRpYmxlIG1faXNDR0ltYWdlQ29tcGF0aWJsZTsK
ICAgICBGbG9hdFNpemUgbV9yb3RhdGVkU2l6ZTsKICAgICBSZXRhaW5QdHI8VlRJbWFnZVJvdGF0
aW9uU2Vzc2lvblJlZj4gbV9yb3RhdGlvblNlc3Npb247CiAgICAgUmV0YWluUHRyPENWUGl4ZWxC
dWZmZXJQb29sUmVmPiBtX3JvdGF0aW9uUG9vbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2N2L0ltYWdlUm90YXRpb25TZXNzaW9uVlQubW0gYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVJvdGF0aW9uU2Vzc2lvblZULm1tCmlu
ZGV4IGM2ZDRlMzUxYzIwMDE1MjJjMDFiY2NmMzk5ZmU0NmYxYTI2MWFmOTAuLjkwZjMxYzBhZDY5
YTk4ZWQ2NzYzZjg0MTFlMDllYzI2MzgyMGNmYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2N2L0ltYWdlUm90YXRpb25TZXNzaW9uVlQubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5t
bQpAQCAtNTksMjEgKzU5LDIyIEBAIHN0YXRpYyBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpSb3Rh
dGlvblByb3BlcnRpZXMgdHJhbnNmb3JtVG9Sb3RhdGlvblByb3BlcnRpZXMoCiAgICAgcmV0dXJu
IHJvdGF0aW9uOwogfQogCi1JbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpJbWFnZVJvdGF0aW9uU2Vz
c2lvblZUKEFmZmluZVRyYW5zZm9ybSYmIHRyYW5zZm9ybSwgRmxvYXRTaXplIHNpemUsIE9TVHlw
ZSBwaXhlbEZvcm1hdCwgSXNDR0ltYWdlQ29tcGF0aWJsZSBjdkltYWdlQ29tcGF0aWJpbGl0eSkK
LSAgICA6IEltYWdlUm90YXRpb25TZXNzaW9uVlQodHJhbnNmb3JtVG9Sb3RhdGlvblByb3BlcnRp
ZXModHJhbnNmb3JtKSwgc2l6ZSwgcGl4ZWxGb3JtYXQsIGN2SW1hZ2VDb21wYXRpYmlsaXR5KQor
SW1hZ2VSb3RhdGlvblNlc3Npb25WVDo6SW1hZ2VSb3RhdGlvblNlc3Npb25WVChBZmZpbmVUcmFu
c2Zvcm0mJiB0cmFuc2Zvcm0sIEZsb2F0U2l6ZSBzaXplLCBJc0NHSW1hZ2VDb21wYXRpYmxlIGlz
Q0dJbWFnZUNvbXBhdGlibGUpCisgICAgOiBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUKHRyYW5zZm9y
bVRvUm90YXRpb25Qcm9wZXJ0aWVzKHRyYW5zZm9ybSksIHNpemUsIGlzQ0dJbWFnZUNvbXBhdGli
bGUpCiB7CiAgICAgbV90cmFuc2Zvcm0gPSBXVEZNb3ZlKHRyYW5zZm9ybSk7CiB9CiAKLUltYWdl
Um90YXRpb25TZXNzaW9uVlQ6OkltYWdlUm90YXRpb25TZXNzaW9uVlQoY29uc3QgUm90YXRpb25Q
cm9wZXJ0aWVzJiByb3RhdGlvbiwgRmxvYXRTaXplIHNpemUsIE9TVHlwZSBwaXhlbEZvcm1hdCwg
SXNDR0ltYWdlQ29tcGF0aWJsZSBjdkltYWdlQ29tcGF0aWJpbGl0eSkKK0ltYWdlUm90YXRpb25T
ZXNzaW9uVlQ6OkltYWdlUm90YXRpb25TZXNzaW9uVlQoY29uc3QgUm90YXRpb25Qcm9wZXJ0aWVz
JiByb3RhdGlvbiwgRmxvYXRTaXplIHNpemUsIElzQ0dJbWFnZUNvbXBhdGlibGUgaXNDR0ltYWdl
Q29tcGF0aWJsZSkKIHsKLSAgICBpbml0aWFsaXplKHJvdGF0aW9uLCBzaXplLCBwaXhlbEZvcm1h
dCwgY3ZJbWFnZUNvbXBhdGliaWxpdHkpOworICAgIGluaXRpYWxpemUocm90YXRpb24sIHNpemUs
IGlzQ0dJbWFnZUNvbXBhdGlibGUpOwogfQogCi12b2lkIEltYWdlUm90YXRpb25TZXNzaW9uVlQ6
OmluaXRpYWxpemUoY29uc3QgUm90YXRpb25Qcm9wZXJ0aWVzJiByb3RhdGlvbiwgRmxvYXRTaXpl
IHNpemUsIE9TVHlwZSBwaXhlbEZvcm1hdCwgSXNDR0ltYWdlQ29tcGF0aWJsZSBjdkltYWdlQ29t
cGF0aWJpbGl0eSkKK3ZvaWQgSW1hZ2VSb3RhdGlvblNlc3Npb25WVDo6aW5pdGlhbGl6ZShjb25z
dCBSb3RhdGlvblByb3BlcnRpZXMmIHJvdGF0aW9uLCBGbG9hdFNpemUgc2l6ZSwgSXNDR0ltYWdl
Q29tcGF0aWJsZSBpc0NHSW1hZ2VDb21wYXRpYmxlKQogewogICAgIG1fcm90YXRpb25Qcm9wZXJ0
aWVzID0gcm90YXRpb247CiAgICAgbV9zaXplID0gc2l6ZTsKKyAgICBtX2lzQ0dJbWFnZUNvbXBh
dGlibGUgPSBpc0NHSW1hZ2VDb21wYXRpYmxlOwogCiAgICAgaWYgKG1fcm90YXRpb25Qcm9wZXJ0
aWVzLmFuZ2xlID09IDkwIHx8IG1fcm90YXRpb25Qcm9wZXJ0aWVzLmFuZ2xlID09IDI3MCkKICAg
ICAgICAgc2l6ZSA9IHNpemUudHJhbnNwb3NlZFNpemUoKTsKQEAgLTg5LDI2ICs5MCwzMyBAQCB2
b2lkIEltYWdlUm90YXRpb25TZXNzaW9uVlQ6OmluaXRpYWxpemUoY29uc3QgUm90YXRpb25Qcm9w
ZXJ0aWVzJiByb3RhdGlvbiwgRmxvYQogICAgICAgICBWVEltYWdlUm90YXRpb25TZXNzaW9uU2V0
UHJvcGVydHkobV9yb3RhdGlvblNlc3Npb24uZ2V0KCksIGtWVEltYWdlUm90YXRpb25Qcm9wZXJ0
eUtleV9GbGlwVmVydGljYWxPcmllbnRhdGlvbiwga0NGQm9vbGVhblRydWUpOwogICAgIGlmICht
X3JvdGF0aW9uUHJvcGVydGllcy5mbGlwWCkKICAgICAgICAgVlRJbWFnZVJvdGF0aW9uU2Vzc2lv
blNldFByb3BlcnR5KG1fcm90YXRpb25TZXNzaW9uLmdldCgpLCBrVlRJbWFnZVJvdGF0aW9uUHJv
cGVydHlLZXlfRmxpcEhvcml6b250YWxPcmllbnRhdGlvbiwga0NGQm9vbGVhblRydWUpOwotCi0g
ICAgYXV0byBwaXhlbEF0dHJpYnV0ZXMgPSBAewotICAgICAgICAoX19icmlkZ2UgTlNTdHJpbmcg
KilrQ1ZQaXhlbEJ1ZmZlcldpZHRoS2V5OiBAKG1fcm90YXRlZFNpemUud2lkdGgoKSksCi0gICAg
ICAgIChfX2JyaWRnZSBOU1N0cmluZyAqKWtDVlBpeGVsQnVmZmVySGVpZ2h0S2V5OiBAKG1fcm90
YXRlZFNpemUuaGVpZ2h0KCkpLAotICAgICAgICAoX19icmlkZ2UgTlNTdHJpbmcgKilrQ1ZQaXhl
bEJ1ZmZlclBpeGVsRm9ybWF0VHlwZUtleTogQChwaXhlbEZvcm1hdCksCi0gICAgICAgIChfX2Jy
aWRnZSBOU1N0cmluZyAqKWtDVlBpeGVsQnVmZmVyQ0dJbWFnZUNvbXBhdGliaWxpdHlLZXk6IChj
dkltYWdlQ29tcGF0aWJpbGl0eSA9PSBJc0NHSW1hZ2VDb21wYXRpYmxlOjpZZXMgPyBAWUVTIDog
QE5PKSwKLSNpZiBQTEFURk9STShJT1NfU0lNVUxBVE9SKSB8fCBQTEFURk9STShNQUMpCi0gICAg
ICAgIChfX2JyaWRnZSBOU1N0cmluZyAqKWtDVlBpeGVsQnVmZmVySU9TdXJmYWNlUHJvcGVydGll
c0tleSA6IEB7IH0KLSNlbmRpZgotICAgIH07Ci0gICAgQ1ZQaXhlbEJ1ZmZlclBvb2xSZWYgcmF3
UG9vbCA9IG51bGxwdHI7Ci0gICAgaWYgKGF1dG8gZXJyID0gQ1ZQaXhlbEJ1ZmZlclBvb2xDcmVh
dGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwgbnVsbHB0ciwgKF9fYnJpZGdlIENGRGljdGlvbmFyeVJl
ZilwaXhlbEF0dHJpYnV0ZXMsICZyYXdQb29sKTsgZXJyICE9IG5vRXJyKQotICAgICAgICBSRUxF
QVNFX0xPR19FUlJPUihXZWJSVEMsICJJbWFnZVJvdGF0aW9uU2Vzc2lvblZUIGZhaWxlZCBjcmVh
dGluZyBidWZmZXIgcG9vbCB3aXRoIGVycm9yICVkIiwgZXJyKTsKLSAgICBtX3JvdGF0aW9uUG9v
bCA9IGFkb3B0Q0YocmF3UG9vbCk7CiB9CiAKIFJldGFpblB0cjxDVlBpeGVsQnVmZmVyUmVmPiBJ
bWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpyb3RhdGUoQ1ZQaXhlbEJ1ZmZlclJlZiBwaXhlbEJ1ZmZl
cikKIHsKLSAgICBSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gcmVzdWx0OworICAgIGF1dG8g
cGl4ZWxGb3JtYXQgPSBDVlBpeGVsQnVmZmVyR2V0UGl4ZWxGb3JtYXRUeXBlKHBpeGVsQnVmZmVy
KTsKKyAgICBpZiAocGl4ZWxGb3JtYXQgIT0gbV9waXhlbEZvcm1hdCB8fCAhbV9yb3RhdGlvblBv
b2wpIHsKKyAgICAgICAgbV9waXhlbEZvcm1hdCA9IHBpeGVsRm9ybWF0OworICAgICAgICBhdXRv
IHBpeGVsQXR0cmlidXRlcyA9IEB7CisgICAgICAgICAgICAoX19icmlkZ2UgTlNTdHJpbmcgKilr
Q1ZQaXhlbEJ1ZmZlcldpZHRoS2V5OiBAKG1fcm90YXRlZFNpemUud2lkdGgoKSksCisgICAgICAg
ICAgICAoX19icmlkZ2UgTlNTdHJpbmcgKilrQ1ZQaXhlbEJ1ZmZlckhlaWdodEtleTogQChtX3Jv
dGF0ZWRTaXplLmhlaWdodCgpKSwKKyAgICAgICAgICAgIChfX2JyaWRnZSBOU1N0cmluZyAqKWtD
VlBpeGVsQnVmZmVyUGl4ZWxGb3JtYXRUeXBlS2V5OiBAKG1fcGl4ZWxGb3JtYXQpLAorICAgICAg
ICAgICAgKF9fYnJpZGdlIE5TU3RyaW5nICopa0NWUGl4ZWxCdWZmZXJDR0ltYWdlQ29tcGF0aWJp
bGl0eUtleTogKG1faXNDR0ltYWdlQ29tcGF0aWJsZSA9PSBJc0NHSW1hZ2VDb21wYXRpYmxlOjpZ
ZXMgPyBAWUVTIDogQE5PKSwKKyNpZiBQTEFURk9STShJT1NfU0lNVUxBVE9SKSB8fCBQTEFURk9S
TShNQUMpCisgICAgICAgICAgICAoX19icmlkZ2UgTlNTdHJpbmcgKilrQ1ZQaXhlbEJ1ZmZlcklP
U3VyZmFjZVByb3BlcnRpZXNLZXkgOiBAeyB9CisjZW5kaWYKKyAgICAgICAgfTsKKworICAgICAg
ICBDVlBpeGVsQnVmZmVyUG9vbFJlZiByYXdQb29sID0gbnVsbHB0cjsKKyAgICAgICAgaWYgKGF1
dG8gZXJyID0gQ1ZQaXhlbEJ1ZmZlclBvb2xDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwgbnVs
bHB0ciwgKF9fYnJpZGdlIENGRGljdGlvbmFyeVJlZilwaXhlbEF0dHJpYnV0ZXMsICZyYXdQb29s
KTsgZXJyICE9IG5vRXJyKSB7CisgICAgICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihXZWJSVEMs
ICJJbWFnZVJvdGF0aW9uU2Vzc2lvblZUIGZhaWxlZCBjcmVhdGluZyBidWZmZXIgcG9vbCB3aXRo
IGVycm9yICVkIiwgZXJyKTsKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICB9
CiAKKyAgICAgICAgbV9yb3RhdGlvblBvb2wgPSBhZG9wdENGKHJhd1Bvb2wpOworICAgIH0KKwor
ICAgIFJldGFpblB0cjxDVlBpeGVsQnVmZmVyUmVmPiByZXN1bHQ7CiAgICAgQ1ZQaXhlbEJ1ZmZl
clJlZiByYXdSb3RhdGVkQnVmZmVyID0gbnVsbHB0cjsKICAgICBhdXRvIHN0YXR1cyA9IENWUGl4
ZWxCdWZmZXJQb29sQ3JlYXRlUGl4ZWxCdWZmZXIoa0NGQWxsb2NhdG9yRGVmYXVsdCwgbV9yb3Rh
dGlvblBvb2wuZ2V0KCksICZyYXdSb3RhdGVkQnVmZmVyKTsKICAgICBpZiAoc3RhdHVzICE9IGtD
VlJldHVyblN1Y2Nlc3MpIHsKQEAgLTEyNiwxNiArMTM0LDE3IEBAIFJldGFpblB0cjxDVlBpeGVs
QnVmZmVyUmVmPiBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpyb3RhdGUoQ1ZQaXhlbEJ1ZmZlclJl
ZiBwaXhlCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotUmV0YWluUHRyPENWUGl4ZWxCdWZmZXJS
ZWY+IEltYWdlUm90YXRpb25TZXNzaW9uVlQ6OnJvdGF0ZShNZWRpYVNhbXBsZSYgc2FtcGxlLCBj
b25zdCBSb3RhdGlvblByb3BlcnRpZXMmIHJvdGF0aW9uLCBJc0NHSW1hZ2VDb21wYXRpYmxlIGN2
SW1hZ2VDb21wYXRpYmlsaXR5KQorUmV0YWluUHRyPENWUGl4ZWxCdWZmZXJSZWY+IEltYWdlUm90
YXRpb25TZXNzaW9uVlQ6OnJvdGF0ZShNZWRpYVNhbXBsZSYgc2FtcGxlLCBjb25zdCBSb3RhdGlv
blByb3BlcnRpZXMmIHJvdGF0aW9uLCBJc0NHSW1hZ2VDb21wYXRpYmxlIGNnSW1hZ2VDb21wYXRp
YmxlKQogewogICAgIGF1dG8gcGl4ZWxCdWZmZXIgPSBzdGF0aWNfY2FzdDxDVlBpeGVsQnVmZmVy
UmVmPihQQUw6OkNNU2FtcGxlQnVmZmVyR2V0SW1hZ2VCdWZmZXIoc2FtcGxlLnBsYXRmb3JtU2Ft
cGxlKCkuc2FtcGxlLmNtU2FtcGxlQnVmZmVyKSk7CiAgICAgQVNTRVJUKHBpeGVsQnVmZmVyKTsK
ICAgICBpZiAoIXBpeGVsQnVmZmVyKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAorICAgIG1f
cGl4ZWxGb3JtYXQgPSBDVlBpeGVsQnVmZmVyR2V0UGl4ZWxGb3JtYXRUeXBlKHBpeGVsQnVmZmVy
KTsKICAgICBJbnRTaXplIHNpemUgeyAoaW50KUNWUGl4ZWxCdWZmZXJHZXRXaWR0aChwaXhlbEJ1
ZmZlciksIChpbnQpQ1ZQaXhlbEJ1ZmZlckdldEhlaWdodChwaXhlbEJ1ZmZlcikgfTsKICAgICBp
ZiAocm90YXRpb24gIT0gbV9yb3RhdGlvblByb3BlcnRpZXMgfHwgbV9zaXplICE9IHNpemUpCi0g
ICAgICAgIGluaXRpYWxpemUocm90YXRpb24sIHNpemUsIENWUGl4ZWxCdWZmZXJHZXRQaXhlbEZv
cm1hdFR5cGUocGl4ZWxCdWZmZXIpLCBjdkltYWdlQ29tcGF0aWJpbGl0eSk7CisgICAgICAgIGlu
aXRpYWxpemUocm90YXRpb24sIHNpemUsIGNnSW1hZ2VDb21wYXRpYmxlKTsKIAogICAgIHJldHVy
biByb3RhdGUocGl4ZWxCdWZmZXIpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lT3V0Z29pbmdWaWRlb1NvdXJjZUNvY29hLm1t
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lT3V0Z29p
bmdWaWRlb1NvdXJjZUNvY29hLm1tCmluZGV4IDM4OGQ3MWUyNGIyNWViZjZkNzc4ODE0ZmRkMGE5
NjYzYjE3MDU0NmMuLjBmNTlhYTI3ZDJjOWRkMGUzODE5OGE1NDBiM2ZmYzRkZTkyOTIxYjggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGlt
ZU91dGdvaW5nVmlkZW9Tb3VyY2VDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVPdXRnb2luZ1ZpZGVvU291cmNlQ29jb2EubW0KQEAg
LTc1LDcgKzc1LDcgQEAgUmV0YWluUHRyPENWUGl4ZWxCdWZmZXJSZWY+IFJlYWx0aW1lT3V0Z29p
bmdWaWRlb1NvdXJjZUNvY29hOjpyb3RhdGVQaXhlbEJ1ZmZlcigKICAgICAgICAgSW50U2l6ZSBz
aXplID0geyAoaW50KUNWUGl4ZWxCdWZmZXJHZXRXaWR0aChwaXhlbEJ1ZmZlcikgLCAoaW50KUNW
UGl4ZWxCdWZmZXJHZXRIZWlnaHQocGl4ZWxCdWZmZXIpIH07CiAgICAgICAgIEFmZmluZVRyYW5z
Zm9ybSB0cmFuc2Zvcm07CiAgICAgICAgIHRyYW5zZm9ybS5yb3RhdGUocm90YXRpb25Ub0FuZ2xl
KHJvdGF0aW9uKSk7Ci0gICAgICAgIG1fcm90YXRpb25TZXNzaW9uID0gbWFrZVVuaXF1ZTxJbWFn
ZVJvdGF0aW9uU2Vzc2lvblZUPihXVEZNb3ZlKHRyYW5zZm9ybSksIHNpemUsIENWUGl4ZWxCdWZm
ZXJHZXRQaXhlbEZvcm1hdFR5cGUocGl4ZWxCdWZmZXIpLCBJbWFnZVJvdGF0aW9uU2Vzc2lvblZU
OjpJc0NHSW1hZ2VDb21wYXRpYmxlOjpObyk7CisgICAgICAgIG1fcm90YXRpb25TZXNzaW9uID0g
bWFrZVVuaXF1ZTxJbWFnZVJvdGF0aW9uU2Vzc2lvblZUPihXVEZNb3ZlKHRyYW5zZm9ybSksIHNp
emUsIEltYWdlUm90YXRpb25TZXNzaW9uVlQ6OklzQ0dJbWFnZUNvbXBhdGlibGU6Ok5vKTsKICAg
ICB9CiAKICAgICByZXR1cm4gbV9yb3RhdGlvblNlc3Npb24tPnJvdGF0ZShwaXhlbEJ1ZmZlcik7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggNDAxNWVmMjg0NTgxMzc4ZTNhOTBkZDg4M2ZjYTNjZmMwZmZhMWVkMi4uYmY0YWZk
NTg1MTMzNDQxNjZkZjlkNTBiMDk4MzlmMTYxMDUwYmE0NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBA
CisyMDIxLTAzLTA2ICBQZW5nIExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAg
W0dQVVBdIFNvbWUgbWVkaWEgdGVzdHMgcmVsYXRlZCB0byBjYW52YXMgZmFpbCB3aGVuIG1lZGlh
IGluIEdQVSBQcm9jZXNzIGlzIGVuYWJsZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMTgyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogbWVkaWEvdmlkZW8tb3JpZW50YXRpb24tY2FudmFzLmh0bWw6
CisgICAgICAgICogcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMjEtMDMtMDUg
IFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIGxlYWsgdGVz
dHMgZm9yIFJhbmdlIGFuZCBTdGF0aWNSYW5nZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVk
aWEvdmlkZW8tb3JpZW50YXRpb24tY2FudmFzLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1vcmllbnRhdGlvbi1jYW52YXMuaHRtbAppbmRleCA1NGUyODhhODc5OTFhNGY5NzBjY2Q2MGVi
M2RiNTk1ZGJiYzNiMzM3Li5lYzU1NDk1MTE5ZTRhYTY4ODE1YTNhODE0NmM4YTRlYTA1ODcyMDM0
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1vcmllbnRhdGlvbi1jYW52YXMu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1vcmllbnRhdGlvbi1jYW52YXMuaHRt
bApAQCAtNjUsNyArNjUsNiBAQAogICAgICAgICAgICAgY29udGV4dC5kcmF3SW1hZ2UodmlkZW8z
LCAwLCAwKTsKICAgICAgICAgICAgIGFycmF5c0FyZUFwcHJveGltYXRlbHlFcXVhbCgnY29udGV4
dC5nZXRJbWFnZURhdGEoMjAwLCAyMzcsIDEsIDEpLmRhdGEnLCByZWRDb2xvciwgNSk7CiAKLQog
ICAgICAgICAgICAgZW5kVGVzdCgpOwogICAgICAgICB9KTsKICAgICA8L3NjcmlwdD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMTRhMGFkOTMwMzc1MGM1
N2YwZTlmMDI1YTA4MDdhZWJkYTNiN2YyYS4uNzRlMWRiZWUyYzYxM2VkMzRkNGUwNmUzNjI5MTQ5
MmRkMjBlNDljOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBl
Y3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMK
QEAgLTI1Nyw5ICsyNTcsNiBAQCB3ZWJraXQub3JnL2IvMjIxODE3IGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvZmV0Y2gvcmFuZ2UvZ2VuZXJhbC53aW5kb3cuaAogCiB3ZWJraXQub3Jn
L2IvMjIxODE5IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtbWVkaWFlbGVtZW50YXVkaW9zb3VyY2Vub2RlLWludGVyZmFjZS9tZWRpYUVs
ZW1lbnRBdWRpb1NvdXJjZVRvU2NyaXB0UHJvY2Vzc29yVGVzdC5odG1sIFsgRmFpbHVyZSBdCiAK
LSMgd2Via2l0Lm9yZy9iLzIyMTgyMAotbWVkaWEvdmlkZW8tb3JpZW50YXRpb24tY2FudmFzLmh0
bWwgWyBGYWlsdXJlIF0KLQogd2Via2l0Lm9yZy9iLzIyMTc4MyBbIERlYnVnIF0gbG9hZGVyL2No
YW5nZS1zcmMtZHVyaW5nLWlmcmFtZS1sb2FkLWNyYXNoLmh0bWwgWyBTa2lwIF0KIAogIyB3ZWJr
aXQub3JnL2IvMjIwMzc1Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>