<?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>198912</bug_id>
          
          <creation_ts>2019-06-17 03:27:09 -0700</creation_ts>
          <short_desc>[iOS] MediaRecorder incorrect screen orientation handling</short_desc>
          <delta_ts>2020-10-01 04:25:43 -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>WebRTC</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 12</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>https://developer.mozilla.org/en-US/docs/Web/API/MediaRecorder</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Blocker</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>85851</blocked>
    
    <blocked>216664</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Igor Ievsiukov">igor</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>boris.stodic</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>info</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>Senthil.Ramachandran</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wildenrother</cc>
    
    <cc>youennf</cc>
    
    <cc>zach</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1545224</commentid>
    <comment_count>0</comment_count>
    <who name="Igor Ievsiukov">igor</who>
    <bug_when>2019-06-17 03:27:09 -0700</bug_when>
    <thetext>When using MediaRecorder to recording a file in portrait mode, for ex. recording a video message using the frontal camera, Safari automatically switches width/height (640x480 =&gt; 480x640) but does not applies necessary transformation which results the video track to be rotated 90deg thus stretching the video making it hardly usable, please see [1].

Similar kind of distortions, upside-down video, etc. could be observed while holding the phone in any other orientation except landscape with camera on the right side.

After looking at the source code I discover recording is performed using AVAssetWriterInput[2]. According to the dev docs [3] the issue could be resolved using the &quot;transform&quot; property to rotate the image according to the current device orientation [5]. You can find an example of transformation for each screen orientation via the following link [6].

I would be glad to provide a patch, unfortunately iOS Simulator does not supports webcams nor it is possible to deploy a debug version of WebKit to an iOS device.

Please let me know if I can help with any further debugging.

Thank you very much in advance,
Igor

[1] https://www.dropbox.com/s/3kdx77bmw2mghvi/Vid%C3%A9o%2017.06.19%2011%2052%2040.mp4?dl=0
[2] https://github.com/WebKit/webkit/blob/master/Source/WebCore/platform/mediarecorder/cocoa/MediaRecorderPrivateWriterCocoa.h#L70
[3] https://developer.apple.com/library/archive/qa/qa1744/_index.html#avassetwriter
[4] https://developer.apple.com/documentation/avfoundation/avassetwriterinput/1390183-transform
[5] https://github.com/remirobert/CameraEngine/blob/master/CameraEngine/CameraEngineVideoEncoder.swift#L130
[6] https://github.com/remirobert/CameraEngine/blob/master/CameraEngine/CameraEngineVideoEncoder.swift#L83-L86</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1545235</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-06-17 05:09:10 -0700</bug_when>
    <thetext>&lt;rdar://problem/51802521&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565287</commentid>
    <comment_count>2</comment_count>
    <who name="borisstodic">boris.stodic</who>
    <bug_when>2019-08-27 01:15:08 -0700</bug_when>
    <thetext>I am facing same issue. Created new ticket with steps to reproduce bug:

https://bugs.webkit.org/show_bug.cgi?id=201137</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565297</commentid>
    <comment_count>3</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2019-08-27 01:41:39 -0700</bug_when>
    <thetext>*** Bug 201137 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690269</commentid>
    <comment_count>4</comment_count>
      <attachid>409265</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-21 02:49:18 -0700</bug_when>
    <thetext>Created attachment 409265
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690282</commentid>
    <comment_count>5</comment_count>
      <attachid>409269</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-21 04:54:21 -0700</bug_when>
    <thetext>Created attachment 409269
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690283</commentid>
    <comment_count>6</comment_count>
      <attachid>409270</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-21 05:08:12 -0700</bug_when>
    <thetext>Created attachment 409270
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690286</commentid>
    <comment_count>7</comment_count>
      <attachid>409272</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-21 05:25:40 -0700</bug_when>
    <thetext>Created attachment 409272
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690291</commentid>
    <comment_count>8</comment_count>
      <attachid>409276</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-21 06:19:23 -0700</bug_when>
    <thetext>Created attachment 409276
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690348</commentid>
    <comment_count>9</comment_count>
      <attachid>409276</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-09-21 10:48:11 -0700</bug_when>
    <thetext>Comment on attachment 409276
Patch

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

&gt; Source/WebCore/platform/mediarecorder/cocoa/MediaRecorderPrivateWriterCocoa.mm:430
&gt; +        if (sample.videoMirrored())
&gt; +            videoTransform = CGAffineTransformScale(videoTransform, -1, 1);

It would be nice to have internals API to test mirrored mode, like we have setCameraMediaStreamTrackOrientation to test rotation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690353</commentid>
    <comment_count>10</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-21 11:06:06 -0700</bug_when>
    <thetext>(In reply to Eric Carlson from comment #9)
&gt; Comment on attachment 409276 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=409276&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/mediarecorder/cocoa/MediaRecorderPrivateWriterCocoa.mm:430
&gt; &gt; +        if (sample.videoMirrored())
&gt; &gt; +            videoTransform = CGAffineTransformScale(videoTransform, -1, 1);
&gt; 
&gt; It would be nice to have internals API to test mirrored mode, like we have
&gt; setCameraMediaStreamTrackOrientation to test rotation.

I&apos;ll file a bug for that.

As you noted, I&apos;ll remove setting the transform in case of no rotation or no mirroring.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690354</commentid>
    <comment_count>11</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-21 11:06:28 -0700</bug_when>
    <thetext>no rotation and no mirroring.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690356</commentid>
    <comment_count>12</comment_count>
      <attachid>409286</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-21 11:11:39 -0700</bug_when>
    <thetext>Created attachment 409286
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690503</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-21 13:57:22 -0700</bug_when>
    <thetext>Committed r267366: &lt;https://trac.webkit.org/changeset/267366&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 409286.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1693324</commentid>
    <comment_count>14</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-30 01:07:53 -0700</bug_when>
    <thetext>Reopening since this is not properly working</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1693325</commentid>
    <comment_count>15</comment_count>
      <attachid>410099</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-09-30 01:14:00 -0700</bug_when>
    <thetext>Created attachment 410099
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1693386</commentid>
    <comment_count>16</comment_count>
      <attachid>410099</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-09-30 08:10:31 -0700</bug_when>
    <thetext>Comment on attachment 410099
Patch

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

&gt; Source/WebCore/platform/mediarecorder/cocoa/MediaRecorderPrivateWriterCocoa.mm:433
&gt; +            m_videoTransform = CGAffineTransformScale(*m_videoTransform, -1, 1);

Do we always want to flip the transform?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1693661</commentid>
    <comment_count>17</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-10-01 00:30:50 -0700</bug_when>
    <thetext>(In reply to Eric Carlson from comment #16)
&gt; Comment on attachment 410099 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=410099&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/mediarecorder/cocoa/MediaRecorderPrivateWriterCocoa.mm:433
&gt; &gt; +            m_videoTransform = CGAffineTransformScale(*m_videoTransform, -1, 1);
&gt; 
&gt; Do we always want to flip the transform?

Indeed, will fix that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1693662</commentid>
    <comment_count>18</comment_count>
      <attachid>410201</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-10-01 00:33:11 -0700</bug_when>
    <thetext>Created attachment 410201
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1693713</commentid>
    <comment_count>19</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-01 04:25:42 -0700</bug_when>
    <thetext>Committed r267828: &lt;https://trac.webkit.org/changeset/267828&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 410201.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409265</attachid>
            <date>2020-09-21 02:49:18 -0700</date>
            <delta_ts>2020-09-21 04:54:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-198912-20200921114916.patch</filename>
            <type>text/plain</type>
            <size>19032</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3MjI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGRiNzk1ODczZjVlNWFh
NGIzNjg1YzI0OTY4M2M2ZGYwZDEzMmRjNy4uYzcyYWI4ZjUwM2Q1OWI2ZTBiYjg2NGM4OGFlZDJl
OTgzNDU1MjY0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIwLTA5LTIxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29y
ZGVyIGluY29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgSnVzdCBiZWZvcmUgZW5jb2RpbmcgdGhlIHZpZGVvIHNhbXBsZSwgcm90YXRl
IGl0IGlmIG5lZWRlZC4KKyAgICAgICAgVXBkYXRlIEltYWdlUm90YXRpb25TZXNzaW9uVlQgdG8g
cGFzcyBhIENWUGl4ZWxCdWZmZXIgdG8gcm90YXRlLgorICAgICAgICBVcGRhdGUgTWVkaWFSZWNv
cmRlclByaXZhdGVXcml0ZXJDb2NvYSB0byBwYXNzIGEgTWVkaWFTYW1wbGUgZG93biB0byBoYW5k
bGUgcm90YXRpb24uCisKKyAgICAgICAgVGVzdDogaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRl
by1yb3RhdGlvbi5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVJv
dGF0aW9uU2Vzc2lvblZULmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VS
b3RhdGlvblNlc3Npb25WVC5tbToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUm90YXRpb25TZXNz
aW9uVlQ6OnJvdGF0ZSk6CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9NZWRpYVJl
Y29yZGVyUHJpdmF0ZUFWRkltcGwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFSZWNvcmRl
clByaXZhdGVBVkZJbXBsOjp2aWRlb1NhbXBsZUF2YWlsYWJsZSk6CisgICAgICAgICogcGxhdGZv
cm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmg6
CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJp
dmF0ZVdyaXRlckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFSZWNvcmRlclByaXZh
dGVXcml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9t
ZWRpYXJlY29yZGVyL2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvci5oOgorICAgICAg
ICAqIHBsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVz
c29yLm1tOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjpp
bml0Q29tcHJlc3Npb25TZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6OnJvdGF0aW9uVG9Bbmds
ZSk6CisgICAgICAgIChXZWJDb3JlOjpWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I6OnJvdGF0
ZVBpeGVsQnVmZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvU2FtcGxlQnVmZmVyQ29tcHJl
c3Nvcjo6cHJvY2Vzc1NhbXBsZUJ1ZmZlcik6CisgICAgICAgIChXZWJDb3JlOjpWaWRlb1NhbXBs
ZUJ1ZmZlckNvbXByZXNzb3I6OmFkZFNhbXBsZUJ1ZmZlcik6CisKIDIwMjAtMDktMTggIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBI
VE1MTWVkaWFFbGVtZW50LnNldFNpbmtJZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBkZjY0NTY5MmM0ZWE0YmU1NzQz
YmI5ODYxZGI3ZGI5ODE0NzUxMjM0Li4yNDNkOTVmMWEyNTdmODAwMTA1OTFmM2UyZGRhZmQ3ZmM5
ZDMxMjEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTA5LTIxICBZb3Vlbm4gRmFi
bGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29yZGVyIGlu
Y29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBHUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6UmVtb3RlTWVkaWFSZWNvcmRlcjo6dmlkZW9TYW1wbGVBdmFpbGFibGUpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9Vc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eTo6U291cmNl
UHJveHk6OnJvdGF0ZVBpeGVsQnVmZmVyKToKKwogMjAyMC0wOS0xOCAgWW91ZW5uIEZhYmxldCAg
PHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHN1cHBvcnQgZm9yIEhUTUxNZWRpYUVs
ZW1lbnQuc2V0U2lua0lkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jdi9JbWFnZVJvdGF0aW9uU2Vzc2lvblZULmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jdi9JbWFnZVJvdGF0aW9uU2Vzc2lvblZULmgKaW5kZXggNDhhNDBhYzExYTYy
NTkzY2MxNWIyZmFkYzNlZjE4MjQyNzFjNDNlNC4uOTMzYzNmYWM2ODljZDhhNjRkMmQ4YTgzODdl
NTQyYmZlYWU0NGY3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY3YvSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2N2L0ltYWdlUm90YXRpb25TZXNzaW9uVlQuaApAQCAtNjIsNyArNjIsNyBA
QCBwdWJsaWM6CiAgICAgY29uc3QgRmxvYXRTaXplJiByb3RhdGVkU2l6ZSgpIHsgcmV0dXJuIG1f
cm90YXRlZFNpemU7IH0KIAogICAgIFJldGFpblB0cjxDVlBpeGVsQnVmZmVyUmVmPiByb3RhdGUo
Q1ZQaXhlbEJ1ZmZlclJlZik7Ci0gICAgV0VCQ09SRV9FWFBPUlQgUmV0YWluUHRyPENWUGl4ZWxC
dWZmZXJSZWY+IHJvdGF0ZShNZWRpYVNhbXBsZSYsIGNvbnN0IFJvdGF0aW9uUHJvcGVydGllcyYs
IElzQ0dJbWFnZUNvbXBhdGlibGUpOworICAgIFdFQkNPUkVfRVhQT1JUIFJldGFpblB0cjxDVlBp
eGVsQnVmZmVyUmVmPiByb3RhdGUoQ1ZQaXhlbEJ1ZmZlclJlZiwgY29uc3QgUm90YXRpb25Qcm9w
ZXJ0aWVzJiwgSXNDR0ltYWdlQ29tcGF0aWJsZSk7CiAKICAgICBib29sIGlzTWF0Y2hpbmcoTWVk
aWFTYW1wbGUmLCBjb25zdCBSb3RhdGlvblByb3BlcnRpZXMmKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2N2L0ltYWdlUm90YXRpb25TZXNz
aW9uVlQubW0KaW5kZXggYzZkNGUzNTFjMjAwMTUyMmMwMWJjY2YzOTlmZTQ2ZjFhMjYxYWY5MC4u
YmY0NDQ4NWNkNTYyNzJlMTc5ZTU5YzllZmU2NTAzMzE1NjBjMmFjOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVJvdGF0aW9u
U2Vzc2lvblZULm1tCkBAIC0xMjYsOSArMTI2LDggQEAgUmV0YWluUHRyPENWUGl4ZWxCdWZmZXJS
ZWY+IEltYWdlUm90YXRpb25TZXNzaW9uVlQ6OnJvdGF0ZShDVlBpeGVsQnVmZmVyUmVmIHBpeGUK
ICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1SZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gSW1h
Z2VSb3RhdGlvblNlc3Npb25WVDo6cm90YXRlKE1lZGlhU2FtcGxlJiBzYW1wbGUsIGNvbnN0IFJv
dGF0aW9uUHJvcGVydGllcyYgcm90YXRpb24sIElzQ0dJbWFnZUNvbXBhdGlibGUgY3ZJbWFnZUNv
bXBhdGliaWxpdHkpCitSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gSW1hZ2VSb3RhdGlvblNl
c3Npb25WVDo6cm90YXRlKENWUGl4ZWxCdWZmZXJSZWYgcGl4ZWxCdWZmZXIsIGNvbnN0IFJvdGF0
aW9uUHJvcGVydGllcyYgcm90YXRpb24sIElzQ0dJbWFnZUNvbXBhdGlibGUgY3ZJbWFnZUNvbXBh
dGliaWxpdHkpCiB7Ci0gICAgYXV0byBwaXhlbEJ1ZmZlciA9IHN0YXRpY19jYXN0PENWUGl4ZWxC
dWZmZXJSZWY+KFBBTDo6Q01TYW1wbGVCdWZmZXJHZXRJbWFnZUJ1ZmZlcihzYW1wbGUucGxhdGZv
cm1TYW1wbGUoKS5zYW1wbGUuY21TYW1wbGVCdWZmZXIpKTsKICAgICBBU1NFUlQocGl4ZWxCdWZm
ZXIpOwogICAgIGlmICghcGl4ZWxCdWZmZXIpCiAgICAgICAgIHJldHVybiBudWxscHRyOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9NZWRpYVJlY29y
ZGVyUHJpdmF0ZUFWRkltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNv
cmRlci9NZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGwuY3BwCmluZGV4IDg0NGE5NjlmNTNkNGFl
Zjc5Y2QyNmJiMWJlYzQyNzk0ZmJkNGRlYWEuLjJjYWZkZDk3YjBlY2M5MGMyYmY4NTExOTk1ZWE1
ZDFkODYyMzQ4YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVj
b3JkZXIvTWVkaWFSZWNvcmRlclByaXZhdGVBVkZJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbC5jcHAK
QEAgLTcwLDcgKzcwLDcgQEAgTWVkaWFSZWNvcmRlclByaXZhdGVBVkZJbXBsOjp+TWVkaWFSZWNv
cmRlclByaXZhdGVBVkZJbXBsKCkKIAogdm9pZCBNZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGw6
OnZpZGVvU2FtcGxlQXZhaWxhYmxlKE1lZGlhU2FtcGxlJiBzYW1wbGVCdWZmZXIpCiB7Ci0gICAg
bV93cml0ZXItPmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKHNhbXBsZUJ1ZmZlci5wbGF0Zm9ybVNh
bXBsZSgpLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcik7CisgICAgbV93cml0ZXItPmFwcGVuZFZpZGVv
U2FtcGxlQnVmZmVyKHNhbXBsZUJ1ZmZlcik7CiB9CiAKIHZvaWQgTWVkaWFSZWNvcmRlclByaXZh
dGVBVkZJbXBsOjphdWRpb1NhbXBsZXNBdmFpbGFibGUoY29uc3QgV1RGOjpNZWRpYVRpbWUmIG1l
ZGlhVGltZSwgY29uc3QgUGxhdGZvcm1BdWRpb0RhdGEmIGRhdGEsIGNvbnN0IEF1ZGlvU3RyZWFt
RGVzY3JpcHRpb24mIGRlc2NyaXB0aW9uLCBzaXplX3Qgc2FtcGxlQ291bnQpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01lZGlhUmVjb3Jk
ZXJQcml2YXRlV3JpdGVyQ29jb2EuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVj
b3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oCmluZGV4IDRmMjJi
ODE1MTU4NTFjZGEyNWViOGI5OWViNDc3MzYwOGU2OTZlNmEuLmIzM2E4MGUzNGJmYjhjYjU1ZTdk
N2EwOTQ2MTJiMDgwOWQyZDBmNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNv
cmRlclByaXZhdGVXcml0ZXJDb2NvYS5oCkBAIC01Niw2ICs1Niw4IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogY2xhc3MgQXVkaW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOwogY2xhc3MgQXVkaW9T
dHJlYW1EZXNjcmlwdGlvbjsKK2NsYXNzIEltYWdlUm90YXRpb25TZXNzaW9uVlQ7CitjbGFzcyBN
ZWRpYVNhbXBsZTsKIGNsYXNzIE1lZGlhU3RyZWFtVHJhY2tQcml2YXRlOwogY2xhc3MgUGxhdGZv
cm1BdWRpb0RhdGE7CiBjbGFzcyBWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I7CkBAIC02Niw3
ICs2OCw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmUHRyPE1lZGlhUmVjb3JkZXJQcml2YXRl
V3JpdGVyPiBjcmVhdGUoYm9vbCBoYXNBdWRpbywgYm9vbCBoYXNWaWRlbywgY29uc3QgTWVkaWFS
ZWNvcmRlclByaXZhdGVPcHRpb25zJik7CiAgICAgfk1lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVy
KCk7CiAKLSAgICB2b2lkIGFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVm
KTsKKyAgICB2b2lkIGFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKE1lZGlhU2FtcGxlJik7CiAgICAg
dm9pZCBhcHBlbmRBdWRpb1NhbXBsZUJ1ZmZlcihjb25zdCBQbGF0Zm9ybUF1ZGlvRGF0YSYsIGNv
bnN0IEF1ZGlvU3RyZWFtRGVzY3JpcHRpb24mLCBjb25zdCBXVEY6Ok1lZGlhVGltZSYsIHNpemVf
dCk7CiAgICAgdm9pZCBzdG9wUmVjb3JkaW5nKCk7CiAgICAgdm9pZCBmZXRjaERhdGEoQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChSZWZQdHI8U2hhcmVkQnVmZmVyPiYmKT4mJik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01lZGlhUmVjb3Jk
ZXJQcml2YXRlV3JpdGVyQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJl
Y29yZGVyL2NvY29hL01lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EubW0KaW5kZXggNzlm
ZWVlMTgyODkxNTI4ZWNhNGE1MTQ4OTczNjY3NjZhYTg3MTkzZC4uZGM1NTI3MzE4NGQyN2NmNDE0
OWZmODYyZGYwZWMyNDQ0YTZmYzI0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFS
ZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5tbQpAQCAtNDIxLDExICs0MjEsMTEgQEAgc3RhdGlj
IGlubGluZSBSZXRhaW5QdHI8Q01TYW1wbGVCdWZmZXJSZWY+IGNvcHlTYW1wbGVCdWZmZXJXaXRo
Q3VycmVudFRpbWVTdGFtcCgKICAgICByZXR1cm4gYWRvcHRDRihuZXdCdWZmZXIpOwogfQogCi12
b2lkIE1lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyOjphcHBlbmRWaWRlb1NhbXBsZUJ1ZmZlcihD
TVNhbXBsZUJ1ZmZlclJlZiBzYW1wbGVCdWZmZXIpCit2b2lkIE1lZGlhUmVjb3JkZXJQcml2YXRl
V3JpdGVyOjphcHBlbmRWaWRlb1NhbXBsZUJ1ZmZlcihNZWRpYVNhbXBsZSYgc2FtcGxlKQogewog
ICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgbm90IHNldCB0aGUgdGltZXN0YW1wcyBpZiB0aGV5IGFy
ZSBhbHJlYWR5IHNldC4KLSAgICBpZiAoYXV0byBidWZmZXJXaXRoQ3VycmVudFRpbWUgPSBjb3B5
U2FtcGxlQnVmZmVyV2l0aEN1cnJlbnRUaW1lU3RhbXAoc2FtcGxlQnVmZmVyKSkKLSAgICAgICAg
bV92aWRlb0NvbXByZXNzb3ItPmFkZFNhbXBsZUJ1ZmZlcihidWZmZXJXaXRoQ3VycmVudFRpbWUu
Z2V0KCkpOworICAgIGlmIChhdXRvIGJ1ZmZlcldpdGhDdXJyZW50VGltZSA9IGNvcHlTYW1wbGVC
dWZmZXJXaXRoQ3VycmVudFRpbWVTdGFtcChzYW1wbGUucGxhdGZvcm1TYW1wbGUoKS5zYW1wbGUu
Y21TYW1wbGVCdWZmZXIpKQorICAgICAgICBtX3ZpZGVvQ29tcHJlc3Nvci0+YWRkU2FtcGxlQnVm
ZmVyKGJ1ZmZlcldpdGhDdXJyZW50VGltZS5nZXQoKSwgc2FtcGxlLnZpZGVvUm90YXRpb24oKSk7
CiB9CiAKIHN0YXRpYyBpbmxpbmUgUmV0YWluUHRyPENNRm9ybWF0RGVzY3JpcHRpb25SZWY+IGNy
ZWF0ZUF1ZGlvRm9ybWF0RGVzY3JpcHRpb24oY29uc3QgQXVkaW9TdHJlYW1EZXNjcmlwdGlvbiYg
ZGVzY3JpcHRpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJl
Y29yZGVyL2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvci5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNz
b3IuaAppbmRleCA5ZDE2MzUyOTRjOWRhYjlhMjk3YzBkNjk5MzQ0MjlmNjlmMDI4MTNmLi4wNGYw
NGJhMmVkZjA3YzY3NDkxMWIzYmU4MTRiMmNkYzkxMGVkOGZjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29t
cHJlc3Nvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29j
b2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLmgKQEAgLTI2LDExICsyNiwxMyBAQAogCiAj
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkgJiYgVVNFKEFWRk9VTkRBVElPTikKIAorI2luY2x1ZGUg
Ik1lZGlhU2FtcGxlLmgiCiAjaW5jbHVkZSA8Q29yZU1lZGlhL0NvcmVNZWRpYS5oPgogI2luY2x1
ZGUgPFZpZGVvVG9vbGJveC9WVEVycm9ycy5oPgogCiB0eXBlZGVmIHN0cnVjdCBvcGFxdWVDTVNh
bXBsZUJ1ZmZlciAqQ01TYW1wbGVCdWZmZXJSZWY7CiB0eXBlZGVmIHN0cnVjdCBPcGFxdWVWVENv
bXByZXNzaW9uU2Vzc2lvbiAqVlRDb21wcmVzc2lvblNlc3Npb25SZWY7Cit0eXBlZGVmIHN0cnVj
dCBfX0NWQnVmZmVyICpDVlBpeGVsQnVmZmVyUmVmOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
QEAgLTQyLDcgKzQ0LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBzZXRCaXRzUGVyU2Vjb25kKHVu
c2lnbmVkKTsKICAgICB2b2lkIGZpbmlzaCgpOwotICAgIHZvaWQgYWRkU2FtcGxlQnVmZmVyKENN
U2FtcGxlQnVmZmVyUmVmKTsKKyAgICB2b2lkIGFkZFNhbXBsZUJ1ZmZlcihDTVNhbXBsZUJ1ZmZl
clJlZiwgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb24pOwogICAgIENNU2FtcGxlQnVmZmVyUmVm
IGdldE91dHB1dFNhbXBsZUJ1ZmZlcigpOwogICAgIFJldGFpblB0cjxDTVNhbXBsZUJ1ZmZlclJl
Zj4gdGFrZU91dHB1dFNhbXBsZUJ1ZmZlcigpOwogCkBAIC01MSw4ICs1Myw5IEBAIHByaXZhdGU6
CiAKICAgICBib29sIGluaXRpYWxpemUoQ01CdWZmZXJRdWV1ZVRyaWdnZXJDYWxsYmFjaywgdm9p
ZCogY2FsbGJhY2tPYmplY3QpOwogCi0gICAgdm9pZCBwcm9jZXNzU2FtcGxlQnVmZmVyKENNU2Ft
cGxlQnVmZmVyUmVmKTsKLSAgICBib29sIGluaXRDb21wcmVzc2lvblNlc3Npb24oQ01WaWRlb0Zv
cm1hdERlc2NyaXB0aW9uUmVmKTsKKyAgICB2b2lkIHByb2Nlc3NTYW1wbGVCdWZmZXIoQ01TYW1w
bGVCdWZmZXJSZWYsIE1lZGlhU2FtcGxlOjpWaWRlb1JvdGF0aW9uKTsKKyAgICBib29sIGluaXRD
b21wcmVzc2lvblNlc3Npb24oaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKyAgICBSZXRhaW5QdHI8
Q1ZQaXhlbEJ1ZmZlclJlZj4gcm90YXRlUGl4ZWxCdWZmZXIoQ1ZQaXhlbEJ1ZmZlclJlZiwgTWVk
aWFTYW1wbGU6OlZpZGVvUm90YXRpb24pOwogCiAgICAgc3RhdGljIHZvaWQgdmlkZW9Db21wcmVz
c2lvbkNhbGxiYWNrKHZvaWQgKnJlZkNvbiwgdm9pZCosIE9TU3RhdHVzLCBWVEVuY29kZUluZm9G
bGFncywgQ01TYW1wbGVCdWZmZXJSZWYpOwogCkBAIC02Niw2ICs2OSw3IEBAIHByaXZhdGU6CiAg
ICAgZmxvYXQgbV9tYXhLZXlGcmFtZUludGVydmFsRHVyYXRpb24geyAyLjAgfTsKICAgICB1bnNp
Z25lZCBtX2V4cGVjdGVkRnJhbWVSYXRlIHsgMzAgfTsKICAgICBPcHRpb25hbDx1bnNpZ25lZD4g
bV9vdXRwdXRCaXRSYXRlOworICAgIHN0ZDo6dW5pcXVlX3B0cjxJbWFnZVJvdGF0aW9uU2Vzc2lv
blZUPiBtX3JvdGF0aW9uU2Vzc2lvbjsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVz
c29yLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRl
b1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IubW0KaW5kZXggM2FhYmE2OThkZjdmYmU0NTdiMzJiYjQy
MjNkNDFlYTJlZjExNDYwNS4uMDM4MjVmMDc4YTNhMTk0OWU5MDMwNTM5ZGNiMTRkMjE3MjhlZGI3
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2Nv
YS9WaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IubW0K
QEAgLTI3LDYgKzI3LDcgQEAKIAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pICYmIFVTRShBVkZP
VU5EQVRJT04pCiAKKyNpbXBvcnQgIkltYWdlUm90YXRpb25TZXNzaW9uVlQuaCIKICNpbXBvcnQg
IkxvZ2dpbmcuaCIKICNpbXBvcnQgPENvcmVNZWRpYS9Db3JlTWVkaWEuaD4KICNpbXBvcnQgPEZv
dW5kYXRpb24vRm91bmRhdGlvbi5oPgpAQCAtMTE1LDkgKzExNiw4IEBAIHN0YXRpYyBpbmxpbmUg
T1NTdGF0dXMgc2V0Q29tcHJlc3Npb25TZXNzaW9uUHJvcGVydHkoVlRDb21wcmVzc2lvblNlc3Np
b25SZWYgdnRTCiAgICAgcmV0dXJuIHN0YXR1czsKIH0KIAotYm9vbCBWaWRlb1NhbXBsZUJ1ZmZl
ckNvbXByZXNzb3I6OmluaXRDb21wcmVzc2lvblNlc3Npb24oQ01WaWRlb0Zvcm1hdERlc2NyaXB0
aW9uUmVmIGZvcm1hdERlc2NyaXB0aW9uKQorYm9vbCBWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNz
b3I6OmluaXRDb21wcmVzc2lvblNlc3Npb24oaW50IHdpZHRoLCBpbnQgaGVpZ2h0KQogewotICAg
IENNVmlkZW9EaW1lbnNpb25zIGRpbWVuc2lvbnMgPSBDTVZpZGVvRm9ybWF0RGVzY3JpcHRpb25H
ZXREaW1lbnNpb25zKGZvcm1hdERlc2NyaXB0aW9uKTsKICNpZiBQTEFURk9STShJT1MpCiAgICAg
TlNEaWN0aW9uYXJ5ICplbmNvZGVyU3BlY2lmaWNhdGlvbnMgPSBuaWw7CiAjZWxzZQpAQCAtMTI1
LDcgKzEyNSw3IEBAIGJvb2wgVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjppbml0Q29tcHJl
c3Npb25TZXNzaW9uKENNVmlkZW9Gb3JtYXREZXNjcmlwdGlvCiAjZW5kaWYKIAogICAgIFZUQ29t
cHJlc3Npb25TZXNzaW9uUmVmIHZ0U2Vzc2lvbjsKLSAgICBhdXRvIGVycm9yID0gVlRDb21wcmVz
c2lvblNlc3Npb25DcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwgZGltZW5zaW9ucy53aWR0aCwg
ZGltZW5zaW9ucy5oZWlnaHQsIG1fb3V0cHV0Q29kZWNUeXBlLCAoX19icmlkZ2UgQ0ZEaWN0aW9u
YXJ5UmVmKWVuY29kZXJTcGVjaWZpY2F0aW9ucywgTlVMTCwgTlVMTCwgdmlkZW9Db21wcmVzc2lv
bkNhbGxiYWNrLCB0aGlzLCAmdnRTZXNzaW9uKTsKKyAgICBhdXRvIGVycm9yID0gVlRDb21wcmVz
c2lvblNlc3Npb25DcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwgd2lkdGgsIGhlaWdodCwgbV9v
dXRwdXRDb2RlY1R5cGUsIChfX2JyaWRnZSBDRkRpY3Rpb25hcnlSZWYpZW5jb2RlclNwZWNpZmlj
YXRpb25zLCBOVUxMLCBOVUxMLCB2aWRlb0NvbXByZXNzaW9uQ2FsbGJhY2ssIHRoaXMsICZ2dFNl
c3Npb24pOwogICAgIGlmIChlcnJvcikgewogICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihNZWRp
YVN0cmVhbSwgIlZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3NvciBWVENvbXByZXNzaW9uU2Vzc2lv
bkNyZWF0ZSBmYWlsZWQgd2l0aCAlZCIsIGVycm9yKTsKICAgICAgICAgcmV0dXJuIE5POwpAQCAt
MTUwLDI3ICsxNTAsNTcgQEAgYm9vbCBWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I6OmluaXRD
b21wcmVzc2lvblNlc3Npb24oQ01WaWRlb0Zvcm1hdERlc2NyaXB0aW8KICAgICByZXR1cm4gWUVT
OwogfQogCi12b2lkIFZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvcjo6cHJvY2Vzc1NhbXBsZUJ1
ZmZlcihDTVNhbXBsZUJ1ZmZlclJlZiBidWZmZXIpCitzdGF0aWMgaW5saW5lIHVuc2lnbmVkIHJv
dGF0aW9uVG9BbmdsZShNZWRpYVNhbXBsZTo6VmlkZW9Sb3RhdGlvbiByb3RhdGlvbikKIHsKKyAg
ICBzd2l0Y2ggKHJvdGF0aW9uKSB7CisgICAgY2FzZSBNZWRpYVNhbXBsZTo6VmlkZW9Sb3RhdGlv
bjo6Tm9uZToKKyAgICAgICAgcmV0dXJuIDA7CisgICAgY2FzZSBNZWRpYVNhbXBsZTo6VmlkZW9S
b3RhdGlvbjo6VXBzaWRlRG93bjoKKyAgICAgICAgcmV0dXJuIDE4MDsKKyAgICBjYXNlIE1lZGlh
U2FtcGxlOjpWaWRlb1JvdGF0aW9uOjpSaWdodDoKKyAgICAgICAgcmV0dXJuIDkwOworICAgIGNh
c2UgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb246OkxlZnQ6CisgICAgICAgIHJldHVybiAyNzA7
CisgICAgfQorfQorCitSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gVmlkZW9TYW1wbGVCdWZm
ZXJDb21wcmVzc29yOjpyb3RhdGVQaXhlbEJ1ZmZlcihDVlBpeGVsQnVmZmVyUmVmIGJ1ZmZlciwg
TWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb24gcm90YXRpb24pCit7CisgICAgaWYgKCFtX3JvdGF0
aW9uU2Vzc2lvbikKKyAgICAgICAgbV9yb3RhdGlvblNlc3Npb24gPSBtYWtlVW5pcXVlPEltYWdl
Um90YXRpb25TZXNzaW9uVlQ+KCk7CisKKyAgICBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpSb3Rh
dGlvblByb3BlcnRpZXMgcm90YXRpb25Qcm9wZXJ0aWVzOworICAgIHJvdGF0aW9uUHJvcGVydGll
cy5hbmdsZSA9IHJvdGF0aW9uVG9BbmdsZShyb3RhdGlvbik7CisgICAgcmV0dXJuIG1fcm90YXRp
b25TZXNzaW9uLT5yb3RhdGUoYnVmZmVyLCByb3RhdGlvblByb3BlcnRpZXMsIEltYWdlUm90YXRp
b25TZXNzaW9uVlQ6OklzQ0dJbWFnZUNvbXBhdGlibGU6Ok5vKTsKK30KKwordm9pZCBWaWRlb1Nh
bXBsZUJ1ZmZlckNvbXByZXNzb3I6OnByb2Nlc3NTYW1wbGVCdWZmZXIoQ01TYW1wbGVCdWZmZXJS
ZWYgYnVmZmVyLCBNZWRpYVNhbXBsZTo6VmlkZW9Sb3RhdGlvbiByb3RhdGlvbikKK3sKKyAgICBS
ZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gcm90YXRlZFBpeGVsQnVmZmVyOworICAgIGF1dG8g
aW1hZ2VCdWZmZXIgPSBDTVNhbXBsZUJ1ZmZlckdldEltYWdlQnVmZmVyKGJ1ZmZlcik7CisgICAg
aWYgKHJvdGF0aW9uICE9IE1lZGlhU2FtcGxlOjpWaWRlb1JvdGF0aW9uOjpOb25lKSB7CisgICAg
ICAgIHJvdGF0ZWRQaXhlbEJ1ZmZlciA9IHJvdGF0ZVBpeGVsQnVmZmVyKGltYWdlQnVmZmVyLCBy
b3RhdGlvbik7CisgICAgICAgIGltYWdlQnVmZmVyID0gcm90YXRlZFBpeGVsQnVmZmVyLmdldCgp
OworICAgIH0KKwogICAgIGlmICghbV92dFNlc3Npb24pIHsKLSAgICAgICAgaWYgKCFpbml0Q29t
cHJlc3Npb25TZXNzaW9uKENNU2FtcGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3JpcHRpb24oYnVmZmVy
KSkpCisgICAgICAgIGlmICghaW5pdENvbXByZXNzaW9uU2Vzc2lvbihDVlBpeGVsQnVmZmVyR2V0
V2lkdGgoaW1hZ2VCdWZmZXIpLCBDVlBpeGVsQnVmZmVyR2V0SGVpZ2h0KGltYWdlQnVmZmVyKSkp
CiAgICAgICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgYXV0byBpbWFnZUJ1ZmZlciA9IENN
U2FtcGxlQnVmZmVyR2V0SW1hZ2VCdWZmZXIoYnVmZmVyKTsKICAgICBhdXRvIHByZXNlbnRhdGlv
blRpbWVTdGFtcCA9IENNU2FtcGxlQnVmZmVyR2V0UHJlc2VudGF0aW9uVGltZVN0YW1wKGJ1ZmZl
cik7CiAgICAgYXV0byBkdXJhdGlvbiA9IENNU2FtcGxlQnVmZmVyR2V0RHVyYXRpb24oYnVmZmVy
KTsKICAgICBhdXRvIGVycm9yID0gVlRDb21wcmVzc2lvblNlc3Npb25FbmNvZGVGcmFtZShtX3Z0
U2Vzc2lvbi5nZXQoKSwgaW1hZ2VCdWZmZXIsIHByZXNlbnRhdGlvblRpbWVTdGFtcCwgZHVyYXRp
b24sIE5VTEwsIHRoaXMsIE5VTEwpOwogICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lGKGVycm9yLCBN
ZWRpYVN0cmVhbSwgIlZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3NvciBWVENvbXByZXNzaW9uU2Vz
c2lvbkVuY29kZUZyYW1lIGZhaWxlZCB3aXRoICVkIiwgZXJyb3IpOwogfQogCi12b2lkIFZpZGVv
U2FtcGxlQnVmZmVyQ29tcHJlc3Nvcjo6YWRkU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVm
IGJ1ZmZlcikKK3ZvaWQgVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjphZGRTYW1wbGVCdWZm
ZXIoQ01TYW1wbGVCdWZmZXJSZWYgYnVmZmVyLCBNZWRpYVNhbXBsZTo6VmlkZW9Sb3RhdGlvbiBy
b3RhdGlvbikKIHsKICAgICBkaXNwYXRjaF9zeW5jKG1fc2VyaWFsRGlzcGF0Y2hRdWV1ZSwgXnsK
ICAgICAgICAgaWYgKCFtX2lzRW5jb2RpbmcpCiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAg
ICAgcHJvY2Vzc1NhbXBsZUJ1ZmZlcihidWZmZXIpOworICAgICAgICBwcm9jZXNzU2FtcGxlQnVm
ZmVyKGJ1ZmZlciwgcm90YXRpb24pOwogICAgIH0pOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3Mvd2VicnRjL1JlbW90ZU1lZGlhUmVjb3JkZXIuY3BwIGIvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLmNwcAppbmRleCA2
MDM0YzJkNWY4ZDI1OGJhZTQ1ZWE1MzVhOTU2MDQxYTc2NTc0NjFmLi4yZmRmOTczNjI3YjA2NGVh
OGVhODAyYjBjMTUzZWMyY2QyYWEwNGQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3Mvd2VicnRjL1JlbW90ZU1lZGlhUmVjb3JkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy93ZWJydGMvUmVtb3RlTWVkaWFSZWNvcmRlci5jcHAKQEAgLTExOCw3ICsxMTgs
NyBAQCB2b2lkIFJlbW90ZU1lZGlhUmVjb3JkZXI6OnZpZGVvU2FtcGxlQXZhaWxhYmxlKFdlYkNv
cmU6OlJlbW90ZVZpZGVvU2FtcGxlJiYgcmVtbwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0g
ICAgbV93cml0ZXItPmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKHNhbXBsZUJ1ZmZlci0+cGxhdGZv
cm1TYW1wbGUoKS5zYW1wbGUuY21TYW1wbGVCdWZmZXIpOworICAgIG1fd3JpdGVyLT5hcHBlbmRW
aWRlb1NhbXBsZUJ1ZmZlcigqc2FtcGxlQnVmZmVyKTsKIH0KIAogdm9pZCBSZW1vdGVNZWRpYVJl
Y29yZGVyOjpmZXRjaERhdGEoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChJUEM6OkRhdGFSZWZlcmVu
Y2UmJiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk+JiYgY29tcGxldGlvbkhhbmRsZXIpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9Vc2VyTWVkaWFDYXB0dXJlTWFu
YWdlclByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1VzZXJNZWRpYUNh
cHR1cmVNYW5hZ2VyUHJveHkuY3BwCmluZGV4IDg2NzkyYWE1NWMxZTdjYjEyNzhiYWMzOTNkODcw
NDk5YWJhNjA2MmMuLmY1NGE2ZTEwNDE5OTRkYWZhOWU3YTIyNGNlZDEyYmM0NmNmYmM1MWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1VzZXJNZWRpYUNhcHR1cmVN
YW5hZ2VyUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1VzZXJN
ZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkuY3BwCkBAIC0xOTUsNyArMTk1LDggQEAgcHJpdmF0ZToK
ICAgICAgICAgICAgIHJvdGF0aW9uLmFuZ2xlID0gMjcwOwogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIH0KLSAgICAgICAgcmV0dXJuIG1fcm90YXRpb25TZXNzaW9uLT5yb3RhdGUoc2FtcGxl
LCByb3RhdGlvbiwgSW1hZ2VSb3RhdGlvblNlc3Npb25WVDo6SXNDR0ltYWdlQ29tcGF0aWJsZTo6
Tm8pOworICAgICAgICBhdXRvIHBpeGVsQnVmZmVyID0gc3RhdGljX2Nhc3Q8Q1ZQaXhlbEJ1ZmZl
clJlZj4oUEFMOjpDTVNhbXBsZUJ1ZmZlckdldEltYWdlQnVmZmVyKHNhbXBsZS5wbGF0Zm9ybVNh
bXBsZSgpLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcikpOworICAgICAgICByZXR1cm4gbV9yb3RhdGlv
blNlc3Npb24tPnJvdGF0ZShwaXhlbEJ1ZmZlciwgcm90YXRpb24sIEltYWdlUm90YXRpb25TZXNz
aW9uVlQ6OklzQ0dJbWFnZUNvbXBhdGlibGU6Ok5vKTsKICAgICB9CiAKICAgICB2b2lkIHN0b3Jh
Z2VDaGFuZ2VkKFNoYXJlZE1lbW9yeSogc3RvcmFnZSkgZmluYWwgewpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDkwODg0YWVl
ZjBmYTBjMjBiMTBlYzA4MzdkZTQ2ODMxNzRhNDEwZGIuLmZjOWVlMWI4Mzk1YzhmZDZmYjNlMmM1
ODM5MzcxMGRiY2NiY2Y1NmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wOS0yMSAgWW91
ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gTWVkaWFSZWNv
cmRlciBpbmNvcnJlY3Qgc2NyZWVuIG9yaWVudGF0aW9uIGhhbmRsaW5nCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5MTIKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzUxODAyNTIxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlkZW8t
cm90YXRpb24uaHRtbDogQWRkZWQuCisKIDIwMjAtMDktMTggIFlvdWVubiBGYWJsZXQgIDx5b3Vl
bm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBIVE1MTWVkaWFFbGVtZW50
LnNldFNpbmtJZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRl
ci92aWRlby1yb3RhdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRp
YXJlY29yZGVyL3ZpZGVvLXJvdGF0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MGIzYzAw
YzU1ZjBmNGI5NmViNjRmZDVjOGNlZGZjNmY2NzkyYWZhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw0IEBACisKKworUEFTUyBSZWNvcmQgYSByb3RhdGVkIHZpZGVvIAorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVvLXJvdGF0
aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVvLXJvdGF0
aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uODE1OGE4NDE1NzhjYzVkNjRlYTY3ZTBhMWY4ODJkMGVhZWZk
MmNkZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3Jk
ZXIvdmlkZW8tcm90YXRpb24uaHRtbApAQCAtMCwwICsxLDQ1IEBACis8IWRvY3R5cGUgaHRtbD4K
KzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAg
ICAgIDx0aXRsZT5UZXN0aW5nIHZpZGVvIHJvdGF0aW9uIGluIG1lZGlhIHJlY29yZGVyPC90aXRs
ZT4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2Ny
aXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5q
cyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8dmlkZW8gaWQ9
InJlY29yZGVkVmlkZW8iIGF1dG9wbGF5IHBsYXlzSW5saW5lIHdpZHRoPSIzMjAiIGhlaWdodD0i
MjQwIj48L3ZpZGVvPgorICAgICAgICA8c2NyaXB0PgorcHJvbWlzZV90ZXN0KGFzeW5jICh0ZXN0
KSA9PiB7CisgICAgY29uc3Qgc3RyZWFtID0gYXdhaXQgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5n
ZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlIH0pOworICAgIGxldCBleHBlY3RlZFdpZHRoID0gNjQw
OworICAgIGxldCBleHBlY3RlZEhlaWdodCA9IDQ4MDsKKworICAgIGlmICh3aW5kb3cuaW50ZXJu
YWxzKSB7CisgICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0Q2FtZXJhTWVkaWFTdHJlYW1UcmFj
a09yaWVudGF0aW9uKHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdLCA5MCk7CisgICAgICAgIHRl
c3RSdW5uZXIuc2V0TW9ja0NhbWVyYU9yaWVudGF0aW9uKDkwKTsKKworICAgICAgICBleHBlY3Rl
ZFdpZHRoID0gNDgwOworICAgICAgICBleHBlY3RlZEhlaWdodCA9IDY0MDsKKyAgICB9CisKKyAg
ICBjb25zdCByZWNvcmRlciA9IG5ldyBNZWRpYVJlY29yZGVyKHN0cmVhbSk7CisgICAgY29uc3Qg
cHJvbWlzZSA9IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgICAgcmVj
b3JkZXIub25kYXRhYXZhaWxhYmxlID0gKGUpID0+IHJlc29sdmUoZS5kYXRhKTsKKyAgICAgICAg
c2V0VGltZW91dCgoKSA9PiByZWplY3QoImRhdGF2YWlsYWJsZSBldmVudCB0aW1lZCBvdXQiKSwg
NTAwMCk7CisgICAgfSk7CisgICAgcmVjb3JkZXIuc3RhcnQoKTsKKyAgICBzZXRUaW1lb3V0KCgp
ID0+IHJlY29yZGVyLnN0b3AoKSwgMTAwMCk7CisgICAgY29uc3QgYmxvYiA9IGF3YWl0IHByb21p
c2U7CisKKyAgICBjb25zdCB1cmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpOworICAgIHJl
Y29yZGVkVmlkZW8uc3JjID0gdXJsOworICAgIGF3YWl0IHJlY29yZGVkVmlkZW8ucGxheSgpOwor
CisgICAgVVJMLnJldm9rZU9iamVjdFVSTCh1cmwpOworCisgICAgYXNzZXJ0X2VxdWFscyhyZWNv
cmRlZFZpZGVvLnZpZGVvV2lkdGgsIGV4cGVjdGVkV2lkdGgsICJyZWNvcmRlZCB2aWRlbyB3aWR0
aCIpOworICAgIGFzc2VydF9lcXVhbHMocmVjb3JkZWRWaWRlby52aWRlb0hlaWdodCwgZXhwZWN0
ZWRIZWlnaHQsICJyZWNvcmRlZCB2aWRlbyBoZWlnaHQiKTsKK30sICJSZWNvcmQgYSByb3RhdGVk
IHZpZGVvIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409269</attachid>
            <date>2020-09-21 04:54:21 -0700</date>
            <delta_ts>2020-09-21 05:19:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-198912-20200921135419.patch</filename>
            <type>text/plain</type>
            <size>19141</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3MjI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGRiNzk1ODczZjVlNWFh
NGIzNjg1YzI0OTY4M2M2ZGYwZDEzMmRjNy4uYzcyYWI4ZjUwM2Q1OWI2ZTBiYjg2NGM4OGFlZDJl
OTgzNDU1MjY0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIwLTA5LTIxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29y
ZGVyIGluY29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgSnVzdCBiZWZvcmUgZW5jb2RpbmcgdGhlIHZpZGVvIHNhbXBsZSwgcm90YXRl
IGl0IGlmIG5lZWRlZC4KKyAgICAgICAgVXBkYXRlIEltYWdlUm90YXRpb25TZXNzaW9uVlQgdG8g
cGFzcyBhIENWUGl4ZWxCdWZmZXIgdG8gcm90YXRlLgorICAgICAgICBVcGRhdGUgTWVkaWFSZWNv
cmRlclByaXZhdGVXcml0ZXJDb2NvYSB0byBwYXNzIGEgTWVkaWFTYW1wbGUgZG93biB0byBoYW5k
bGUgcm90YXRpb24uCisKKyAgICAgICAgVGVzdDogaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRl
by1yb3RhdGlvbi5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVJv
dGF0aW9uU2Vzc2lvblZULmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VS
b3RhdGlvblNlc3Npb25WVC5tbToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUm90YXRpb25TZXNz
aW9uVlQ6OnJvdGF0ZSk6CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9NZWRpYVJl
Y29yZGVyUHJpdmF0ZUFWRkltcGwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFSZWNvcmRl
clByaXZhdGVBVkZJbXBsOjp2aWRlb1NhbXBsZUF2YWlsYWJsZSk6CisgICAgICAgICogcGxhdGZv
cm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmg6
CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJp
dmF0ZVdyaXRlckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFSZWNvcmRlclByaXZh
dGVXcml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9t
ZWRpYXJlY29yZGVyL2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvci5oOgorICAgICAg
ICAqIHBsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVz
c29yLm1tOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjpp
bml0Q29tcHJlc3Npb25TZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6OnJvdGF0aW9uVG9Bbmds
ZSk6CisgICAgICAgIChXZWJDb3JlOjpWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I6OnJvdGF0
ZVBpeGVsQnVmZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvU2FtcGxlQnVmZmVyQ29tcHJl
c3Nvcjo6cHJvY2Vzc1NhbXBsZUJ1ZmZlcik6CisgICAgICAgIChXZWJDb3JlOjpWaWRlb1NhbXBs
ZUJ1ZmZlckNvbXByZXNzb3I6OmFkZFNhbXBsZUJ1ZmZlcik6CisKIDIwMjAtMDktMTggIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBI
VE1MTWVkaWFFbGVtZW50LnNldFNpbmtJZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBkZjY0NTY5MmM0ZWE0YmU1NzQz
YmI5ODYxZGI3ZGI5ODE0NzUxMjM0Li4yNDNkOTVmMWEyNTdmODAwMTA1OTFmM2UyZGRhZmQ3ZmM5
ZDMxMjEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTA5LTIxICBZb3Vlbm4gRmFi
bGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29yZGVyIGlu
Y29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBHUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6UmVtb3RlTWVkaWFSZWNvcmRlcjo6dmlkZW9TYW1wbGVBdmFpbGFibGUpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9Vc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eTo6U291cmNl
UHJveHk6OnJvdGF0ZVBpeGVsQnVmZmVyKToKKwogMjAyMC0wOS0xOCAgWW91ZW5uIEZhYmxldCAg
PHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHN1cHBvcnQgZm9yIEhUTUxNZWRpYUVs
ZW1lbnQuc2V0U2lua0lkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jdi9JbWFnZVJvdGF0aW9uU2Vzc2lvblZULmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jdi9JbWFnZVJvdGF0aW9uU2Vzc2lvblZULmgKaW5kZXggNDhhNDBhYzExYTYy
NTkzY2MxNWIyZmFkYzNlZjE4MjQyNzFjNDNlNC4uOTMzYzNmYWM2ODljZDhhNjRkMmQ4YTgzODdl
NTQyYmZlYWU0NGY3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY3YvSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2N2L0ltYWdlUm90YXRpb25TZXNzaW9uVlQuaApAQCAtNjIsNyArNjIsNyBA
QCBwdWJsaWM6CiAgICAgY29uc3QgRmxvYXRTaXplJiByb3RhdGVkU2l6ZSgpIHsgcmV0dXJuIG1f
cm90YXRlZFNpemU7IH0KIAogICAgIFJldGFpblB0cjxDVlBpeGVsQnVmZmVyUmVmPiByb3RhdGUo
Q1ZQaXhlbEJ1ZmZlclJlZik7Ci0gICAgV0VCQ09SRV9FWFBPUlQgUmV0YWluUHRyPENWUGl4ZWxC
dWZmZXJSZWY+IHJvdGF0ZShNZWRpYVNhbXBsZSYsIGNvbnN0IFJvdGF0aW9uUHJvcGVydGllcyYs
IElzQ0dJbWFnZUNvbXBhdGlibGUpOworICAgIFdFQkNPUkVfRVhQT1JUIFJldGFpblB0cjxDVlBp
eGVsQnVmZmVyUmVmPiByb3RhdGUoQ1ZQaXhlbEJ1ZmZlclJlZiwgY29uc3QgUm90YXRpb25Qcm9w
ZXJ0aWVzJiwgSXNDR0ltYWdlQ29tcGF0aWJsZSk7CiAKICAgICBib29sIGlzTWF0Y2hpbmcoTWVk
aWFTYW1wbGUmLCBjb25zdCBSb3RhdGlvblByb3BlcnRpZXMmKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2N2L0ltYWdlUm90YXRpb25TZXNz
aW9uVlQubW0KaW5kZXggYzZkNGUzNTFjMjAwMTUyMmMwMWJjY2YzOTlmZTQ2ZjFhMjYxYWY5MC4u
YmY0NDQ4NWNkNTYyNzJlMTc5ZTU5YzllZmU2NTAzMzE1NjBjMmFjOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVJvdGF0aW9u
U2Vzc2lvblZULm1tCkBAIC0xMjYsOSArMTI2LDggQEAgUmV0YWluUHRyPENWUGl4ZWxCdWZmZXJS
ZWY+IEltYWdlUm90YXRpb25TZXNzaW9uVlQ6OnJvdGF0ZShDVlBpeGVsQnVmZmVyUmVmIHBpeGUK
ICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1SZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gSW1h
Z2VSb3RhdGlvblNlc3Npb25WVDo6cm90YXRlKE1lZGlhU2FtcGxlJiBzYW1wbGUsIGNvbnN0IFJv
dGF0aW9uUHJvcGVydGllcyYgcm90YXRpb24sIElzQ0dJbWFnZUNvbXBhdGlibGUgY3ZJbWFnZUNv
bXBhdGliaWxpdHkpCitSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gSW1hZ2VSb3RhdGlvblNl
c3Npb25WVDo6cm90YXRlKENWUGl4ZWxCdWZmZXJSZWYgcGl4ZWxCdWZmZXIsIGNvbnN0IFJvdGF0
aW9uUHJvcGVydGllcyYgcm90YXRpb24sIElzQ0dJbWFnZUNvbXBhdGlibGUgY3ZJbWFnZUNvbXBh
dGliaWxpdHkpCiB7Ci0gICAgYXV0byBwaXhlbEJ1ZmZlciA9IHN0YXRpY19jYXN0PENWUGl4ZWxC
dWZmZXJSZWY+KFBBTDo6Q01TYW1wbGVCdWZmZXJHZXRJbWFnZUJ1ZmZlcihzYW1wbGUucGxhdGZv
cm1TYW1wbGUoKS5zYW1wbGUuY21TYW1wbGVCdWZmZXIpKTsKICAgICBBU1NFUlQocGl4ZWxCdWZm
ZXIpOwogICAgIGlmICghcGl4ZWxCdWZmZXIpCiAgICAgICAgIHJldHVybiBudWxscHRyOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9NZWRpYVJlY29y
ZGVyUHJpdmF0ZUFWRkltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNv
cmRlci9NZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGwuY3BwCmluZGV4IDg0NGE5NjlmNTNkNGFl
Zjc5Y2QyNmJiMWJlYzQyNzk0ZmJkNGRlYWEuLjJjYWZkZDk3YjBlY2M5MGMyYmY4NTExOTk1ZWE1
ZDFkODYyMzQ4YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVj
b3JkZXIvTWVkaWFSZWNvcmRlclByaXZhdGVBVkZJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbC5jcHAK
QEAgLTcwLDcgKzcwLDcgQEAgTWVkaWFSZWNvcmRlclByaXZhdGVBVkZJbXBsOjp+TWVkaWFSZWNv
cmRlclByaXZhdGVBVkZJbXBsKCkKIAogdm9pZCBNZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGw6
OnZpZGVvU2FtcGxlQXZhaWxhYmxlKE1lZGlhU2FtcGxlJiBzYW1wbGVCdWZmZXIpCiB7Ci0gICAg
bV93cml0ZXItPmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKHNhbXBsZUJ1ZmZlci5wbGF0Zm9ybVNh
bXBsZSgpLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcik7CisgICAgbV93cml0ZXItPmFwcGVuZFZpZGVv
U2FtcGxlQnVmZmVyKHNhbXBsZUJ1ZmZlcik7CiB9CiAKIHZvaWQgTWVkaWFSZWNvcmRlclByaXZh
dGVBVkZJbXBsOjphdWRpb1NhbXBsZXNBdmFpbGFibGUoY29uc3QgV1RGOjpNZWRpYVRpbWUmIG1l
ZGlhVGltZSwgY29uc3QgUGxhdGZvcm1BdWRpb0RhdGEmIGRhdGEsIGNvbnN0IEF1ZGlvU3RyZWFt
RGVzY3JpcHRpb24mIGRlc2NyaXB0aW9uLCBzaXplX3Qgc2FtcGxlQ291bnQpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01lZGlhUmVjb3Jk
ZXJQcml2YXRlV3JpdGVyQ29jb2EuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVj
b3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oCmluZGV4IDRmMjJi
ODE1MTU4NTFjZGEyNWViOGI5OWViNDc3MzYwOGU2OTZlNmEuLmIzM2E4MGUzNGJmYjhjYjU1ZTdk
N2EwOTQ2MTJiMDgwOWQyZDBmNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNv
cmRlclByaXZhdGVXcml0ZXJDb2NvYS5oCkBAIC01Niw2ICs1Niw4IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogY2xhc3MgQXVkaW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOwogY2xhc3MgQXVkaW9T
dHJlYW1EZXNjcmlwdGlvbjsKK2NsYXNzIEltYWdlUm90YXRpb25TZXNzaW9uVlQ7CitjbGFzcyBN
ZWRpYVNhbXBsZTsKIGNsYXNzIE1lZGlhU3RyZWFtVHJhY2tQcml2YXRlOwogY2xhc3MgUGxhdGZv
cm1BdWRpb0RhdGE7CiBjbGFzcyBWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I7CkBAIC02Niw3
ICs2OCw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmUHRyPE1lZGlhUmVjb3JkZXJQcml2YXRl
V3JpdGVyPiBjcmVhdGUoYm9vbCBoYXNBdWRpbywgYm9vbCBoYXNWaWRlbywgY29uc3QgTWVkaWFS
ZWNvcmRlclByaXZhdGVPcHRpb25zJik7CiAgICAgfk1lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVy
KCk7CiAKLSAgICB2b2lkIGFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVm
KTsKKyAgICB2b2lkIGFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKE1lZGlhU2FtcGxlJik7CiAgICAg
dm9pZCBhcHBlbmRBdWRpb1NhbXBsZUJ1ZmZlcihjb25zdCBQbGF0Zm9ybUF1ZGlvRGF0YSYsIGNv
bnN0IEF1ZGlvU3RyZWFtRGVzY3JpcHRpb24mLCBjb25zdCBXVEY6Ok1lZGlhVGltZSYsIHNpemVf
dCk7CiAgICAgdm9pZCBzdG9wUmVjb3JkaW5nKCk7CiAgICAgdm9pZCBmZXRjaERhdGEoQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChSZWZQdHI8U2hhcmVkQnVmZmVyPiYmKT4mJik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01lZGlhUmVjb3Jk
ZXJQcml2YXRlV3JpdGVyQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJl
Y29yZGVyL2NvY29hL01lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EubW0KaW5kZXggNzlm
ZWVlMTgyODkxNTI4ZWNhNGE1MTQ4OTczNjY3NjZhYTg3MTkzZC4uZGM1NTI3MzE4NGQyN2NmNDE0
OWZmODYyZGYwZWMyNDQ0YTZmYzI0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFS
ZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5tbQpAQCAtNDIxLDExICs0MjEsMTEgQEAgc3RhdGlj
IGlubGluZSBSZXRhaW5QdHI8Q01TYW1wbGVCdWZmZXJSZWY+IGNvcHlTYW1wbGVCdWZmZXJXaXRo
Q3VycmVudFRpbWVTdGFtcCgKICAgICByZXR1cm4gYWRvcHRDRihuZXdCdWZmZXIpOwogfQogCi12
b2lkIE1lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyOjphcHBlbmRWaWRlb1NhbXBsZUJ1ZmZlcihD
TVNhbXBsZUJ1ZmZlclJlZiBzYW1wbGVCdWZmZXIpCit2b2lkIE1lZGlhUmVjb3JkZXJQcml2YXRl
V3JpdGVyOjphcHBlbmRWaWRlb1NhbXBsZUJ1ZmZlcihNZWRpYVNhbXBsZSYgc2FtcGxlKQogewog
ICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgbm90IHNldCB0aGUgdGltZXN0YW1wcyBpZiB0aGV5IGFy
ZSBhbHJlYWR5IHNldC4KLSAgICBpZiAoYXV0byBidWZmZXJXaXRoQ3VycmVudFRpbWUgPSBjb3B5
U2FtcGxlQnVmZmVyV2l0aEN1cnJlbnRUaW1lU3RhbXAoc2FtcGxlQnVmZmVyKSkKLSAgICAgICAg
bV92aWRlb0NvbXByZXNzb3ItPmFkZFNhbXBsZUJ1ZmZlcihidWZmZXJXaXRoQ3VycmVudFRpbWUu
Z2V0KCkpOworICAgIGlmIChhdXRvIGJ1ZmZlcldpdGhDdXJyZW50VGltZSA9IGNvcHlTYW1wbGVC
dWZmZXJXaXRoQ3VycmVudFRpbWVTdGFtcChzYW1wbGUucGxhdGZvcm1TYW1wbGUoKS5zYW1wbGUu
Y21TYW1wbGVCdWZmZXIpKQorICAgICAgICBtX3ZpZGVvQ29tcHJlc3Nvci0+YWRkU2FtcGxlQnVm
ZmVyKGJ1ZmZlcldpdGhDdXJyZW50VGltZS5nZXQoKSwgc2FtcGxlLnZpZGVvUm90YXRpb24oKSk7
CiB9CiAKIHN0YXRpYyBpbmxpbmUgUmV0YWluUHRyPENNRm9ybWF0RGVzY3JpcHRpb25SZWY+IGNy
ZWF0ZUF1ZGlvRm9ybWF0RGVzY3JpcHRpb24oY29uc3QgQXVkaW9TdHJlYW1EZXNjcmlwdGlvbiYg
ZGVzY3JpcHRpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJl
Y29yZGVyL2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvci5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNz
b3IuaAppbmRleCA5ZDE2MzUyOTRjOWRhYjlhMjk3YzBkNjk5MzQ0MjlmNjlmMDI4MTNmLi43ZmZi
NDNjZjEzOGIzMDQ0OGY2OTIzMWZiZWZiYTgyMDM1MzA2ZDYyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29t
cHJlc3Nvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29j
b2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLmgKQEAgLTI2LDE0ICsyNiwxOCBAQAogCiAj
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkgJiYgVVNFKEFWRk9VTkRBVElPTikKIAorI2luY2x1ZGUg
Ik1lZGlhU2FtcGxlLmgiCiAjaW5jbHVkZSA8Q29yZU1lZGlhL0NvcmVNZWRpYS5oPgogI2luY2x1
ZGUgPFZpZGVvVG9vbGJveC9WVEVycm9ycy5oPgogCiB0eXBlZGVmIHN0cnVjdCBvcGFxdWVDTVNh
bXBsZUJ1ZmZlciAqQ01TYW1wbGVCdWZmZXJSZWY7CiB0eXBlZGVmIHN0cnVjdCBPcGFxdWVWVENv
bXByZXNzaW9uU2Vzc2lvbiAqVlRDb21wcmVzc2lvblNlc3Npb25SZWY7Cit0eXBlZGVmIHN0cnVj
dCBfX0NWQnVmZmVyICpDVlBpeGVsQnVmZmVyUmVmOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
K2NsYXNzIEltYWdlUm90YXRpb25TZXNzaW9uVlQ7CisKIGNsYXNzIFZpZGVvU2FtcGxlQnVmZmVy
Q29tcHJlc3NvciB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CkBAIC00
Miw3ICs0Niw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc2V0Qml0c1BlclNlY29uZCh1bnNpZ25l
ZCk7CiAgICAgdm9pZCBmaW5pc2goKTsKLSAgICB2b2lkIGFkZFNhbXBsZUJ1ZmZlcihDTVNhbXBs
ZUJ1ZmZlclJlZik7CisgICAgdm9pZCBhZGRTYW1wbGVCdWZmZXIoQ01TYW1wbGVCdWZmZXJSZWYs
IE1lZGlhU2FtcGxlOjpWaWRlb1JvdGF0aW9uKTsKICAgICBDTVNhbXBsZUJ1ZmZlclJlZiBnZXRP
dXRwdXRTYW1wbGVCdWZmZXIoKTsKICAgICBSZXRhaW5QdHI8Q01TYW1wbGVCdWZmZXJSZWY+IHRh
a2VPdXRwdXRTYW1wbGVCdWZmZXIoKTsKIApAQCAtNTEsOCArNTUsOSBAQCBwcml2YXRlOgogCiAg
ICAgYm9vbCBpbml0aWFsaXplKENNQnVmZmVyUXVldWVUcmlnZ2VyQ2FsbGJhY2ssIHZvaWQqIGNh
bGxiYWNrT2JqZWN0KTsKIAotICAgIHZvaWQgcHJvY2Vzc1NhbXBsZUJ1ZmZlcihDTVNhbXBsZUJ1
ZmZlclJlZik7Ci0gICAgYm9vbCBpbml0Q29tcHJlc3Npb25TZXNzaW9uKENNVmlkZW9Gb3JtYXRE
ZXNjcmlwdGlvblJlZik7CisgICAgdm9pZCBwcm9jZXNzU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVm
ZmVyUmVmLCBNZWRpYVNhbXBsZTo6VmlkZW9Sb3RhdGlvbik7CisgICAgYm9vbCBpbml0Q29tcHJl
c3Npb25TZXNzaW9uKGludCB3aWR0aCwgaW50IGhlaWdodCk7CisgICAgUmV0YWluUHRyPENWUGl4
ZWxCdWZmZXJSZWY+IHJvdGF0ZVBpeGVsQnVmZmVyKENWUGl4ZWxCdWZmZXJSZWYsIE1lZGlhU2Ft
cGxlOjpWaWRlb1JvdGF0aW9uKTsKIAogICAgIHN0YXRpYyB2b2lkIHZpZGVvQ29tcHJlc3Npb25D
YWxsYmFjayh2b2lkICpyZWZDb24sIHZvaWQqLCBPU1N0YXR1cywgVlRFbmNvZGVJbmZvRmxhZ3Ms
IENNU2FtcGxlQnVmZmVyUmVmKTsKIApAQCAtNjYsNiArNzEsNyBAQCBwcml2YXRlOgogICAgIGZs
b2F0IG1fbWF4S2V5RnJhbWVJbnRlcnZhbER1cmF0aW9uIHsgMi4wIH07CiAgICAgdW5zaWduZWQg
bV9leHBlY3RlZEZyYW1lUmF0ZSB7IDMwIH07CiAgICAgT3B0aW9uYWw8dW5zaWduZWQ+IG1fb3V0
cHV0Qml0UmF0ZTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8SW1hZ2VSb3RhdGlvblNlc3Npb25WVD4g
bV9yb3RhdGlvblNlc3Npb247CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvci5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvVmlkZW9TYW1w
bGVCdWZmZXJDb21wcmVzc29yLm1tCmluZGV4IDNhYWJhNjk4ZGY3ZmJlNDU3YjMyYmI0MjIzZDQx
ZWEyZWYxMTQ2MDUuLjAzODI1ZjA3OGEzYTE5NDllOTAzMDUzOWRjYjE0ZDIxNzI4ZWRiNzUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvVmlk
ZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhcmVjb3JkZXIvY29jb2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLm1tCkBAIC0y
Nyw2ICsyNyw3IEBACiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKSAmJiBVU0UoQVZGT1VOREFU
SU9OKQogCisjaW1wb3J0ICJJbWFnZVJvdGF0aW9uU2Vzc2lvblZULmgiCiAjaW1wb3J0ICJMb2dn
aW5nLmgiCiAjaW1wb3J0IDxDb3JlTWVkaWEvQ29yZU1lZGlhLmg+CiAjaW1wb3J0IDxGb3VuZGF0
aW9uL0ZvdW5kYXRpb24uaD4KQEAgLTExNSw5ICsxMTYsOCBAQCBzdGF0aWMgaW5saW5lIE9TU3Rh
dHVzIHNldENvbXByZXNzaW9uU2Vzc2lvblByb3BlcnR5KFZUQ29tcHJlc3Npb25TZXNzaW9uUmVm
IHZ0UwogICAgIHJldHVybiBzdGF0dXM7CiB9CiAKLWJvb2wgVmlkZW9TYW1wbGVCdWZmZXJDb21w
cmVzc29yOjppbml0Q29tcHJlc3Npb25TZXNzaW9uKENNVmlkZW9Gb3JtYXREZXNjcmlwdGlvblJl
ZiBmb3JtYXREZXNjcmlwdGlvbikKK2Jvb2wgVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjpp
bml0Q29tcHJlc3Npb25TZXNzaW9uKGludCB3aWR0aCwgaW50IGhlaWdodCkKIHsKLSAgICBDTVZp
ZGVvRGltZW5zaW9ucyBkaW1lbnNpb25zID0gQ01WaWRlb0Zvcm1hdERlc2NyaXB0aW9uR2V0RGlt
ZW5zaW9ucyhmb3JtYXREZXNjcmlwdGlvbik7CiAjaWYgUExBVEZPUk0oSU9TKQogICAgIE5TRGlj
dGlvbmFyeSAqZW5jb2RlclNwZWNpZmljYXRpb25zID0gbmlsOwogI2Vsc2UKQEAgLTEyNSw3ICsx
MjUsNyBAQCBib29sIFZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvcjo6aW5pdENvbXByZXNzaW9u
U2Vzc2lvbihDTVZpZGVvRm9ybWF0RGVzY3JpcHRpbwogI2VuZGlmCiAKICAgICBWVENvbXByZXNz
aW9uU2Vzc2lvblJlZiB2dFNlc3Npb247Ci0gICAgYXV0byBlcnJvciA9IFZUQ29tcHJlc3Npb25T
ZXNzaW9uQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIGRpbWVuc2lvbnMud2lkdGgsIGRpbWVu
c2lvbnMuaGVpZ2h0LCBtX291dHB1dENvZGVjVHlwZSwgKF9fYnJpZGdlIENGRGljdGlvbmFyeVJl
ZillbmNvZGVyU3BlY2lmaWNhdGlvbnMsIE5VTEwsIE5VTEwsIHZpZGVvQ29tcHJlc3Npb25DYWxs
YmFjaywgdGhpcywgJnZ0U2Vzc2lvbik7CisgICAgYXV0byBlcnJvciA9IFZUQ29tcHJlc3Npb25T
ZXNzaW9uQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIHdpZHRoLCBoZWlnaHQsIG1fb3V0cHV0
Q29kZWNUeXBlLCAoX19icmlkZ2UgQ0ZEaWN0aW9uYXJ5UmVmKWVuY29kZXJTcGVjaWZpY2F0aW9u
cywgTlVMTCwgTlVMTCwgdmlkZW9Db21wcmVzc2lvbkNhbGxiYWNrLCB0aGlzLCAmdnRTZXNzaW9u
KTsKICAgICBpZiAoZXJyb3IpIHsKICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoTWVkaWFTdHJl
YW0sICJWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IgVlRDb21wcmVzc2lvblNlc3Npb25DcmVh
dGUgZmFpbGVkIHdpdGggJWQiLCBlcnJvcik7CiAgICAgICAgIHJldHVybiBOTzsKQEAgLTE1MCwy
NyArMTUwLDU3IEBAIGJvb2wgVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjppbml0Q29tcHJl
c3Npb25TZXNzaW9uKENNVmlkZW9Gb3JtYXREZXNjcmlwdGlvCiAgICAgcmV0dXJuIFlFUzsKIH0K
IAotdm9pZCBWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I6OnByb2Nlc3NTYW1wbGVCdWZmZXIo
Q01TYW1wbGVCdWZmZXJSZWYgYnVmZmVyKQorc3RhdGljIGlubGluZSB1bnNpZ25lZCByb3RhdGlv
blRvQW5nbGUoTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb24gcm90YXRpb24pCiB7CisgICAgc3dp
dGNoIChyb3RhdGlvbikgeworICAgIGNhc2UgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb246Ok5v
bmU6CisgICAgICAgIHJldHVybiAwOworICAgIGNhc2UgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRp
b246OlVwc2lkZURvd246CisgICAgICAgIHJldHVybiAxODA7CisgICAgY2FzZSBNZWRpYVNhbXBs
ZTo6VmlkZW9Sb3RhdGlvbjo6UmlnaHQ6CisgICAgICAgIHJldHVybiA5MDsKKyAgICBjYXNlIE1l
ZGlhU2FtcGxlOjpWaWRlb1JvdGF0aW9uOjpMZWZ0OgorICAgICAgICByZXR1cm4gMjcwOworICAg
IH0KK30KKworUmV0YWluUHRyPENWUGl4ZWxCdWZmZXJSZWY+IFZpZGVvU2FtcGxlQnVmZmVyQ29t
cHJlc3Nvcjo6cm90YXRlUGl4ZWxCdWZmZXIoQ1ZQaXhlbEJ1ZmZlclJlZiBidWZmZXIsIE1lZGlh
U2FtcGxlOjpWaWRlb1JvdGF0aW9uIHJvdGF0aW9uKQoreworICAgIGlmICghbV9yb3RhdGlvblNl
c3Npb24pCisgICAgICAgIG1fcm90YXRpb25TZXNzaW9uID0gbWFrZVVuaXF1ZTxJbWFnZVJvdGF0
aW9uU2Vzc2lvblZUPigpOworCisgICAgSW1hZ2VSb3RhdGlvblNlc3Npb25WVDo6Um90YXRpb25Q
cm9wZXJ0aWVzIHJvdGF0aW9uUHJvcGVydGllczsKKyAgICByb3RhdGlvblByb3BlcnRpZXMuYW5n
bGUgPSByb3RhdGlvblRvQW5nbGUocm90YXRpb24pOworICAgIHJldHVybiBtX3JvdGF0aW9uU2Vz
c2lvbi0+cm90YXRlKGJ1ZmZlciwgcm90YXRpb25Qcm9wZXJ0aWVzLCBJbWFnZVJvdGF0aW9uU2Vz
c2lvblZUOjpJc0NHSW1hZ2VDb21wYXRpYmxlOjpObyk7Cit9CisKK3ZvaWQgVmlkZW9TYW1wbGVC
dWZmZXJDb21wcmVzc29yOjpwcm9jZXNzU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVmIGJ1
ZmZlciwgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb24gcm90YXRpb24pCit7CisgICAgUmV0YWlu
UHRyPENWUGl4ZWxCdWZmZXJSZWY+IHJvdGF0ZWRQaXhlbEJ1ZmZlcjsKKyAgICBhdXRvIGltYWdl
QnVmZmVyID0gQ01TYW1wbGVCdWZmZXJHZXRJbWFnZUJ1ZmZlcihidWZmZXIpOworICAgIGlmIChy
b3RhdGlvbiAhPSBNZWRpYVNhbXBsZTo6VmlkZW9Sb3RhdGlvbjo6Tm9uZSkgeworICAgICAgICBy
b3RhdGVkUGl4ZWxCdWZmZXIgPSByb3RhdGVQaXhlbEJ1ZmZlcihpbWFnZUJ1ZmZlciwgcm90YXRp
b24pOworICAgICAgICBpbWFnZUJ1ZmZlciA9IHJvdGF0ZWRQaXhlbEJ1ZmZlci5nZXQoKTsKKyAg
ICB9CisKICAgICBpZiAoIW1fdnRTZXNzaW9uKSB7Ci0gICAgICAgIGlmICghaW5pdENvbXByZXNz
aW9uU2Vzc2lvbihDTVNhbXBsZUJ1ZmZlckdldEZvcm1hdERlc2NyaXB0aW9uKGJ1ZmZlcikpKQor
ICAgICAgICBpZiAoIWluaXRDb21wcmVzc2lvblNlc3Npb24oQ1ZQaXhlbEJ1ZmZlckdldFdpZHRo
KGltYWdlQnVmZmVyKSwgQ1ZQaXhlbEJ1ZmZlckdldEhlaWdodChpbWFnZUJ1ZmZlcikpKQogICAg
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGF1dG8gaW1hZ2VCdWZmZXIgPSBDTVNhbXBs
ZUJ1ZmZlckdldEltYWdlQnVmZmVyKGJ1ZmZlcik7CiAgICAgYXV0byBwcmVzZW50YXRpb25UaW1l
U3RhbXAgPSBDTVNhbXBsZUJ1ZmZlckdldFByZXNlbnRhdGlvblRpbWVTdGFtcChidWZmZXIpOwog
ICAgIGF1dG8gZHVyYXRpb24gPSBDTVNhbXBsZUJ1ZmZlckdldER1cmF0aW9uKGJ1ZmZlcik7CiAg
ICAgYXV0byBlcnJvciA9IFZUQ29tcHJlc3Npb25TZXNzaW9uRW5jb2RlRnJhbWUobV92dFNlc3Np
b24uZ2V0KCksIGltYWdlQnVmZmVyLCBwcmVzZW50YXRpb25UaW1lU3RhbXAsIGR1cmF0aW9uLCBO
VUxMLCB0aGlzLCBOVUxMKTsKICAgICBSRUxFQVNFX0xPR19FUlJPUl9JRihlcnJvciwgTWVkaWFT
dHJlYW0sICJWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IgVlRDb21wcmVzc2lvblNlc3Npb25F
bmNvZGVGcmFtZSBmYWlsZWQgd2l0aCAlZCIsIGVycm9yKTsKIH0KIAotdm9pZCBWaWRlb1NhbXBs
ZUJ1ZmZlckNvbXByZXNzb3I6OmFkZFNhbXBsZUJ1ZmZlcihDTVNhbXBsZUJ1ZmZlclJlZiBidWZm
ZXIpCit2b2lkIFZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvcjo6YWRkU2FtcGxlQnVmZmVyKENN
U2FtcGxlQnVmZmVyUmVmIGJ1ZmZlciwgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb24gcm90YXRp
b24pCiB7CiAgICAgZGlzcGF0Y2hfc3luYyhtX3NlcmlhbERpc3BhdGNoUXVldWUsIF57CiAgICAg
ICAgIGlmICghbV9pc0VuY29kaW5nKQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgIHBy
b2Nlc3NTYW1wbGVCdWZmZXIoYnVmZmVyKTsKKyAgICAgICAgcHJvY2Vzc1NhbXBsZUJ1ZmZlcihi
dWZmZXIsIHJvdGF0aW9uKTsKICAgICB9KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLmNwcCBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy93ZWJydGMvUmVtb3RlTWVkaWFSZWNvcmRlci5jcHAKaW5kZXggNjAzNGMy
ZDVmOGQyNThiYWU0NWVhNTM1YTk1NjA0MWE3NjU3NDYxZi4uMmZkZjk3MzYyN2IwNjRlYThlYTgw
MmIwYzE1M2VjMmNkMmFhMDRkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3Mvd2VicnRjL1JlbW90ZU1lZGlhUmVjb3JkZXIuY3BwCkBAIC0xMTgsNyArMTE4LDcgQEAg
dm9pZCBSZW1vdGVNZWRpYVJlY29yZGVyOjp2aWRlb1NhbXBsZUF2YWlsYWJsZShXZWJDb3JlOjpS
ZW1vdGVWaWRlb1NhbXBsZSYmIHJlbW8KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG1f
d3JpdGVyLT5hcHBlbmRWaWRlb1NhbXBsZUJ1ZmZlcihzYW1wbGVCdWZmZXItPnBsYXRmb3JtU2Ft
cGxlKCkuc2FtcGxlLmNtU2FtcGxlQnVmZmVyKTsKKyAgICBtX3dyaXRlci0+YXBwZW5kVmlkZW9T
YW1wbGVCdWZmZXIoKnNhbXBsZUJ1ZmZlcik7CiB9CiAKIHZvaWQgUmVtb3RlTWVkaWFSZWNvcmRl
cjo6ZmV0Y2hEYXRhKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoSVBDOjpEYXRhUmVmZXJlbmNlJiYs
IGNvbnN0IFN0cmluZyYgbWltZVR5cGUpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQ
cm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9Vc2VyTWVkaWFDYXB0dXJl
TWFuYWdlclByb3h5LmNwcAppbmRleCA4Njc5MmFhNTVjMWU3Y2IxMjc4YmFjMzkzZDg3MDQ5OWFi
YTYwNjJjLi5mNTRhNmUxMDQxOTk0ZGFmYTllN2EyMjRjZWQxMmJjNDZjZmJjNTFiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9Vc2VyTWVkaWFDYXB0dXJlTWFuYWdl
clByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9Vc2VyTWVkaWFD
YXB0dXJlTWFuYWdlclByb3h5LmNwcApAQCAtMTk1LDcgKzE5NSw4IEBAIHByaXZhdGU6CiAgICAg
ICAgICAgICByb3RhdGlvbi5hbmdsZSA9IDI3MDsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAg
ICB9Ci0gICAgICAgIHJldHVybiBtX3JvdGF0aW9uU2Vzc2lvbi0+cm90YXRlKHNhbXBsZSwgcm90
YXRpb24sIEltYWdlUm90YXRpb25TZXNzaW9uVlQ6OklzQ0dJbWFnZUNvbXBhdGlibGU6Ok5vKTsK
KyAgICAgICAgYXV0byBwaXhlbEJ1ZmZlciA9IHN0YXRpY19jYXN0PENWUGl4ZWxCdWZmZXJSZWY+
KFBBTDo6Q01TYW1wbGVCdWZmZXJHZXRJbWFnZUJ1ZmZlcihzYW1wbGUucGxhdGZvcm1TYW1wbGUo
KS5zYW1wbGUuY21TYW1wbGVCdWZmZXIpKTsKKyAgICAgICAgcmV0dXJuIG1fcm90YXRpb25TZXNz
aW9uLT5yb3RhdGUocGl4ZWxCdWZmZXIsIHJvdGF0aW9uLCBJbWFnZVJvdGF0aW9uU2Vzc2lvblZU
OjpJc0NHSW1hZ2VDb21wYXRpYmxlOjpObyk7CiAgICAgfQogCiAgICAgdm9pZCBzdG9yYWdlQ2hh
bmdlZChTaGFyZWRNZW1vcnkqIHN0b3JhZ2UpIGZpbmFsIHsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5MDg4NGFlZWYwZmEw
YzIwYjEwZWMwODM3ZGU0NjgzMTc0YTQxMGRiLi5mYzllZTFiODM5NWM4ZmQ2ZmIzZTJjNTgzOTM3
MTBkYmNjYmNmNTZkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDktMjEgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIE1lZGlhUmVjb3JkZXIg
aW5jb3JyZWN0IHNjcmVlbiBvcmllbnRhdGlvbiBoYW5kbGluZworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4OTEyCisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS81MTgwMjUyMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlkZW8tcm90YXRpb24tZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVvLXJvdGF0
aW9uLmh0bWw6IEFkZGVkLgorCiAyMDIwLTA5LTE4ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFw
cGxlLmNvbT4KIAogICAgICAgICBBZGQgc3VwcG9ydCBmb3IgSFRNTE1lZGlhRWxlbWVudC5zZXRT
aW5rSWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlk
ZW8tcm90YXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNv
cmRlci92aWRlby1yb3RhdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTBiM2MwMGM1NWYw
ZjRiOTZlYjY0ZmQ1YzhjZWRmYzZmNjc5MmFmYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlkZW8tcm90YXRpb24tZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsNCBAQAorCisKK1BBU1MgUmVjb3JkIGEgcm90YXRlZCB2aWRlbyAKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi5o
dG1sIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjgxNThhODQxNTc4Y2M1ZDY0ZWE2N2UwYTFmODgyZDBlYWVmZDJjZGYK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3Zp
ZGVvLXJvdGF0aW9uLmh0bWwKQEAgLTAsMCArMSw0NSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRt
bD4KKyAgICA8aGVhZD4KKyAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAgICAgICA8
dGl0bGU+VGVzdGluZyB2aWRlbyByb3RhdGlvbiBpbiBtZWRpYSByZWNvcmRlcjwvdGl0bGU+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4K
KyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwv
c2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPHZpZGVvIGlkPSJyZWNv
cmRlZFZpZGVvIiBhdXRvcGxheSBwbGF5c0lubGluZSB3aWR0aD0iMzIwIiBoZWlnaHQ9IjI0MCI+
PC92aWRlbz4KKyAgICAgICAgPHNjcmlwdD4KK3Byb21pc2VfdGVzdChhc3luYyAodGVzdCkgPT4g
eworICAgIGNvbnN0IHN0cmVhbSA9IGF3YWl0IG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNl
ck1lZGlhKHt2aWRlbzogdHJ1ZSB9KTsKKyAgICBsZXQgZXhwZWN0ZWRXaWR0aCA9IDY0MDsKKyAg
ICBsZXQgZXhwZWN0ZWRIZWlnaHQgPSA0ODA7CisKKyAgICBpZiAod2luZG93LmludGVybmFscykg
eworICAgICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldENhbWVyYU1lZGlhU3RyZWFtVHJhY2tPcmll
bnRhdGlvbihzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXSwgOTApOworICAgICAgICB0ZXN0UnVu
bmVyLnNldE1vY2tDYW1lcmFPcmllbnRhdGlvbig5MCk7CisKKyAgICAgICAgZXhwZWN0ZWRXaWR0
aCA9IDQ4MDsKKyAgICAgICAgZXhwZWN0ZWRIZWlnaHQgPSA2NDA7CisgICAgfQorCisgICAgY29u
c3QgcmVjb3JkZXIgPSBuZXcgTWVkaWFSZWNvcmRlcihzdHJlYW0pOworICAgIGNvbnN0IHByb21p
c2UgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CisgICAgICAgIHJlY29yZGVy
Lm9uZGF0YWF2YWlsYWJsZSA9IChlKSA9PiByZXNvbHZlKGUuZGF0YSk7CisgICAgICAgIHNldFRp
bWVvdXQoKCkgPT4gcmVqZWN0KCJkYXRhdmFpbGFibGUgZXZlbnQgdGltZWQgb3V0IiksIDUwMDAp
OworICAgIH0pOworICAgIHJlY29yZGVyLnN0YXJ0KCk7CisgICAgc2V0VGltZW91dCgoKSA9PiBy
ZWNvcmRlci5zdG9wKCksIDEwMDApOworICAgIGNvbnN0IGJsb2IgPSBhd2FpdCBwcm9taXNlOwor
CisgICAgY29uc3QgdXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTsKKyAgICByZWNvcmRl
ZFZpZGVvLnNyYyA9IHVybDsKKyAgICBhd2FpdCByZWNvcmRlZFZpZGVvLnBsYXkoKTsKKworICAg
IFVSTC5yZXZva2VPYmplY3RVUkwodXJsKTsKKworICAgIGFzc2VydF9lcXVhbHMocmVjb3JkZWRW
aWRlby52aWRlb1dpZHRoLCBleHBlY3RlZFdpZHRoLCAicmVjb3JkZWQgdmlkZW8gd2lkdGgiKTsK
KyAgICBhc3NlcnRfZXF1YWxzKHJlY29yZGVkVmlkZW8udmlkZW9IZWlnaHQsIGV4cGVjdGVkSGVp
Z2h0LCAicmVjb3JkZWQgdmlkZW8gaGVpZ2h0Iik7Cit9LCAiUmVjb3JkIGEgcm90YXRlZCB2aWRl
byIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="commit-queue"
          id="424890"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409270</attachid>
            <date>2020-09-21 05:08:12 -0700</date>
            <delta_ts>2020-09-21 05:25:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-198912-20200921140810.patch</filename>
            <type>text/plain</type>
            <size>18101</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3MjI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGRiNzk1ODczZjVlNWFh
NGIzNjg1YzI0OTY4M2M2ZGYwZDEzMmRjNy4uYzcyYWI4ZjUwM2Q1OWI2ZTBiYjg2NGM4OGFlZDJl
OTgzNDU1MjY0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIwLTA5LTIxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29y
ZGVyIGluY29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgSnVzdCBiZWZvcmUgZW5jb2RpbmcgdGhlIHZpZGVvIHNhbXBsZSwgcm90YXRl
IGl0IGlmIG5lZWRlZC4KKyAgICAgICAgVXBkYXRlIEltYWdlUm90YXRpb25TZXNzaW9uVlQgdG8g
cGFzcyBhIENWUGl4ZWxCdWZmZXIgdG8gcm90YXRlLgorICAgICAgICBVcGRhdGUgTWVkaWFSZWNv
cmRlclByaXZhdGVXcml0ZXJDb2NvYSB0byBwYXNzIGEgTWVkaWFTYW1wbGUgZG93biB0byBoYW5k
bGUgcm90YXRpb24uCisKKyAgICAgICAgVGVzdDogaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRl
by1yb3RhdGlvbi5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVJv
dGF0aW9uU2Vzc2lvblZULmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VS
b3RhdGlvblNlc3Npb25WVC5tbToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUm90YXRpb25TZXNz
aW9uVlQ6OnJvdGF0ZSk6CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9NZWRpYVJl
Y29yZGVyUHJpdmF0ZUFWRkltcGwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFSZWNvcmRl
clByaXZhdGVBVkZJbXBsOjp2aWRlb1NhbXBsZUF2YWlsYWJsZSk6CisgICAgICAgICogcGxhdGZv
cm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmg6
CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJp
dmF0ZVdyaXRlckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFSZWNvcmRlclByaXZh
dGVXcml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9t
ZWRpYXJlY29yZGVyL2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvci5oOgorICAgICAg
ICAqIHBsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVz
c29yLm1tOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjpp
bml0Q29tcHJlc3Npb25TZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6OnJvdGF0aW9uVG9Bbmds
ZSk6CisgICAgICAgIChXZWJDb3JlOjpWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I6OnJvdGF0
ZVBpeGVsQnVmZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvU2FtcGxlQnVmZmVyQ29tcHJl
c3Nvcjo6cHJvY2Vzc1NhbXBsZUJ1ZmZlcik6CisgICAgICAgIChXZWJDb3JlOjpWaWRlb1NhbXBs
ZUJ1ZmZlckNvbXByZXNzb3I6OmFkZFNhbXBsZUJ1ZmZlcik6CisKIDIwMjAtMDktMTggIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBI
VE1MTWVkaWFFbGVtZW50LnNldFNpbmtJZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBkZjY0NTY5MmM0ZWE0YmU1NzQz
YmI5ODYxZGI3ZGI5ODE0NzUxMjM0Li5lNjFiMzc2YzI1YWZiNmRiNDJmMDE1Y2RiMDkyYWM2Zjc0
MTY2N2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA5LTIxICBZb3Vlbm4gRmFi
bGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29yZGVyIGlu
Y29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBHUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6UmVtb3RlTWVkaWFSZWNvcmRlcjo6dmlkZW9TYW1wbGVBdmFpbGFibGUpOgor
CiAyMDIwLTA5LTE4ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAg
ICBBZGQgc3VwcG9ydCBmb3IgSFRNTE1lZGlhRWxlbWVudC5zZXRTaW5rSWQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2N2L0ltYWdlUm90YXRpb25TZXNzaW9u
VlQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2N2L0ltYWdlUm90YXRpb25T
ZXNzaW9uVlQuaAppbmRleCA0OGE0MGFjMTFhNjI1OTNjYzE1YjJmYWRjM2VmMTgyNDI3MWM0M2U0
Li4yYjJhYjc3MTNlNmVmMjFiYmNjNDJkM2E0NzNiZGRjNWRhNDAyNDY5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVJvdGF0aW9uU2Vzc2lvblZU
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlv
blNlc3Npb25WVC5oCkBAIC02Miw2ICs2Miw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBGbG9hdFNp
emUmIHJvdGF0ZWRTaXplKCkgeyByZXR1cm4gbV9yb3RhdGVkU2l6ZTsgfQogCiAgICAgUmV0YWlu
UHRyPENWUGl4ZWxCdWZmZXJSZWY+IHJvdGF0ZShDVlBpeGVsQnVmZmVyUmVmKTsKKyAgICBSZXRh
aW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gcm90YXRlKENWUGl4ZWxCdWZmZXJSZWYsIGNvbnN0IFJv
dGF0aW9uUHJvcGVydGllcyYsIElzQ0dJbWFnZUNvbXBhdGlibGUpOwogICAgIFdFQkNPUkVfRVhQ
T1JUIFJldGFpblB0cjxDVlBpeGVsQnVmZmVyUmVmPiByb3RhdGUoTWVkaWFTYW1wbGUmLCBjb25z
dCBSb3RhdGlvblByb3BlcnRpZXMmLCBJc0NHSW1hZ2VDb21wYXRpYmxlKTsKIAogICAgIGJvb2wg
aXNNYXRjaGluZyhNZWRpYVNhbXBsZSYsIGNvbnN0IFJvdGF0aW9uUHJvcGVydGllcyYpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlv
blNlc3Npb25WVC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2N2L0ltYWdl
Um90YXRpb25TZXNzaW9uVlQubW0KaW5kZXggYzZkNGUzNTFjMjAwMTUyMmMwMWJjY2YzOTlmZTQ2
ZjFhMjYxYWY5MC4uZDJjZTU3ZDFkNGU0OTk4YzgxZGQ4NzExNjQzYjA4NmEwZDM3MjJhYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlv
blNlc3Npb25WVC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9J
bWFnZVJvdGF0aW9uU2Vzc2lvblZULm1tCkBAIC0xMzIsNyArMTMyLDExIEBAIFJldGFpblB0cjxD
VlBpeGVsQnVmZmVyUmVmPiBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpyb3RhdGUoTWVkaWFTYW1w
bGUmIHNhbXBsZSwKICAgICBBU1NFUlQocGl4ZWxCdWZmZXIpOwogICAgIGlmICghcGl4ZWxCdWZm
ZXIpCiAgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiByb3RhdGUocGl4ZWxCdWZm
ZXIsIHJvdGF0aW9uLCBjdkltYWdlQ29tcGF0aWJpbGl0eSk7Cit9CiAKK1JldGFpblB0cjxDVlBp
eGVsQnVmZmVyUmVmPiBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpyb3RhdGUoQ1ZQaXhlbEJ1ZmZl
clJlZiBwaXhlbEJ1ZmZlciwgY29uc3QgUm90YXRpb25Qcm9wZXJ0aWVzJiByb3RhdGlvbiwgSXND
R0ltYWdlQ29tcGF0aWJsZSBjdkltYWdlQ29tcGF0aWJpbGl0eSkKK3sKICAgICBJbnRTaXplIHNp
emUgeyAoaW50KUNWUGl4ZWxCdWZmZXJHZXRXaWR0aChwaXhlbEJ1ZmZlciksIChpbnQpQ1ZQaXhl
bEJ1ZmZlckdldEhlaWdodChwaXhlbEJ1ZmZlcikgfTsKICAgICBpZiAocm90YXRpb24gIT0gbV9y
b3RhdGlvblByb3BlcnRpZXMgfHwgbV9zaXplICE9IHNpemUpCiAgICAgICAgIGluaXRpYWxpemUo
cm90YXRpb24sIHNpemUsIENWUGl4ZWxCdWZmZXJHZXRQaXhlbEZvcm1hdFR5cGUocGl4ZWxCdWZm
ZXIpLCBjdkltYWdlQ29tcGF0aWJpbGl0eSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQcml2YXRl
QVZGSW1wbC5jcHAKaW5kZXggODQ0YTk2OWY1M2Q0YWVmNzljZDI2YmIxYmVjNDI3OTRmYmQ0ZGVh
YS4uMmNhZmRkOTdiMGVjYzkwYzJiZjg1MTE5OTVlYTVkMWQ4NjIzNDhhOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyUHJpdmF0
ZUFWRkltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIv
TWVkaWFSZWNvcmRlclByaXZhdGVBVkZJbXBsLmNwcApAQCAtNzAsNyArNzAsNyBAQCBNZWRpYVJl
Y29yZGVyUHJpdmF0ZUFWRkltcGw6On5NZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGwoKQogCiB2
b2lkIE1lZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbDo6dmlkZW9TYW1wbGVBdmFpbGFibGUoTWVk
aWFTYW1wbGUmIHNhbXBsZUJ1ZmZlcikKIHsKLSAgICBtX3dyaXRlci0+YXBwZW5kVmlkZW9TYW1w
bGVCdWZmZXIoc2FtcGxlQnVmZmVyLnBsYXRmb3JtU2FtcGxlKCkuc2FtcGxlLmNtU2FtcGxlQnVm
ZmVyKTsKKyAgICBtX3dyaXRlci0+YXBwZW5kVmlkZW9TYW1wbGVCdWZmZXIoc2FtcGxlQnVmZmVy
KTsKIH0KIAogdm9pZCBNZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGw6OmF1ZGlvU2FtcGxlc0F2
YWlsYWJsZShjb25zdCBXVEY6Ok1lZGlhVGltZSYgbWVkaWFUaW1lLCBjb25zdCBQbGF0Zm9ybUF1
ZGlvRGF0YSYgZGF0YSwgY29uc3QgQXVkaW9TdHJlYW1EZXNjcmlwdGlvbiYgZGVzY3JpcHRpb24s
IHNpemVfdCBzYW1wbGVDb3VudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVy
UHJpdmF0ZVdyaXRlckNvY29hLmgKaW5kZXggNGYyMmI4MTUxNTg1MWNkYTI1ZWI4Yjk5ZWI0Nzcz
NjA4ZTY5NmU2YS4uYjMzYTgwZTM0YmZiOGNiNTVlN2Q3YTA5NDYxMmIwODA5ZDJkMGY2NiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRp
YVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmgK
QEAgLTU2LDYgKzU2LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBBdWRpb1NhbXBs
ZUJ1ZmZlckNvbXByZXNzb3I7CiBjbGFzcyBBdWRpb1N0cmVhbURlc2NyaXB0aW9uOworY2xhc3Mg
SW1hZ2VSb3RhdGlvblNlc3Npb25WVDsKK2NsYXNzIE1lZGlhU2FtcGxlOwogY2xhc3MgTWVkaWFT
dHJlYW1UcmFja1ByaXZhdGU7CiBjbGFzcyBQbGF0Zm9ybUF1ZGlvRGF0YTsKIGNsYXNzIFZpZGVv
U2FtcGxlQnVmZmVyQ29tcHJlc3NvcjsKQEAgLTY2LDcgKzY4LDcgQEAgcHVibGljOgogICAgIHN0
YXRpYyBSZWZQdHI8TWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXI+IGNyZWF0ZShib29sIGhhc0F1
ZGlvLCBib29sIGhhc1ZpZGVvLCBjb25zdCBNZWRpYVJlY29yZGVyUHJpdmF0ZU9wdGlvbnMmKTsK
ICAgICB+TWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXIoKTsKIAotICAgIHZvaWQgYXBwZW5kVmlk
ZW9TYW1wbGVCdWZmZXIoQ01TYW1wbGVCdWZmZXJSZWYpOworICAgIHZvaWQgYXBwZW5kVmlkZW9T
YW1wbGVCdWZmZXIoTWVkaWFTYW1wbGUmKTsKICAgICB2b2lkIGFwcGVuZEF1ZGlvU2FtcGxlQnVm
ZmVyKGNvbnN0IFBsYXRmb3JtQXVkaW9EYXRhJiwgY29uc3QgQXVkaW9TdHJlYW1EZXNjcmlwdGlv
biYsIGNvbnN0IFdURjo6TWVkaWFUaW1lJiwgc2l6ZV90KTsKICAgICB2b2lkIHN0b3BSZWNvcmRp
bmcoKTsKICAgICB2b2lkIGZldGNoRGF0YShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJlZlB0cjxT
aGFyZWRCdWZmZXI+JiYpPiYmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRl
clByaXZhdGVXcml0ZXJDb2NvYS5tbQppbmRleCA3OWZlZWUxODI4OTE1MjhlY2E0YTUxNDg5NzM2
Njc2NmFhODcxOTNkLi5kYzU1MjczMTg0ZDI3Y2Y0MTQ5ZmY4NjJkZjBlYzI0NDRhNmZjMjRiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01l
ZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29h
Lm1tCkBAIC00MjEsMTEgKzQyMSwxMSBAQCBzdGF0aWMgaW5saW5lIFJldGFpblB0cjxDTVNhbXBs
ZUJ1ZmZlclJlZj4gY29weVNhbXBsZUJ1ZmZlcldpdGhDdXJyZW50VGltZVN0YW1wKAogICAgIHJl
dHVybiBhZG9wdENGKG5ld0J1ZmZlcik7CiB9CiAKLXZvaWQgTWVkaWFSZWNvcmRlclByaXZhdGVX
cml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVmIHNhbXBsZUJ1
ZmZlcikKK3ZvaWQgTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxl
QnVmZmVyKE1lZGlhU2FtcGxlJiBzYW1wbGUpCiB7CiAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBu
b3Qgc2V0IHRoZSB0aW1lc3RhbXBzIGlmIHRoZXkgYXJlIGFscmVhZHkgc2V0LgotICAgIGlmIChh
dXRvIGJ1ZmZlcldpdGhDdXJyZW50VGltZSA9IGNvcHlTYW1wbGVCdWZmZXJXaXRoQ3VycmVudFRp
bWVTdGFtcChzYW1wbGVCdWZmZXIpKQotICAgICAgICBtX3ZpZGVvQ29tcHJlc3Nvci0+YWRkU2Ft
cGxlQnVmZmVyKGJ1ZmZlcldpdGhDdXJyZW50VGltZS5nZXQoKSk7CisgICAgaWYgKGF1dG8gYnVm
ZmVyV2l0aEN1cnJlbnRUaW1lID0gY29weVNhbXBsZUJ1ZmZlcldpdGhDdXJyZW50VGltZVN0YW1w
KHNhbXBsZS5wbGF0Zm9ybVNhbXBsZSgpLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcikpCisgICAgICAg
IG1fdmlkZW9Db21wcmVzc29yLT5hZGRTYW1wbGVCdWZmZXIoYnVmZmVyV2l0aEN1cnJlbnRUaW1l
LmdldCgpLCBzYW1wbGUudmlkZW9Sb3RhdGlvbigpKTsKIH0KIAogc3RhdGljIGlubGluZSBSZXRh
aW5QdHI8Q01Gb3JtYXREZXNjcmlwdGlvblJlZj4gY3JlYXRlQXVkaW9Gb3JtYXREZXNjcmlwdGlv
bihjb25zdCBBdWRpb1N0cmVhbURlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbikKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvVmlkZW9TYW1wbGVC
dWZmZXJDb21wcmVzc29yLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVy
L2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvci5oCmluZGV4IDlkMTYzNTI5NGM5ZGFi
OWEyOTdjMGQ2OTkzNDQyOWY2OWYwMjgxM2YuLjdmZmI0M2NmMTM4YjMwNDQ4ZjY5MjMxZmJlZmJh
ODIwMzUzMDZkNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVj
b3JkZXIvY29jb2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRlb1NhbXBsZUJ1ZmZlckNvbXBy
ZXNzb3IuaApAQCAtMjYsMTQgKzI2LDE4IEBACiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKSAm
JiBVU0UoQVZGT1VOREFUSU9OKQogCisjaW5jbHVkZSAiTWVkaWFTYW1wbGUuaCIKICNpbmNsdWRl
IDxDb3JlTWVkaWEvQ29yZU1lZGlhLmg+CiAjaW5jbHVkZSA8VmlkZW9Ub29sYm94L1ZURXJyb3Jz
Lmg+CiAKIHR5cGVkZWYgc3RydWN0IG9wYXF1ZUNNU2FtcGxlQnVmZmVyICpDTVNhbXBsZUJ1ZmZl
clJlZjsKIHR5cGVkZWYgc3RydWN0IE9wYXF1ZVZUQ29tcHJlc3Npb25TZXNzaW9uICpWVENvbXBy
ZXNzaW9uU2Vzc2lvblJlZjsKK3R5cGVkZWYgc3RydWN0IF9fQ1ZCdWZmZXIgKkNWUGl4ZWxCdWZm
ZXJSZWY7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgSW1hZ2VSb3RhdGlvblNlc3Np
b25WVDsKKwogY2xhc3MgVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yIHsKICAgICBXVEZfTUFL
RV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKQEAgLTQyLDcgKzQ2LDcgQEAgcHVibGljOgogCiAg
ICAgdm9pZCBzZXRCaXRzUGVyU2Vjb25kKHVuc2lnbmVkKTsKICAgICB2b2lkIGZpbmlzaCgpOwot
ICAgIHZvaWQgYWRkU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVmKTsKKyAgICB2b2lkIGFk
ZFNhbXBsZUJ1ZmZlcihDTVNhbXBsZUJ1ZmZlclJlZiwgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRp
b24pOwogICAgIENNU2FtcGxlQnVmZmVyUmVmIGdldE91dHB1dFNhbXBsZUJ1ZmZlcigpOwogICAg
IFJldGFpblB0cjxDTVNhbXBsZUJ1ZmZlclJlZj4gdGFrZU91dHB1dFNhbXBsZUJ1ZmZlcigpOwog
CkBAIC01MSw4ICs1NSw5IEBAIHByaXZhdGU6CiAKICAgICBib29sIGluaXRpYWxpemUoQ01CdWZm
ZXJRdWV1ZVRyaWdnZXJDYWxsYmFjaywgdm9pZCogY2FsbGJhY2tPYmplY3QpOwogCi0gICAgdm9p
ZCBwcm9jZXNzU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVmKTsKLSAgICBib29sIGluaXRD
b21wcmVzc2lvblNlc3Npb24oQ01WaWRlb0Zvcm1hdERlc2NyaXB0aW9uUmVmKTsKKyAgICB2b2lk
IHByb2Nlc3NTYW1wbGVCdWZmZXIoQ01TYW1wbGVCdWZmZXJSZWYsIE1lZGlhU2FtcGxlOjpWaWRl
b1JvdGF0aW9uKTsKKyAgICBib29sIGluaXRDb21wcmVzc2lvblNlc3Npb24oaW50IHdpZHRoLCBp
bnQgaGVpZ2h0KTsKKyAgICBSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gcm90YXRlUGl4ZWxC
dWZmZXIoQ1ZQaXhlbEJ1ZmZlclJlZiwgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb24pOwogCiAg
ICAgc3RhdGljIHZvaWQgdmlkZW9Db21wcmVzc2lvbkNhbGxiYWNrKHZvaWQgKnJlZkNvbiwgdm9p
ZCosIE9TU3RhdHVzLCBWVEVuY29kZUluZm9GbGFncywgQ01TYW1wbGVCdWZmZXJSZWYpOwogCkBA
IC02Niw2ICs3MSw3IEBAIHByaXZhdGU6CiAgICAgZmxvYXQgbV9tYXhLZXlGcmFtZUludGVydmFs
RHVyYXRpb24geyAyLjAgfTsKICAgICB1bnNpZ25lZCBtX2V4cGVjdGVkRnJhbWVSYXRlIHsgMzAg
fTsKICAgICBPcHRpb25hbDx1bnNpZ25lZD4gbV9vdXRwdXRCaXRSYXRlOworICAgIHN0ZDo6dW5p
cXVlX3B0cjxJbWFnZVJvdGF0aW9uU2Vzc2lvblZUPiBtX3JvdGF0aW9uU2Vzc2lvbjsKIH07CiAK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29j
b2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IubW0KaW5k
ZXggM2FhYmE2OThkZjdmYmU0NTdiMzJiYjQyMjNkNDFlYTJlZjExNDYwNS4uMDM4MjVmMDc4YTNh
MTk0OWU5MDMwNTM5ZGNiMTRkMjE3MjhlZGI3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3Iu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRl
b1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IubW0KQEAgLTI3LDYgKzI3LDcgQEAKIAogI2lmIEVOQUJM
RShNRURJQV9TVFJFQU0pICYmIFVTRShBVkZPVU5EQVRJT04pCiAKKyNpbXBvcnQgIkltYWdlUm90
YXRpb25TZXNzaW9uVlQuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKICNpbXBvcnQgPENvcmVNZWRp
YS9Db3JlTWVkaWEuaD4KICNpbXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgpAQCAtMTE1
LDkgKzExNiw4IEBAIHN0YXRpYyBpbmxpbmUgT1NTdGF0dXMgc2V0Q29tcHJlc3Npb25TZXNzaW9u
UHJvcGVydHkoVlRDb21wcmVzc2lvblNlc3Npb25SZWYgdnRTCiAgICAgcmV0dXJuIHN0YXR1czsK
IH0KIAotYm9vbCBWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I6OmluaXRDb21wcmVzc2lvblNl
c3Npb24oQ01WaWRlb0Zvcm1hdERlc2NyaXB0aW9uUmVmIGZvcm1hdERlc2NyaXB0aW9uKQorYm9v
bCBWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I6OmluaXRDb21wcmVzc2lvblNlc3Npb24oaW50
IHdpZHRoLCBpbnQgaGVpZ2h0KQogewotICAgIENNVmlkZW9EaW1lbnNpb25zIGRpbWVuc2lvbnMg
PSBDTVZpZGVvRm9ybWF0RGVzY3JpcHRpb25HZXREaW1lbnNpb25zKGZvcm1hdERlc2NyaXB0aW9u
KTsKICNpZiBQTEFURk9STShJT1MpCiAgICAgTlNEaWN0aW9uYXJ5ICplbmNvZGVyU3BlY2lmaWNh
dGlvbnMgPSBuaWw7CiAjZWxzZQpAQCAtMTI1LDcgKzEyNSw3IEBAIGJvb2wgVmlkZW9TYW1wbGVC
dWZmZXJDb21wcmVzc29yOjppbml0Q29tcHJlc3Npb25TZXNzaW9uKENNVmlkZW9Gb3JtYXREZXNj
cmlwdGlvCiAjZW5kaWYKIAogICAgIFZUQ29tcHJlc3Npb25TZXNzaW9uUmVmIHZ0U2Vzc2lvbjsK
LSAgICBhdXRvIGVycm9yID0gVlRDb21wcmVzc2lvblNlc3Npb25DcmVhdGUoa0NGQWxsb2NhdG9y
RGVmYXVsdCwgZGltZW5zaW9ucy53aWR0aCwgZGltZW5zaW9ucy5oZWlnaHQsIG1fb3V0cHV0Q29k
ZWNUeXBlLCAoX19icmlkZ2UgQ0ZEaWN0aW9uYXJ5UmVmKWVuY29kZXJTcGVjaWZpY2F0aW9ucywg
TlVMTCwgTlVMTCwgdmlkZW9Db21wcmVzc2lvbkNhbGxiYWNrLCB0aGlzLCAmdnRTZXNzaW9uKTsK
KyAgICBhdXRvIGVycm9yID0gVlRDb21wcmVzc2lvblNlc3Npb25DcmVhdGUoa0NGQWxsb2NhdG9y
RGVmYXVsdCwgd2lkdGgsIGhlaWdodCwgbV9vdXRwdXRDb2RlY1R5cGUsIChfX2JyaWRnZSBDRkRp
Y3Rpb25hcnlSZWYpZW5jb2RlclNwZWNpZmljYXRpb25zLCBOVUxMLCBOVUxMLCB2aWRlb0NvbXBy
ZXNzaW9uQ2FsbGJhY2ssIHRoaXMsICZ2dFNlc3Npb24pOwogICAgIGlmIChlcnJvcikgewogICAg
ICAgICBSRUxFQVNFX0xPR19FUlJPUihNZWRpYVN0cmVhbSwgIlZpZGVvU2FtcGxlQnVmZmVyQ29t
cHJlc3NvciBWVENvbXByZXNzaW9uU2Vzc2lvbkNyZWF0ZSBmYWlsZWQgd2l0aCAlZCIsIGVycm9y
KTsKICAgICAgICAgcmV0dXJuIE5POwpAQCAtMTUwLDI3ICsxNTAsNTcgQEAgYm9vbCBWaWRlb1Nh
bXBsZUJ1ZmZlckNvbXByZXNzb3I6OmluaXRDb21wcmVzc2lvblNlc3Npb24oQ01WaWRlb0Zvcm1h
dERlc2NyaXB0aW8KICAgICByZXR1cm4gWUVTOwogfQogCi12b2lkIFZpZGVvU2FtcGxlQnVmZmVy
Q29tcHJlc3Nvcjo6cHJvY2Vzc1NhbXBsZUJ1ZmZlcihDTVNhbXBsZUJ1ZmZlclJlZiBidWZmZXIp
CitzdGF0aWMgaW5saW5lIHVuc2lnbmVkIHJvdGF0aW9uVG9BbmdsZShNZWRpYVNhbXBsZTo6Vmlk
ZW9Sb3RhdGlvbiByb3RhdGlvbikKIHsKKyAgICBzd2l0Y2ggKHJvdGF0aW9uKSB7CisgICAgY2Fz
ZSBNZWRpYVNhbXBsZTo6VmlkZW9Sb3RhdGlvbjo6Tm9uZToKKyAgICAgICAgcmV0dXJuIDA7Cisg
ICAgY2FzZSBNZWRpYVNhbXBsZTo6VmlkZW9Sb3RhdGlvbjo6VXBzaWRlRG93bjoKKyAgICAgICAg
cmV0dXJuIDE4MDsKKyAgICBjYXNlIE1lZGlhU2FtcGxlOjpWaWRlb1JvdGF0aW9uOjpSaWdodDoK
KyAgICAgICAgcmV0dXJuIDkwOworICAgIGNhc2UgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb246
OkxlZnQ6CisgICAgICAgIHJldHVybiAyNzA7CisgICAgfQorfQorCitSZXRhaW5QdHI8Q1ZQaXhl
bEJ1ZmZlclJlZj4gVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjpyb3RhdGVQaXhlbEJ1ZmZl
cihDVlBpeGVsQnVmZmVyUmVmIGJ1ZmZlciwgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb24gcm90
YXRpb24pCit7CisgICAgaWYgKCFtX3JvdGF0aW9uU2Vzc2lvbikKKyAgICAgICAgbV9yb3RhdGlv
blNlc3Npb24gPSBtYWtlVW5pcXVlPEltYWdlUm90YXRpb25TZXNzaW9uVlQ+KCk7CisKKyAgICBJ
bWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpSb3RhdGlvblByb3BlcnRpZXMgcm90YXRpb25Qcm9wZXJ0
aWVzOworICAgIHJvdGF0aW9uUHJvcGVydGllcy5hbmdsZSA9IHJvdGF0aW9uVG9BbmdsZShyb3Rh
dGlvbik7CisgICAgcmV0dXJuIG1fcm90YXRpb25TZXNzaW9uLT5yb3RhdGUoYnVmZmVyLCByb3Rh
dGlvblByb3BlcnRpZXMsIEltYWdlUm90YXRpb25TZXNzaW9uVlQ6OklzQ0dJbWFnZUNvbXBhdGli
bGU6Ok5vKTsKK30KKwordm9pZCBWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I6OnByb2Nlc3NT
YW1wbGVCdWZmZXIoQ01TYW1wbGVCdWZmZXJSZWYgYnVmZmVyLCBNZWRpYVNhbXBsZTo6VmlkZW9S
b3RhdGlvbiByb3RhdGlvbikKK3sKKyAgICBSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gcm90
YXRlZFBpeGVsQnVmZmVyOworICAgIGF1dG8gaW1hZ2VCdWZmZXIgPSBDTVNhbXBsZUJ1ZmZlckdl
dEltYWdlQnVmZmVyKGJ1ZmZlcik7CisgICAgaWYgKHJvdGF0aW9uICE9IE1lZGlhU2FtcGxlOjpW
aWRlb1JvdGF0aW9uOjpOb25lKSB7CisgICAgICAgIHJvdGF0ZWRQaXhlbEJ1ZmZlciA9IHJvdGF0
ZVBpeGVsQnVmZmVyKGltYWdlQnVmZmVyLCByb3RhdGlvbik7CisgICAgICAgIGltYWdlQnVmZmVy
ID0gcm90YXRlZFBpeGVsQnVmZmVyLmdldCgpOworICAgIH0KKwogICAgIGlmICghbV92dFNlc3Np
b24pIHsKLSAgICAgICAgaWYgKCFpbml0Q29tcHJlc3Npb25TZXNzaW9uKENNU2FtcGxlQnVmZmVy
R2V0Rm9ybWF0RGVzY3JpcHRpb24oYnVmZmVyKSkpCisgICAgICAgIGlmICghaW5pdENvbXByZXNz
aW9uU2Vzc2lvbihDVlBpeGVsQnVmZmVyR2V0V2lkdGgoaW1hZ2VCdWZmZXIpLCBDVlBpeGVsQnVm
ZmVyR2V0SGVpZ2h0KGltYWdlQnVmZmVyKSkpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgfQog
Ci0gICAgYXV0byBpbWFnZUJ1ZmZlciA9IENNU2FtcGxlQnVmZmVyR2V0SW1hZ2VCdWZmZXIoYnVm
ZmVyKTsKICAgICBhdXRvIHByZXNlbnRhdGlvblRpbWVTdGFtcCA9IENNU2FtcGxlQnVmZmVyR2V0
UHJlc2VudGF0aW9uVGltZVN0YW1wKGJ1ZmZlcik7CiAgICAgYXV0byBkdXJhdGlvbiA9IENNU2Ft
cGxlQnVmZmVyR2V0RHVyYXRpb24oYnVmZmVyKTsKICAgICBhdXRvIGVycm9yID0gVlRDb21wcmVz
c2lvblNlc3Npb25FbmNvZGVGcmFtZShtX3Z0U2Vzc2lvbi5nZXQoKSwgaW1hZ2VCdWZmZXIsIHBy
ZXNlbnRhdGlvblRpbWVTdGFtcCwgZHVyYXRpb24sIE5VTEwsIHRoaXMsIE5VTEwpOwogICAgIFJF
TEVBU0VfTE9HX0VSUk9SX0lGKGVycm9yLCBNZWRpYVN0cmVhbSwgIlZpZGVvU2FtcGxlQnVmZmVy
Q29tcHJlc3NvciBWVENvbXByZXNzaW9uU2Vzc2lvbkVuY29kZUZyYW1lIGZhaWxlZCB3aXRoICVk
IiwgZXJyb3IpOwogfQogCi12b2lkIFZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvcjo6YWRkU2Ft
cGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVmIGJ1ZmZlcikKK3ZvaWQgVmlkZW9TYW1wbGVCdWZm
ZXJDb21wcmVzc29yOjphZGRTYW1wbGVCdWZmZXIoQ01TYW1wbGVCdWZmZXJSZWYgYnVmZmVyLCBN
ZWRpYVNhbXBsZTo6VmlkZW9Sb3RhdGlvbiByb3RhdGlvbikKIHsKICAgICBkaXNwYXRjaF9zeW5j
KG1fc2VyaWFsRGlzcGF0Y2hRdWV1ZSwgXnsKICAgICAgICAgaWYgKCFtX2lzRW5jb2RpbmcpCiAg
ICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgcHJvY2Vzc1NhbXBsZUJ1ZmZlcihidWZmZXIp
OworICAgICAgICBwcm9jZXNzU2FtcGxlQnVmZmVyKGJ1ZmZlciwgcm90YXRpb24pOwogICAgIH0p
OwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mvd2VicnRjL1JlbW90
ZU1lZGlhUmVjb3JkZXIuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL3dlYnJ0Yy9SZW1v
dGVNZWRpYVJlY29yZGVyLmNwcAppbmRleCA2MDM0YzJkNWY4ZDI1OGJhZTQ1ZWE1MzVhOTU2MDQx
YTc2NTc0NjFmLi4yZmRmOTczNjI3YjA2NGVhOGVhODAyYjBjMTUzZWMyY2QyYWEwNGQyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mvd2VicnRjL1JlbW90ZU1lZGlhUmVjb3Jk
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy93ZWJydGMvUmVtb3RlTWVkaWFS
ZWNvcmRlci5jcHAKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIFJlbW90ZU1lZGlhUmVjb3JkZXI6
OnZpZGVvU2FtcGxlQXZhaWxhYmxlKFdlYkNvcmU6OlJlbW90ZVZpZGVvU2FtcGxlJiYgcmVtbwog
ICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgbV93cml0ZXItPmFwcGVuZFZpZGVvU2FtcGxl
QnVmZmVyKHNhbXBsZUJ1ZmZlci0+cGxhdGZvcm1TYW1wbGUoKS5zYW1wbGUuY21TYW1wbGVCdWZm
ZXIpOworICAgIG1fd3JpdGVyLT5hcHBlbmRWaWRlb1NhbXBsZUJ1ZmZlcigqc2FtcGxlQnVmZmVy
KTsKIH0KIAogdm9pZCBSZW1vdGVNZWRpYVJlY29yZGVyOjpmZXRjaERhdGEoQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChJUEM6OkRhdGFSZWZlcmVuY2UmJiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTA4ODRhZWVmMGZhMGMyMGIxMGVjMDgzN2Rl
NDY4MzE3NGE0MTBkYi4uZmM5ZWUxYjgzOTVjOGZkNmZiM2UyYzU4MzkzNzEwZGJjY2JjZjU2ZCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA5LTIxICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
QGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29yZGVyIGluY29ycmVjdCBzY3Jl
ZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTE4MDI1MjE+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBodHRw
L3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVvLXJvdGF0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi5odG1sOiBBZGRl
ZC4KKwogMjAyMC0wOS0xOCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAg
ICAgICAgQWRkIHN1cHBvcnQgZm9yIEhUTUxNZWRpYUVsZW1lbnQuc2V0U2lua0lkCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVvLXJvdGF0aW9uLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlkZW8tcm90
YXRpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUwYjNjMDBjNTVmMGY0Yjk2ZWI2NGZkNWM4
Y2VkZmM2ZjY3OTJhZmEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9t
ZWRpYXJlY29yZGVyL3ZpZGVvLXJvdGF0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAK
KworCitQQVNTIFJlY29yZCBhIHJvdGF0ZWQgdmlkZW8gCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlkZW8tcm90YXRpb24uaHRtbCBiL0xheW91dFRl
c3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlkZW8tcm90YXRpb24uaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li44MTU4YTg0MTU3OGNjNWQ2NGVhNjdlMGExZjg4MmQwZWFlZmQyY2RmCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi5o
dG1sCkBAIC0wLDAgKzEsNDUgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+
CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAgICAgPHRpdGxlPlRlc3Rpbmcg
dmlkZW8gcm90YXRpb24gaW4gbWVkaWEgcmVjb3JkZXI8L3RpdGxlPgorICAgICAgICA8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8
L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDx2aWRlbyBpZD0icmVjb3JkZWRWaWRlbyIgYXV0
b3BsYXkgcGxheXNJbmxpbmUgd2lkdGg9IjMyMCIgaGVpZ2h0PSIyNDAiPjwvdmlkZW8+CisgICAg
ICAgIDxzY3JpcHQ+Citwcm9taXNlX3Rlc3QoYXN5bmMgKHRlc3QpID0+IHsKKyAgICBjb25zdCBz
dHJlYW0gPSBhd2FpdCBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7dmlkZW86
IHRydWUgfSk7CisgICAgbGV0IGV4cGVjdGVkV2lkdGggPSA2NDA7CisgICAgbGV0IGV4cGVjdGVk
SGVpZ2h0ID0gNDgwOworCisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKKyAgICAgICAgd2lu
ZG93LmludGVybmFscy5zZXRDYW1lcmFNZWRpYVN0cmVhbVRyYWNrT3JpZW50YXRpb24oc3RyZWFt
LmdldFZpZGVvVHJhY2tzKClbMF0sIDkwKTsKKyAgICAgICAgdGVzdFJ1bm5lci5zZXRNb2NrQ2Ft
ZXJhT3JpZW50YXRpb24oOTApOworCisgICAgICAgIGV4cGVjdGVkV2lkdGggPSA0ODA7CisgICAg
ICAgIGV4cGVjdGVkSGVpZ2h0ID0gNjQwOworICAgIH0KKworICAgIGNvbnN0IHJlY29yZGVyID0g
bmV3IE1lZGlhUmVjb3JkZXIoc3RyZWFtKTsKKyAgICBjb25zdCBwcm9taXNlID0gbmV3IFByb21p
c2UoKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAgICByZWNvcmRlci5vbmRhdGFhdmFpbGFi
bGUgPSAoZSkgPT4gcmVzb2x2ZShlLmRhdGEpOworICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHJl
amVjdCgiZGF0YXZhaWxhYmxlIGV2ZW50IHRpbWVkIG91dCIpLCA1MDAwKTsKKyAgICB9KTsKKyAg
ICByZWNvcmRlci5zdGFydCgpOworICAgIHNldFRpbWVvdXQoKCkgPT4gcmVjb3JkZXIuc3RvcCgp
LCAxMDAwKTsKKyAgICBjb25zdCBibG9iID0gYXdhaXQgcHJvbWlzZTsKKworICAgIGNvbnN0IHVy
bCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7CisgICAgcmVjb3JkZWRWaWRlby5zcmMgPSB1
cmw7CisgICAgYXdhaXQgcmVjb3JkZWRWaWRlby5wbGF5KCk7CisKKyAgICBVUkwucmV2b2tlT2Jq
ZWN0VVJMKHVybCk7CisKKyAgICBhc3NlcnRfZXF1YWxzKHJlY29yZGVkVmlkZW8udmlkZW9XaWR0
aCwgZXhwZWN0ZWRXaWR0aCwgInJlY29yZGVkIHZpZGVvIHdpZHRoIik7CisgICAgYXNzZXJ0X2Vx
dWFscyhyZWNvcmRlZFZpZGVvLnZpZGVvSGVpZ2h0LCBleHBlY3RlZEhlaWdodCwgInJlY29yZGVk
IHZpZGVvIGhlaWdodCIpOworfSwgIlJlY29yZCBhIHJvdGF0ZWQgdmlkZW8iKTsKKyAgICAgICAg
PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409272</attachid>
            <date>2020-09-21 05:25:40 -0700</date>
            <delta_ts>2020-09-21 06:19:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-198912-20200921142538.patch</filename>
            <type>text/plain</type>
            <size>18276</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3MjI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGRiNzk1ODczZjVlNWFh
NGIzNjg1YzI0OTY4M2M2ZGYwZDEzMmRjNy4uYzcyYWI4ZjUwM2Q1OWI2ZTBiYjg2NGM4OGFlZDJl
OTgzNDU1MjY0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIwLTA5LTIxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29y
ZGVyIGluY29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgSnVzdCBiZWZvcmUgZW5jb2RpbmcgdGhlIHZpZGVvIHNhbXBsZSwgcm90YXRl
IGl0IGlmIG5lZWRlZC4KKyAgICAgICAgVXBkYXRlIEltYWdlUm90YXRpb25TZXNzaW9uVlQgdG8g
cGFzcyBhIENWUGl4ZWxCdWZmZXIgdG8gcm90YXRlLgorICAgICAgICBVcGRhdGUgTWVkaWFSZWNv
cmRlclByaXZhdGVXcml0ZXJDb2NvYSB0byBwYXNzIGEgTWVkaWFTYW1wbGUgZG93biB0byBoYW5k
bGUgcm90YXRpb24uCisKKyAgICAgICAgVGVzdDogaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRl
by1yb3RhdGlvbi5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVJv
dGF0aW9uU2Vzc2lvblZULmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VS
b3RhdGlvblNlc3Npb25WVC5tbToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlUm90YXRpb25TZXNz
aW9uVlQ6OnJvdGF0ZSk6CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9NZWRpYVJl
Y29yZGVyUHJpdmF0ZUFWRkltcGwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFSZWNvcmRl
clByaXZhdGVBVkZJbXBsOjp2aWRlb1NhbXBsZUF2YWlsYWJsZSk6CisgICAgICAgICogcGxhdGZv
cm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmg6
CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJp
dmF0ZVdyaXRlckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFSZWNvcmRlclByaXZh
dGVXcml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9t
ZWRpYXJlY29yZGVyL2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvci5oOgorICAgICAg
ICAqIHBsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVz
c29yLm1tOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjpp
bml0Q29tcHJlc3Npb25TZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6OnJvdGF0aW9uVG9Bbmds
ZSk6CisgICAgICAgIChXZWJDb3JlOjpWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I6OnJvdGF0
ZVBpeGVsQnVmZmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvU2FtcGxlQnVmZmVyQ29tcHJl
c3Nvcjo6cHJvY2Vzc1NhbXBsZUJ1ZmZlcik6CisgICAgICAgIChXZWJDb3JlOjpWaWRlb1NhbXBs
ZUJ1ZmZlckNvbXByZXNzb3I6OmFkZFNhbXBsZUJ1ZmZlcik6CisKIDIwMjAtMDktMTggIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBI
VE1MTWVkaWFFbGVtZW50LnNldFNpbmtJZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBkZjY0NTY5MmM0ZWE0YmU1NzQz
YmI5ODYxZGI3ZGI5ODE0NzUxMjM0Li5lNjFiMzc2YzI1YWZiNmRiNDJmMDE1Y2RiMDkyYWM2Zjc0
MTY2N2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA5LTIxICBZb3Vlbm4gRmFi
bGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29yZGVyIGlu
Y29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBHUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6UmVtb3RlTWVkaWFSZWNvcmRlcjo6dmlkZW9TYW1wbGVBdmFpbGFibGUpOgor
CiAyMDIwLTA5LTE4ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAg
ICBBZGQgc3VwcG9ydCBmb3IgSFRNTE1lZGlhRWxlbWVudC5zZXRTaW5rSWQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2N2L0ltYWdlUm90YXRpb25TZXNzaW9u
VlQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2N2L0ltYWdlUm90YXRpb25T
ZXNzaW9uVlQuaAppbmRleCA0OGE0MGFjMTFhNjI1OTNjYzE1YjJmYWRjM2VmMTgyNDI3MWM0M2U0
Li4yYjJhYjc3MTNlNmVmMjFiYmNjNDJkM2E0NzNiZGRjNWRhNDAyNDY5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVJvdGF0aW9uU2Vzc2lvblZU
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlv
blNlc3Npb25WVC5oCkBAIC02Miw2ICs2Miw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBGbG9hdFNp
emUmIHJvdGF0ZWRTaXplKCkgeyByZXR1cm4gbV9yb3RhdGVkU2l6ZTsgfQogCiAgICAgUmV0YWlu
UHRyPENWUGl4ZWxCdWZmZXJSZWY+IHJvdGF0ZShDVlBpeGVsQnVmZmVyUmVmKTsKKyAgICBSZXRh
aW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gcm90YXRlKENWUGl4ZWxCdWZmZXJSZWYsIGNvbnN0IFJv
dGF0aW9uUHJvcGVydGllcyYsIElzQ0dJbWFnZUNvbXBhdGlibGUpOwogICAgIFdFQkNPUkVfRVhQ
T1JUIFJldGFpblB0cjxDVlBpeGVsQnVmZmVyUmVmPiByb3RhdGUoTWVkaWFTYW1wbGUmLCBjb25z
dCBSb3RhdGlvblByb3BlcnRpZXMmLCBJc0NHSW1hZ2VDb21wYXRpYmxlKTsKIAogICAgIGJvb2wg
aXNNYXRjaGluZyhNZWRpYVNhbXBsZSYsIGNvbnN0IFJvdGF0aW9uUHJvcGVydGllcyYpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlv
blNlc3Npb25WVC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2N2L0ltYWdl
Um90YXRpb25TZXNzaW9uVlQubW0KaW5kZXggYzZkNGUzNTFjMjAwMTUyMmMwMWJjY2YzOTlmZTQ2
ZjFhMjYxYWY5MC4uZDJjZTU3ZDFkNGU0OTk4YzgxZGQ4NzExNjQzYjA4NmEwZDM3MjJhYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvSW1hZ2VSb3RhdGlv
blNlc3Npb25WVC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9J
bWFnZVJvdGF0aW9uU2Vzc2lvblZULm1tCkBAIC0xMzIsNyArMTMyLDExIEBAIFJldGFpblB0cjxD
VlBpeGVsQnVmZmVyUmVmPiBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpyb3RhdGUoTWVkaWFTYW1w
bGUmIHNhbXBsZSwKICAgICBBU1NFUlQocGl4ZWxCdWZmZXIpOwogICAgIGlmICghcGl4ZWxCdWZm
ZXIpCiAgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiByb3RhdGUocGl4ZWxCdWZm
ZXIsIHJvdGF0aW9uLCBjdkltYWdlQ29tcGF0aWJpbGl0eSk7Cit9CiAKK1JldGFpblB0cjxDVlBp
eGVsQnVmZmVyUmVmPiBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpyb3RhdGUoQ1ZQaXhlbEJ1ZmZl
clJlZiBwaXhlbEJ1ZmZlciwgY29uc3QgUm90YXRpb25Qcm9wZXJ0aWVzJiByb3RhdGlvbiwgSXND
R0ltYWdlQ29tcGF0aWJsZSBjdkltYWdlQ29tcGF0aWJpbGl0eSkKK3sKICAgICBJbnRTaXplIHNp
emUgeyAoaW50KUNWUGl4ZWxCdWZmZXJHZXRXaWR0aChwaXhlbEJ1ZmZlciksIChpbnQpQ1ZQaXhl
bEJ1ZmZlckdldEhlaWdodChwaXhlbEJ1ZmZlcikgfTsKICAgICBpZiAocm90YXRpb24gIT0gbV9y
b3RhdGlvblByb3BlcnRpZXMgfHwgbV9zaXplICE9IHNpemUpCiAgICAgICAgIGluaXRpYWxpemUo
cm90YXRpb24sIHNpemUsIENWUGl4ZWxCdWZmZXJHZXRQaXhlbEZvcm1hdFR5cGUocGl4ZWxCdWZm
ZXIpLCBjdkltYWdlQ29tcGF0aWJpbGl0eSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQcml2YXRl
QVZGSW1wbC5jcHAKaW5kZXggODQ0YTk2OWY1M2Q0YWVmNzljZDI2YmIxYmVjNDI3OTRmYmQ0ZGVh
YS4uMmNhZmRkOTdiMGVjYzkwYzJiZjg1MTE5OTVlYTVkMWQ4NjIzNDhhOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVyUHJpdmF0
ZUFWRkltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIv
TWVkaWFSZWNvcmRlclByaXZhdGVBVkZJbXBsLmNwcApAQCAtNzAsNyArNzAsNyBAQCBNZWRpYVJl
Y29yZGVyUHJpdmF0ZUFWRkltcGw6On5NZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGwoKQogCiB2
b2lkIE1lZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbDo6dmlkZW9TYW1wbGVBdmFpbGFibGUoTWVk
aWFTYW1wbGUmIHNhbXBsZUJ1ZmZlcikKIHsKLSAgICBtX3dyaXRlci0+YXBwZW5kVmlkZW9TYW1w
bGVCdWZmZXIoc2FtcGxlQnVmZmVyLnBsYXRmb3JtU2FtcGxlKCkuc2FtcGxlLmNtU2FtcGxlQnVm
ZmVyKTsKKyAgICBtX3dyaXRlci0+YXBwZW5kVmlkZW9TYW1wbGVCdWZmZXIoc2FtcGxlQnVmZmVy
KTsKIH0KIAogdm9pZCBNZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGw6OmF1ZGlvU2FtcGxlc0F2
YWlsYWJsZShjb25zdCBXVEY6Ok1lZGlhVGltZSYgbWVkaWFUaW1lLCBjb25zdCBQbGF0Zm9ybUF1
ZGlvRGF0YSYgZGF0YSwgY29uc3QgQXVkaW9TdHJlYW1EZXNjcmlwdGlvbiYgZGVzY3JpcHRpb24s
IHNpemVfdCBzYW1wbGVDb3VudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVy
UHJpdmF0ZVdyaXRlckNvY29hLmgKaW5kZXggNGYyMmI4MTUxNTg1MWNkYTI1ZWI4Yjk5ZWI0Nzcz
NjA4ZTY5NmU2YS4uYjMzYTgwZTM0YmZiOGNiNTVlN2Q3YTA5NDYxMmIwODA5ZDJkMGY2NiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRp
YVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmgK
QEAgLTU2LDYgKzU2LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBBdWRpb1NhbXBs
ZUJ1ZmZlckNvbXByZXNzb3I7CiBjbGFzcyBBdWRpb1N0cmVhbURlc2NyaXB0aW9uOworY2xhc3Mg
SW1hZ2VSb3RhdGlvblNlc3Npb25WVDsKK2NsYXNzIE1lZGlhU2FtcGxlOwogY2xhc3MgTWVkaWFT
dHJlYW1UcmFja1ByaXZhdGU7CiBjbGFzcyBQbGF0Zm9ybUF1ZGlvRGF0YTsKIGNsYXNzIFZpZGVv
U2FtcGxlQnVmZmVyQ29tcHJlc3NvcjsKQEAgLTY2LDcgKzY4LDcgQEAgcHVibGljOgogICAgIHN0
YXRpYyBSZWZQdHI8TWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXI+IGNyZWF0ZShib29sIGhhc0F1
ZGlvLCBib29sIGhhc1ZpZGVvLCBjb25zdCBNZWRpYVJlY29yZGVyUHJpdmF0ZU9wdGlvbnMmKTsK
ICAgICB+TWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXIoKTsKIAotICAgIHZvaWQgYXBwZW5kVmlk
ZW9TYW1wbGVCdWZmZXIoQ01TYW1wbGVCdWZmZXJSZWYpOworICAgIHZvaWQgYXBwZW5kVmlkZW9T
YW1wbGVCdWZmZXIoTWVkaWFTYW1wbGUmKTsKICAgICB2b2lkIGFwcGVuZEF1ZGlvU2FtcGxlQnVm
ZmVyKGNvbnN0IFBsYXRmb3JtQXVkaW9EYXRhJiwgY29uc3QgQXVkaW9TdHJlYW1EZXNjcmlwdGlv
biYsIGNvbnN0IFdURjo6TWVkaWFUaW1lJiwgc2l6ZV90KTsKICAgICB2b2lkIHN0b3BSZWNvcmRp
bmcoKTsKICAgICB2b2lkIGZldGNoRGF0YShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJlZlB0cjxT
aGFyZWRCdWZmZXI+JiYpPiYmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRl
clByaXZhdGVXcml0ZXJDb2NvYS5tbQppbmRleCA3OWZlZWUxODI4OTE1MjhlY2E0YTUxNDg5NzM2
Njc2NmFhODcxOTNkLi5kYzU1MjczMTg0ZDI3Y2Y0MTQ5ZmY4NjJkZjBlYzI0NDRhNmZjMjRiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01l
ZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29h
Lm1tCkBAIC00MjEsMTEgKzQyMSwxMSBAQCBzdGF0aWMgaW5saW5lIFJldGFpblB0cjxDTVNhbXBs
ZUJ1ZmZlclJlZj4gY29weVNhbXBsZUJ1ZmZlcldpdGhDdXJyZW50VGltZVN0YW1wKAogICAgIHJl
dHVybiBhZG9wdENGKG5ld0J1ZmZlcik7CiB9CiAKLXZvaWQgTWVkaWFSZWNvcmRlclByaXZhdGVX
cml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVmIHNhbXBsZUJ1
ZmZlcikKK3ZvaWQgTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxl
QnVmZmVyKE1lZGlhU2FtcGxlJiBzYW1wbGUpCiB7CiAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBu
b3Qgc2V0IHRoZSB0aW1lc3RhbXBzIGlmIHRoZXkgYXJlIGFscmVhZHkgc2V0LgotICAgIGlmIChh
dXRvIGJ1ZmZlcldpdGhDdXJyZW50VGltZSA9IGNvcHlTYW1wbGVCdWZmZXJXaXRoQ3VycmVudFRp
bWVTdGFtcChzYW1wbGVCdWZmZXIpKQotICAgICAgICBtX3ZpZGVvQ29tcHJlc3Nvci0+YWRkU2Ft
cGxlQnVmZmVyKGJ1ZmZlcldpdGhDdXJyZW50VGltZS5nZXQoKSk7CisgICAgaWYgKGF1dG8gYnVm
ZmVyV2l0aEN1cnJlbnRUaW1lID0gY29weVNhbXBsZUJ1ZmZlcldpdGhDdXJyZW50VGltZVN0YW1w
KHNhbXBsZS5wbGF0Zm9ybVNhbXBsZSgpLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcikpCisgICAgICAg
IG1fdmlkZW9Db21wcmVzc29yLT5hZGRTYW1wbGVCdWZmZXIoYnVmZmVyV2l0aEN1cnJlbnRUaW1l
LmdldCgpLCBzYW1wbGUudmlkZW9Sb3RhdGlvbigpKTsKIH0KIAogc3RhdGljIGlubGluZSBSZXRh
aW5QdHI8Q01Gb3JtYXREZXNjcmlwdGlvblJlZj4gY3JlYXRlQXVkaW9Gb3JtYXREZXNjcmlwdGlv
bihjb25zdCBBdWRpb1N0cmVhbURlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbikKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvVmlkZW9TYW1wbGVC
dWZmZXJDb21wcmVzc29yLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVy
L2NvY29hL1ZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvci5oCmluZGV4IDlkMTYzNTI5NGM5ZGFi
OWEyOTdjMGQ2OTkzNDQyOWY2OWYwMjgxM2YuLjdmZmI0M2NmMTM4YjMwNDQ4ZjY5MjMxZmJlZmJh
ODIwMzUzMDZkNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVj
b3JkZXIvY29jb2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRlb1NhbXBsZUJ1ZmZlckNvbXBy
ZXNzb3IuaApAQCAtMjYsMTQgKzI2LDE4IEBACiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKSAm
JiBVU0UoQVZGT1VOREFUSU9OKQogCisjaW5jbHVkZSAiTWVkaWFTYW1wbGUuaCIKICNpbmNsdWRl
IDxDb3JlTWVkaWEvQ29yZU1lZGlhLmg+CiAjaW5jbHVkZSA8VmlkZW9Ub29sYm94L1ZURXJyb3Jz
Lmg+CiAKIHR5cGVkZWYgc3RydWN0IG9wYXF1ZUNNU2FtcGxlQnVmZmVyICpDTVNhbXBsZUJ1ZmZl
clJlZjsKIHR5cGVkZWYgc3RydWN0IE9wYXF1ZVZUQ29tcHJlc3Npb25TZXNzaW9uICpWVENvbXBy
ZXNzaW9uU2Vzc2lvblJlZjsKK3R5cGVkZWYgc3RydWN0IF9fQ1ZCdWZmZXIgKkNWUGl4ZWxCdWZm
ZXJSZWY7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgSW1hZ2VSb3RhdGlvblNlc3Np
b25WVDsKKwogY2xhc3MgVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yIHsKICAgICBXVEZfTUFL
RV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKQEAgLTQyLDcgKzQ2LDcgQEAgcHVibGljOgogCiAg
ICAgdm9pZCBzZXRCaXRzUGVyU2Vjb25kKHVuc2lnbmVkKTsKICAgICB2b2lkIGZpbmlzaCgpOwot
ICAgIHZvaWQgYWRkU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVmKTsKKyAgICB2b2lkIGFk
ZFNhbXBsZUJ1ZmZlcihDTVNhbXBsZUJ1ZmZlclJlZiwgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRp
b24pOwogICAgIENNU2FtcGxlQnVmZmVyUmVmIGdldE91dHB1dFNhbXBsZUJ1ZmZlcigpOwogICAg
IFJldGFpblB0cjxDTVNhbXBsZUJ1ZmZlclJlZj4gdGFrZU91dHB1dFNhbXBsZUJ1ZmZlcigpOwog
CkBAIC01MSw4ICs1NSw5IEBAIHByaXZhdGU6CiAKICAgICBib29sIGluaXRpYWxpemUoQ01CdWZm
ZXJRdWV1ZVRyaWdnZXJDYWxsYmFjaywgdm9pZCogY2FsbGJhY2tPYmplY3QpOwogCi0gICAgdm9p
ZCBwcm9jZXNzU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVmKTsKLSAgICBib29sIGluaXRD
b21wcmVzc2lvblNlc3Npb24oQ01WaWRlb0Zvcm1hdERlc2NyaXB0aW9uUmVmKTsKKyAgICB2b2lk
IHByb2Nlc3NTYW1wbGVCdWZmZXIoQ01TYW1wbGVCdWZmZXJSZWYsIE1lZGlhU2FtcGxlOjpWaWRl
b1JvdGF0aW9uKTsKKyAgICBib29sIGluaXRDb21wcmVzc2lvblNlc3Npb24oaW50IHdpZHRoLCBp
bnQgaGVpZ2h0KTsKKyAgICBSZXRhaW5QdHI8Q1ZQaXhlbEJ1ZmZlclJlZj4gcm90YXRlUGl4ZWxC
dWZmZXIoQ1ZQaXhlbEJ1ZmZlclJlZiwgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb24pOwogCiAg
ICAgc3RhdGljIHZvaWQgdmlkZW9Db21wcmVzc2lvbkNhbGxiYWNrKHZvaWQgKnJlZkNvbiwgdm9p
ZCosIE9TU3RhdHVzLCBWVEVuY29kZUluZm9GbGFncywgQ01TYW1wbGVCdWZmZXJSZWYpOwogCkBA
IC02Niw2ICs3MSw3IEBAIHByaXZhdGU6CiAgICAgZmxvYXQgbV9tYXhLZXlGcmFtZUludGVydmFs
RHVyYXRpb24geyAyLjAgfTsKICAgICB1bnNpZ25lZCBtX2V4cGVjdGVkRnJhbWVSYXRlIHsgMzAg
fTsKICAgICBPcHRpb25hbDx1bnNpZ25lZD4gbV9vdXRwdXRCaXRSYXRlOworICAgIHN0ZDo6dW5p
cXVlX3B0cjxJbWFnZVJvdGF0aW9uU2Vzc2lvblZUPiBtX3JvdGF0aW9uU2Vzc2lvbjsKIH07CiAK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29j
b2EvVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IubW0KaW5k
ZXggM2FhYmE2OThkZjdmYmU0NTdiMzJiYjQyMjNkNDFlYTJlZjExNDYwNS4uMDE0YjI5M2QxOTYz
NDQ0MmQ4ZGE2MzA2MzI4NzcyNDE5YTcxNmEzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3Iu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9WaWRl
b1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IubW0KQEAgLTI3LDEyICsyNywxNCBAQAogCiAjaWYgRU5B
QkxFKE1FRElBX1NUUkVBTSkgJiYgVVNFKEFWRk9VTkRBVElPTikKIAorI2ltcG9ydCAiSW1hZ2VS
b3RhdGlvblNlc3Npb25WVC5oIgogI2ltcG9ydCAiTG9nZ2luZy5oIgogI2ltcG9ydCA8Q29yZU1l
ZGlhL0NvcmVNZWRpYS5oPgogI2ltcG9ydCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+CiAjaW1w
b3J0IDxWaWRlb1Rvb2xib3gvVlRDb21wcmVzc2lvblNlc3Npb24uaD4KICNpbXBvcnQgPHd0Zi9T
b2Z0TGlua2luZy5oPgogCisjaW1wb3J0ICJDb3JlVmlkZW9Tb2Z0TGluay5oIgogI2ltcG9ydCA8
cGFsL2NmL1ZpZGVvVG9vbGJveFNvZnRMaW5rLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAg
LTExNSw5ICsxMTcsOCBAQCBzdGF0aWMgaW5saW5lIE9TU3RhdHVzIHNldENvbXByZXNzaW9uU2Vz
c2lvblByb3BlcnR5KFZUQ29tcHJlc3Npb25TZXNzaW9uUmVmIHZ0UwogICAgIHJldHVybiBzdGF0
dXM7CiB9CiAKLWJvb2wgVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjppbml0Q29tcHJlc3Np
b25TZXNzaW9uKENNVmlkZW9Gb3JtYXREZXNjcmlwdGlvblJlZiBmb3JtYXREZXNjcmlwdGlvbikK
K2Jvb2wgVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjppbml0Q29tcHJlc3Npb25TZXNzaW9u
KGludCB3aWR0aCwgaW50IGhlaWdodCkKIHsKLSAgICBDTVZpZGVvRGltZW5zaW9ucyBkaW1lbnNp
b25zID0gQ01WaWRlb0Zvcm1hdERlc2NyaXB0aW9uR2V0RGltZW5zaW9ucyhmb3JtYXREZXNjcmlw
dGlvbik7CiAjaWYgUExBVEZPUk0oSU9TKQogICAgIE5TRGljdGlvbmFyeSAqZW5jb2RlclNwZWNp
ZmljYXRpb25zID0gbmlsOwogI2Vsc2UKQEAgLTEyNSw3ICsxMjYsNyBAQCBib29sIFZpZGVvU2Ft
cGxlQnVmZmVyQ29tcHJlc3Nvcjo6aW5pdENvbXByZXNzaW9uU2Vzc2lvbihDTVZpZGVvRm9ybWF0
RGVzY3JpcHRpbwogI2VuZGlmCiAKICAgICBWVENvbXByZXNzaW9uU2Vzc2lvblJlZiB2dFNlc3Np
b247Ci0gICAgYXV0byBlcnJvciA9IFZUQ29tcHJlc3Npb25TZXNzaW9uQ3JlYXRlKGtDRkFsbG9j
YXRvckRlZmF1bHQsIGRpbWVuc2lvbnMud2lkdGgsIGRpbWVuc2lvbnMuaGVpZ2h0LCBtX291dHB1
dENvZGVjVHlwZSwgKF9fYnJpZGdlIENGRGljdGlvbmFyeVJlZillbmNvZGVyU3BlY2lmaWNhdGlv
bnMsIE5VTEwsIE5VTEwsIHZpZGVvQ29tcHJlc3Npb25DYWxsYmFjaywgdGhpcywgJnZ0U2Vzc2lv
bik7CisgICAgYXV0byBlcnJvciA9IFZUQ29tcHJlc3Npb25TZXNzaW9uQ3JlYXRlKGtDRkFsbG9j
YXRvckRlZmF1bHQsIHdpZHRoLCBoZWlnaHQsIG1fb3V0cHV0Q29kZWNUeXBlLCAoX19icmlkZ2Ug
Q0ZEaWN0aW9uYXJ5UmVmKWVuY29kZXJTcGVjaWZpY2F0aW9ucywgTlVMTCwgTlVMTCwgdmlkZW9D
b21wcmVzc2lvbkNhbGxiYWNrLCB0aGlzLCAmdnRTZXNzaW9uKTsKICAgICBpZiAoZXJyb3IpIHsK
ICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoTWVkaWFTdHJlYW0sICJWaWRlb1NhbXBsZUJ1ZmZl
ckNvbXByZXNzb3IgVlRDb21wcmVzc2lvblNlc3Npb25DcmVhdGUgZmFpbGVkIHdpdGggJWQiLCBl
cnJvcik7CiAgICAgICAgIHJldHVybiBOTzsKQEAgLTE1MCwyNyArMTUxLDU3IEBAIGJvb2wgVmlk
ZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjppbml0Q29tcHJlc3Npb25TZXNzaW9uKENNVmlkZW9G
b3JtYXREZXNjcmlwdGlvCiAgICAgcmV0dXJuIFlFUzsKIH0KIAotdm9pZCBWaWRlb1NhbXBsZUJ1
ZmZlckNvbXByZXNzb3I6OnByb2Nlc3NTYW1wbGVCdWZmZXIoQ01TYW1wbGVCdWZmZXJSZWYgYnVm
ZmVyKQorc3RhdGljIGlubGluZSB1bnNpZ25lZCByb3RhdGlvblRvQW5nbGUoTWVkaWFTYW1wbGU6
OlZpZGVvUm90YXRpb24gcm90YXRpb24pCiB7CisgICAgc3dpdGNoIChyb3RhdGlvbikgeworICAg
IGNhc2UgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb246Ok5vbmU6CisgICAgICAgIHJldHVybiAw
OworICAgIGNhc2UgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb246OlVwc2lkZURvd246CisgICAg
ICAgIHJldHVybiAxODA7CisgICAgY2FzZSBNZWRpYVNhbXBsZTo6VmlkZW9Sb3RhdGlvbjo6Umln
aHQ6CisgICAgICAgIHJldHVybiA5MDsKKyAgICBjYXNlIE1lZGlhU2FtcGxlOjpWaWRlb1JvdGF0
aW9uOjpMZWZ0OgorICAgICAgICByZXR1cm4gMjcwOworICAgIH0KK30KKworUmV0YWluUHRyPENW
UGl4ZWxCdWZmZXJSZWY+IFZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvcjo6cm90YXRlUGl4ZWxC
dWZmZXIoQ1ZQaXhlbEJ1ZmZlclJlZiBidWZmZXIsIE1lZGlhU2FtcGxlOjpWaWRlb1JvdGF0aW9u
IHJvdGF0aW9uKQoreworICAgIGlmICghbV9yb3RhdGlvblNlc3Npb24pCisgICAgICAgIG1fcm90
YXRpb25TZXNzaW9uID0gbWFrZVVuaXF1ZTxJbWFnZVJvdGF0aW9uU2Vzc2lvblZUPigpOworCisg
ICAgSW1hZ2VSb3RhdGlvblNlc3Npb25WVDo6Um90YXRpb25Qcm9wZXJ0aWVzIHJvdGF0aW9uUHJv
cGVydGllczsKKyAgICByb3RhdGlvblByb3BlcnRpZXMuYW5nbGUgPSByb3RhdGlvblRvQW5nbGUo
cm90YXRpb24pOworICAgIHJldHVybiBtX3JvdGF0aW9uU2Vzc2lvbi0+cm90YXRlKGJ1ZmZlciwg
cm90YXRpb25Qcm9wZXJ0aWVzLCBJbWFnZVJvdGF0aW9uU2Vzc2lvblZUOjpJc0NHSW1hZ2VDb21w
YXRpYmxlOjpObyk7Cit9CisKK3ZvaWQgVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOjpwcm9j
ZXNzU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVmIGJ1ZmZlciwgTWVkaWFTYW1wbGU6OlZp
ZGVvUm90YXRpb24gcm90YXRpb24pCit7CisgICAgUmV0YWluUHRyPENWUGl4ZWxCdWZmZXJSZWY+
IHJvdGF0ZWRQaXhlbEJ1ZmZlcjsKKyAgICBhdXRvIGltYWdlQnVmZmVyID0gQ01TYW1wbGVCdWZm
ZXJHZXRJbWFnZUJ1ZmZlcihidWZmZXIpOworICAgIGlmIChyb3RhdGlvbiAhPSBNZWRpYVNhbXBs
ZTo6VmlkZW9Sb3RhdGlvbjo6Tm9uZSkgeworICAgICAgICByb3RhdGVkUGl4ZWxCdWZmZXIgPSBy
b3RhdGVQaXhlbEJ1ZmZlcihpbWFnZUJ1ZmZlciwgcm90YXRpb24pOworICAgICAgICBpbWFnZUJ1
ZmZlciA9IHJvdGF0ZWRQaXhlbEJ1ZmZlci5nZXQoKTsKKyAgICB9CisKICAgICBpZiAoIW1fdnRT
ZXNzaW9uKSB7Ci0gICAgICAgIGlmICghaW5pdENvbXByZXNzaW9uU2Vzc2lvbihDTVNhbXBsZUJ1
ZmZlckdldEZvcm1hdERlc2NyaXB0aW9uKGJ1ZmZlcikpKQorICAgICAgICBpZiAoIWluaXRDb21w
cmVzc2lvblNlc3Npb24oQ1ZQaXhlbEJ1ZmZlckdldFdpZHRoKGltYWdlQnVmZmVyKSwgQ1ZQaXhl
bEJ1ZmZlckdldEhlaWdodChpbWFnZUJ1ZmZlcikpKQogICAgICAgICAgICAgcmV0dXJuOwogICAg
IH0KIAotICAgIGF1dG8gaW1hZ2VCdWZmZXIgPSBDTVNhbXBsZUJ1ZmZlckdldEltYWdlQnVmZmVy
KGJ1ZmZlcik7CiAgICAgYXV0byBwcmVzZW50YXRpb25UaW1lU3RhbXAgPSBDTVNhbXBsZUJ1ZmZl
ckdldFByZXNlbnRhdGlvblRpbWVTdGFtcChidWZmZXIpOwogICAgIGF1dG8gZHVyYXRpb24gPSBD
TVNhbXBsZUJ1ZmZlckdldER1cmF0aW9uKGJ1ZmZlcik7CiAgICAgYXV0byBlcnJvciA9IFZUQ29t
cHJlc3Npb25TZXNzaW9uRW5jb2RlRnJhbWUobV92dFNlc3Npb24uZ2V0KCksIGltYWdlQnVmZmVy
LCBwcmVzZW50YXRpb25UaW1lU3RhbXAsIGR1cmF0aW9uLCBOVUxMLCB0aGlzLCBOVUxMKTsKICAg
ICBSRUxFQVNFX0xPR19FUlJPUl9JRihlcnJvciwgTWVkaWFTdHJlYW0sICJWaWRlb1NhbXBsZUJ1
ZmZlckNvbXByZXNzb3IgVlRDb21wcmVzc2lvblNlc3Npb25FbmNvZGVGcmFtZSBmYWlsZWQgd2l0
aCAlZCIsIGVycm9yKTsKIH0KIAotdm9pZCBWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I6OmFk
ZFNhbXBsZUJ1ZmZlcihDTVNhbXBsZUJ1ZmZlclJlZiBidWZmZXIpCit2b2lkIFZpZGVvU2FtcGxl
QnVmZmVyQ29tcHJlc3Nvcjo6YWRkU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVmZmVyUmVmIGJ1ZmZl
ciwgTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRpb24gcm90YXRpb24pCiB7CiAgICAgZGlzcGF0Y2hf
c3luYyhtX3NlcmlhbERpc3BhdGNoUXVldWUsIF57CiAgICAgICAgIGlmICghbV9pc0VuY29kaW5n
KQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgIHByb2Nlc3NTYW1wbGVCdWZmZXIoYnVm
ZmVyKTsKKyAgICAgICAgcHJvY2Vzc1NhbXBsZUJ1ZmZlcihidWZmZXIsIHJvdGF0aW9uKTsKICAg
ICB9KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL3dlYnJ0Yy9S
ZW1vdGVNZWRpYVJlY29yZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy93ZWJydGMv
UmVtb3RlTWVkaWFSZWNvcmRlci5jcHAKaW5kZXggNjAzNGMyZDVmOGQyNThiYWU0NWVhNTM1YTk1
NjA0MWE3NjU3NDYxZi4uMmZkZjk3MzYyN2IwNjRlYThlYTgwMmIwYzE1M2VjMmNkMmFhMDRkMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJl
Y29yZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mvd2VicnRjL1JlbW90ZU1l
ZGlhUmVjb3JkZXIuY3BwCkBAIC0xMTgsNyArMTE4LDcgQEAgdm9pZCBSZW1vdGVNZWRpYVJlY29y
ZGVyOjp2aWRlb1NhbXBsZUF2YWlsYWJsZShXZWJDb3JlOjpSZW1vdGVWaWRlb1NhbXBsZSYmIHJl
bW8KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG1fd3JpdGVyLT5hcHBlbmRWaWRlb1Nh
bXBsZUJ1ZmZlcihzYW1wbGVCdWZmZXItPnBsYXRmb3JtU2FtcGxlKCkuc2FtcGxlLmNtU2FtcGxl
QnVmZmVyKTsKKyAgICBtX3dyaXRlci0+YXBwZW5kVmlkZW9TYW1wbGVCdWZmZXIoKnNhbXBsZUJ1
ZmZlcik7CiB9CiAKIHZvaWQgUmVtb3RlTWVkaWFSZWNvcmRlcjo6ZmV0Y2hEYXRhKENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoSVBDOjpEYXRhUmVmZXJlbmNlJiYsIGNvbnN0IFN0cmluZyYgbWltZVR5
cGUpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDkwODg0YWVlZjBmYTBjMjBiMTBlYzA4
MzdkZTQ2ODMxNzRhNDEwZGIuLmZjOWVlMWI4Mzk1YzhmZDZmYjNlMmM1ODM5MzcxMGRiY2NiY2Y1
NmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0wOS0yMSAgWW91ZW5uIEZhYmxldCAgPHlv
dWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gTWVkaWFSZWNvcmRlciBpbmNvcnJlY3Qg
c2NyZWVuIG9yaWVudGF0aW9uIGhhbmRsaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5MTIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzUxODAy
NTIxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
aHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlkZW8tcm90YXRpb24uaHRtbDog
QWRkZWQuCisKIDIwMjAtMDktMTggIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgog
CiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBIVE1MTWVkaWFFbGVtZW50LnNldFNpbmtJZApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlv
bi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVv
LXJvdGF0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MGIzYzAwYzU1ZjBmNGI5NmViNjRm
ZDVjOGNlZGZjNmY2NzkyYWZhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC93
cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0
IEBACisKKworUEFTUyBSZWNvcmQgYSByb3RhdGVkIHZpZGVvIAorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVvLXJvdGF0aW9uLmh0bWwgYi9MYXlv
dXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVvLXJvdGF0aW9uLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uODE1OGE4NDE1NzhjYzVkNjRlYTY3ZTBhMWY4ODJkMGVhZWZkMmNkZgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlkZW8tcm90YXRp
b24uaHRtbApAQCAtMCwwICsxLDQ1IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDxo
ZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT5UZXN0
aW5nIHZpZGVvIHJvdGF0aW9uIGluIG1lZGlhIHJlY29yZGVyPC90aXRsZT4KKyAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Cisg
ICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8dmlkZW8gaWQ9InJlY29yZGVkVmlkZW8i
IGF1dG9wbGF5IHBsYXlzSW5saW5lIHdpZHRoPSIzMjAiIGhlaWdodD0iMjQwIj48L3ZpZGVvPgor
ICAgICAgICA8c2NyaXB0PgorcHJvbWlzZV90ZXN0KGFzeW5jICh0ZXN0KSA9PiB7CisgICAgY29u
c3Qgc3RyZWFtID0gYXdhaXQgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5nZXRVc2VyTWVkaWEoe3Zp
ZGVvOiB0cnVlIH0pOworICAgIGxldCBleHBlY3RlZFdpZHRoID0gNjQwOworICAgIGxldCBleHBl
Y3RlZEhlaWdodCA9IDQ4MDsKKworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKSB7CisgICAgICAg
IHdpbmRvdy5pbnRlcm5hbHMuc2V0Q2FtZXJhTWVkaWFTdHJlYW1UcmFja09yaWVudGF0aW9uKHN0
cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdLCA5MCk7CisgICAgICAgIHRlc3RSdW5uZXIuc2V0TW9j
a0NhbWVyYU9yaWVudGF0aW9uKDkwKTsKKworICAgICAgICBleHBlY3RlZFdpZHRoID0gNDgwOwor
ICAgICAgICBleHBlY3RlZEhlaWdodCA9IDY0MDsKKyAgICB9CisKKyAgICBjb25zdCByZWNvcmRl
ciA9IG5ldyBNZWRpYVJlY29yZGVyKHN0cmVhbSk7CisgICAgY29uc3QgcHJvbWlzZSA9IG5ldyBQ
cm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgICAgcmVjb3JkZXIub25kYXRhYXZh
aWxhYmxlID0gKGUpID0+IHJlc29sdmUoZS5kYXRhKTsKKyAgICAgICAgc2V0VGltZW91dCgoKSA9
PiByZWplY3QoImRhdGF2YWlsYWJsZSBldmVudCB0aW1lZCBvdXQiKSwgNTAwMCk7CisgICAgfSk7
CisgICAgcmVjb3JkZXIuc3RhcnQoKTsKKyAgICBzZXRUaW1lb3V0KCgpID0+IHJlY29yZGVyLnN0
b3AoKSwgMTAwMCk7CisgICAgY29uc3QgYmxvYiA9IGF3YWl0IHByb21pc2U7CisKKyAgICBjb25z
dCB1cmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpOworICAgIHJlY29yZGVkVmlkZW8uc3Jj
ID0gdXJsOworICAgIGF3YWl0IHJlY29yZGVkVmlkZW8ucGxheSgpOworCisgICAgVVJMLnJldm9r
ZU9iamVjdFVSTCh1cmwpOworCisgICAgYXNzZXJ0X2VxdWFscyhyZWNvcmRlZFZpZGVvLnZpZGVv
V2lkdGgsIGV4cGVjdGVkV2lkdGgsICJyZWNvcmRlZCB2aWRlbyB3aWR0aCIpOworICAgIGFzc2Vy
dF9lcXVhbHMocmVjb3JkZWRWaWRlby52aWRlb0hlaWdodCwgZXhwZWN0ZWRIZWlnaHQsICJyZWNv
cmRlZCB2aWRlbyBoZWlnaHQiKTsKK30sICJSZWNvcmQgYSByb3RhdGVkIHZpZGVvIik7CisgICAg
ICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409276</attachid>
            <date>2020-09-21 06:19:23 -0700</date>
            <delta_ts>2020-09-21 11:11:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-198912-20200921151921.patch</filename>
            <type>text/plain</type>
            <size>9414</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3MjI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGRiNzk1ODczZjVlNWFh
NGIzNjg1YzI0OTY4M2M2ZGYwZDEzMmRjNy4uMTk2YWY2ZTVjYTUzNzJlOWFjMGM2OGYyMzc0NjZj
NjU0NGYyNjNiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIwLTA5LTIxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29y
ZGVyIGluY29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVXBkYXRlIE1lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EgdG8gcGFz
cyBhIE1lZGlhU2FtcGxlIGRvd24gdG8gaGFuZGxlIHJvdGF0aW9uLgorICAgICAgICBTZXQgQVZB
c3NldFdyaXRlcklucHV0IHRyYW5zZm9ybSBhY2NvcmRpbmcgdGhlIGZpcnN0IE1lZGlhU2FtcGxl
IHJvdGF0aW9uIHZhbHVlLgorCisgICAgICAgIFRlc3Q6IGh0dHAvd3B0L21lZGlhcmVjb3JkZXIv
dmlkZW8tcm90YXRpb24uaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9N
ZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFS
ZWNvcmRlclByaXZhdGVBVkZJbXBsOjp2aWRlb1NhbXBsZUF2YWlsYWJsZSk6CisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNv
Y29hLmg6CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29y
ZGVyUHJpdmF0ZVdyaXRlckNvY29hLm1tOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFSZWNvcmRl
clByaXZhdGVXcml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKToKKwogMjAyMC0wOS0xOCAg
WW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHN1cHBvcnQg
Zm9yIEhUTUxNZWRpYUVsZW1lbnQuc2V0U2lua0lkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg2M2VkNGU1M2JmY2Y0
NzdjMjBkNTdiZGQzNGY3YWY1YWNmNTU0MzcuLmVjZjFiOWY1OWQ3NzM2ZTdmMmU2ZmRkZjgzZWYw
ODYzZTkwMzU3MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDktMjEgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIE1lZGlhUmVjb3Jk
ZXIgaW5jb3JyZWN0IHNjcmVlbiBvcmllbnRhdGlvbiBoYW5kbGluZworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4OTEyCisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS81MTgwMjUyMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIEdQVVByb2Nlc3Mvd2VicnRjL1JlbW90ZU1lZGlhUmVjb3JkZXIuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpSZW1vdGVNZWRpYVJlY29yZGVyOjp2aWRlb1NhbXBsZUF2YWlsYWJs
ZSk6CisKIDIwMjAtMDktMTggIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAg
ICAgICAgIEFkZCBzdXBwb3J0IGZvciBIVE1MTWVkaWFFbGVtZW50LnNldFNpbmtJZApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9NZWRpYVJlY29yZGVy
UHJpdmF0ZUFWRkltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRl
ci9NZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGwuY3BwCmluZGV4IDg0NGE5NjlmNTNkNGFlZjc5
Y2QyNmJiMWJlYzQyNzk0ZmJkNGRlYWEuLjJjYWZkZDk3YjBlY2M5MGMyYmY4NTExOTk1ZWE1ZDFk
ODYyMzQ4YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3Jk
ZXIvTWVkaWFSZWNvcmRlclByaXZhdGVBVkZJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbC5jcHAKQEAg
LTcwLDcgKzcwLDcgQEAgTWVkaWFSZWNvcmRlclByaXZhdGVBVkZJbXBsOjp+TWVkaWFSZWNvcmRl
clByaXZhdGVBVkZJbXBsKCkKIAogdm9pZCBNZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGw6OnZp
ZGVvU2FtcGxlQXZhaWxhYmxlKE1lZGlhU2FtcGxlJiBzYW1wbGVCdWZmZXIpCiB7Ci0gICAgbV93
cml0ZXItPmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKHNhbXBsZUJ1ZmZlci5wbGF0Zm9ybVNhbXBs
ZSgpLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcik7CisgICAgbV93cml0ZXItPmFwcGVuZFZpZGVvU2Ft
cGxlQnVmZmVyKHNhbXBsZUJ1ZmZlcik7CiB9CiAKIHZvaWQgTWVkaWFSZWNvcmRlclByaXZhdGVB
VkZJbXBsOjphdWRpb1NhbXBsZXNBdmFpbGFibGUoY29uc3QgV1RGOjpNZWRpYVRpbWUmIG1lZGlh
VGltZSwgY29uc3QgUGxhdGZvcm1BdWRpb0RhdGEmIGRhdGEsIGNvbnN0IEF1ZGlvU3RyZWFtRGVz
Y3JpcHRpb24mIGRlc2NyaXB0aW9uLCBzaXplX3Qgc2FtcGxlQ291bnQpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01lZGlhUmVjb3JkZXJQ
cml2YXRlV3JpdGVyQ29jb2EuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3Jk
ZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oCmluZGV4IDRmMjJiODE1
MTU4NTFjZGEyNWViOGI5OWViNDc3MzYwOGU2OTZlNmEuLjVhZTYyNzYzMmY2ZWY1MjgyNzc4N2Ew
YTVmNjYwM2ZjMjU1NzljNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRl
clByaXZhdGVXcml0ZXJDb2NvYS5oCkBAIC01Niw2ICs1Niw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogY2xhc3MgQXVkaW9TYW1wbGVCdWZmZXJDb21wcmVzc29yOwogY2xhc3MgQXVkaW9TdHJl
YW1EZXNjcmlwdGlvbjsKK2NsYXNzIE1lZGlhU2FtcGxlOwogY2xhc3MgTWVkaWFTdHJlYW1UcmFj
a1ByaXZhdGU7CiBjbGFzcyBQbGF0Zm9ybUF1ZGlvRGF0YTsKIGNsYXNzIFZpZGVvU2FtcGxlQnVm
ZmVyQ29tcHJlc3NvcjsKQEAgLTY2LDcgKzY3LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBSZWZQ
dHI8TWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXI+IGNyZWF0ZShib29sIGhhc0F1ZGlvLCBib29s
IGhhc1ZpZGVvLCBjb25zdCBNZWRpYVJlY29yZGVyUHJpdmF0ZU9wdGlvbnMmKTsKICAgICB+TWVk
aWFSZWNvcmRlclByaXZhdGVXcml0ZXIoKTsKIAotICAgIHZvaWQgYXBwZW5kVmlkZW9TYW1wbGVC
dWZmZXIoQ01TYW1wbGVCdWZmZXJSZWYpOworICAgIHZvaWQgYXBwZW5kVmlkZW9TYW1wbGVCdWZm
ZXIoTWVkaWFTYW1wbGUmKTsKICAgICB2b2lkIGFwcGVuZEF1ZGlvU2FtcGxlQnVmZmVyKGNvbnN0
IFBsYXRmb3JtQXVkaW9EYXRhJiwgY29uc3QgQXVkaW9TdHJlYW1EZXNjcmlwdGlvbiYsIGNvbnN0
IFdURjo6TWVkaWFUaW1lJiwgc2l6ZV90KTsKICAgICB2b2lkIHN0b3BSZWNvcmRpbmcoKTsKICAg
ICB2b2lkIGZldGNoRGF0YShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJlZlB0cjxTaGFyZWRCdWZm
ZXI+JiYpPiYmKTsKQEAgLTEyOSw2ICsxMzAsNyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBtX2lz
Rmx1c2hpbmdTYW1wbGVzIHsgZmFsc2UgfTsKICAgICBib29sIG1fc2hvdWxkU3RvcEFmdGVyRmx1
c2hpbmdTYW1wbGVzIHsgZmFsc2UgfTsKKyAgICBib29sIG1fZmlyc3RWaWRlb0ZyYW1lIHsgZmFs
c2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVX
cml0ZXJDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29j
b2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5tbQppbmRleCA3OWZlZWUxODI4OTE1
MjhlY2E0YTUxNDg5NzM2Njc2NmFhODcxOTNkLi44N2FmODdhZTc0NmEwNDljYWFlMjlkZmUyZDBk
MzFlMmEwODk3NWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJl
Y29yZGVyL2NvY29hL01lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJp
dmF0ZVdyaXRlckNvY29hLm1tCkBAIC00MjEsMTAgKzQyMSwxNyBAQCBzdGF0aWMgaW5saW5lIFJl
dGFpblB0cjxDTVNhbXBsZUJ1ZmZlclJlZj4gY29weVNhbXBsZUJ1ZmZlcldpdGhDdXJyZW50VGlt
ZVN0YW1wKAogICAgIHJldHVybiBhZG9wdENGKG5ld0J1ZmZlcik7CiB9CiAKLXZvaWQgTWVkaWFS
ZWNvcmRlclByaXZhdGVXcml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKENNU2FtcGxlQnVm
ZmVyUmVmIHNhbXBsZUJ1ZmZlcikKK3ZvaWQgTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXI6OmFw
cGVuZFZpZGVvU2FtcGxlQnVmZmVyKE1lZGlhU2FtcGxlJiBzYW1wbGUpCiB7CisgICAgaWYgKCFt
X2ZpcnN0VmlkZW9GcmFtZSkgeworICAgICAgICBtX2ZpcnN0VmlkZW9GcmFtZSA9IHRydWU7Cisg
ICAgICAgIGF1dG8gdmlkZW9UcmFuc2Zvcm0gPSBDR0FmZmluZVRyYW5zZm9ybU1ha2VSb3RhdGlv
bihzdGF0aWNfY2FzdDxpbnQ+KHNhbXBsZS52aWRlb1JvdGF0aW9uKCkpICogTV9QSSAvIDE4MCk7
CisgICAgICAgIGlmIChzYW1wbGUudmlkZW9NaXJyb3JlZCgpKQorICAgICAgICAgICAgdmlkZW9U
cmFuc2Zvcm0gPSBDR0FmZmluZVRyYW5zZm9ybVNjYWxlKHZpZGVvVHJhbnNmb3JtLCAtMSwgMSk7
CisgICAgICAgIG1fdmlkZW9Bc3NldFdyaXRlcklucHV0LmdldCgpLnRyYW5zZm9ybSA9IHZpZGVv
VHJhbnNmb3JtOworICAgIH0KICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIG5vdCBzZXQgdGhlIHRp
bWVzdGFtcHMgaWYgdGhleSBhcmUgYWxyZWFkeSBzZXQuCi0gICAgaWYgKGF1dG8gYnVmZmVyV2l0
aEN1cnJlbnRUaW1lID0gY29weVNhbXBsZUJ1ZmZlcldpdGhDdXJyZW50VGltZVN0YW1wKHNhbXBs
ZUJ1ZmZlcikpCisgICAgaWYgKGF1dG8gYnVmZmVyV2l0aEN1cnJlbnRUaW1lID0gY29weVNhbXBs
ZUJ1ZmZlcldpdGhDdXJyZW50VGltZVN0YW1wKHNhbXBsZS5wbGF0Zm9ybVNhbXBsZSgpLnNhbXBs
ZS5jbVNhbXBsZUJ1ZmZlcikpCiAgICAgICAgIG1fdmlkZW9Db21wcmVzc29yLT5hZGRTYW1wbGVC
dWZmZXIoYnVmZmVyV2l0aEN1cnJlbnRUaW1lLmdldCgpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy93ZWJydGMvUmVtb3RlTWVkaWFSZWNvcmRlci5jcHAKaW5k
ZXggNjAzNGMyZDVmOGQyNThiYWU0NWVhNTM1YTk1NjA0MWE3NjU3NDYxZi4uMmZkZjk3MzYyN2Iw
NjRlYThlYTgwMmIwYzE1M2VjMmNkMmFhMDRkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L0dQVVByb2Nlc3Mvd2VicnRjL1JlbW90ZU1lZGlhUmVjb3JkZXIuY3BwCkBAIC0xMTgsNyAr
MTE4LDcgQEAgdm9pZCBSZW1vdGVNZWRpYVJlY29yZGVyOjp2aWRlb1NhbXBsZUF2YWlsYWJsZShX
ZWJDb3JlOjpSZW1vdGVWaWRlb1NhbXBsZSYmIHJlbW8KICAgICAgICAgcmV0dXJuOwogICAgIH0K
IAotICAgIG1fd3JpdGVyLT5hcHBlbmRWaWRlb1NhbXBsZUJ1ZmZlcihzYW1wbGVCdWZmZXItPnBs
YXRmb3JtU2FtcGxlKCkuc2FtcGxlLmNtU2FtcGxlQnVmZmVyKTsKKyAgICBtX3dyaXRlci0+YXBw
ZW5kVmlkZW9TYW1wbGVCdWZmZXIoKnNhbXBsZUJ1ZmZlcik7CiB9CiAKIHZvaWQgUmVtb3RlTWVk
aWFSZWNvcmRlcjo6ZmV0Y2hEYXRhKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoSVBDOjpEYXRhUmVm
ZXJlbmNlJiYsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CmluZGV4IDkwODg0YWVlZjBmYTBjMjBiMTBlYzA4MzdkZTQ2ODMxNzRhNDEwZGIuLmZjOWVlMWI4
Mzk1YzhmZDZmYjNlMmM1ODM5MzcxMGRiY2NiY2Y1NmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAor
MjAyMC0wOS0yMSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAg
W2lPU10gTWVkaWFSZWNvcmRlciBpbmNvcnJlY3Qgc2NyZWVuIG9yaWVudGF0aW9uIGhhbmRsaW5n
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5MTIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzUxODAyNTIxPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRl
by1yb3RhdGlvbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvd3B0L21lZGlh
cmVjb3JkZXIvdmlkZW8tcm90YXRpb24uaHRtbDogQWRkZWQuCisKIDIwMjAtMDktMTggIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBI
VE1MTWVkaWFFbGVtZW50LnNldFNpbmtJZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93
cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVvLXJvdGF0aW9uLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41MGIzYzAwYzU1ZjBmNGI5NmViNjRmZDVjOGNlZGZjNmY2NzkyYWZhCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3Rh
dGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACisKKworUEFTUyBSZWNvcmQgYSByb3Rh
dGVkIHZpZGVvIAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29y
ZGVyL3ZpZGVvLXJvdGF0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29y
ZGVyL3ZpZGVvLXJvdGF0aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODE1OGE4NDE1NzhjYzVkNjRlYTY3
ZTBhMWY4ODJkMGVhZWZkMmNkZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
d3B0L21lZGlhcmVjb3JkZXIvdmlkZW8tcm90YXRpb24uaHRtbApAQCAtMCwwICsxLDQ1IEBACis8
IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0
PSJ1dGYtOCI+CisgICAgICAgIDx0aXRsZT5UZXN0aW5nIHZpZGVvIHJvdGF0aW9uIGluIG1lZGlh
IHJlY29yZGVyPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhh
cm5lc3MuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0
aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAg
ICAgICA8dmlkZW8gaWQ9InJlY29yZGVkVmlkZW8iIGF1dG9wbGF5IHBsYXlzSW5saW5lIHdpZHRo
PSIzMjAiIGhlaWdodD0iMjQwIj48L3ZpZGVvPgorICAgICAgICA8c2NyaXB0PgorcHJvbWlzZV90
ZXN0KGFzeW5jICh0ZXN0KSA9PiB7CisgICAgY29uc3Qgc3RyZWFtID0gYXdhaXQgbmF2aWdhdG9y
Lm1lZGlhRGV2aWNlcy5nZXRVc2VyTWVkaWEoe3ZpZGVvOiB0cnVlIH0pOworICAgIGxldCBleHBl
Y3RlZFdpZHRoID0gNjQwOworICAgIGxldCBleHBlY3RlZEhlaWdodCA9IDQ4MDsKKworICAgIGlm
ICh3aW5kb3cuaW50ZXJuYWxzKSB7CisgICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0Q2FtZXJh
TWVkaWFTdHJlYW1UcmFja09yaWVudGF0aW9uKHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdLCA5
MCk7CisgICAgICAgIHRlc3RSdW5uZXIuc2V0TW9ja0NhbWVyYU9yaWVudGF0aW9uKDkwKTsKKwor
ICAgICAgICBleHBlY3RlZFdpZHRoID0gNDgwOworICAgICAgICBleHBlY3RlZEhlaWdodCA9IDY0
MDsKKyAgICB9CisKKyAgICBjb25zdCByZWNvcmRlciA9IG5ldyBNZWRpYVJlY29yZGVyKHN0cmVh
bSk7CisgICAgY29uc3QgcHJvbWlzZSA9IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+
IHsKKyAgICAgICAgcmVjb3JkZXIub25kYXRhYXZhaWxhYmxlID0gKGUpID0+IHJlc29sdmUoZS5k
YXRhKTsKKyAgICAgICAgc2V0VGltZW91dCgoKSA9PiByZWplY3QoImRhdGF2YWlsYWJsZSBldmVu
dCB0aW1lZCBvdXQiKSwgNTAwMCk7CisgICAgfSk7CisgICAgcmVjb3JkZXIuc3RhcnQoKTsKKyAg
ICBzZXRUaW1lb3V0KCgpID0+IHJlY29yZGVyLnN0b3AoKSwgMTAwMCk7CisgICAgY29uc3QgYmxv
YiA9IGF3YWl0IHByb21pc2U7CisKKyAgICBjb25zdCB1cmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJM
KGJsb2IpOworICAgIHJlY29yZGVkVmlkZW8uc3JjID0gdXJsOworICAgIGF3YWl0IHJlY29yZGVk
VmlkZW8ucGxheSgpOworCisgICAgVVJMLnJldm9rZU9iamVjdFVSTCh1cmwpOworCisgICAgYXNz
ZXJ0X2VxdWFscyhyZWNvcmRlZFZpZGVvLnZpZGVvV2lkdGgsIGV4cGVjdGVkV2lkdGgsICJyZWNv
cmRlZCB2aWRlbyB3aWR0aCIpOworICAgIGFzc2VydF9lcXVhbHMocmVjb3JkZWRWaWRlby52aWRl
b0hlaWdodCwgZXhwZWN0ZWRIZWlnaHQsICJyZWNvcmRlZCB2aWRlbyBoZWlnaHQiKTsKK30sICJS
ZWNvcmQgYSByb3RhdGVkIHZpZGVvIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4K
KzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409286</attachid>
            <date>2020-09-21 11:11:39 -0700</date>
            <delta_ts>2020-09-30 01:13:57 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-198912-20200921201137.patch</filename>
            <type>text/plain</type>
            <size>9536</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3MjI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGRiNzk1ODczZjVlNWFh
NGIzNjg1YzI0OTY4M2M2ZGYwZDEzMmRjNy4uMDk3NTc2NWQyYmRmODczOWQ1MGY3MGQzMGU4NzA4
ZTI4Y2YyYmRhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIwLTA5LTIxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29y
ZGVyIGluY29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgor
CisgICAgICAgIFVwZGF0ZSBNZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hIHRvIHBhc3Mg
YSBNZWRpYVNhbXBsZSBkb3duIHRvIGhhbmRsZSByb3RhdGlvbi4KKyAgICAgICAgU2V0IEFWQXNz
ZXRXcml0ZXJJbnB1dCB0cmFuc2Zvcm0gYWNjb3JkaW5nIHRoZSBmaXJzdCBNZWRpYVNhbXBsZSBy
b3RhdGlvbiB2YWx1ZS4KKworICAgICAgICBUZXN0OiBodHRwL3dwdC9tZWRpYXJlY29yZGVyL3Zp
ZGVvLXJvdGF0aW9uLmh0bWwKKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhcmVjb3JkZXIvTWVk
aWFSZWNvcmRlclByaXZhdGVBVkZJbXBsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUmVj
b3JkZXJQcml2YXRlQVZGSW1wbDo6dmlkZW9TYW1wbGVBdmFpbGFibGUpOgorICAgICAgICAqIHBs
YXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2Nv
YS5oOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRl
clByaXZhdGVXcml0ZXJDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUmVjb3JkZXJQ
cml2YXRlV3JpdGVyOjphcHBlbmRWaWRlb1NhbXBsZUJ1ZmZlcik6CisKIDIwMjAtMDktMTggIFlv
dWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZv
ciBIVE1MTWVkaWFFbGVtZW50LnNldFNpbmtJZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA4NjNlZDRlNTNiZmNmNDc3
YzIwZDU3YmRkMzRmN2FmNWFjZjU1NDM3Li4wMDBjNzg2MGMyMGQ4NWI4YWFiOTJjYjdiMTRmY2Ez
Nzg5NjA4ZmYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA5LTIxICBZb3Vlbm4g
RmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29yZGVy
IGluY29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjovL3By
b2JsZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisg
ICAgICAgICogR1BVUHJvY2Vzcy93ZWJydGMvUmVtb3RlTWVkaWFSZWNvcmRlci5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUmVjb3JkZXI6OnZpZGVvU2FtcGxlQXZhaWxhYmxlKToK
KwogMjAyMC0wOS0xOCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAg
ICAgQWRkIHN1cHBvcnQgZm9yIEhUTUxNZWRpYUVsZW1lbnQuc2V0U2lua0lkCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXJQcml2
YXRlQVZGSW1wbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL01l
ZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbC5jcHAKaW5kZXggODQ0YTk2OWY1M2Q0YWVmNzljZDI2
YmIxYmVjNDI3OTRmYmQ0ZGVhYS4uMmNhZmRkOTdiMGVjYzkwYzJiZjg1MTE5OTVlYTVkMWQ4NjIz
NDhhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9N
ZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlclByaXZhdGVBVkZJbXBsLmNwcApAQCAtNzAs
NyArNzAsNyBAQCBNZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGw6On5NZWRpYVJlY29yZGVyUHJp
dmF0ZUFWRkltcGwoKQogCiB2b2lkIE1lZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbDo6dmlkZW9T
YW1wbGVBdmFpbGFibGUoTWVkaWFTYW1wbGUmIHNhbXBsZUJ1ZmZlcikKIHsKLSAgICBtX3dyaXRl
ci0+YXBwZW5kVmlkZW9TYW1wbGVCdWZmZXIoc2FtcGxlQnVmZmVyLnBsYXRmb3JtU2FtcGxlKCku
c2FtcGxlLmNtU2FtcGxlQnVmZmVyKTsKKyAgICBtX3dyaXRlci0+YXBwZW5kVmlkZW9TYW1wbGVC
dWZmZXIoc2FtcGxlQnVmZmVyKTsKIH0KIAogdm9pZCBNZWRpYVJlY29yZGVyUHJpdmF0ZUFWRklt
cGw6OmF1ZGlvU2FtcGxlc0F2YWlsYWJsZShjb25zdCBXVEY6Ok1lZGlhVGltZSYgbWVkaWFUaW1l
LCBjb25zdCBQbGF0Zm9ybUF1ZGlvRGF0YSYgZGF0YSwgY29uc3QgQXVkaW9TdHJlYW1EZXNjcmlw
dGlvbiYgZGVzY3JpcHRpb24sIHNpemVfdCBzYW1wbGVDb3VudCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZh
dGVXcml0ZXJDb2NvYS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9j
b2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmgKaW5kZXggNGYyMmI4MTUxNTg1
MWNkYTI1ZWI4Yjk5ZWI0NzczNjA4ZTY5NmU2YS4uNWFlNjI3NjMyZjZlZjUyODI3Nzg3YTBhNWY2
NjAzZmMyNTU3OWM0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFy
ZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJp
dmF0ZVdyaXRlckNvY29hLmgKQEAgLTU2LDYgKzU2LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiBjbGFzcyBBdWRpb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3I7CiBjbGFzcyBBdWRpb1N0cmVhbURl
c2NyaXB0aW9uOworY2xhc3MgTWVkaWFTYW1wbGU7CiBjbGFzcyBNZWRpYVN0cmVhbVRyYWNrUHJp
dmF0ZTsKIGNsYXNzIFBsYXRmb3JtQXVkaW9EYXRhOwogY2xhc3MgVmlkZW9TYW1wbGVCdWZmZXJD
b21wcmVzc29yOwpAQCAtNjYsNyArNjcsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFJlZlB0cjxN
ZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlcj4gY3JlYXRlKGJvb2wgaGFzQXVkaW8sIGJvb2wgaGFz
VmlkZW8sIGNvbnN0IE1lZGlhUmVjb3JkZXJQcml2YXRlT3B0aW9ucyYpOwogICAgIH5NZWRpYVJl
Y29yZGVyUHJpdmF0ZVdyaXRlcigpOwogCi0gICAgdm9pZCBhcHBlbmRWaWRlb1NhbXBsZUJ1ZmZl
cihDTVNhbXBsZUJ1ZmZlclJlZik7CisgICAgdm9pZCBhcHBlbmRWaWRlb1NhbXBsZUJ1ZmZlcihN
ZWRpYVNhbXBsZSYpOwogICAgIHZvaWQgYXBwZW5kQXVkaW9TYW1wbGVCdWZmZXIoY29uc3QgUGxh
dGZvcm1BdWRpb0RhdGEmLCBjb25zdCBBdWRpb1N0cmVhbURlc2NyaXB0aW9uJiwgY29uc3QgV1RG
OjpNZWRpYVRpbWUmLCBzaXplX3QpOwogICAgIHZvaWQgc3RvcFJlY29yZGluZygpOwogICAgIHZv
aWQgZmV0Y2hEYXRhKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUmVmUHRyPFNoYXJlZEJ1ZmZlcj4m
Jik+JiYpOwpAQCAtMTI5LDYgKzEzMCw3IEBAIHByaXZhdGU6CiAKICAgICBib29sIG1faXNGbHVz
aGluZ1NhbXBsZXMgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9zaG91bGRTdG9wQWZ0ZXJGbHVzaGlu
Z1NhbXBsZXMgeyBmYWxzZSB9OworICAgIGJvb2wgbV9maXJzdFZpZGVvRnJhbWUgeyBmYWxzZSB9
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRl
ckNvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9N
ZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLm1tCmluZGV4IDc5ZmVlZTE4Mjg5MTUyOGVj
YTRhNTE0ODk3MzY2NzY2YWE4NzE5M2QuLmQzMGEzODg4NzdkYzljYjNmNDI2OWIyNTA3NmQzN2M0
M2E4ZTU0YWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3Jk
ZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5tbQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01lZGlhUmVjb3JkZXJQcml2YXRl
V3JpdGVyQ29jb2EubW0KQEAgLTQyMSwxMCArNDIxLDE5IEBAIHN0YXRpYyBpbmxpbmUgUmV0YWlu
UHRyPENNU2FtcGxlQnVmZmVyUmVmPiBjb3B5U2FtcGxlQnVmZmVyV2l0aEN1cnJlbnRUaW1lU3Rh
bXAoCiAgICAgcmV0dXJuIGFkb3B0Q0YobmV3QnVmZmVyKTsKIH0KIAotdm9pZCBNZWRpYVJlY29y
ZGVyUHJpdmF0ZVdyaXRlcjo6YXBwZW5kVmlkZW9TYW1wbGVCdWZmZXIoQ01TYW1wbGVCdWZmZXJS
ZWYgc2FtcGxlQnVmZmVyKQordm9pZCBNZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlcjo6YXBwZW5k
VmlkZW9TYW1wbGVCdWZmZXIoTWVkaWFTYW1wbGUmIHNhbXBsZSkKIHsKKyAgICBpZiAoIW1fZmly
c3RWaWRlb0ZyYW1lKSB7CisgICAgICAgIG1fZmlyc3RWaWRlb0ZyYW1lID0gdHJ1ZTsKKyAgICAg
ICAgaWYgKHNhbXBsZS52aWRlb1JvdGF0aW9uKCkgIT0gTWVkaWFTYW1wbGU6OlZpZGVvUm90YXRp
b246Ok5vbmUgfHwgc2FtcGxlLnZpZGVvTWlycm9yZWQoKSkgeworICAgICAgICAgICAgYXV0byB2
aWRlb1RyYW5zZm9ybSA9IENHQWZmaW5lVHJhbnNmb3JtTWFrZVJvdGF0aW9uKHN0YXRpY19jYXN0
PGludD4oc2FtcGxlLnZpZGVvUm90YXRpb24oKSkgKiBNX1BJIC8gMTgwKTsKKyAgICAgICAgICAg
IGlmIChzYW1wbGUudmlkZW9NaXJyb3JlZCgpKQorICAgICAgICAgICAgICAgIHZpZGVvVHJhbnNm
b3JtID0gQ0dBZmZpbmVUcmFuc2Zvcm1TY2FsZSh2aWRlb1RyYW5zZm9ybSwgLTEsIDEpOworICAg
ICAgICAgICAgbV92aWRlb0Fzc2V0V3JpdGVySW5wdXQuZ2V0KCkudHJhbnNmb3JtID0gdmlkZW9U
cmFuc2Zvcm07CisgICAgICAgIH0KKyAgICB9CiAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBub3Qg
c2V0IHRoZSB0aW1lc3RhbXBzIGlmIHRoZXkgYXJlIGFscmVhZHkgc2V0LgotICAgIGlmIChhdXRv
IGJ1ZmZlcldpdGhDdXJyZW50VGltZSA9IGNvcHlTYW1wbGVCdWZmZXJXaXRoQ3VycmVudFRpbWVT
dGFtcChzYW1wbGVCdWZmZXIpKQorICAgIGlmIChhdXRvIGJ1ZmZlcldpdGhDdXJyZW50VGltZSA9
IGNvcHlTYW1wbGVCdWZmZXJXaXRoQ3VycmVudFRpbWVTdGFtcChzYW1wbGUucGxhdGZvcm1TYW1w
bGUoKS5zYW1wbGUuY21TYW1wbGVCdWZmZXIpKQogICAgICAgICBtX3ZpZGVvQ29tcHJlc3Nvci0+
YWRkU2FtcGxlQnVmZmVyKGJ1ZmZlcldpdGhDdXJyZW50VGltZS5nZXQoKSk7CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy93ZWJydGMvUmVtb3RlTWVkaWFSZWNvcmRl
ci5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mvd2VicnRjL1JlbW90ZU1lZGlhUmVjb3Jk
ZXIuY3BwCmluZGV4IDYwMzRjMmQ1ZjhkMjU4YmFlNDVlYTUzNWE5NTYwNDFhNzY1NzQ2MWYuLjJm
ZGY5NzM2MjdiMDY0ZWE4ZWE4MDJiMGMxNTNlYzJjZDJhYTA0ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy93ZWJydGMvUmVtb3RlTWVkaWFSZWNvcmRlci5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL3dlYnJ0Yy9SZW1vdGVNZWRpYVJlY29yZGVyLmNwcApA
QCAtMTE4LDcgKzExOCw3IEBAIHZvaWQgUmVtb3RlTWVkaWFSZWNvcmRlcjo6dmlkZW9TYW1wbGVB
dmFpbGFibGUoV2ViQ29yZTo6UmVtb3RlVmlkZW9TYW1wbGUmJiByZW1vCiAgICAgICAgIHJldHVy
bjsKICAgICB9CiAKLSAgICBtX3dyaXRlci0+YXBwZW5kVmlkZW9TYW1wbGVCdWZmZXIoc2FtcGxl
QnVmZmVyLT5wbGF0Zm9ybVNhbXBsZSgpLnNhbXBsZS5jbVNhbXBsZUJ1ZmZlcik7CisgICAgbV93
cml0ZXItPmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKCpzYW1wbGVCdWZmZXIpOwogfQogCiB2b2lk
IFJlbW90ZU1lZGlhUmVjb3JkZXI6OmZldGNoRGF0YShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKElQ
Qzo6RGF0YVJlZmVyZW5jZSYmLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCA5MDg4NGFlZWYwZmEwYzIwYjEwZWMwODM3ZGU0NjgzMTc0YTQxMGRi
Li4yMTZmZWQxZTExZTk2NTZlNGQzN2EzOWQwZWM5NTY5NDA1ZGVkNTVhIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTQgQEAKKzIwMjAtMDktMjEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgor
CisgICAgICAgIFtpT1NdIE1lZGlhUmVjb3JkZXIgaW5jb3JyZWN0IHNjcmVlbiBvcmllbnRhdGlv
biBoYW5kbGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTk4OTEyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81MTgwMjUyMT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAgKiBodHRwL3dwdC9tZWRpYXJlY29y
ZGVyL3ZpZGVvLXJvdGF0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC93
cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi5odG1sOiBBZGRlZC4KKwogMjAyMC0wOS0x
OCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHN1cHBv
cnQgZm9yIEhUTUxNZWRpYUVsZW1lbnQuc2V0U2lua0lkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVvLXJvdGF0aW9uLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2h0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlkZW8tcm90YXRpb24tZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjUwYjNjMDBjNTVmMGY0Yjk2ZWI2NGZkNWM4Y2VkZmM2ZjY3OTJhZmEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9tZWRpYXJlY29yZGVyL3Zp
ZGVvLXJvdGF0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKKworCitQQVNTIFJlY29y
ZCBhIHJvdGF0ZWQgdmlkZW8gCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvd3B0L21l
ZGlhcmVjb3JkZXIvdmlkZW8tcm90YXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvd3B0L21l
ZGlhcmVjb3JkZXIvdmlkZW8tcm90YXRpb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MTU4YTg0MTU3OGNj
NWQ2NGVhNjdlMGExZjg4MmQwZWFlZmQyY2RmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC93cHQvbWVkaWFyZWNvcmRlci92aWRlby1yb3RhdGlvbi5odG1sCkBAIC0wLDAgKzEs
NDUgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRh
IGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAgICAgPHRpdGxlPlRlc3RpbmcgdmlkZW8gcm90YXRpb24g
aW4gbWVkaWEgcmVjb3JkZXI8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJv
ZHk+CisgICAgICAgIDx2aWRlbyBpZD0icmVjb3JkZWRWaWRlbyIgYXV0b3BsYXkgcGxheXNJbmxp
bmUgd2lkdGg9IjMyMCIgaGVpZ2h0PSIyNDAiPjwvdmlkZW8+CisgICAgICAgIDxzY3JpcHQ+Citw
cm9taXNlX3Rlc3QoYXN5bmMgKHRlc3QpID0+IHsKKyAgICBjb25zdCBzdHJlYW0gPSBhd2FpdCBu
YXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7dmlkZW86IHRydWUgfSk7CisgICAg
bGV0IGV4cGVjdGVkV2lkdGggPSA2NDA7CisgICAgbGV0IGV4cGVjdGVkSGVpZ2h0ID0gNDgwOwor
CisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKKyAgICAgICAgd2luZG93LmludGVybmFscy5z
ZXRDYW1lcmFNZWRpYVN0cmVhbVRyYWNrT3JpZW50YXRpb24oc3RyZWFtLmdldFZpZGVvVHJhY2tz
KClbMF0sIDkwKTsKKyAgICAgICAgdGVzdFJ1bm5lci5zZXRNb2NrQ2FtZXJhT3JpZW50YXRpb24o
OTApOworCisgICAgICAgIGV4cGVjdGVkV2lkdGggPSA0ODA7CisgICAgICAgIGV4cGVjdGVkSGVp
Z2h0ID0gNjQwOworICAgIH0KKworICAgIGNvbnN0IHJlY29yZGVyID0gbmV3IE1lZGlhUmVjb3Jk
ZXIoc3RyZWFtKTsKKyAgICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJl
amVjdCkgPT4geworICAgICAgICByZWNvcmRlci5vbmRhdGFhdmFpbGFibGUgPSAoZSkgPT4gcmVz
b2x2ZShlLmRhdGEpOworICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHJlamVjdCgiZGF0YXZhaWxh
YmxlIGV2ZW50IHRpbWVkIG91dCIpLCA1MDAwKTsKKyAgICB9KTsKKyAgICByZWNvcmRlci5zdGFy
dCgpOworICAgIHNldFRpbWVvdXQoKCkgPT4gcmVjb3JkZXIuc3RvcCgpLCAxMDAwKTsKKyAgICBj
b25zdCBibG9iID0gYXdhaXQgcHJvbWlzZTsKKworICAgIGNvbnN0IHVybCA9IFVSTC5jcmVhdGVP
YmplY3RVUkwoYmxvYik7CisgICAgcmVjb3JkZWRWaWRlby5zcmMgPSB1cmw7CisgICAgYXdhaXQg
cmVjb3JkZWRWaWRlby5wbGF5KCk7CisKKyAgICBVUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7CisK
KyAgICBhc3NlcnRfZXF1YWxzKHJlY29yZGVkVmlkZW8udmlkZW9XaWR0aCwgZXhwZWN0ZWRXaWR0
aCwgInJlY29yZGVkIHZpZGVvIHdpZHRoIik7CisgICAgYXNzZXJ0X2VxdWFscyhyZWNvcmRlZFZp
ZGVvLnZpZGVvSGVpZ2h0LCBleHBlY3RlZEhlaWdodCwgInJlY29yZGVkIHZpZGVvIGhlaWdodCIp
OworfSwgIlJlY29yZCBhIHJvdGF0ZWQgdmlkZW8iKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAg
PC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410099</attachid>
            <date>2020-09-30 01:14:00 -0700</date>
            <delta_ts>2020-10-01 00:33:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-198912-20200930101359.patch</filename>
            <type>text/plain</type>
            <size>3898</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3NzMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGIzM2Y5ODQ2YzUwNGJi
YmYzODNhNTdmM2ViZGRjN2FkMjcxNzNmYi4uYWMwYzEzNjc1ZGVmNzQ5ZTIwNGEzZWY1YTEzNzdk
NjhhY2FkODIxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA5LTMwICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29y
ZGVyIGluY29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgV2Ugd2VyZSBzZXR0aW5nIHRoZSB0cmFuc2Zvcm0gdG8gdGhlIHdyaXRlciBp
bnB1dCB0b28gc29vbi4KKyAgICAgICAgQnVmZmVyIHRoZSB0cmFuc2Zvcm0gd2hlbiByZWNlaXZp
bmcgdGhlIGZpcnN0IGZyYW1lIGFuZCBzZXQgaXQgYXQgY3JlYXRpb24gb2YgdGhlIHdyaXRlciBp
bnB1dC4KKworICAgICAgICBDb3ZlcmVkIGJ5IGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvdmlkZW8t
cm90YXRpb24uaHRtbCBub3cgYWN0dWFsbHkgcGFzc2luZy4KKworICAgICAgICAqIHBsYXRmb3Jt
L21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oOgor
ICAgICAgICAqIHBsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZh
dGVXcml0ZXJDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUmVjb3JkZXJQcml2YXRl
V3JpdGVyOjpzdGFydEFzc2V0V3JpdGVyKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUmVjb3Jk
ZXJQcml2YXRlV3JpdGVyOjphcHBlbmRWaWRlb1NhbXBsZUJ1ZmZlcik6CisKIDIwMjAtMDktMjkg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIE1lZGlhUmVjb3Jk
ZXIgc2hvdWxkIHN1cHBvcnQgaXNUeXBlU3VwcG9ydGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01lZGlhUmVjb3JkZXJQcml2YXRlV3Jp
dGVyQ29jb2EuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2Ev
TWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oCmluZGV4IDE2NmFhMmYxYWU5NzcwMTIy
MTExZWRjOTkyYzQzZmU4YmU0OGM1MjQuLjA2Yzk0ODIyNWFhMDhlMDg0N2Y4NWUzODQyM2MzNmM0
MDhhMzJhZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3Jk
ZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVX
cml0ZXJDb2NvYS5oCkBAIC0xMzEsNiArMTMxLDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1faXNG
bHVzaGluZ1NhbXBsZXMgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9zaG91bGRTdG9wQWZ0ZXJGbHVz
aGluZ1NhbXBsZXMgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9maXJzdFZpZGVvRnJhbWUgeyBmYWxz
ZSB9OworICAgIE9wdGlvbmFsPENHQWZmaW5lVHJhbnNmb3JtPiBtX3ZpZGVvVHJhbnNmb3JtOwog
ICAgIENNVGltZSBtX2ZpcnN0VmlkZW9TYW1wbGVUaW1lIHsga0NNVGltZVplcm8gfTsKICAgICBD
TVRpbWUgbV9jdXJyZW50QXVkaW9TYW1wbGVUaW1lIHsga0NNVGltZVplcm8gfTsKIH07CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01lZGlh
UmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXJlY29yZGVyL2NvY29hL01lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EubW0KaW5k
ZXggMjBhNWQ0ZjBkNWFlYmVkZjc3YzlmYzE1ZjgyOWRlZWIxMzEyYzZjYy4uNzExMDE3NjRkNjc3
M2EzY2JhM2M3YjhhMjgyNWZmM2U0ZTdlNDliMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNv
Y29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2Ev
TWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5tbQpAQCAtMjI0LDYgKzIyNCw5IEBAIHZv
aWQgTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXI6OnN0YXJ0QXNzZXRXcml0ZXIoKQogICAgIGlm
IChtX2hhc1ZpZGVvKSB7CiAgICAgICAgIG1fdmlkZW9Bc3NldFdyaXRlcklucHV0ID0gYWRvcHRO
UyhbUEFMOjphbGxvY0FWQXNzZXRXcml0ZXJJbnB1dEluc3RhbmNlKCkgaW5pdFdpdGhNZWRpYVR5
cGU6QVZNZWRpYVR5cGVWaWRlbyBvdXRwdXRTZXR0aW5nczpuaWwgc291cmNlRm9ybWF0SGludDpt
X3ZpZGVvRm9ybWF0RGVzY3JpcHRpb24uZ2V0KCldKTsKICAgICAgICAgW21fdmlkZW9Bc3NldFdy
aXRlcklucHV0IHNldEV4cGVjdHNNZWRpYURhdGFJblJlYWxUaW1lOnRydWVdOworICAgICAgICBp
ZiAobV92aWRlb1RyYW5zZm9ybSkKKyAgICAgICAgICAgIG1fdmlkZW9Bc3NldFdyaXRlcklucHV0
LmdldCgpLnRyYW5zZm9ybSA9ICptX3ZpZGVvVHJhbnNmb3JtOworCiAgICAgICAgIGlmICghW21f
d3JpdGVyLmdldCgpIGNhbkFkZElucHV0Om1fdmlkZW9Bc3NldFdyaXRlcklucHV0LmdldCgpXSkg
ewogICAgICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoTWVkaWFTdHJlYW0sICJNZWRpYVJlY29y
ZGVyUHJpdmF0ZVdyaXRlcjo6c3RhcnRBc3NldFdyaXRlciBmYWlsZWQgY2FuQWRkSW5wdXQgZm9y
IHZpZGVvIik7CiAgICAgICAgICAgICByZXR1cm47CkBAIC00MjYsMTAgKzQyOSw4IEBAIHZvaWQg
TWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXI6OmFwcGVuZFZpZGVvU2FtcGxlQnVmZmVyKE1lZGlh
U2FtcGxlJiBzYW1wbGUpCiAgICAgICAgIG1fZmlyc3RWaWRlb0ZyYW1lID0gdHJ1ZTsKICAgICAg
ICAgbV9maXJzdFZpZGVvU2FtcGxlVGltZSA9IENNQ2xvY2tHZXRUaW1lKENNQ2xvY2tHZXRIb3N0
VGltZUNsb2NrKCkpOwogICAgICAgICBpZiAoc2FtcGxlLnZpZGVvUm90YXRpb24oKSAhPSBNZWRp
YVNhbXBsZTo6VmlkZW9Sb3RhdGlvbjo6Tm9uZSB8fCBzYW1wbGUudmlkZW9NaXJyb3JlZCgpKSB7
Ci0gICAgICAgICAgICBhdXRvIHZpZGVvVHJhbnNmb3JtID0gQ0dBZmZpbmVUcmFuc2Zvcm1NYWtl
Um90YXRpb24oc3RhdGljX2Nhc3Q8aW50PihzYW1wbGUudmlkZW9Sb3RhdGlvbigpKSAqIE1fUEkg
LyAxODApOwotICAgICAgICAgICAgaWYgKHNhbXBsZS52aWRlb01pcnJvcmVkKCkpCi0gICAgICAg
ICAgICAgICAgdmlkZW9UcmFuc2Zvcm0gPSBDR0FmZmluZVRyYW5zZm9ybVNjYWxlKHZpZGVvVHJh
bnNmb3JtLCAtMSwgMSk7Ci0gICAgICAgICAgICBtX3ZpZGVvQXNzZXRXcml0ZXJJbnB1dC5nZXQo
KS50cmFuc2Zvcm0gPSB2aWRlb1RyYW5zZm9ybTsKKyAgICAgICAgICAgIG1fdmlkZW9UcmFuc2Zv
cm0gPSBDR0FmZmluZVRyYW5zZm9ybU1ha2VSb3RhdGlvbihzdGF0aWNfY2FzdDxpbnQ+KHNhbXBs
ZS52aWRlb1JvdGF0aW9uKCkpICogTV9QSSAvIDE4MCk7CisgICAgICAgICAgICBtX3ZpZGVvVHJh
bnNmb3JtID0gQ0dBZmZpbmVUcmFuc2Zvcm1TY2FsZSgqbV92aWRlb1RyYW5zZm9ybSwgLTEsIDEp
OwogICAgICAgICB9CiAgICAgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410201</attachid>
            <date>2020-10-01 00:33:11 -0700</date>
            <delta_ts>2020-10-01 04:25:43 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-198912-20201001093309.patch</filename>
            <type>text/plain</type>
            <size>3871</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3ODIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmJiYWQ5ZjhiZjdkOTc3
ZTVlMTJiNjM0ODYyNzI1ZmZhOGRlOWQ3NC4uYzYyN2VmMjJiNDc3Y2IwYTFiMTFiMWEwY2E1YjU0
Nzk1YWU5MTViYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTEwLTAxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNZWRpYVJlY29y
ZGVyIGluY29ycmVjdCBzY3JlZW4gb3JpZW50YXRpb24gaGFuZGxpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODkxMgorICAgICAgICA8cmRhcjov
L3Byb2JsZW0vNTE4MDI1MjE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgor
CisgICAgICAgIFdlIHdlcmUgc2V0dGluZyB0aGUgdHJhbnNmb3JtIHRvIHRoZSB3cml0ZXIgaW5w
dXQgdG9vIHNvb24uCisgICAgICAgIEJ1ZmZlciB0aGUgdHJhbnNmb3JtIHdoZW4gcmVjZWl2aW5n
IHRoZSBmaXJzdCBmcmFtZSBhbmQgc2V0IGl0IGF0IGNyZWF0aW9uIG9mIHRoZSB3cml0ZXIgaW5w
dXQuCisKKyAgICAgICAgQ292ZXJlZCBieSBodHRwL3dwdC9tZWRpYXJlY29yZGVyL3ZpZGVvLXJv
dGF0aW9uLmh0bWwgbm93IGFjdHVhbGx5IHBhc3NpbmcuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9t
ZWRpYXJlY29yZGVyL2NvY29hL01lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EuaDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01lZGlhUmVjb3JkZXJQcml2YXRl
V3JpdGVyQ29jb2EubW06CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVJlY29yZGVyUHJpdmF0ZVdy
aXRlcjo6c3RhcnRBc3NldFdyaXRlcik6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVJlY29yZGVy
UHJpdmF0ZVdyaXRlcjo6YXBwZW5kVmlkZW9TYW1wbGVCdWZmZXIpOgorCiAyMDIwLTA5LTMwICBS
b2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHJlc3BvbnNlSXNY
TUwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29j
b2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29h
LmgKaW5kZXggMTY2YWEyZjFhZTk3NzAxMjIxMTFlZGM5OTJjNDNmZThiZTQ4YzUyNC4uMDZjOTQ4
MjI1YWEwOGUwODQ3Zjg1ZTM4NDIzYzM2YzQwOGEzMmFmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdy
aXRlckNvY29hLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFyZWNvcmRlci9j
b2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmgKQEAgLTEzMSw2ICsxMzEsNyBA
QCBwcml2YXRlOgogICAgIGJvb2wgbV9pc0ZsdXNoaW5nU2FtcGxlcyB7IGZhbHNlIH07CiAgICAg
Ym9vbCBtX3Nob3VsZFN0b3BBZnRlckZsdXNoaW5nU2FtcGxlcyB7IGZhbHNlIH07CiAgICAgYm9v
bCBtX2ZpcnN0VmlkZW9GcmFtZSB7IGZhbHNlIH07CisgICAgT3B0aW9uYWw8Q0dBZmZpbmVUcmFu
c2Zvcm0+IG1fdmlkZW9UcmFuc2Zvcm07CiAgICAgQ01UaW1lIG1fZmlyc3RWaWRlb1NhbXBsZVRp
bWUgeyBrQ01UaW1lWmVybyB9OwogICAgIENNVGltZSBtX2N1cnJlbnRBdWRpb1NhbXBsZVRpbWUg
eyBrQ01UaW1lWmVybyB9OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRlclByaXZhdGVXcml0ZXJDb2NvYS5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhcmVjb3JkZXIvY29jb2EvTWVkaWFSZWNvcmRl
clByaXZhdGVXcml0ZXJDb2NvYS5tbQppbmRleCAyMGE1ZDRmMGQ1YWViZWRmNzdjOWZjMTVmODI5
ZGVlYjEzMTJjNmNjLi42NTkxNGU1NzYwYzc3OTFhOTM1MmNkZjI5ZmRkNjkyOWU2ZDU3MzZhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXJlY29yZGVyL2NvY29hL01l
ZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFyZWNvcmRlci9jb2NvYS9NZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29h
Lm1tCkBAIC0yMjQsNiArMjI0LDkgQEAgdm9pZCBNZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlcjo6
c3RhcnRBc3NldFdyaXRlcigpCiAgICAgaWYgKG1faGFzVmlkZW8pIHsKICAgICAgICAgbV92aWRl
b0Fzc2V0V3JpdGVySW5wdXQgPSBhZG9wdE5TKFtQQUw6OmFsbG9jQVZBc3NldFdyaXRlcklucHV0
SW5zdGFuY2UoKSBpbml0V2l0aE1lZGlhVHlwZTpBVk1lZGlhVHlwZVZpZGVvIG91dHB1dFNldHRp
bmdzOm5pbCBzb3VyY2VGb3JtYXRIaW50Om1fdmlkZW9Gb3JtYXREZXNjcmlwdGlvbi5nZXQoKV0p
OwogICAgICAgICBbbV92aWRlb0Fzc2V0V3JpdGVySW5wdXQgc2V0RXhwZWN0c01lZGlhRGF0YUlu
UmVhbFRpbWU6dHJ1ZV07CisgICAgICAgIGlmIChtX3ZpZGVvVHJhbnNmb3JtKQorICAgICAgICAg
ICAgbV92aWRlb0Fzc2V0V3JpdGVySW5wdXQuZ2V0KCkudHJhbnNmb3JtID0gKm1fdmlkZW9UcmFu
c2Zvcm07CisKICAgICAgICAgaWYgKCFbbV93cml0ZXIuZ2V0KCkgY2FuQWRkSW5wdXQ6bV92aWRl
b0Fzc2V0V3JpdGVySW5wdXQuZ2V0KCldKSB7CiAgICAgICAgICAgICBSRUxFQVNFX0xPR19FUlJP
UihNZWRpYVN0cmVhbSwgIk1lZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyOjpzdGFydEFzc2V0V3Jp
dGVyIGZhaWxlZCBjYW5BZGRJbnB1dCBmb3IgdmlkZW8iKTsKICAgICAgICAgICAgIHJldHVybjsK
QEAgLTQyNiwxMCArNDI5LDkgQEAgdm9pZCBNZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlcjo6YXBw
ZW5kVmlkZW9TYW1wbGVCdWZmZXIoTWVkaWFTYW1wbGUmIHNhbXBsZSkKICAgICAgICAgbV9maXJz
dFZpZGVvRnJhbWUgPSB0cnVlOwogICAgICAgICBtX2ZpcnN0VmlkZW9TYW1wbGVUaW1lID0gQ01D
bG9ja0dldFRpbWUoQ01DbG9ja0dldEhvc3RUaW1lQ2xvY2soKSk7CiAgICAgICAgIGlmIChzYW1w
bGUudmlkZW9Sb3RhdGlvbigpICE9IE1lZGlhU2FtcGxlOjpWaWRlb1JvdGF0aW9uOjpOb25lIHx8
IHNhbXBsZS52aWRlb01pcnJvcmVkKCkpIHsKLSAgICAgICAgICAgIGF1dG8gdmlkZW9UcmFuc2Zv
cm0gPSBDR0FmZmluZVRyYW5zZm9ybU1ha2VSb3RhdGlvbihzdGF0aWNfY2FzdDxpbnQ+KHNhbXBs
ZS52aWRlb1JvdGF0aW9uKCkpICogTV9QSSAvIDE4MCk7CisgICAgICAgICAgICBtX3ZpZGVvVHJh
bnNmb3JtID0gQ0dBZmZpbmVUcmFuc2Zvcm1NYWtlUm90YXRpb24oc3RhdGljX2Nhc3Q8aW50Pihz
YW1wbGUudmlkZW9Sb3RhdGlvbigpKSAqIE1fUEkgLyAxODApOwogICAgICAgICAgICAgaWYgKHNh
bXBsZS52aWRlb01pcnJvcmVkKCkpCi0gICAgICAgICAgICAgICAgdmlkZW9UcmFuc2Zvcm0gPSBD
R0FmZmluZVRyYW5zZm9ybVNjYWxlKHZpZGVvVHJhbnNmb3JtLCAtMSwgMSk7Ci0gICAgICAgICAg
ICBtX3ZpZGVvQXNzZXRXcml0ZXJJbnB1dC5nZXQoKS50cmFuc2Zvcm0gPSB2aWRlb1RyYW5zZm9y
bTsKKyAgICAgICAgICAgICAgICBtX3ZpZGVvVHJhbnNmb3JtID0gQ0dBZmZpbmVUcmFuc2Zvcm1T
Y2FsZSgqbV92aWRlb1RyYW5zZm9ybSwgLTEsIDEpOwogICAgICAgICB9CiAgICAgfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>