<?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>204272</bug_id>
          
          <creation_ts>2019-11-16 06:25:20 -0800</creation_ts>
          <short_desc>REGRESSION(r252455): imported/w3c/web-platform-tests/dom/events/Event-dispatch-on-disabled-elements.html fails on iOS and WK1</short_desc>
          <delta_ts>2019-11-27 11:38:52 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=204116</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>204116</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>dino</cc>
    
    <cc>graouts</cc>
    
    <cc>pnormand</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1590855</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-11-16 06:25:20 -0800</bug_when>
    <thetext>https://trac.webkit.org/changeset/252455 broke the build:
Broke a layout-test on iOS (Requested by aakashja_ on #webkit).

This is an automatic bug report generated by webkitbot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1590857</commentid>
    <comment_count>1</comment_count>
      <attachid>383695</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-11-16 06:25:27 -0800</bug_when>
    <thetext>Created attachment 383695
ROLLOUT of r252455

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1590858</commentid>
    <comment_count>2</comment_count>
      <attachid>383695</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-11-16 06:29:02 -0800</bug_when>
    <thetext>Comment on attachment 383695
ROLLOUT of r252455

Clearing flags on attachment: 383695

Committed r252526: &lt;https://trac.webkit.org/changeset/252526&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1590859</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-11-16 06:29:04 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1590860</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-11-16 06:30:17 -0800</bug_when>
    <thetext>&lt;rdar://problem/57253742&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1590862</commentid>
    <comment_count>5</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-11-16 06:37:56 -0800</bug_when>
    <thetext>*** Bug 204223 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1590867</commentid>
    <comment_count>6</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2019-11-16 08:11:04 -0800</bug_when>
    <thetext>This rollout broke all ports...

../../Source/WebCore/animation/DocumentTimeline.cpp: In member function ‘void WebCore::DocumentTimeline::animationAcceleratedRunningStateDidChange(WebCore::WebAnimation&amp;)’:
../../Source/WebCore/animation/DocumentTimeline.cpp:639:9: error: ‘shouldRunUpdateAnimationsAndSendEventsIgnoringSuspensionState’ was not declared in this scope
     if (shouldRunUpdateAnimationsAndSendEventsIgnoringSuspensionState())
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1590870</commentid>
    <comment_count>7</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2019-11-16 09:11:54 -0800</bug_when>
    <thetext>Reverted r252526 for reason:

broke iOS and mac builds

Committed r252527: &lt;https://trac.webkit.org/changeset/252527&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1592837</commentid>
    <comment_count>8</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2019-11-22 09:25:03 -0800</bug_when>
    <thetext>*** Bug 204509 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1593694</commentid>
    <comment_count>9</comment_count>
      <attachid>384362</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2019-11-26 09:49:51 -0800</bug_when>
    <thetext>Created attachment 384362
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1593705</commentid>
    <comment_count>10</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2019-11-26 10:14:44 -0800</bug_when>
    <thetext>imported/w3c/web-platform-tests/css/css-animations/Document-getAnimations.tentative.html is now failing, but that&apos;s most likely because it worked by pure magic before. Hopefully this will be an easy fix, looking into that now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1593751</commentid>
    <comment_count>11</comment_count>
      <attachid>384380</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2019-11-26 12:48:12 -0800</bug_when>
    <thetext>Created attachment 384380
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1593752</commentid>
    <comment_count>12</comment_count>
      <attachid>384380</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-11-26 12:52:39 -0800</bug_when>
    <thetext>Comment on attachment 384380
Patch

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

&gt; Source/WebCore/animation/AnimationTimeline.cpp:77
&gt; +    static unsigned s_globalPosition = 0;

Use uint64_t. Hopefully we&apos;ll never have that many animations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1593775</commentid>
    <comment_count>13</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-11-26 18:11:16 -0800</bug_when>
    <thetext>(In reply to Dean Jackson from comment #12)
&gt; Comment on attachment 384380 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=384380&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/animation/AnimationTimeline.cpp:77
&gt; &gt; +    static unsigned s_globalPosition = 0;
&gt; 
&gt; Use uint64_t. Hopefully we&apos;ll never have that many animations.

If we created one animation every nanosecond, which is a bit of stretch since we need at least a few CPU cycles to create &amp; destroy one in the main thread, it takes like ~584 years (2^64/(10^9*3600*24*365.24)) to overflow a 64 bit unsigned integer. We can safely say an issue that arises after such a runtime horizon is outside the scope of the WebKit project.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1593873</commentid>
    <comment_count>14</comment_count>
      <attachid>384416</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2019-11-27 08:40:33 -0800</bug_when>
    <thetext>Created attachment 384416
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1593903</commentid>
    <comment_count>15</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2019-11-27 11:38:52 -0800</bug_when>
    <thetext>Committed r252911: &lt;https://trac.webkit.org/changeset/252911&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383695</attachid>
            <date>2019-11-16 06:25:27 -0800</date>
            <delta_ts>2019-11-18 14:05:26 -0800</delta_ts>
            <desc>ROLLOUT of r252455</desc>
            <filename>bug-204272-20191116062526.patch</filename>
            <type>text/plain</type>
            <size>15266</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUyNTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzQzMmQ2ZTRmMTUxNDcx
ZGJhYzhmYmMyOTZkZjg5ZWQzNmFhMGYwNi4uZDc2ZTdlZWZiMTIyZjk3NzRmZjQxMjM4MTE5ODEw
YThjOWVlMTg2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE5LTExLTE2ICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMjUyNDU1LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjA0MjcyCisKKyAgICAgICAgQnJva2UgYSBsYXlvdXQtdGVzdCBvbiBp
T1MgKFJlcXVlc3RlZCBieSBhYWthc2hqYV8gb24KKyAgICAgICAgI3dlYmtpdCkuCisKKyAgICAg
ICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJbV2ViIEFuaW1hdGlvbnNdIFJldGFy
Z2V0ZWQgdHJhbnNpdGlvbnMgdGFyZ2V0aW5nIGFjY2VsZXJhdGVkCisgICAgICAgIHByb3BlcnRp
ZXMgZG8gbm90IHN0b3AgdGhlIG9yaWdpbmFsIHRyYW5zaXRpb24iCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDQxMTYKKyAgICAgICAgaHR0cHM6Ly90
cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzI1MjQ1NQorCiAyMDE5LTExLTE1ICBDaHJpcyBEdW1l
eiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjI1MjQ5Nyk6IE11
bHRpcGxlIG1lZGlhY2FwdHVyZWZyb21lbGVtZW50IHRlc3RzIGFyZSBjcmFzaGluZyBvbiBtYWMg
ZGVidWcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25FZmZl
Y3QuaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25FZmZlY3QuaAppbmRleCA4
ZWJiNDRjMzMyNDhkNmVjODY4NWExNzNjNzkzY2UxNzI4MzY2YWI0Li5lMWVjZWQ0ZDhlZmQ5MWZl
NzNlZDJhNGE5ZTVjM2FiYzA4ZGZlY2I0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmlt
YXRpb24vQW5pbWF0aW9uRWZmZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0Fu
aW1hdGlvbkVmZmVjdC5oCkBAIC02MSw3ICs2MSw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgYXBwbHkoUmVuZGVyU3R5bGUmKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGludmFsaWRhdGUo
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGFuaW1hdGlvbkRpZFNlZWsoKSA9IDA7Ci0gICAgdmly
dHVhbCB2b2lkIGFuaW1hdGlvbldhc0NhbmNlbGVkKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBh
bmltYXRpb25TdXNwZW5zaW9uU3RhdGVEaWRDaGFuZ2UoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwg
dm9pZCBhbmltYXRpb25UaW1lbGluZURpZENoYW5nZShBbmltYXRpb25UaW1lbGluZSopID0gMDsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0FuaW1hdGlvblRpbWVsaW5l
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25UaW1lbGluZS5jcHAKaW5k
ZXggM2E5MmE5MzcxYTZkZmI1ZTE5NjM2MGU5OTkwYmRlM2RkYjE0ZDBmOS4uYzRkZWEzY2RmZWFk
NjBlYmMxNzA4ZTg2ZTFlMzYzNzA2N2ViMmFlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YW5pbWF0aW9uL0FuaW1hdGlvblRpbWVsaW5lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmlt
YXRpb24vQW5pbWF0aW9uVGltZWxpbmUuY3BwCkBAIC0zOTksMjkgKzM5OSwxMCBAQCB2b2lkIEFu
aW1hdGlvblRpbWVsaW5lOjp1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRBbmRQcm9wZXJ0
eShFbGVtZW50JiBlbGVtZQogICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3MtdHJh
bnNpdGlvbnMtMS8jYmVmb3JlLWNoYW5nZS1zdHlsZQogICAgIC8vIERlZmluZSB0aGUgYmVmb3Jl
LWNoYW5nZSBzdHlsZSBhcyB0aGUgY29tcHV0ZWQgdmFsdWVzIG9mIGFsbCBwcm9wZXJ0aWVzIG9u
IHRoZSBlbGVtZW50IGFzIG9mIHRoZSBwcmV2aW91cyBzdHlsZSBjaGFuZ2UgZXZlbnQsIGV4Y2Vw
dCB3aXRoCiAgICAgLy8gYW55IHN0eWxlcyBkZXJpdmVkIGZyb20gZGVjbGFyYXRpdmUgYW5pbWF0
aW9ucyBzdWNoIGFzIENTUyBUcmFuc2l0aW9ucywgQ1NTIEFuaW1hdGlvbnMsIGFuZCBTTUlMIEFu
aW1hdGlvbnMgdXBkYXRlZCB0byB0aGUgY3VycmVudCB0aW1lLgotICAgIGJvb2wgaGFzUnVubmlu
Z1RyYW5zaXRpb24gPSBydW5uaW5nVHJhbnNpdGlvbnNCeVByb3BlcnR5LmNvbnRhaW5zKHByb3Bl
cnR5KTsKLSAgICBhdXRvJiBiZWZvcmVDaGFuZ2VTdHlsZSA9IFsmXSgpIC0+IGNvbnN0IFJlbmRl
clN0eWxlJiB7Ci0gICAgICAgIGlmIChoYXNSdW5uaW5nVHJhbnNpdGlvbiAmJiBDU1NQcm9wZXJ0
eUFuaW1hdGlvbjo6YW5pbWF0aW9uT2ZQcm9wZXJ0eUlzQWNjZWxlcmF0ZWQocHJvcGVydHkpKSB7
Ci0gICAgICAgICAgICAvLyBJbiBjYXNlIHdlIGhhdmUgYW4gYWNjZWxlcmF0ZWQgdHJhbnNpdGlv
biBydW5uaW5nIGZvciB0aGlzIGVsZW1lbnQsIHdlIG5lZWQgdG8gZ2V0IGl0cyBjb21wdXRlZCBz
dHlsZSBhcyB0aGUgYmVmb3JlLWNoYW5nZSBzdHlsZQotICAgICAgICAgICAgLy8gc2luY2Ugb3Ro
ZXJ3aXNlIHRoZSBhbmltYXRlZCB2YWx1ZSBmb3IgdGhhdCBwcm9wZXJ0eSB3b24ndCBiZSB2aXNp
YmxlLgotICAgICAgICAgICAgYXV0byogcnVubmluZ1RyYW5zaXRpb24gPSBydW5uaW5nVHJhbnNp
dGlvbnNCeVByb3BlcnR5LmdldChwcm9wZXJ0eSk7Ci0gICAgICAgICAgICBpZiAoaXM8S2V5ZnJh
bWVFZmZlY3Q+KHJ1bm5pbmdUcmFuc2l0aW9uLT5lZmZlY3QoKSkpIHsKLSAgICAgICAgICAgICAg
ICBhdXRvJiBrZXlmcmFtZUVmZmVjdCA9ICpkb3duY2FzdDxLZXlmcmFtZUVmZmVjdD4ocnVubmlu
Z1RyYW5zaXRpb24tPmVmZmVjdCgpKTsKLSAgICAgICAgICAgICAgICBpZiAoa2V5ZnJhbWVFZmZl
Y3QuaXNBY2NlbGVyYXRlZCgpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGF1dG8gYW5pbWF0ZWRT
dHlsZSA9IFJlbmRlclN0eWxlOjpjbG9uZVB0cihjdXJyZW50U3R5bGUpOwotICAgICAgICAgICAg
ICAgICAgICBydW5uaW5nVHJhbnNpdGlvbi0+cmVzb2x2ZSgqYW5pbWF0ZWRTdHlsZSk7Ci0gICAg
ICAgICAgICAgICAgICAgIHJldHVybiAqYW5pbWF0ZWRTdHlsZTsKLSAgICAgICAgICAgICAgICB9
Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KKyAgICBhdXRvIGV4aXN0aW5nQW5pbWF0aW9uID0g
Y3NzQW5pbWF0aW9uRm9yRWxlbWVudEFuZFByb3BlcnR5KGVsZW1lbnQsIHByb3BlcnR5KTsKKyAg
ICBjb25zdCBhdXRvJiBiZWZvcmVDaGFuZ2VTdHlsZSA9IGV4aXN0aW5nQW5pbWF0aW9uID8gZG93
bmNhc3Q8Q1NTQW5pbWF0aW9uPihleGlzdGluZ0FuaW1hdGlvbi5nZXQoKSktPnVuYW5pbWF0ZWRT
dHlsZSgpIDogY3VycmVudFN0eWxlOwogCi0gICAgICAgIGlmIChhdXRvIGV4aXN0aW5nQW5pbWF0
aW9uID0gY3NzQW5pbWF0aW9uRm9yRWxlbWVudEFuZFByb3BlcnR5KGVsZW1lbnQsIHByb3BlcnR5
KSkKLSAgICAgICAgICAgIHJldHVybiBkb3duY2FzdDxDU1NBbmltYXRpb24+KGV4aXN0aW5nQW5p
bWF0aW9uLmdldCgpKS0+dW5hbmltYXRlZFN0eWxlKCk7Ci0KLSAgICAgICAgcmV0dXJuIGN1cnJl
bnRTdHlsZTsKLSAgICB9KCk7Ci0KLSAgICBpZiAoIWhhc1J1bm5pbmdUcmFuc2l0aW9uCisgICAg
aWYgKCFydW5uaW5nVHJhbnNpdGlvbnNCeVByb3BlcnR5LmNvbnRhaW5zKHByb3BlcnR5KQogICAg
ICAgICAmJiAhQ1NTUHJvcGVydHlBbmltYXRpb246OnByb3BlcnRpZXNFcXVhbChwcm9wZXJ0eSwg
JmJlZm9yZUNoYW5nZVN0eWxlLCAmYWZ0ZXJDaGFuZ2VTdHlsZSkKICAgICAgICAgJiYgQ1NTUHJv
cGVydHlBbmltYXRpb246OmNhblByb3BlcnR5QmVJbnRlcnBvbGF0ZWQocHJvcGVydHksICZiZWZv
cmVDaGFuZ2VTdHlsZSwgJmFmdGVyQ2hhbmdlU3R5bGUpCiAgICAgICAgICYmICFwcm9wZXJ0eUlu
U3R5bGVNYXRjaGVzVmFsdWVGb3JUcmFuc2l0aW9uSW5NYXAocHJvcGVydHksIGFmdGVyQ2hhbmdl
U3R5bGUsIGNvbXBsZXRlZFRyYW5zaXRpb25zQnlQcm9wZXJ0eSkKQEAgLTQ1NCw3ICs0MzUsNyBA
QCB2b2lkIEFuaW1hdGlvblRpbWVsaW5lOjp1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRB
bmRQcm9wZXJ0eShFbGVtZW50JiBlbGVtZQogICAgICAgICBjb21wbGV0ZWRUcmFuc2l0aW9uc0J5
UHJvcGVydHkucmVtb3ZlKHByb3BlcnR5KTsKICAgICB9CiAKLSAgICBoYXNSdW5uaW5nVHJhbnNp
dGlvbiA9IHJ1bm5pbmdUcmFuc2l0aW9uc0J5UHJvcGVydHkuY29udGFpbnMocHJvcGVydHkpOwor
ICAgIGJvb2wgaGFzUnVubmluZ1RyYW5zaXRpb24gPSBydW5uaW5nVHJhbnNpdGlvbnNCeVByb3Bl
cnR5LmNvbnRhaW5zKHByb3BlcnR5KTsKICAgICBpZiAoKGhhc1J1bm5pbmdUcmFuc2l0aW9uIHx8
IGNvbXBsZXRlZFRyYW5zaXRpb25zQnlQcm9wZXJ0eS5jb250YWlucyhwcm9wZXJ0eSkpICYmICFt
YXRjaGluZ0JhY2tpbmdBbmltYXRpb24pIHsKICAgICAgICAgLy8gMy4gSWYgdGhlIGVsZW1lbnQg
aGFzIGEgcnVubmluZyB0cmFuc2l0aW9uIG9yIGNvbXBsZXRlZCB0cmFuc2l0aW9uIGZvciB0aGUg
cHJvcGVydHksIGFuZCB0aGVyZSBpcyBub3QgYSBtYXRjaGluZyB0cmFuc2l0aW9uLXByb3BlcnR5
CiAgICAgICAgIC8vICAgIHZhbHVlLCB0aGVuIGltcGxlbWVudGF0aW9ucyBtdXN0IGNhbmNlbCB0
aGUgcnVubmluZyB0cmFuc2l0aW9uIG9yIHJlbW92ZSB0aGUgY29tcGxldGVkIHRyYW5zaXRpb24g
ZnJvbSB0aGUgc2V0IG9mIGNvbXBsZXRlZCB0cmFuc2l0aW9ucy4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9Eb2N1bWVudFRpbWVsaW5lLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9Eb2N1bWVudFRpbWVsaW5lLmNwcAppbmRleCBkMzczYTU3NWQ2MTRmYzRlMjdm
YzZmYjJlZWQ3YTQwOWFhM2NmNzkzLi4xODgxYzgwZDAwZWUzMTE4ZjA0ZDk0NzAyMjViOTQ3MDlm
ODcwNmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vRG9jdW1lbnRUaW1l
bGluZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmUu
Y3BwCkBAIC0zMDcsMTMgKzMwNywxMyBAQCB2b2lkIERvY3VtZW50VGltZWxpbmU6OnJlbW92ZUFu
aW1hdGlvbihXZWJBbmltYXRpb24mIGFuaW1hdGlvbikKIHsKICAgICBBbmltYXRpb25UaW1lbGlu
ZTo6cmVtb3ZlQW5pbWF0aW9uKGFuaW1hdGlvbik7CiAKLSAgICBpZiAoIXNob3VsZFJ1blVwZGF0
ZUFuaW1hdGlvbnNBbmRTZW5kRXZlbnRzSWdub3JpbmdTdXNwZW5zaW9uU3RhdGUoKSkKKyAgICBp
ZiAobV9hbmltYXRpb25zLmlzRW1wdHkoKSkKICAgICAgICAgdW5zY2hlZHVsZUFuaW1hdGlvblJl
c29sdXRpb24oKTsKIH0KIAogdm9pZCBEb2N1bWVudFRpbWVsaW5lOjpzY2hlZHVsZUFuaW1hdGlv
blJlc29sdXRpb24oKQogewotICAgIGlmIChtX2lzU3VzcGVuZGVkIHx8IG1fYW5pbWF0aW9uUmVz
b2x1dGlvblNjaGVkdWxlZCB8fCAhc2hvdWxkUnVuVXBkYXRlQW5pbWF0aW9uc0FuZFNlbmRFdmVu
dHNJZ25vcmluZ1N1c3BlbnNpb25TdGF0ZSgpKQorICAgIGlmIChtX2lzU3VzcGVuZGVkIHx8IG1f
YW5pbWF0aW9ucy5pc0VtcHR5KCkgfHwgbV9hbmltYXRpb25SZXNvbHV0aW9uU2NoZWR1bGVkKQog
ICAgICAgICByZXR1cm47CiAKICAgICBpZiAoIW1fZG9jdW1lbnQgfHwgIW1fZG9jdW1lbnQtPnBh
Z2UoKSkKQEAgLTMyOSwxMSArMzI5LDYgQEAgdm9pZCBEb2N1bWVudFRpbWVsaW5lOjp1bnNjaGVk
dWxlQW5pbWF0aW9uUmVzb2x1dGlvbigpCiAgICAgbV9hbmltYXRpb25SZXNvbHV0aW9uU2NoZWR1
bGVkID0gZmFsc2U7CiB9CiAKLWJvb2wgRG9jdW1lbnRUaW1lbGluZTo6c2hvdWxkUnVuVXBkYXRl
QW5pbWF0aW9uc0FuZFNlbmRFdmVudHNJZ25vcmluZ1N1c3BlbnNpb25TdGF0ZSgpIGNvbnN0Ci17
Ci0gICAgcmV0dXJuICFtX2FuaW1hdGlvbnMuaXNFbXB0eSgpIHx8ICFtX2FjY2VsZXJhdGVkQW5p
bWF0aW9uc1BlbmRpbmdSdW5uaW5nU3RhdGVDaGFuZ2UuaXNFbXB0eSgpOwotfQotCiB2b2lkIERv
Y3VtZW50VGltZWxpbmU6OnVwZGF0ZUFuaW1hdGlvbnNBbmRTZW5kRXZlbnRzKERPTUhpZ2hSZXNU
aW1lU3RhbXAgdGltZXN0YW1wKQogewogICAgIC8vIFdlIG5lZWQgdG8gZnJlZXplIHRoZSBjdXJy
ZW50IHRpbWUgZXZlbiBpZiBubyBhbmltYXRpb24gaXMgcnVubmluZy4KQEAgLTM0Miw3ICszMzcs
NyBAQCB2b2lkIERvY3VtZW50VGltZWxpbmU6OnVwZGF0ZUFuaW1hdGlvbnNBbmRTZW5kRXZlbnRz
KERPTUhpZ2hSZXNUaW1lU3RhbXAgdGltZXN0YQogICAgIGlmICghbV9pc1N1c3BlbmRlZCkKICAg
ICAgICAgY2FjaGVDdXJyZW50VGltZSh0aW1lc3RhbXApOwogCi0gICAgaWYgKG1faXNTdXNwZW5k
ZWQgfHwgIW1fYW5pbWF0aW9uUmVzb2x1dGlvblNjaGVkdWxlZCB8fCAhc2hvdWxkUnVuVXBkYXRl
QW5pbWF0aW9uc0FuZFNlbmRFdmVudHNJZ25vcmluZ1N1c3BlbnNpb25TdGF0ZSgpKQorICAgIGlm
IChtX2lzU3VzcGVuZGVkIHx8IG1fYW5pbWF0aW9ucy5pc0VtcHR5KCkgfHwgIW1fYW5pbWF0aW9u
UmVzb2x1dGlvblNjaGVkdWxlZCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaW50ZXJuYWxVcGRh
dGVBbmltYXRpb25zQW5kU2VuZEV2ZW50cygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmUuaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9E
b2N1bWVudFRpbWVsaW5lLmgKaW5kZXggMmMzNWQyNDU2ODJmZGI1MzM3MzdlMDUzOTkxNDg0NmE2
MDY4NTc2YS4uN2M0ODFmMjdiYTRhMTFlN2E0OTZjNTIyZWMxOWJkMzMwOTZkNzllNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmUuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vRG9jdW1lbnRUaW1lbGluZS5oCkBAIC05OSw3ICs5OSw2
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzY2hlZHVsZU5leHRUaWNrKCk7CiAgICAgdm9pZCByZW1v
dmVSZXBsYWNlZEFuaW1hdGlvbnMoKTsKICAgICBib29sIGFuaW1hdGlvbkNhbkJlUmVtb3ZlZChX
ZWJBbmltYXRpb24mKTsKLSAgICBib29sIHNob3VsZFJ1blVwZGF0ZUFuaW1hdGlvbnNBbmRTZW5k
RXZlbnRzSWdub3JpbmdTdXNwZW5zaW9uU3RhdGUoKSBjb25zdDsKIAogICAgIFRpbWVyIG1fdGlj
a1NjaGVkdWxlVGltZXI7CiAgICAgR2VuZXJpY1Rhc2tRdWV1ZTxUaW1lcj4gbV9jdXJyZW50VGlt
ZUNsZWFyaW5nVGFza1F1ZXVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9u
L0tleWZyYW1lRWZmZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVm
ZmVjdC5jcHAKaW5kZXggODY1OTBkMTkxM2JmZjM0M2QxZjM3MjVlNWRlMGJmOGIwYmYzZTE1Ni4u
NWViZTExNmQ4MDRjZWU3M2RhYzg2NWYzMjEzMTY4ZGZlMzdjYTRlYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwCkBAIC0xMzM0LDEyICsxMzM0LDYgQEAg
dm9pZCBLZXlmcmFtZUVmZmVjdDo6YW5pbWF0aW9uRGlkU2VlaygpCiAgICAgICAgIGFkZFBlbmRp
bmdBY2NlbGVyYXRlZEFjdGlvbihBY2NlbGVyYXRlZEFjdGlvbjo6U2Vlayk7CiB9CiAKLXZvaWQg
S2V5ZnJhbWVFZmZlY3Q6OmFuaW1hdGlvbldhc0NhbmNlbGVkKCkKLXsKLSAgICBpZiAobV9zaG91
bGRSdW5BY2NlbGVyYXRlZCAmJiBpc1J1bm5pbmdBY2NlbGVyYXRlZCgpKQotICAgICAgICBhZGRQ
ZW5kaW5nQWNjZWxlcmF0ZWRBY3Rpb24oQWNjZWxlcmF0ZWRBY3Rpb246OlN0b3ApOwotfQotCiB2
b2lkIEtleWZyYW1lRWZmZWN0OjphbmltYXRpb25TdXNwZW5zaW9uU3RhdGVEaWRDaGFuZ2UoYm9v
bCBhbmltYXRpb25Jc1N1c3BlbmRlZCkKIHsKICAgICBpZiAobV9zaG91bGRSdW5BY2NlbGVyYXRl
ZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5o
IGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmgKaW5kZXggNDQ0ZDIz
ZjdlOTYwZTM3ZGM3Y2Y2MjAxMjNhZjQ0ZjIzNWNlZWRhZS4uM2NkNDg3OWQyN2ZkNjA0MzkxZjlm
NWM1MmE1ZjgxNmY2NWI2NjcwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9u
L0tleWZyYW1lRWZmZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0LmgKQEAgLTExMyw3ICsxMTMsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBhcHBseShSZW5k
ZXJTdHlsZSYpIG92ZXJyaWRlOwogICAgIHZvaWQgaW52YWxpZGF0ZSgpIG92ZXJyaWRlOwogICAg
IHZvaWQgYW5pbWF0aW9uRGlkU2VlaygpIGZpbmFsOwotICAgIHZvaWQgYW5pbWF0aW9uV2FzQ2Fu
Y2VsZWQoKSBmaW5hbDsKICAgICB2b2lkIGFuaW1hdGlvblN1c3BlbnNpb25TdGF0ZURpZENoYW5n
ZShib29sKSBmaW5hbDsKICAgICB2b2lkIGFuaW1hdGlvblRpbWVsaW5lRGlkQ2hhbmdlKEFuaW1h
dGlvblRpbWVsaW5lKikgZmluYWw7CiAgICAgdm9pZCBhcHBseVBlbmRpbmdBY2NlbGVyYXRlZEFj
dGlvbnMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRp
b24uY3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5jcHAKaW5kZXgg
YjNmNzQ2ZGQzZjNjYTIwNGM1MDIxN2I0MzA0MDFkODEzNzA1YTgyNi4uYjkxMTg0ZWIxMjBjNTM5
NzI4ZmI3ZDA5NzYyMzVhNWM3ZGM5ZDhiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5p
bWF0aW9uL1dlYkFuaW1hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dl
YkFuaW1hdGlvbi5jcHAKQEAgLTYxNCw5ICs2MTQsNiBAQCB2b2lkIFdlYkFuaW1hdGlvbjo6Y2Fu
Y2VsKFNpbGVudGx5IHNpbGVudGx5KQogICAgIHRpbWluZ0RpZENoYW5nZShEaWRTZWVrOjpObywg
U3luY2hyb25vdXNseU5vdGlmeTo6Tm8pOwogCiAgICAgaW52YWxpZGF0ZUVmZmVjdCgpOwotCi0g
ICAgaWYgKG1fZWZmZWN0KQotICAgICAgICBtX2VmZmVjdC0+YW5pbWF0aW9uV2FzQ2FuY2VsZWQo
KTsKIH0KIAogdm9pZCBXZWJBbmltYXRpb246OmVucXVldWVBbmltYXRpb25QbGF5YmFja0V2ZW50
KGNvbnN0IEF0b21TdHJpbmcmIHR5cGUsIE9wdGlvbmFsPFNlY29uZHM+IGN1cnJlbnRUaW1lLCBP
cHRpb25hbDxTZWNvbmRzPiB0aW1lbGluZVRpbWUpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYWYwM2FjYWY1NzVmNzhhMjQ4
NzUwZGFmYjRmMWU5ZWFhZjBjMmUwOC4uMDhmZDZlYzUzZjAzZTg1N2NmN2I0MzMwMDAzMmVhNTNj
YmIxYWExMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE5LTExLTE2ICBDb21taXQgUXVldWUg
IDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5n
IG91dCByMjUyNDU1LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA0MjcyCisKKyAgICAgICAgQnJva2UgYSBsYXlvdXQtdGVzdCBvbiBpT1MgKFJlcXVl
c3RlZCBieSBhYWthc2hqYV8gb24KKyAgICAgICAgI3dlYmtpdCkuCisKKyAgICAgICAgUmV2ZXJ0
ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJbV2ViIEFuaW1hdGlvbnNdIFJldGFyZ2V0ZWQgdHJh
bnNpdGlvbnMgdGFyZ2V0aW5nIGFjY2VsZXJhdGVkCisgICAgICAgIHByb3BlcnRpZXMgZG8gbm90
IHN0b3AgdGhlIG9yaWdpbmFsIHRyYW5zaXRpb24iCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDQxMTYKKyAgICAgICAgaHR0cHM6Ly90cmFjLndlYmtp
dC5vcmcvY2hhbmdlc2V0LzI1MjQ1NQorCiAyMDE5LTExLTE1ICBQZXIgQXJuZSBWb2xsYW4gIDxw
dm9sbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBMYXlvdXQgdGVzdCBhbmltYXRpb25zL25vLXN0
eWxlLXJlY2FsYy1kdXJpbmctYWNjZWxlcmF0ZWQtYW5pbWF0aW9uLmh0bWwgaXMgZmFpbGluZwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtb24tZGlzYWJsZWQtZWxl
bWVudHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtb24tZGlz
YWJsZWQtZWxlbWVudHMtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA2N2MzM2UwNmFkYWIwNGY4N2RjMzYwYzMxMWRiNzIzODZhMDBhYTA0Li4wMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRp
c3BhdGNoLW9uLWRpc2FibGVkLWVsZW1lbnRzLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xLDEzICswLDAgQEAKLQotSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxs
Ci0KLVBBU1MgQ2FuIGRpc3BhdGNoIHVudHJ1c3RlZCAnY2xpY2snIEV2ZW50cyBhdCBkaXNhYmxl
ZCBIVE1MIGVsZW1lbnRzLiAKLVBBU1MgQ2FuIGRpc3BhdGNoIHVudHJ1c3RlZCBFdmVudHMgYXQg
ZGlzYWJsZWQgSFRNTCBlbGVtZW50cy4gCi1QQVNTIENhbiBkaXNwYXRjaCBDdXN0b21FdmVudHMg
YXQgZGlzYWJsZWQgSFRNTCBlbGVtZW50cy4gCi1QQVNTIENhbGxpbmcgY2xpY2soKSBvbiBkaXNh
YmxlZCBlbGVtZW50cyBtdXN0IG5vdCBkaXNwYXRjaCBldmVudHMuIAotUEFTUyBDU1MgVHJhbnNp
dGlvbnMgdHJhbnNpdGlvbnJ1biwgdHJhbnNpdGlvbnN0YXJ0LCB0cmFuc2l0aW9uZW5kIGV2ZW50
cyBmaXJlIG9uIGRpc2FibGVkIGZvcm0gZWxlbWVudHMgCi1USU1FT1VUIENTUyBUcmFuc2l0aW9u
cyB0cmFuc2l0aW9uY2FuY2VsIGV2ZW50IGZpcmVzIG9uIGRpc2FibGVkIGZvcm0gZWxlbWVudHMg
VGVzdCB0aW1lZCBvdXQKLU5PVFJVTiBDU1MgQW5pbWF0aW9uIGFuaW1hdGlvbnN0YXJ0LCBhbmlt
YXRpb25pdGVyYXRpb24sIGFuaW1hdGlvbmVuZCBmaXJlIG9uIGRpc2FibGVkIGZvcm0gZWxlbWVu
dHMgCi1OT1RSVU4gQ1NTIEFuaW1hdGlvbidzIGFuaW1hdGlvbmNhbmNlbCBldmVudCBmaXJlcyBv
biBkaXNhYmxlZCBmb3JtIGVsZW1lbnRzIAotTk9UUlVOIFJlYWwgY2xpY2tzIG9uIGRpc2FibGVk
IGVsZW1lbnRzIG11c3Qgbm90IGRpc3BhdGNoIGV2ZW50cy4gCi0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3dlYmFuaW1hdGlvbnMvY3NzLXRyYW5zaXRpb24taW4tZmxpZ2h0LXJldmVyc2FsLWFj
Y2VsZXJhdGVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYmFuaW1hdGlvbnMvY3NzLXRy
YW5zaXRpb24taW4tZmxpZ2h0LXJldmVyc2FsLWFjY2VsZXJhdGVkLWV4cGVjdGVkLnR4dApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2I0ZjE2MDQxYzcwNGU4ZTcyNDlhNzkyODE0MmZi
N2MzZmFmZDRjMS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy93ZWJhbmltYXRpb25zL2Nzcy10cmFuc2l0aW9uLWluLWZsaWdodC1yZXZl
cnNhbC1hY2NlbGVyYXRlZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw0ICswLDAg
QEAKLQotUEFTUyBBIENTUyB0cmFuc2l0aW9uIHRhcmdldGluZyBvcGFjaXR5IGNhbiBiZSByZXZl
cnNlZCBpbi1mbGlnaHQuIAotUEFTUyBBIENTUyB0cmFuc2l0aW9uIHRhcmdldGluZyB0cmFuc2Zv
cm0gY2FuIGJlIHJldmVyc2VkIGluLWZsaWdodC4gCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmFuaW1hdGlvbnMvY3NzLXRyYW5zaXRpb24taW4tZmxpZ2h0LXJldmVyc2FsLWFjY2VsZXJh
dGVkLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJhbmltYXRpb25zL2Nzcy10cmFuc2l0aW9uLWluLWZs
aWdodC1yZXZlcnNhbC1hY2NlbGVyYXRlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA2ZGE1YmZhNzU0ZGNkN2NiMTBhN2UwYjQ2YTc1N2I2NDZkY2IzODdlLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3dlYmFuaW1h
dGlvbnMvY3NzLXRyYW5zaXRpb24taW4tZmxpZ2h0LXJldmVyc2FsLWFjY2VsZXJhdGVkLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSw3MiArMCwwIEBACi08IURPQ1RZUEUgaHRtbD48IS0tIHdlYmtp
dC10ZXN0LXJ1bm5lciBbIGV4cGVyaW1lbnRhbDpXZWJBbmltYXRpb25zQ1NTSW50ZWdyYXRpb25F
bmFibGVkPXRydWUgXSAtLT4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTx0aXRsZT5SZXZlcnNh
bCBvZiBhY2NlbGVyYXRlZCBpbi1mbGlnaHQgQ1NTIFRyYW5zaXRpb25zPC90aXRsZT4KLTxzdHls
ZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+Ci0KLS50YXJnZXQub3BhY2l0eSB7Ci0g
ICAgdHJhbnNpdGlvbjogb3BhY2l0eSAycyBsaW5lYXI7Ci19Ci0KLS50YXJnZXQub3BhY2l0eS5p
bi1mbGlnaHQgewotICAgIG9wYWNpdHk6IDA7Ci19Ci0KLS50YXJnZXQudHJhbnNmb3JtIHsKLSAg
ICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMnMgbGluZWFyOwotfQotCi0udGFyZ2V0LnRyYW5zZm9y
bS5pbi1mbGlnaHQgewotICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7Ci19Ci0KLTwvc3R5bGU+Ci08
Ym9keT4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0
PgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0PgotCi0ndXNlIHN0cmljdCc7Ci0KLWZ1bmN0aW9uIHRhcmdldFRlc3QocHJv
cGVydHlOYW1lKQotewotICAgIGFzeW5jX3Rlc3QodGVzdCA9PiB7Ci0gICAgICAgIGNvbnN0IHRh
cmdldCA9IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
ZGl2IikpOwotICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LmFkZCgidGFyZ2V0Iik7Ci0gICAgICAg
IHRhcmdldC5jbGFzc0xpc3QuYWRkKHByb3BlcnR5TmFtZSk7Ci0KLSAgICAgICAgbGV0IGluaXRp
YWxUcmFuc2l0aW9uOwotICAgICAgICBsZXQgcmV2ZXJzZWRUcmFuc2l0aW9uOwotCi0gICAgICAg
IC8vIFN0YXJ0IHRoZSBpbml0aWFsIHRyYW5zaXRpb24uCi0gICAgICAgIHJlcXVlc3RBbmltYXRp
b25GcmFtZSgoKSA9PiB7Ci0gICAgICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LmFkZCgiaW4tZmxp
Z2h0Iik7Ci0gICAgICAgICAgICBjb25zdCBhbmltYXRpb25zID0gdGFyZ2V0LmdldEFuaW1hdGlv
bnMoKTsKLSAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoYW5pbWF0aW9ucy5sZW5ndGgsIDEsICJU
aGVyZSBpcyBvbmUgYW5pbWF0aW9uIGFwcGxpZWQgdG8gdGhlIHRhcmdldCBhZnRlciBzdGFydGlu
ZyB0aGUgaW5pdGlhbCB0cmFuc2l0aW9uLiIpOwotCi0gICAgICAgICAgICBpbml0aWFsVHJhbnNp
dGlvbiA9IGFuaW1hdGlvbnNbMF07Ci0gICAgICAgICAgICBhc3NlcnRfdHJ1ZShpbml0aWFsVHJh
bnNpdGlvbiBpbnN0YW5jZW9mIENTU1RyYW5zaXRpb24sICJUaGVyZSBpcyBvbmUgYW5pbWF0aW9u
IGFwcGxpZWQgdG8gdGhlIHRhcmdldCBhZnRlciBzdGFydGluZyB0aGUgaW5pdGlhbCB0cmFuc2l0
aW9uLiIpOwotCi0gICAgICAgICAgICAvLyBXYWl0IGZvciB0aGUgaW5pdGlhbCB0cmFuc2l0aW9u
IHRvIHN0YXJ0IGFuZCB0aGVuIGFub3RoZXIgZnJhbWUgYmVmb3JlIHJldmVyc2luZyB0aGUgdHJh
bnNpdGlvbi4KLSAgICAgICAgICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJ0cmFuc2l0aW9u
c3RhcnQiLCBldmVudCA9PiB7Ci0gICAgICAgICAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1l
KCgpID0+IHsKLSAgICAgICAgICAgICAgICAgICAgdGFyZ2V0LmNsYXNzTGlzdC5yZW1vdmUoImlu
LWZsaWdodCIpOwotICAgICAgICAgICAgICAgICAgICBjb25zdCBhbmltYXRpb25zID0gdGFyZ2V0
LmdldEFuaW1hdGlvbnMoKTsKLSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhhbmlt
YXRpb25zLmxlbmd0aCwgMSwgIlRoZXJlIGlzIG9uZSBhbmltYXRpb24gYXBwbGllZCB0byB0aGUg
dGFyZ2V0IGFmdGVyIHJldmVyc2luZyB0aGUgaW5pdGlhbCB0cmFuc2l0aW9uLiIpOwotCi0gICAg
ICAgICAgICAgICAgICAgIHJldmVyc2VkVHJhbnNpdGlvbiA9IGFuaW1hdGlvbnNbMF07Ci0gICAg
ICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHJldmVyc2VkVHJhbnNpdGlvbiBpbnN0YW5jZW9m
IENTU1RyYW5zaXRpb24sICJUaGVyZSBpcyBvbmUgYW5pbWF0aW9uIGFwcGxpZWQgdG8gdGhlIHRh
cmdldCBhZnRlciByZXZlcnNpbmcgdGhlIGluaXRpYWwgdHJhbnNpdGlvbi4iKTsKLSAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoaW5pdGlhbFRyYW5zaXRpb24sIHJldmVyc2Vk
VHJhbnNpdGlvbiwgIlRoZSBhbmltYXRpb24gYXBwbGllZCB0byB0aGUgdGFyZ2V0IGFmdGVyIHJl
dmVyc2luZyB0aGUgaW5pdGlhbCB0cmFuc2l0aW9uIGlzIGRpZmZlcmVudCB0aGFuIHRoZSBvcmln
aW5hbCB0cmFuc2l0aW9uLiIpOwotCi0gICAgICAgICAgICAgICAgICAgIHRhcmdldC5yZW1vdmUo
KTsKLSAgICAgICAgICAgICAgICAgICAgdGVzdC5kb25lKCk7Ci0gICAgICAgICAgICAgICAgfSk7
Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgfSk7Ci0gICAgfSwgYEEgQ1NTIHRyYW5zaXRpb24g
dGFyZ2V0aW5nICR7cHJvcGVydHlOYW1lfSBjYW4gYmUgcmV2ZXJzZWQgaW4tZmxpZ2h0LmApOwot
fQotCi10YXJnZXRUZXN0KCJvcGFjaXR5Iik7Ci10YXJnZXRUZXN0KCJ0cmFuc2Zvcm0iKTsKLQot
PC9zY3JpcHQ+Ci08L2JvZHk+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>384362</attachid>
            <date>2019-11-26 09:49:51 -0800</date>
            <delta_ts>2019-11-26 12:48:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-204272-20191126184950.patch</filename>
            <type>text/plain</type>
            <size>11274</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUyODc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjgxOWEyM2U5ZmMyNGFi
YmFiMWE4ZmQ0NDA1YmYyNDAwMTc4NzczYi4uZjFkMGRiNmNkZjJjNTVmMDczZjA0N2MwYjY5ZTJm
ZDUxZjBiMDkxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDE5LTExLTI2ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMjUy
NDU1KTogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRp
c3BhdGNoLW9uLWRpc2FibGVkLWVsZW1lbnRzLmh0bWwgZmFpbHMgb24gaU9TIGFuZCBXSzEKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDI3MgorICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNTcyNTM3NDI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgRXZlbnRzIGZvciBkZWNsYXJhdGl2ZSBhbmltYXRpb25z
IGFyZSBkaXNwYXRjaGVkIHVzaW5nIGEgTWFpblRocmVhZEdlbmVyaWNFdmVudFF1ZXVlIHdoaWNo
IGRpc3BhdGNoZXMgZW5xdWV1ZWQgZXZlbnRzIGFzeW5jaHJvbm91c2x5LiBXaGVuIGEgZGVjbGFy
YXRpdmUKKyAgICAgICAgYW5pbWF0aW9uIHdvdWxkIGJlIGNhbmNlbGVkLCBBbmltYXRpb25UaW1l
bGluZTo6Y2FuY2VsRGVjbGFyYXRpdmVBbmltYXRpb24oKSB3b3VsZCBiZSBjYWxsZWQgYW5kIHdv
dWxkIGVucXVldWUgYSAidHJhbnNpdGlvbmNhbmNlbCIgb3IgImFuaW1hdGlvbmNhbmNlbCIKKyAg
ICAgICAgZXZlbnQgKGRlcGVuZGluZyBvbiB0aGUgYW5pbWF0aW9uIHR5cGUpIGJ5IHZpcnR1ZSBv
ZiBjYWxsaW5nIERlY2xhcmF0aXZlQW5pbWF0aW9uOjpjYW5jZWxGcm9tU3R5bGUoKSwgYW5kIHdv
dWxkIGFsc28gY2FsbCBBbmltYXRpb25UaW1lbGluZTo6cmVtb3ZlQW5pbWF0aW9uKCkKKyAgICAg
ICAgcmlnaHQgYWZ0ZXIuIEhvd2V2ZXIsIGNhbGxpbmcgQW5pbWF0aW9uVGltZWxpbmU6OnJlbW92
ZUFuaW1hdGlvbigpIGNvdWxkIGhhdmUgdGhlIHNpZGUgZWZmZWN0IG9mIHJlbW92aW5nIHRoZSBs
YXN0IHJlZmVyZW5jZSB0byB0aGUgRGVjbGFyYXRpdmVBbmltYXRpb24KKyAgICAgICAgb2JqZWN0
LCB3aGljaCB3b3VsZCBkZXN0cm95IGl0cyBhdHRhY2hlZCBNYWluVGhyZWFkR2VuZXJpY0V2ZW50
UXVldWUgYmVmb3JlIGl0IGhhZCB0aGUgdGltZSB0byBkaXNwYXRjaCB0aGUgcXVldWVkICJ0cmFu
c2l0aW9uY2FuY2VsIiBvciAiYW5pbWF0aW9uY2FuY2VsIgorICAgICAgICBldmVudC4KKworICAg
ICAgICBUaGUgY2FsbCB0byBBbmltYXRpb25UaW1lbGluZTo6cmVtb3ZlQW5pbWF0aW9uKCkgaW4g
QW5pbWF0aW9uVGltZWxpbmU6OmNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKCkgaXMgYWN0dWFs
bHkgdW5uZWNlc3NhcnkuIFNpbXBseSBjYW5jZWxpbmcgdGhlIGFuaW1hdGlvbgorICAgICAgICB2
aWEgRGVjbGFyYXRpdmVBbmltYXRpb246OmNhbmNlbEZyb21TdHlsZSgpIHdpbGwgZW5kIHVwIGNh
bGxpbmcgQW5pbWF0aW9uVGltZWxpbmU6OnJlbW92ZUFuaW1hdGlvbigpIHRoZSBuZXh0IHRpbWUg
YW5pbWF0aW9ucyBhcmUgdXBkYXRlZCwgd2hpY2ggd2lsbCBsZWF2ZQorICAgICAgICB0aW1lIGZv
ciB0aGUgY2FuY2VsIGV2ZW50cyB0byBiZSBkaXNwYXRjaGVkLiBTbyBhbGwgd2UgbmVlZCB0byBk
byBpcyByZW1vdmUgQW5pbWF0aW9uVGltZWxpbmU6OmNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9u
KCkgYW5kIHJlcGxhY2UgaXRzIGNhbGwgc2l0ZXMgd2l0aAorICAgICAgICBzaW1wbGUgY2FsbHMg
dG8gRGVjbGFyYXRpdmVBbmltYXRpb246OmNhbmNlbEZyb21TdHlsZSgpLgorCisgICAgICAgICog
YW5pbWF0aW9uL0FuaW1hdGlvblRpbWVsaW5lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFuaW1h
dGlvblRpbWVsaW5lOjp1cGRhdGVDU1NBbmltYXRpb25zRm9yRWxlbWVudCk6CisgICAgICAgIChX
ZWJDb3JlOjpBbmltYXRpb25UaW1lbGluZTo6dXBkYXRlQ1NTVHJhbnNpdGlvbnNGb3JFbGVtZW50
QW5kUHJvcGVydHkpOgorICAgICAgICAoV2ViQ29yZTo6QW5pbWF0aW9uVGltZWxpbmU6OnVwZGF0
ZUNTU1RyYW5zaXRpb25zRm9yRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpBbmltYXRpb25U
aW1lbGluZTo6Y2FuY2VsRGVjbGFyYXRpdmVBbmltYXRpb24pOiBEZWxldGVkLgorICAgICAgICAq
IGFuaW1hdGlvbi9BbmltYXRpb25UaW1lbGluZS5oOgorCiAyMDE5LTExLTI2ICBBbnRvaW5lIFF1
aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CiAKICAgICAgICAgW1dlYiBBbmltYXRpb25zXSBMYXlv
dXQgb2YgY2hpbGRyZW4gb2YgZWxlbWVudCB3aXRoIGZvcndhcmRzLWZpbGxpbmcgb3BhY2l0eSBh
bmltYXRpb24gbWF5IGJlIGluY29ycmVjdCBhZnRlciByZW1vdmFsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vQW5pbWF0aW9uVGltZWxpbmUuY3BwIGIvU291cmNlL1dlYkNv
cmUvYW5pbWF0aW9uL0FuaW1hdGlvblRpbWVsaW5lLmNwcAppbmRleCAzYTkyYTkzNzFhNmRmYjVl
MTk2MzYwZTk5OTBiZGUzZGRiMTRkMGY5Li5iNDA1Y2ZmYjllODUzN2E0ZTc3YzUyNDg5ZmIyYTI3
OGUyYWYwOTQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQW5pbWF0aW9u
VGltZWxpbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25UaW1l
bGluZS5jcHAKQEAgLTI1Miw3ICsyNTIsNyBAQCB2b2lkIEFuaW1hdGlvblRpbWVsaW5lOjp1cGRh
dGVDU1NBbmltYXRpb25zRm9yRWxlbWVudChFbGVtZW50JiBlbGVtZW50LCBjb25zdCBSZQogICAg
IGlmIChjdXJyZW50U3R5bGUgJiYgY3VycmVudFN0eWxlLT5oYXNBbmltYXRpb25zKCkgJiYgY3Vy
cmVudFN0eWxlLT5kaXNwbGF5KCkgIT0gRGlzcGxheVR5cGU6Ok5vbmUgJiYgYWZ0ZXJDaGFuZ2VT
dHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6Ok5vbmUpIHsKICAgICAgICAgaWYgKG1fZWxl
bWVudFRvQ1NTQW5pbWF0aW9uQnlOYW1lLmNvbnRhaW5zKCZlbGVtZW50KSkgewogICAgICAgICAg
ICAgZm9yIChjb25zdCBhdXRvJiBjc3NBbmltYXRpb25zQnlOYW1lTWFwSXRlbSA6IG1fZWxlbWVu
dFRvQ1NTQW5pbWF0aW9uQnlOYW1lLnRha2UoJmVsZW1lbnQpKQotICAgICAgICAgICAgICAgIGNh
bmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKCpjc3NBbmltYXRpb25zQnlOYW1lTWFwSXRlbS52YWx1
ZSk7CisgICAgICAgICAgICAgICAgY3NzQW5pbWF0aW9uc0J5TmFtZU1hcEl0ZW0udmFsdWUtPmNh
bmNlbEZyb21TdHlsZSgpOwogICAgICAgICB9CiAgICAgICAgIGVsZW1lbnQuZW5zdXJlS2V5ZnJh
bWVFZmZlY3RTdGFjaygpLnNldENTU0FuaW1hdGlvbk5hbWVzKFdURk1vdmUoYW5pbWF0aW9uTmFt
ZXMpKTsKICAgICAgICAgcmV0dXJuOwpAQCAtMzAxLDcgKzMwMSw3IEBAIHZvaWQgQW5pbWF0aW9u
VGltZWxpbmU6OnVwZGF0ZUNTU0FuaW1hdGlvbnNGb3JFbGVtZW50KEVsZW1lbnQmIGVsZW1lbnQs
IGNvbnN0IFJlCiAgICAgLy8gcmVtb3ZlIHRoZSBDU1NBbmltYXRpb24gb2JqZWN0IGNyZWF0ZWQg
Zm9yIHRoZW0uCiAgICAgZm9yIChjb25zdCBhdXRvJiBuYW1lT2ZBbmltYXRpb25Ub1JlbW92ZSA6
IG5hbWVzT2ZQcmV2aW91c0FuaW1hdGlvbnMpIHsKICAgICAgICAgaWYgKGF1dG8gYW5pbWF0aW9u
ID0gY3NzQW5pbWF0aW9uc0J5TmFtZS50YWtlKG5hbWVPZkFuaW1hdGlvblRvUmVtb3ZlKSkKLSAg
ICAgICAgICAgIGNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKCphbmltYXRpb24pOworICAgICAg
ICAgICAgYW5pbWF0aW9uLT5jYW5jZWxGcm9tU3R5bGUoKTsKICAgICB9CiAKICAgICBlbGVtZW50
LmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2soKS5zZXRDU1NBbmltYXRpb25OYW1lcyhXVEZNb3Zl
KGFuaW1hdGlvbk5hbWVzKSk7CkBAIC00NzIsMTUgKzQ3MiwxNSBAQCB2b2lkIEFuaW1hdGlvblRp
bWVsaW5lOjp1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRBbmRQcm9wZXJ0eShFbGVtZW50
JiBlbGVtZQogICAgICAgICBpZiAoQ1NTUHJvcGVydHlBbmltYXRpb246OnByb3BlcnRpZXNFcXVh
bChwcm9wZXJ0eSwgJnByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlvbkN1cnJlbnRTdHlsZSwgJmFm
dGVyQ2hhbmdlU3R5bGUpIHx8ICFDU1NQcm9wZXJ0eUFuaW1hdGlvbjo6Y2FuUHJvcGVydHlCZUlu
dGVycG9sYXRlZChwcm9wZXJ0eSwgJmN1cnJlbnRTdHlsZSwgJmFmdGVyQ2hhbmdlU3R5bGUpKSB7
CiAgICAgICAgICAgICAvLyAxLiBJZiB0aGUgY3VycmVudCB2YWx1ZSBvZiB0aGUgcHJvcGVydHkg
aW4gdGhlIHJ1bm5pbmcgdHJhbnNpdGlvbiBpcyBlcXVhbCB0byB0aGUgdmFsdWUgb2YgdGhlIHBy
b3BlcnR5IGluIHRoZSBhZnRlci1jaGFuZ2Ugc3R5bGUsCiAgICAgICAgICAgICAvLyAgICBvciBp
ZiB0aGVzZSB0d28gdmFsdWVzIGNhbm5vdCBiZSBpbnRlcnBvbGF0ZWQsIHRoZW4gaW1wbGVtZW50
YXRpb25zIG11c3QgY2FuY2VsIHRoZSBydW5uaW5nIHRyYW5zaXRpb24uCi0gICAgICAgICAgICBj
YW5jZWxEZWNsYXJhdGl2ZUFuaW1hdGlvbigqcHJldmlvdXNseVJ1bm5pbmdUcmFuc2l0aW9uKTsK
KyAgICAgICAgICAgIHByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlvbi0+Y2FuY2VsRnJvbVN0eWxl
KCk7CiAgICAgICAgIH0gZWxzZSBpZiAodHJhbnNpdGlvbkNvbWJpbmVkRHVyYXRpb24obWF0Y2hp
bmdCYWNraW5nQW5pbWF0aW9uKSA8PSAwLjAgfHwgIUNTU1Byb3BlcnR5QW5pbWF0aW9uOjpjYW5Q
cm9wZXJ0eUJlSW50ZXJwb2xhdGVkKHByb3BlcnR5LCAmcHJldmlvdXNseVJ1bm5pbmdUcmFuc2l0
aW9uQ3VycmVudFN0eWxlLCAmYWZ0ZXJDaGFuZ2VTdHlsZSkpIHsKICAgICAgICAgICAgIC8vIDIu
IE90aGVyd2lzZSwgaWYgdGhlIGNvbWJpbmVkIGR1cmF0aW9uIGlzIGxlc3MgdGhhbiBvciBlcXVh
bCB0byAwcywgb3IgaWYgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIHByb3BlcnR5IGluIHRoZSBy
dW5uaW5nIHRyYW5zaXRpb24KICAgICAgICAgICAgIC8vICAgIGNhbm5vdCBiZSBpbnRlcnBvbGF0
ZWQgd2l0aCB0aGUgdmFsdWUgb2YgdGhlIHByb3BlcnR5IGluIHRoZSBhZnRlci1jaGFuZ2Ugc3R5
bGUsIHRoZW4gaW1wbGVtZW50YXRpb25zIG11c3QgY2FuY2VsIHRoZSBydW5uaW5nIHRyYW5zaXRp
b24uCi0gICAgICAgICAgICBjYW5jZWxEZWNsYXJhdGl2ZUFuaW1hdGlvbigqcHJldmlvdXNseVJ1
bm5pbmdUcmFuc2l0aW9uKTsKKyAgICAgICAgICAgIHByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlv
bi0+Y2FuY2VsRnJvbVN0eWxlKCk7CiAgICAgICAgIH0gZWxzZSBpZiAoQ1NTUHJvcGVydHlBbmlt
YXRpb246OnByb3BlcnRpZXNFcXVhbChwcm9wZXJ0eSwgJnByZXZpb3VzbHlSdW5uaW5nVHJhbnNp
dGlvbi0+cmV2ZXJzaW5nQWRqdXN0ZWRTdGFydFN0eWxlKCksICZhZnRlckNoYW5nZVN0eWxlKSkg
ewogICAgICAgICAgICAgLy8gMy4gT3RoZXJ3aXNlLCBpZiB0aGUgcmV2ZXJzaW5nLWFkanVzdGVk
IHN0YXJ0IHZhbHVlIG9mIHRoZSBydW5uaW5nIHRyYW5zaXRpb24gaXMgdGhlIHNhbWUgYXMgdGhl
IHZhbHVlIG9mIHRoZSBwcm9wZXJ0eSBpbiB0aGUgYWZ0ZXItY2hhbmdlCiAgICAgICAgICAgICAv
LyAgICBzdHlsZSAoc2VlIHRoZSBzZWN0aW9uIG9uIHJldmVyc2luZyBvZiB0cmFuc2l0aW9ucyBm
b3Igd2h5IHRoZXNlIGNhc2UgZXhpc3RzKSwgaW1wbGVtZW50YXRpb25zIG11c3QgY2FuY2VsIHRo
ZSBydW5uaW5nIHRyYW5zaXRpb24KLSAgICAgICAgICAgIGNhbmNlbERlY2xhcmF0aXZlQW5pbWF0
aW9uKCpwcmV2aW91c2x5UnVubmluZ1RyYW5zaXRpb24pOworICAgICAgICAgICAgcHJldmlvdXNs
eVJ1bm5pbmdUcmFuc2l0aW9uLT5jYW5jZWxGcm9tU3R5bGUoKTsKIAogICAgICAgICAgICAgLy8g
YW5kIHN0YXJ0IGEgbmV3IHRyYW5zaXRpb24gd2hvc2U6CiAgICAgICAgICAgICAvLyAgIC0gcmV2
ZXJzaW5nLWFkanVzdGVkIHN0YXJ0IHZhbHVlIGlzIHRoZSBlbmQgdmFsdWUgb2YgdGhlIHJ1bm5p
bmcgdHJhbnNpdGlvbiwKQEAgLTUwNiw3ICs1MDYsNyBAQCB2b2lkIEFuaW1hdGlvblRpbWVsaW5l
Ojp1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRBbmRQcm9wZXJ0eShFbGVtZW50JiBlbGVt
ZQogICAgICAgICAgICAgZW5zdXJlUnVubmluZ1RyYW5zaXRpb25zQnlQcm9wZXJ0eShlbGVtZW50
KS5zZXQocHJvcGVydHksIENTU1RyYW5zaXRpb246OmNyZWF0ZShlbGVtZW50LCBwcm9wZXJ0eSwg
Z2VuZXJhdGlvblRpbWUsICptYXRjaGluZ0JhY2tpbmdBbmltYXRpb24sICZwcmV2aW91c2x5UnVu
bmluZ1RyYW5zaXRpb25DdXJyZW50U3R5bGUsIGFmdGVyQ2hhbmdlU3R5bGUsIGRlbGF5LCBkdXJh
dGlvbiwgcmV2ZXJzaW5nQWRqdXN0ZWRTdGFydFN0eWxlLCByZXZlcnNpbmdTaG9ydGVuaW5nRmFj
dG9yKSk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvLyA0LiBPdGhlcndpc2UsIGlt
cGxlbWVudGF0aW9ucyBtdXN0IGNhbmNlbCB0aGUgcnVubmluZyB0cmFuc2l0aW9uCi0gICAgICAg
ICAgICBjYW5jZWxEZWNsYXJhdGl2ZUFuaW1hdGlvbigqcHJldmlvdXNseVJ1bm5pbmdUcmFuc2l0
aW9uKTsKKyAgICAgICAgICAgIHByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlvbi0+Y2FuY2VsRnJv
bVN0eWxlKCk7CiAKICAgICAgICAgICAgIC8vIGFuZCBzdGFydCBhIG5ldyB0cmFuc2l0aW9uIHdo
b3NlOgogICAgICAgICAgICAgLy8gICAtIHN0YXJ0IHRpbWUgaXMgdGhlIHRpbWUgb2YgdGhlIHN0
eWxlIGNoYW5nZSBldmVudCBwbHVzIHRoZSBtYXRjaGluZyB0cmFuc2l0aW9uIGRlbGF5LApAQCAt
NTMwLDcgKzUzMCw3IEBAIHZvaWQgQW5pbWF0aW9uVGltZWxpbmU6OnVwZGF0ZUNTU1RyYW5zaXRp
b25zRm9yRWxlbWVudChFbGVtZW50JiBlbGVtZW50LCBjb25zdCBSCiAgICAgaWYgKGN1cnJlbnRT
dHlsZS5oYXNUcmFuc2l0aW9ucygpICYmIGN1cnJlbnRTdHlsZS5kaXNwbGF5KCkgIT0gRGlzcGxh
eVR5cGU6Ok5vbmUgJiYgYWZ0ZXJDaGFuZ2VTdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6
Ok5vbmUpIHsKICAgICAgICAgaWYgKG1fZWxlbWVudFRvUnVubmluZ0NTU1RyYW5zaXRpb25CeUNT
U1Byb3BlcnR5SUQuY29udGFpbnMoJmVsZW1lbnQpKSB7CiAgICAgICAgICAgICBmb3IgKGNvbnN0
IGF1dG8mIGNzc1RyYW5zaXRpb25zQnlDU1NQcm9wZXJ0eUlETWFwSXRlbSA6IG1fZWxlbWVudFRv
UnVubmluZ0NTU1RyYW5zaXRpb25CeUNTU1Byb3BlcnR5SUQudGFrZSgmZWxlbWVudCkpCi0gICAg
ICAgICAgICAgICAgY2FuY2VsRGVjbGFyYXRpdmVBbmltYXRpb24oKmNzc1RyYW5zaXRpb25zQnlD
U1NQcm9wZXJ0eUlETWFwSXRlbS52YWx1ZSk7CisgICAgICAgICAgICAgICAgY3NzVHJhbnNpdGlv
bnNCeUNTU1Byb3BlcnR5SURNYXBJdGVtLnZhbHVlLT5jYW5jZWxGcm9tU3R5bGUoKTsKICAgICAg
ICAgfQogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtNTY4LDExICs1NjgsNCBAQCB2b2lkIEFu
aW1hdGlvblRpbWVsaW5lOjp1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnQoRWxlbWVudCYg
ZWxlbWVudCwgY29uc3QgUgogICAgICAgICB1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRB
bmRQcm9wZXJ0eShlbGVtZW50LCBwcm9wZXJ0eSwgY3VycmVudFN0eWxlLCBhZnRlckNoYW5nZVN0
eWxlLCBydW5uaW5nVHJhbnNpdGlvbnNCeVByb3BlcnR5LCBjb21wbGV0ZWRUcmFuc2l0aW9uc0J5
UHJvcGVydHksIGdlbmVyYXRpb25UaW1lKTsKIH0KIAotdm9pZCBBbmltYXRpb25UaW1lbGluZTo6
Y2FuY2VsRGVjbGFyYXRpdmVBbmltYXRpb24oRGVjbGFyYXRpdmVBbmltYXRpb24mIGFuaW1hdGlv
bikKLXsKLSAgICBhbmltYXRpb24uY2FuY2VsRnJvbVN0eWxlKCk7Ci0gICAgcmVtb3ZlQW5pbWF0
aW9uKGFuaW1hdGlvbik7Ci0gICAgbV9hbGxBbmltYXRpb25zLnJlbW92ZUZpcnN0KCZhbmltYXRp
b24pOwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vQW5pbWF0aW9uVGltZWxpbmUuaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1h
dGlvbi9BbmltYXRpb25UaW1lbGluZS5oCmluZGV4IGYwOGIzMzk0NmZiYjFjMDc3ZGRmYzQxZjFi
N2I4NjBiMzg0NWZmN2EuLjA0NDU1Mzc0NTIxNWM1MzM3MDI0MmQzMWVlOTI1OTdhMzIwYmUzNDkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25UaW1lbGluZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25UaW1lbGluZS5oCkBAIC04
NSw3ICs4NSw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFdlYkFuaW1hdGlvbj4gY3NzQW5pbWF0
aW9uRm9yRWxlbWVudEFuZFByb3BlcnR5KEVsZW1lbnQmLCBDU1NQcm9wZXJ0eUlEKTsKICAgICBQ
cm9wZXJ0eVRvVHJhbnNpdGlvbk1hcCYgZW5zdXJlUnVubmluZ1RyYW5zaXRpb25zQnlQcm9wZXJ0
eShFbGVtZW50Jik7CiAgICAgdm9pZCB1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRBbmRQ
cm9wZXJ0eShFbGVtZW50JiwgQ1NTUHJvcGVydHlJRCwgY29uc3QgUmVuZGVyU3R5bGUmIGN1cnJl
bnRTdHlsZSwgY29uc3QgUmVuZGVyU3R5bGUmIGFmdGVyQ2hhbmdlU3R5bGUsIFByb3BlcnR5VG9U
cmFuc2l0aW9uTWFwJiwgUHJvcGVydHlUb1RyYW5zaXRpb25NYXAmLCBjb25zdCBNb25vdG9uaWNU
aW1lKTsKLSAgICB2b2lkIGNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKERlY2xhcmF0aXZlQW5p
bWF0aW9uJik7CiAKICAgICBFbGVtZW50VG9BbmltYXRpb25zTWFwIG1fZWxlbWVudFRvQW5pbWF0
aW9uc01hcDsKICAgICBFbGVtZW50VG9BbmltYXRpb25zTWFwIG1fZWxlbWVudFRvQ1NTQW5pbWF0
aW9uc01hcDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCA2MmU4NTliNTgwNmJjMjFhZDNmNmE1NjA0ZDI3MjAxMjYxYTllYWZh
Li42OTQyODhkNmMyNjYxZWNjZWQ2OTY0MTllMzU1NmEzZDI4ODVlZWYzIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTUgQEAKKzIwMTktMTEtMjYgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQGFwcGxlLmNvbT4K
KworICAgICAgICBSRUdSRVNTSU9OKHIyNTI0NTUpOiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtb24tZGlzYWJsZWQtZWxlbWVudHMuaHRt
bCBmYWlscyBvbiBpT1MgYW5kIFdLMQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjA0MjcyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81NzI1Mzc0Mj4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmlu
ZyB0aGlzIHNwZWNpZmljIGV4cGVjdGF0aW9uIGZvciBXSzEgc2luY2UgaXQgbm93IGJlaGF2ZXMg
anVzdCBsaWtlIHRoZSBvdGhlciBjb25maWd1cmF0aW9ucy4KKworICAgICAgICAqIHBsYXRmb3Jt
L21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50
LWRpc3BhdGNoLW9uLWRpc2FibGVkLWVsZW1lbnRzLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKwog
MjAxOS0xMS0yNiAgQW50b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUuY29tPgogCiAgICAgICAg
IFtXZWIgQW5pbWF0aW9uc10gTGF5b3V0IG9mIGNoaWxkcmVuIG9mIGVsZW1lbnQgd2l0aCBmb3J3
YXJkcy1maWxsaW5nIG9wYWNpdHkgYW5pbWF0aW9uIG1heSBiZSBpbmNvcnJlY3QgYWZ0ZXIgcmVt
b3ZhbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtb24tZGlzYWJs
ZWQtZWxlbWVudHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gt
b24tZGlzYWJsZWQtZWxlbWVudHMtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA2N2MzM2UwNmFkYWIwNGY4N2RjMzYwYzMxMWRiNzIzODZhMDBhYTA0Li4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2
ZW50LWRpc3BhdGNoLW9uLWRpc2FibGVkLWVsZW1lbnRzLWV4cGVjdGVkLnR4dAorKysgL2Rldi9u
dWxsCkBAIC0xLDEzICswLDAgQEAKLQotSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2Ug
PSBudWxsCi0KLVBBU1MgQ2FuIGRpc3BhdGNoIHVudHJ1c3RlZCAnY2xpY2snIEV2ZW50cyBhdCBk
aXNhYmxlZCBIVE1MIGVsZW1lbnRzLiAKLVBBU1MgQ2FuIGRpc3BhdGNoIHVudHJ1c3RlZCBFdmVu
dHMgYXQgZGlzYWJsZWQgSFRNTCBlbGVtZW50cy4gCi1QQVNTIENhbiBkaXNwYXRjaCBDdXN0b21F
dmVudHMgYXQgZGlzYWJsZWQgSFRNTCBlbGVtZW50cy4gCi1QQVNTIENhbGxpbmcgY2xpY2soKSBv
biBkaXNhYmxlZCBlbGVtZW50cyBtdXN0IG5vdCBkaXNwYXRjaCBldmVudHMuIAotUEFTUyBDU1Mg
VHJhbnNpdGlvbnMgdHJhbnNpdGlvbnJ1biwgdHJhbnNpdGlvbnN0YXJ0LCB0cmFuc2l0aW9uZW5k
IGV2ZW50cyBmaXJlIG9uIGRpc2FibGVkIGZvcm0gZWxlbWVudHMgCi1USU1FT1VUIENTUyBUcmFu
c2l0aW9ucyB0cmFuc2l0aW9uY2FuY2VsIGV2ZW50IGZpcmVzIG9uIGRpc2FibGVkIGZvcm0gZWxl
bWVudHMgVGVzdCB0aW1lZCBvdXQKLU5PVFJVTiBDU1MgQW5pbWF0aW9uIGFuaW1hdGlvbnN0YXJ0
LCBhbmltYXRpb25pdGVyYXRpb24sIGFuaW1hdGlvbmVuZCBmaXJlIG9uIGRpc2FibGVkIGZvcm0g
ZWxlbWVudHMgCi1OT1RSVU4gQ1NTIEFuaW1hdGlvbidzIGFuaW1hdGlvbmNhbmNlbCBldmVudCBm
aXJlcyBvbiBkaXNhYmxlZCBmb3JtIGVsZW1lbnRzIAotTk9UUlVOIFJlYWwgY2xpY2tzIG9uIGRp
c2FibGVkIGVsZW1lbnRzIG11c3Qgbm90IGRpc3BhdGNoIGV2ZW50cy4gCi0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>384380</attachid>
            <date>2019-11-26 12:48:12 -0800</date>
            <delta_ts>2019-11-27 08:40:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-204272-20191126214811.patch</filename>
            <type>text/plain</type>
            <size>16885</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUyODc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjgxOWEyM2U5ZmMyNGFi
YmFiMWE4ZmQ0NDA1YmYyNDAwMTc4NzczYi4uZWMxZWJmNjc5ZTY1NzEyMDc0ZGViNDg3YzczYjgz
ZmEyN2U2M2ViZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE5LTExLTI2ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMjUy
NDU1KTogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRp
c3BhdGNoLW9uLWRpc2FibGVkLWVsZW1lbnRzLmh0bWwgZmFpbHMgb24gaU9TIGFuZCBXSzEKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDI3MgorICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNTcyNTM3NDI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgRXZlbnRzIGZvciBkZWNsYXJhdGl2ZSBhbmltYXRpb25z
IGFyZSBkaXNwYXRjaGVkIHVzaW5nIGEgTWFpblRocmVhZEdlbmVyaWNFdmVudFF1ZXVlIHdoaWNo
IGRpc3BhdGNoZXMgZW5xdWV1ZWQgZXZlbnRzIGFzeW5jaHJvbm91c2x5LiBXaGVuIGEgZGVjbGFy
YXRpdmUKKyAgICAgICAgYW5pbWF0aW9uIHdvdWxkIGJlIGNhbmNlbGVkLCBBbmltYXRpb25UaW1l
bGluZTo6Y2FuY2VsRGVjbGFyYXRpdmVBbmltYXRpb24oKSB3b3VsZCBiZSBjYWxsZWQgYW5kIHdv
dWxkIGVucXVldWUgYSAidHJhbnNpdGlvbmNhbmNlbCIgb3IgImFuaW1hdGlvbmNhbmNlbCIKKyAg
ICAgICAgZXZlbnQgKGRlcGVuZGluZyBvbiB0aGUgYW5pbWF0aW9uIHR5cGUpIGJ5IHZpcnR1ZSBv
ZiBjYWxsaW5nIERlY2xhcmF0aXZlQW5pbWF0aW9uOjpjYW5jZWxGcm9tU3R5bGUoKSwgYW5kIHdv
dWxkIGFsc28gY2FsbCBBbmltYXRpb25UaW1lbGluZTo6cmVtb3ZlQW5pbWF0aW9uKCkKKyAgICAg
ICAgcmlnaHQgYWZ0ZXIuIEhvd2V2ZXIsIGNhbGxpbmcgQW5pbWF0aW9uVGltZWxpbmU6OnJlbW92
ZUFuaW1hdGlvbigpIGNvdWxkIGhhdmUgdGhlIHNpZGUgZWZmZWN0IG9mIHJlbW92aW5nIHRoZSBs
YXN0IHJlZmVyZW5jZSB0byB0aGUgRGVjbGFyYXRpdmVBbmltYXRpb24KKyAgICAgICAgb2JqZWN0
LCB3aGljaCB3b3VsZCBkZXN0cm95IGl0cyBhdHRhY2hlZCBNYWluVGhyZWFkR2VuZXJpY0V2ZW50
UXVldWUgYmVmb3JlIGl0IGhhZCB0aGUgdGltZSB0byBkaXNwYXRjaCB0aGUgcXVldWVkICJ0cmFu
c2l0aW9uY2FuY2VsIiBvciAiYW5pbWF0aW9uY2FuY2VsIgorICAgICAgICBldmVudC4KKworICAg
ICAgICBUaGUgY2FsbCB0byBBbmltYXRpb25UaW1lbGluZTo6cmVtb3ZlQW5pbWF0aW9uKCkgaW4g
QW5pbWF0aW9uVGltZWxpbmU6OmNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKCkgaXMgYWN0dWFs
bHkgdW5uZWNlc3NhcnkuIFNpbXBseSBjYW5jZWxpbmcgdGhlIGFuaW1hdGlvbgorICAgICAgICB2
aWEgRGVjbGFyYXRpdmVBbmltYXRpb246OmNhbmNlbEZyb21TdHlsZSgpIHdpbGwgZW5kIHVwIGNh
bGxpbmcgQW5pbWF0aW9uVGltZWxpbmU6OnJlbW92ZUFuaW1hdGlvbigpIHRoZSBuZXh0IHRpbWUg
YW5pbWF0aW9ucyBhcmUgdXBkYXRlZCwgd2hpY2ggd2lsbCBsZWF2ZQorICAgICAgICB0aW1lIGZv
ciB0aGUgY2FuY2VsIGV2ZW50cyB0byBiZSBkaXNwYXRjaGVkLiBTbyBhbGwgd2UgbmVlZCB0byBk
byBpcyByZW1vdmUgQW5pbWF0aW9uVGltZWxpbmU6OmNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9u
KCkgYW5kIHJlcGxhY2UgaXRzIGNhbGwgc2l0ZXMgd2l0aAorICAgICAgICBzaW1wbGUgY2FsbHMg
dG8gRGVjbGFyYXRpdmVBbmltYXRpb246OmNhbmNlbEZyb21TdHlsZSgpLgorCisgICAgICAgIE1h
a2luZyB0aGlzIGNoYW5nZSBicm9rZSBhIHRlc3QgaG93ZXZlcjogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50
ZW50YXRpdmUuaHRtbC4gV2UgYWN0dWFsbHkgcGFzc2VkIHRoYXQKKyAgICAgICAgdGVzdCBieSBj
aGFuY2Ugd2l0aG91dCBpbXBsZW1lbnRpbmcgdGhlIGZlYXR1cmUgcmVxdWlyZWQgdG8gbWFrZSBp
dCB3b3JrLiBXZSBub3cgaW1wbGVtZW50IHRoZSBjb3JyZWN0IHdheSB0byB0cmFjayBhIGdsb2Jh
bCBwb3NpdGlvbiBmb3IgYW4gYW5pbWF0aW9uIGJ5CisgICAgICAgIG9ubHkgc2V0dGluZyBvbmUg
Zm9yIGRlY2xhcmF0aXZlIGFuaW1hdGlvbnMgb25jZSB0aGV5IGFyZSBkaXNhc3NvY2lhdGVkIHdp
dGggdGhlaXIgb3duaW5nIGVsZW1lbnQgYW5kIGhhdmUgYSBub24taWRsZSBwbGF5IHN0YXRlLgor
CisgICAgICAgICogYW5pbWF0aW9uL0FuaW1hdGlvblRpbWVsaW5lLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkFuaW1hdGlvblRpbWVsaW5lOjphbmltYXRpb25UaW1pbmdEaWRDaGFuZ2UpOgorICAg
ICAgICAoV2ViQ29yZTo6QW5pbWF0aW9uVGltZWxpbmU6OnVwZGF0ZUdsb2JhbFBvc2l0aW9uKToK
KyAgICAgICAgKFdlYkNvcmU6OkFuaW1hdGlvblRpbWVsaW5lOjp1cGRhdGVDU1NBbmltYXRpb25z
Rm9yRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpBbmltYXRpb25UaW1lbGluZTo6dXBkYXRl
Q1NTVHJhbnNpdGlvbnNGb3JFbGVtZW50QW5kUHJvcGVydHkpOgorICAgICAgICAoV2ViQ29yZTo6
QW5pbWF0aW9uVGltZWxpbmU6OnVwZGF0ZUNTU1RyYW5zaXRpb25zRm9yRWxlbWVudCk6CisgICAg
ICAgIChXZWJDb3JlOjpBbmltYXRpb25UaW1lbGluZTo6Y2FuY2VsRGVjbGFyYXRpdmVBbmltYXRp
b24pOiBEZWxldGVkLgorICAgICAgICAqIGFuaW1hdGlvbi9BbmltYXRpb25UaW1lbGluZS5oOgor
ICAgICAgICAqIGFuaW1hdGlvbi9EZWNsYXJhdGl2ZUFuaW1hdGlvbi5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpEZWNsYXJhdGl2ZUFuaW1hdGlvbjo6Y2FuSGF2ZUdsb2JhbFBvc2l0aW9uKToKKyAg
ICAgICAgKiBhbmltYXRpb24vRGVjbGFyYXRpdmVBbmltYXRpb24uaDoKKyAgICAgICAgKiBhbmlt
YXRpb24vRG9jdW1lbnRUaW1lbGluZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFRp
bWVsaW5lOjpnZXRBbmltYXRpb25zIGNvbnN0KToKKyAgICAgICAgKiBhbmltYXRpb24vV2ViQW5p
bWF0aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpXZWJBbmltYXRpb246OmNhbkhhdmVHbG9iYWxQ
b3NpdGlvbik6CisKIDIwMTktMTEtMjYgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQGFwcGxlLmNv
bT4KIAogICAgICAgICBbV2ViIEFuaW1hdGlvbnNdIExheW91dCBvZiBjaGlsZHJlbiBvZiBlbGVt
ZW50IHdpdGggZm9yd2FyZHMtZmlsbGluZyBvcGFjaXR5IGFuaW1hdGlvbiBtYXkgYmUgaW5jb3Jy
ZWN0IGFmdGVyIHJlbW92YWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9B
bmltYXRpb25UaW1lbGluZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQW5pbWF0aW9u
VGltZWxpbmUuY3BwCmluZGV4IDNhOTJhOTM3MWE2ZGZiNWUxOTYzNjBlOTk5MGJkZTNkZGIxNGQw
ZjkuLmMyZWZjMDJjN2M3NjllNjQ0NTMxYjQ5M2MyYjk3Mjg2NzlhZGY0MzEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25UaW1lbGluZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0FuaW1hdGlvblRpbWVsaW5lLmNwcApAQCAtNjIsOCArNjIs
OSBAQCB2b2lkIEFuaW1hdGlvblRpbWVsaW5lOjpmb3JnZXRBbmltYXRpb24oV2ViQW5pbWF0aW9u
KiBhbmltYXRpb24pCiAKIHZvaWQgQW5pbWF0aW9uVGltZWxpbmU6OmFuaW1hdGlvblRpbWluZ0Rp
ZENoYW5nZShXZWJBbmltYXRpb24mIGFuaW1hdGlvbikKIHsKKyAgICB1cGRhdGVHbG9iYWxQb3Np
dGlvbihhbmltYXRpb24pOworCiAgICAgaWYgKG1fYW5pbWF0aW9ucy5hZGQoJmFuaW1hdGlvbikp
IHsKLSAgICAgICAgYW5pbWF0aW9uLnNldEdsb2JhbFBvc2l0aW9uKG1fYWxsQW5pbWF0aW9ucy5z
aXplKCkpOwogICAgICAgICBtX2FsbEFuaW1hdGlvbnMuYXBwZW5kKG1ha2VXZWFrUHRyKCZhbmlt
YXRpb24pKTsKICAgICAgICAgYXV0byogdGltZWxpbmUgPSBhbmltYXRpb24udGltZWxpbmUoKTsK
ICAgICAgICAgaWYgKHRpbWVsaW5lICYmIHRpbWVsaW5lICE9IHRoaXMpCkBAIC03MSw2ICs3Miwx
MyBAQCB2b2lkIEFuaW1hdGlvblRpbWVsaW5lOjphbmltYXRpb25UaW1pbmdEaWRDaGFuZ2UoV2Vi
QW5pbWF0aW9uJiBhbmltYXRpb24pCiAgICAgfQogfQogCit2b2lkIEFuaW1hdGlvblRpbWVsaW5l
Ojp1cGRhdGVHbG9iYWxQb3NpdGlvbihXZWJBbmltYXRpb24mIGFuaW1hdGlvbikKK3sKKyAgICBz
dGF0aWMgdW5zaWduZWQgc19nbG9iYWxQb3NpdGlvbiA9IDA7CisgICAgaWYgKCFhbmltYXRpb24u
Z2xvYmFsUG9zaXRpb24oKSAmJiBhbmltYXRpb24uY2FuSGF2ZUdsb2JhbFBvc2l0aW9uKCkpCisg
ICAgICAgIGFuaW1hdGlvbi5zZXRHbG9iYWxQb3NpdGlvbigrK3NfZ2xvYmFsUG9zaXRpb24pOwor
fQorCiB2b2lkIEFuaW1hdGlvblRpbWVsaW5lOjpyZW1vdmVBbmltYXRpb24oV2ViQW5pbWF0aW9u
JiBhbmltYXRpb24pCiB7CiAgICAgQVNTRVJUKCFhbmltYXRpb24udGltZWxpbmUoKSB8fCBhbmlt
YXRpb24udGltZWxpbmUoKSA9PSB0aGlzKTsKQEAgLTI1Miw3ICsyNjAsNyBAQCB2b2lkIEFuaW1h
dGlvblRpbWVsaW5lOjp1cGRhdGVDU1NBbmltYXRpb25zRm9yRWxlbWVudChFbGVtZW50JiBlbGVt
ZW50LCBjb25zdCBSZQogICAgIGlmIChjdXJyZW50U3R5bGUgJiYgY3VycmVudFN0eWxlLT5oYXNB
bmltYXRpb25zKCkgJiYgY3VycmVudFN0eWxlLT5kaXNwbGF5KCkgIT0gRGlzcGxheVR5cGU6Ok5v
bmUgJiYgYWZ0ZXJDaGFuZ2VTdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6Ok5vbmUpIHsK
ICAgICAgICAgaWYgKG1fZWxlbWVudFRvQ1NTQW5pbWF0aW9uQnlOYW1lLmNvbnRhaW5zKCZlbGVt
ZW50KSkgewogICAgICAgICAgICAgZm9yIChjb25zdCBhdXRvJiBjc3NBbmltYXRpb25zQnlOYW1l
TWFwSXRlbSA6IG1fZWxlbWVudFRvQ1NTQW5pbWF0aW9uQnlOYW1lLnRha2UoJmVsZW1lbnQpKQot
ICAgICAgICAgICAgICAgIGNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKCpjc3NBbmltYXRpb25z
QnlOYW1lTWFwSXRlbS52YWx1ZSk7CisgICAgICAgICAgICAgICAgY3NzQW5pbWF0aW9uc0J5TmFt
ZU1hcEl0ZW0udmFsdWUtPmNhbmNlbEZyb21TdHlsZSgpOwogICAgICAgICB9CiAgICAgICAgIGVs
ZW1lbnQuZW5zdXJlS2V5ZnJhbWVFZmZlY3RTdGFjaygpLnNldENTU0FuaW1hdGlvbk5hbWVzKFdU
Rk1vdmUoYW5pbWF0aW9uTmFtZXMpKTsKICAgICAgICAgcmV0dXJuOwpAQCAtMzAxLDcgKzMwOSw3
IEBAIHZvaWQgQW5pbWF0aW9uVGltZWxpbmU6OnVwZGF0ZUNTU0FuaW1hdGlvbnNGb3JFbGVtZW50
KEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFJlCiAgICAgLy8gcmVtb3ZlIHRoZSBDU1NBbmltYXRp
b24gb2JqZWN0IGNyZWF0ZWQgZm9yIHRoZW0uCiAgICAgZm9yIChjb25zdCBhdXRvJiBuYW1lT2ZB
bmltYXRpb25Ub1JlbW92ZSA6IG5hbWVzT2ZQcmV2aW91c0FuaW1hdGlvbnMpIHsKICAgICAgICAg
aWYgKGF1dG8gYW5pbWF0aW9uID0gY3NzQW5pbWF0aW9uc0J5TmFtZS50YWtlKG5hbWVPZkFuaW1h
dGlvblRvUmVtb3ZlKSkKLSAgICAgICAgICAgIGNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKCph
bmltYXRpb24pOworICAgICAgICAgICAgYW5pbWF0aW9uLT5jYW5jZWxGcm9tU3R5bGUoKTsKICAg
ICB9CiAKICAgICBlbGVtZW50LmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2soKS5zZXRDU1NBbmlt
YXRpb25OYW1lcyhXVEZNb3ZlKGFuaW1hdGlvbk5hbWVzKSk7CkBAIC00NzIsMTUgKzQ4MCwxNSBA
QCB2b2lkIEFuaW1hdGlvblRpbWVsaW5lOjp1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRB
bmRQcm9wZXJ0eShFbGVtZW50JiBlbGVtZQogICAgICAgICBpZiAoQ1NTUHJvcGVydHlBbmltYXRp
b246OnByb3BlcnRpZXNFcXVhbChwcm9wZXJ0eSwgJnByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlv
bkN1cnJlbnRTdHlsZSwgJmFmdGVyQ2hhbmdlU3R5bGUpIHx8ICFDU1NQcm9wZXJ0eUFuaW1hdGlv
bjo6Y2FuUHJvcGVydHlCZUludGVycG9sYXRlZChwcm9wZXJ0eSwgJmN1cnJlbnRTdHlsZSwgJmFm
dGVyQ2hhbmdlU3R5bGUpKSB7CiAgICAgICAgICAgICAvLyAxLiBJZiB0aGUgY3VycmVudCB2YWx1
ZSBvZiB0aGUgcHJvcGVydHkgaW4gdGhlIHJ1bm5pbmcgdHJhbnNpdGlvbiBpcyBlcXVhbCB0byB0
aGUgdmFsdWUgb2YgdGhlIHByb3BlcnR5IGluIHRoZSBhZnRlci1jaGFuZ2Ugc3R5bGUsCiAgICAg
ICAgICAgICAvLyAgICBvciBpZiB0aGVzZSB0d28gdmFsdWVzIGNhbm5vdCBiZSBpbnRlcnBvbGF0
ZWQsIHRoZW4gaW1wbGVtZW50YXRpb25zIG11c3QgY2FuY2VsIHRoZSBydW5uaW5nIHRyYW5zaXRp
b24uCi0gICAgICAgICAgICBjYW5jZWxEZWNsYXJhdGl2ZUFuaW1hdGlvbigqcHJldmlvdXNseVJ1
bm5pbmdUcmFuc2l0aW9uKTsKKyAgICAgICAgICAgIHByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlv
bi0+Y2FuY2VsRnJvbVN0eWxlKCk7CiAgICAgICAgIH0gZWxzZSBpZiAodHJhbnNpdGlvbkNvbWJp
bmVkRHVyYXRpb24obWF0Y2hpbmdCYWNraW5nQW5pbWF0aW9uKSA8PSAwLjAgfHwgIUNTU1Byb3Bl
cnR5QW5pbWF0aW9uOjpjYW5Qcm9wZXJ0eUJlSW50ZXJwb2xhdGVkKHByb3BlcnR5LCAmcHJldmlv
dXNseVJ1bm5pbmdUcmFuc2l0aW9uQ3VycmVudFN0eWxlLCAmYWZ0ZXJDaGFuZ2VTdHlsZSkpIHsK
ICAgICAgICAgICAgIC8vIDIuIE90aGVyd2lzZSwgaWYgdGhlIGNvbWJpbmVkIGR1cmF0aW9uIGlz
IGxlc3MgdGhhbiBvciBlcXVhbCB0byAwcywgb3IgaWYgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhl
IHByb3BlcnR5IGluIHRoZSBydW5uaW5nIHRyYW5zaXRpb24KICAgICAgICAgICAgIC8vICAgIGNh
bm5vdCBiZSBpbnRlcnBvbGF0ZWQgd2l0aCB0aGUgdmFsdWUgb2YgdGhlIHByb3BlcnR5IGluIHRo
ZSBhZnRlci1jaGFuZ2Ugc3R5bGUsIHRoZW4gaW1wbGVtZW50YXRpb25zIG11c3QgY2FuY2VsIHRo
ZSBydW5uaW5nIHRyYW5zaXRpb24uCi0gICAgICAgICAgICBjYW5jZWxEZWNsYXJhdGl2ZUFuaW1h
dGlvbigqcHJldmlvdXNseVJ1bm5pbmdUcmFuc2l0aW9uKTsKKyAgICAgICAgICAgIHByZXZpb3Vz
bHlSdW5uaW5nVHJhbnNpdGlvbi0+Y2FuY2VsRnJvbVN0eWxlKCk7CiAgICAgICAgIH0gZWxzZSBp
ZiAoQ1NTUHJvcGVydHlBbmltYXRpb246OnByb3BlcnRpZXNFcXVhbChwcm9wZXJ0eSwgJnByZXZp
b3VzbHlSdW5uaW5nVHJhbnNpdGlvbi0+cmV2ZXJzaW5nQWRqdXN0ZWRTdGFydFN0eWxlKCksICZh
ZnRlckNoYW5nZVN0eWxlKSkgewogICAgICAgICAgICAgLy8gMy4gT3RoZXJ3aXNlLCBpZiB0aGUg
cmV2ZXJzaW5nLWFkanVzdGVkIHN0YXJ0IHZhbHVlIG9mIHRoZSBydW5uaW5nIHRyYW5zaXRpb24g
aXMgdGhlIHNhbWUgYXMgdGhlIHZhbHVlIG9mIHRoZSBwcm9wZXJ0eSBpbiB0aGUgYWZ0ZXItY2hh
bmdlCiAgICAgICAgICAgICAvLyAgICBzdHlsZSAoc2VlIHRoZSBzZWN0aW9uIG9uIHJldmVyc2lu
ZyBvZiB0cmFuc2l0aW9ucyBmb3Igd2h5IHRoZXNlIGNhc2UgZXhpc3RzKSwgaW1wbGVtZW50YXRp
b25zIG11c3QgY2FuY2VsIHRoZSBydW5uaW5nIHRyYW5zaXRpb24KLSAgICAgICAgICAgIGNhbmNl
bERlY2xhcmF0aXZlQW5pbWF0aW9uKCpwcmV2aW91c2x5UnVubmluZ1RyYW5zaXRpb24pOworICAg
ICAgICAgICAgcHJldmlvdXNseVJ1bm5pbmdUcmFuc2l0aW9uLT5jYW5jZWxGcm9tU3R5bGUoKTsK
IAogICAgICAgICAgICAgLy8gYW5kIHN0YXJ0IGEgbmV3IHRyYW5zaXRpb24gd2hvc2U6CiAgICAg
ICAgICAgICAvLyAgIC0gcmV2ZXJzaW5nLWFkanVzdGVkIHN0YXJ0IHZhbHVlIGlzIHRoZSBlbmQg
dmFsdWUgb2YgdGhlIHJ1bm5pbmcgdHJhbnNpdGlvbiwKQEAgLTUwNiw3ICs1MTQsNyBAQCB2b2lk
IEFuaW1hdGlvblRpbWVsaW5lOjp1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRBbmRQcm9w
ZXJ0eShFbGVtZW50JiBlbGVtZQogICAgICAgICAgICAgZW5zdXJlUnVubmluZ1RyYW5zaXRpb25z
QnlQcm9wZXJ0eShlbGVtZW50KS5zZXQocHJvcGVydHksIENTU1RyYW5zaXRpb246OmNyZWF0ZShl
bGVtZW50LCBwcm9wZXJ0eSwgZ2VuZXJhdGlvblRpbWUsICptYXRjaGluZ0JhY2tpbmdBbmltYXRp
b24sICZwcmV2aW91c2x5UnVubmluZ1RyYW5zaXRpb25DdXJyZW50U3R5bGUsIGFmdGVyQ2hhbmdl
U3R5bGUsIGRlbGF5LCBkdXJhdGlvbiwgcmV2ZXJzaW5nQWRqdXN0ZWRTdGFydFN0eWxlLCByZXZl
cnNpbmdTaG9ydGVuaW5nRmFjdG9yKSk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAv
LyA0LiBPdGhlcndpc2UsIGltcGxlbWVudGF0aW9ucyBtdXN0IGNhbmNlbCB0aGUgcnVubmluZyB0
cmFuc2l0aW9uCi0gICAgICAgICAgICBjYW5jZWxEZWNsYXJhdGl2ZUFuaW1hdGlvbigqcHJldmlv
dXNseVJ1bm5pbmdUcmFuc2l0aW9uKTsKKyAgICAgICAgICAgIHByZXZpb3VzbHlSdW5uaW5nVHJh
bnNpdGlvbi0+Y2FuY2VsRnJvbVN0eWxlKCk7CiAKICAgICAgICAgICAgIC8vIGFuZCBzdGFydCBh
IG5ldyB0cmFuc2l0aW9uIHdob3NlOgogICAgICAgICAgICAgLy8gICAtIHN0YXJ0IHRpbWUgaXMg
dGhlIHRpbWUgb2YgdGhlIHN0eWxlIGNoYW5nZSBldmVudCBwbHVzIHRoZSBtYXRjaGluZyB0cmFu
c2l0aW9uIGRlbGF5LApAQCAtNTMwLDcgKzUzOCw3IEBAIHZvaWQgQW5pbWF0aW9uVGltZWxpbmU6
OnVwZGF0ZUNTU1RyYW5zaXRpb25zRm9yRWxlbWVudChFbGVtZW50JiBlbGVtZW50LCBjb25zdCBS
CiAgICAgaWYgKGN1cnJlbnRTdHlsZS5oYXNUcmFuc2l0aW9ucygpICYmIGN1cnJlbnRTdHlsZS5k
aXNwbGF5KCkgIT0gRGlzcGxheVR5cGU6Ok5vbmUgJiYgYWZ0ZXJDaGFuZ2VTdHlsZS5kaXNwbGF5
KCkgPT0gRGlzcGxheVR5cGU6Ok5vbmUpIHsKICAgICAgICAgaWYgKG1fZWxlbWVudFRvUnVubmlu
Z0NTU1RyYW5zaXRpb25CeUNTU1Byb3BlcnR5SUQuY29udGFpbnMoJmVsZW1lbnQpKSB7CiAgICAg
ICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIGNzc1RyYW5zaXRpb25zQnlDU1NQcm9wZXJ0eUlETWFw
SXRlbSA6IG1fZWxlbWVudFRvUnVubmluZ0NTU1RyYW5zaXRpb25CeUNTU1Byb3BlcnR5SUQudGFr
ZSgmZWxlbWVudCkpCi0gICAgICAgICAgICAgICAgY2FuY2VsRGVjbGFyYXRpdmVBbmltYXRpb24o
KmNzc1RyYW5zaXRpb25zQnlDU1NQcm9wZXJ0eUlETWFwSXRlbS52YWx1ZSk7CisgICAgICAgICAg
ICAgICAgY3NzVHJhbnNpdGlvbnNCeUNTU1Byb3BlcnR5SURNYXBJdGVtLnZhbHVlLT5jYW5jZWxG
cm9tU3R5bGUoKTsKICAgICAgICAgfQogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtNTY4LDEx
ICs1NzYsNCBAQCB2b2lkIEFuaW1hdGlvblRpbWVsaW5lOjp1cGRhdGVDU1NUcmFuc2l0aW9uc0Zv
ckVsZW1lbnQoRWxlbWVudCYgZWxlbWVudCwgY29uc3QgUgogICAgICAgICB1cGRhdGVDU1NUcmFu
c2l0aW9uc0ZvckVsZW1lbnRBbmRQcm9wZXJ0eShlbGVtZW50LCBwcm9wZXJ0eSwgY3VycmVudFN0
eWxlLCBhZnRlckNoYW5nZVN0eWxlLCBydW5uaW5nVHJhbnNpdGlvbnNCeVByb3BlcnR5LCBjb21w
bGV0ZWRUcmFuc2l0aW9uc0J5UHJvcGVydHksIGdlbmVyYXRpb25UaW1lKTsKIH0KIAotdm9pZCBB
bmltYXRpb25UaW1lbGluZTo6Y2FuY2VsRGVjbGFyYXRpdmVBbmltYXRpb24oRGVjbGFyYXRpdmVB
bmltYXRpb24mIGFuaW1hdGlvbikKLXsKLSAgICBhbmltYXRpb24uY2FuY2VsRnJvbVN0eWxlKCk7
Ci0gICAgcmVtb3ZlQW5pbWF0aW9uKGFuaW1hdGlvbik7Ci0gICAgbV9hbGxBbmltYXRpb25zLnJl
bW92ZUZpcnN0KCZhbmltYXRpb24pOwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQW5pbWF0aW9uVGltZWxpbmUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25UaW1lbGluZS5oCmluZGV4IGYwOGIzMzk0
NmZiYjFjMDc3ZGRmYzQxZjFiN2I4NjBiMzg0NWZmN2EuLjMxNDFjZjUwNzA4YmY1ZmEwOWQ4Mjll
OThmZDRjMjYwODBlNGYwMjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9B
bmltYXRpb25UaW1lbGluZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRp
b25UaW1lbGluZS5oCkBAIC04MiwxMCArODIsMTAgQEAgcHJvdGVjdGVkOgogICAgIEhhc2hNYXA8
RWxlbWVudCosIFByb3BlcnR5VG9UcmFuc2l0aW9uTWFwPiBtX2VsZW1lbnRUb0NvbXBsZXRlZENT
U1RyYW5zaXRpb25CeUNTU1Byb3BlcnR5SUQ7CiAKIHByaXZhdGU6CisgICAgdm9pZCB1cGRhdGVH
bG9iYWxQb3NpdGlvbihXZWJBbmltYXRpb24mKTsKICAgICBSZWZQdHI8V2ViQW5pbWF0aW9uPiBj
c3NBbmltYXRpb25Gb3JFbGVtZW50QW5kUHJvcGVydHkoRWxlbWVudCYsIENTU1Byb3BlcnR5SUQp
OwogICAgIFByb3BlcnR5VG9UcmFuc2l0aW9uTWFwJiBlbnN1cmVSdW5uaW5nVHJhbnNpdGlvbnNC
eVByb3BlcnR5KEVsZW1lbnQmKTsKICAgICB2b2lkIHVwZGF0ZUNTU1RyYW5zaXRpb25zRm9yRWxl
bWVudEFuZFByb3BlcnR5KEVsZW1lbnQmLCBDU1NQcm9wZXJ0eUlELCBjb25zdCBSZW5kZXJTdHls
ZSYgY3VycmVudFN0eWxlLCBjb25zdCBSZW5kZXJTdHlsZSYgYWZ0ZXJDaGFuZ2VTdHlsZSwgUHJv
cGVydHlUb1RyYW5zaXRpb25NYXAmLCBQcm9wZXJ0eVRvVHJhbnNpdGlvbk1hcCYsIGNvbnN0IE1v
bm90b25pY1RpbWUpOwotICAgIHZvaWQgY2FuY2VsRGVjbGFyYXRpdmVBbmltYXRpb24oRGVjbGFy
YXRpdmVBbmltYXRpb24mKTsKIAogICAgIEVsZW1lbnRUb0FuaW1hdGlvbnNNYXAgbV9lbGVtZW50
VG9BbmltYXRpb25zTWFwOwogICAgIEVsZW1lbnRUb0FuaW1hdGlvbnNNYXAgbV9lbGVtZW50VG9D
U1NBbmltYXRpb25zTWFwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0Rl
Y2xhcmF0aXZlQW5pbWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9EZWNsYXJh
dGl2ZUFuaW1hdGlvbi5jcHAKaW5kZXggMmM2NzcwZDk5MzBjYTdkODZlYmU4NzdlZmY5MzFjOWQ5
ZGUwNjRlMy4uYmJlNGMzNzA1NzVmMjllY2RkMjMxYTY1NjdiYjA1ZDA2YzdhNTQ5NyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RlY2xhcmF0aXZlQW5pbWF0aW9uLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vRGVjbGFyYXRpdmVBbmltYXRpb24uY3BwCkBA
IC03MSw2ICs3MSwxNyBAQCB2b2lkIERlY2xhcmF0aXZlQW5pbWF0aW9uOjp0aWNrKCkKICAgICB9
CiB9CiAKK2Jvb2wgRGVjbGFyYXRpdmVBbmltYXRpb246OmNhbkhhdmVHbG9iYWxQb3NpdGlvbigp
Cit7CisgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzcy1hbmltYXRpb25zLTIvI2Fu
aW1hdGlvbi1jb21wb3NpdGUtb3JkZXIKKyAgICAvLyBodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcv
Y3NzLXRyYW5zaXRpb25zLTIvI2FuaW1hdGlvbi1jb21wb3NpdGUtb3JkZXIKKyAgICAvLyBDU1Mg
QW5pbWF0aW9ucyBhbmQgQ1NTIFRyYW5zaXRpb25zIGdlbmVyYXRlZCB1c2luZyB0aGUgbWFya3Vw
IGRlZmluZWQgaW4gdGhpcyBzcGVjaWZpY2F0aW9uIGFyZSBub3QgYWRkZWQKKyAgICAvLyB0byB0
aGUgZ2xvYmFsIGFuaW1hdGlvbiBsaXN0IHdoZW4gdGhleSBhcmUgY3JlYXRlZC4gSW5zdGVhZCwg
dGhlc2UgYW5pbWF0aW9ucyBhcmUgYXBwZW5kZWQgdG8gdGhlIGdsb2JhbAorICAgIC8vIGFuaW1h
dGlvbiBsaXN0IGF0IHRoZSBmaXJzdCBtb21lbnQgd2hlbiB0aGV5IHRyYW5zaXRpb24gb3V0IG9m
IHRoZSBpZGxlIHBsYXkgc3RhdGUgYWZ0ZXIgYmVpbmcgZGlzYXNzb2NpYXRlZAorICAgIC8vIGZy
b20gdGhlaXIgb3duaW5nIGVsZW1lbnQuCisgICAgcmV0dXJuICFtX293bmluZ0VsZW1lbnQgJiYg
cGxheVN0YXRlKCkgIT0gV2ViQW5pbWF0aW9uOjpQbGF5U3RhdGU6OklkbGU7Cit9CisKIHZvaWQg
RGVjbGFyYXRpdmVBbmltYXRpb246OmRpc2Fzc29jaWF0ZUZyb21Pd25pbmdFbGVtZW50KCkKIHsK
ICAgICBpZiAoIW1fb3duaW5nRWxlbWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Fu
aW1hdGlvbi9EZWNsYXJhdGl2ZUFuaW1hdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9u
L0RlY2xhcmF0aXZlQW5pbWF0aW9uLmgKaW5kZXggYzk2NmU1OGMyZGYxMDEzMDRjOTQyYTBmZmE0
ZTgyOGM2ZGFjMzM3NC4uMzYzZTk4Y2UzMTc2NmM5NWI2ZTkzM2VkZWM3ZjEyN2I3OTQ1OGM2MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RlY2xhcmF0aXZlQW5pbWF0aW9u
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RlY2xhcmF0aXZlQW5pbWF0aW9uLmgK
QEAgLTY3LDYgKzY3LDggQEAgcHVibGljOgogICAgIGJvb2wgbmVlZHNUaWNrKCkgY29uc3Qgb3Zl
cnJpZGU7CiAgICAgdm9pZCB0aWNrKCkgb3ZlcnJpZGU7CiAKKyAgICBib29sIGNhbkhhdmVHbG9i
YWxQb3NpdGlvbigpIGZpbmFsOworCiBwcm90ZWN0ZWQ6CiAgICAgRGVjbGFyYXRpdmVBbmltYXRp
b24oRWxlbWVudCYsIGNvbnN0IEFuaW1hdGlvbiYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vRG9jdW1lbnRUaW1lbGluZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmlt
YXRpb24vRG9jdW1lbnRUaW1lbGluZS5jcHAKaW5kZXggYWVhNTU4ZDk5NDg1M2MxZmYyZTFmNmFi
YjAwZTQzYWIxNDJkNzI4My4uMjBhMDdlZTdjODFjNTdhZjYzZDNmOGFlMTUyOTVjZjJmNTI1OTY4
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9Eb2N1bWVudFRpbWVsaW5lLmNwcApA
QCAtMTgyLDYgKzE4MiwxMCBAQCBWZWN0b3I8UmVmUHRyPFdlYkFuaW1hdGlvbj4+IERvY3VtZW50
VGltZWxpbmU6OmdldEFuaW1hdGlvbnMoKSBjb25zdAogICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgfSk7CiAKKyAgICBzdGQ6OnNvcnQod2ViQW5pbWF0aW9ucy5iZWdpbigpLCB3ZWJBbmltYXRp
b25zLmVuZCgpLCBbXShhdXRvJiBsaHMsIGF1dG8mIHJocykgeworICAgICAgICByZXR1cm4gbGhz
LT5nbG9iYWxQb3NpdGlvbigpIDwgcmhzLT5nbG9iYWxQb3NpdGlvbigpOworICAgIH0pOworCiAg
ICAgLy8gRmluYWxseSwgd2UgY2FuIGNvbmNhdGVuYXRlIHRoZSBzb3J0ZWQgQ1NTIFRyYW5zaXRp
b25zLCBDU1MgQW5pbWF0aW9ucyBhbmQgV2ViIEFuaW1hdGlvbnMgaW4gdGhlaXIgcmVsYXRpdmUg
Y29tcG9zaXRlIG9yZGVyLgogICAgIFZlY3RvcjxSZWZQdHI8V2ViQW5pbWF0aW9uPj4gYW5pbWF0
aW9uczsKICAgICBhbmltYXRpb25zLmFwcGVuZFJhbmdlKGNzc1RyYW5zaXRpb25zLmJlZ2luKCks
IGNzc1RyYW5zaXRpb25zLmVuZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1h
dGlvbi9XZWJBbmltYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRp
b24uaAppbmRleCBjZTBjN2U5YmM1N2Y5ZmU1ZTdiYThlMDAxYjVmNzI0MWY2OTVjZTkxLi5kYzk3
M2E1MTI2OTVjMmYyMTZhZDgwNzFmYjUzZjhjYzVlNzQ4YzE4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5p
bWF0aW9uL1dlYkFuaW1hdGlvbi5oCkBAIC0xMzQsNiArMTM0LDggQEAgcHVibGljOgogCiAgICAg
Ym9vbCBoYXNQZW5kaW5nQWN0aXZpdHkoKSBjb25zdCBmaW5hbDsKIAorICAgIHZpcnR1YWwgYm9v
bCBjYW5IYXZlR2xvYmFsUG9zaXRpb24oKSB7IHJldHVybiB0cnVlOyB9CisKICAgICAvLyBDb250
ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlci4KICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3Jp
cHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QgZmluYWwgeyByZXR1cm4gQWN0aXZlRE9NT2JqZWN0
OjpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7IH0KICAgICB2b2lkIGNvbnRleHREZXN0cm95ZWQo
KSBmaW5hbDsKQEAgLTE5NCw3ICsxOTYsNyBAQCBwcml2YXRlOgogICAgIFRpbWVUb1J1blBlbmRp
bmdUYXNrIG1fdGltZVRvUnVuUGVuZGluZ1BsYXlUYXNrIHsgVGltZVRvUnVuUGVuZGluZ1Rhc2s6
Ok5vdFNjaGVkdWxlZCB9OwogICAgIFRpbWVUb1J1blBlbmRpbmdUYXNrIG1fdGltZVRvUnVuUGVu
ZGluZ1BhdXNlVGFzayB7IFRpbWVUb1J1blBlbmRpbmdUYXNrOjpOb3RTY2hlZHVsZWQgfTsKICAg
ICBSZXBsYWNlU3RhdGUgbV9yZXBsYWNlU3RhdGUgeyBSZXBsYWNlU3RhdGU6OkFjdGl2ZSB9Owot
ICAgIHVuc2lnbmVkIG1fZ2xvYmFsUG9zaXRpb247CisgICAgdW5zaWduZWQgbV9nbG9iYWxQb3Np
dGlvbiB7IDAgfTsKIAogICAgIC8vIEFjdGl2ZURPTU9iamVjdC4KICAgICBjb25zdCBjaGFyKiBh
Y3RpdmVET01PYmplY3ROYW1lKCkgY29uc3QgZmluYWw7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNjJlODU5YjU4MDZiYzIx
YWQzZjZhNTYwNGQyNzIwMTI2MWE5ZWFmYS4uNjk0Mjg4ZDZjMjY2MWVjY2VkNjk2NDE5ZTM1NTZh
M2QyODg1ZWVmMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE5LTExLTI2ICBBbnRvaW5lIFF1
aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMjUyNDU1KTog
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNo
LW9uLWRpc2FibGVkLWVsZW1lbnRzLmh0bWwgZmFpbHMgb24gaU9TIGFuZCBXSzEKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDI3MgorICAgICAgICA8
cmRhcjovL3Byb2JsZW0vNTcyNTM3NDI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgUmVtb3ZpbmcgdGhpcyBzcGVjaWZpYyBleHBlY3RhdGlvbiBmb3Ig
V0sxIHNpbmNlIGl0IG5vdyBiZWhhdmVzIGp1c3QgbGlrZSB0aGUgb3RoZXIgY29uZmlndXJhdGlv
bnMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1vbi1kaXNhYmxlZC1lbGVtZW50cy1l
eHBlY3RlZC50eHQ6IFJlbW92ZWQuCisKIDIwMTktMTEtMjYgIEFudG9pbmUgUXVpbnQgIDxncmFv
dXRzQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2ViIEFuaW1hdGlvbnNdIExheW91dCBvZiBjaGls
ZHJlbiBvZiBlbGVtZW50IHdpdGggZm9yd2FyZHMtZmlsbGluZyBvcGFjaXR5IGFuaW1hdGlvbiBt
YXkgYmUgaW5jb3JyZWN0IGFmdGVyIHJlbW92YWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRz
L0V2ZW50LWRpc3BhdGNoLW9uLWRpc2FibGVkLWVsZW1lbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9k
b20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLW9uLWRpc2FibGVkLWVsZW1lbnRzLWV4cGVjdGVkLnR4
dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjdjMzNlMDZhZGFiMDRmODdkYzM2MGMz
MTFkYjcyMzg2YTAwYWEwNC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZG9tL2V2ZW50cy9FdmVudC1kaXNwYXRjaC1vbi1kaXNhYmxlZC1lbGVtZW50
cy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi0KLUhhcm5lc3Mg
RXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAotCi1QQVNTIENhbiBkaXNwYXRjaCB1bnRy
dXN0ZWQgJ2NsaWNrJyBFdmVudHMgYXQgZGlzYWJsZWQgSFRNTCBlbGVtZW50cy4gCi1QQVNTIENh
biBkaXNwYXRjaCB1bnRydXN0ZWQgRXZlbnRzIGF0IGRpc2FibGVkIEhUTUwgZWxlbWVudHMuIAot
UEFTUyBDYW4gZGlzcGF0Y2ggQ3VzdG9tRXZlbnRzIGF0IGRpc2FibGVkIEhUTUwgZWxlbWVudHMu
IAotUEFTUyBDYWxsaW5nIGNsaWNrKCkgb24gZGlzYWJsZWQgZWxlbWVudHMgbXVzdCBub3QgZGlz
cGF0Y2ggZXZlbnRzLiAKLVBBU1MgQ1NTIFRyYW5zaXRpb25zIHRyYW5zaXRpb25ydW4sIHRyYW5z
aXRpb25zdGFydCwgdHJhbnNpdGlvbmVuZCBldmVudHMgZmlyZSBvbiBkaXNhYmxlZCBmb3JtIGVs
ZW1lbnRzIAotVElNRU9VVCBDU1MgVHJhbnNpdGlvbnMgdHJhbnNpdGlvbmNhbmNlbCBldmVudCBm
aXJlcyBvbiBkaXNhYmxlZCBmb3JtIGVsZW1lbnRzIFRlc3QgdGltZWQgb3V0Ci1OT1RSVU4gQ1NT
IEFuaW1hdGlvbiBhbmltYXRpb25zdGFydCwgYW5pbWF0aW9uaXRlcmF0aW9uLCBhbmltYXRpb25l
bmQgZmlyZSBvbiBkaXNhYmxlZCBmb3JtIGVsZW1lbnRzIAotTk9UUlVOIENTUyBBbmltYXRpb24n
cyBhbmltYXRpb25jYW5jZWwgZXZlbnQgZmlyZXMgb24gZGlzYWJsZWQgZm9ybSBlbGVtZW50cyAK
LU5PVFJVTiBSZWFsIGNsaWNrcyBvbiBkaXNhYmxlZCBlbGVtZW50cyBtdXN0IG5vdCBkaXNwYXRj
aCBldmVudHMuIAotCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>384416</attachid>
            <date>2019-11-27 08:40:33 -0800</date>
            <delta_ts>2019-11-27 10:22:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-204272-20191127174032.patch</filename>
            <type>text/plain</type>
            <size>31653</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUyODc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjgxOWEyM2U5ZmMyNGFi
YmFiMWE4ZmQ0NDA1YmYyNDAwMTc4NzczYi4uYjgwZGIxNDU4YmNhNGU1NTY4ODhmMjNjODA1ZmUy
MDhmNmJiOTdkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDcyIEBACisyMDE5LTExLTI3ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMjUy
NDU1KTogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRp
c3BhdGNoLW9uLWRpc2FibGVkLWVsZW1lbnRzLmh0bWwgZmFpbHMgb24gaU9TIGFuZCBXSzEKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNDI3MgorICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNTcyNTM3NDI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgRXZlbnRzIGZvciBkZWNsYXJhdGl2ZSBhbmltYXRpb25z
IGFyZSBkaXNwYXRjaGVkIHVzaW5nIGEgTWFpblRocmVhZEdlbmVyaWNFdmVudFF1ZXVlIHdoaWNo
IGRpc3BhdGNoZXMgZW5xdWV1ZWQgZXZlbnRzIGFzeW5jaHJvbm91c2x5LiBXaGVuIGEgZGVjbGFy
YXRpdmUKKyAgICAgICAgYW5pbWF0aW9uIHdvdWxkIGJlIGNhbmNlbGVkLCBBbmltYXRpb25UaW1l
bGluZTo6Y2FuY2VsRGVjbGFyYXRpdmVBbmltYXRpb24oKSB3b3VsZCBiZSBjYWxsZWQgYW5kIHdv
dWxkIGVucXVldWUgYSAidHJhbnNpdGlvbmNhbmNlbCIgb3IgImFuaW1hdGlvbmNhbmNlbCIKKyAg
ICAgICAgZXZlbnQgKGRlcGVuZGluZyBvbiB0aGUgYW5pbWF0aW9uIHR5cGUpIGJ5IHZpcnR1ZSBv
ZiBjYWxsaW5nIERlY2xhcmF0aXZlQW5pbWF0aW9uOjpjYW5jZWxGcm9tU3R5bGUoKSwgYW5kIHdv
dWxkIGFsc28gY2FsbCBBbmltYXRpb25UaW1lbGluZTo6cmVtb3ZlQW5pbWF0aW9uKCkKKyAgICAg
ICAgcmlnaHQgYWZ0ZXIuIEhvd2V2ZXIsIGNhbGxpbmcgQW5pbWF0aW9uVGltZWxpbmU6OnJlbW92
ZUFuaW1hdGlvbigpIGNvdWxkIGhhdmUgdGhlIHNpZGUgZWZmZWN0IG9mIHJlbW92aW5nIHRoZSBs
YXN0IHJlZmVyZW5jZSB0byB0aGUgRGVjbGFyYXRpdmVBbmltYXRpb24KKyAgICAgICAgb2JqZWN0
LCB3aGljaCB3b3VsZCBkZXN0cm95IGl0cyBhdHRhY2hlZCBNYWluVGhyZWFkR2VuZXJpY0V2ZW50
UXVldWUgYmVmb3JlIGl0IGhhZCB0aGUgdGltZSB0byBkaXNwYXRjaCB0aGUgcXVldWVkICJ0cmFu
c2l0aW9uY2FuY2VsIiBvciAiYW5pbWF0aW9uY2FuY2VsIgorICAgICAgICBldmVudC4KKworICAg
ICAgICBUaGUgY2FsbCB0byBBbmltYXRpb25UaW1lbGluZTo6cmVtb3ZlQW5pbWF0aW9uKCkgaW4g
QW5pbWF0aW9uVGltZWxpbmU6OmNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKCkgaXMgYWN0dWFs
bHkgdW5uZWNlc3NhcnkuIFNpbXBseSBjYW5jZWxpbmcgdGhlIGFuaW1hdGlvbgorICAgICAgICB2
aWEgRGVjbGFyYXRpdmVBbmltYXRpb246OmNhbmNlbEZyb21TdHlsZSgpIHdpbGwgZW5kIHVwIGNh
bGxpbmcgQW5pbWF0aW9uVGltZWxpbmU6OnJlbW92ZUFuaW1hdGlvbigpIHRoZSBuZXh0IHRpbWUg
YW5pbWF0aW9ucyBhcmUgdXBkYXRlZCwgd2hpY2ggd2lsbCBsZWF2ZQorICAgICAgICB0aW1lIGZv
ciB0aGUgY2FuY2VsIGV2ZW50cyB0byBiZSBkaXNwYXRjaGVkLiBTbyBhbGwgd2UgbmVlZCB0byBk
byBpcyByZW1vdmUgQW5pbWF0aW9uVGltZWxpbmU6OmNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9u
KCkgYW5kIHJlcGxhY2UgaXRzIGNhbGwgc2l0ZXMgd2l0aAorICAgICAgICBzaW1wbGUgY2FsbHMg
dG8gRGVjbGFyYXRpdmVBbmltYXRpb246OmNhbmNlbEZyb21TdHlsZSgpLgorCisgICAgICAgIE1h
a2luZyB0aGlzIGNoYW5nZSBicm9rZSBhIHRlc3QgaG93ZXZlcjogaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50
ZW50YXRpdmUuaHRtbC4gV2UgYWN0dWFsbHkgcGFzc2VkIHRoYXQKKyAgICAgICAgdGVzdCBieSBj
aGFuY2Ugd2l0aG91dCBpbXBsZW1lbnRpbmcgdGhlIGZlYXR1cmUgcmVxdWlyZWQgdG8gbWFrZSBp
dCB3b3JrLiBXZSBub3cgaW1wbGVtZW50IHRoZSBjb3JyZWN0IHdheSB0byB0cmFjayBhIGdsb2Jh
bCBwb3NpdGlvbiBmb3IgYW4gYW5pbWF0aW9uIGJ5CisgICAgICAgIG9ubHkgc2V0dGluZyBvbmUg
Zm9yIGRlY2xhcmF0aXZlIGFuaW1hdGlvbnMgb25jZSB0aGV5IGFyZSBkaXNhc3NvY2lhdGVkIHdp
dGggdGhlaXIgb3duaW5nIGVsZW1lbnQgYW5kIGhhdmUgYSBub24taWRsZSBwbGF5IHN0YXRlLgor
CisgICAgICAgIEFuZCBhIGZldyBvdGhlciB0ZXN0cyBicm9rZTogYW5pbWF0aW9ucy9hbmltYXRp
b24tc2hvcnRoYW5kLW5hbWUtb3JkZXIuaHRtbCwgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvYW5pbWF0aW9uZXZlbnQtdHlwZXMuaHRtbAorICAgICAg
ICBhbmQgd2ViYW5pbWF0aW9ucy9jc3MtYW5pbWF0aW9ucy5odG1sLiBUaGUgcmVhc29uIGZvciB0
aG9zZSB0ZXN0cyBiZWluZyBicm9rZW4gd2FzIHRoYXQgbm90IGNhbGxpbmcgQW5pbWF0aW9uVGlt
ZWxpbmU6OnJlbW92ZUFuaW1hdGlvbigpIGluc3RhbnRseSBhcyBDU1MKKyAgICAgICAgQW5pbWF0
aW9ucyB3ZXJlIGNhbmNlbGVkIGFsc28gbWVhbnQgdGhhdCB0aGUgS2V5ZnJhbWVFZmZlY3RTdGFj
ayBmb3IgdGhlIHRhcmdldGVkIGVsZW1lbnQgd2Fzbid0IHVwZGF0ZWQuIFRvIHNvbHZlIHRoaXMs
IHdlIGFkZGVkIHRoZSBhbmltYXRpb25UaW1pbmdEaWRDaGFuZ2UoKQorICAgICAgICBtZXRob2Qg
b24gS2V5ZnJhbWVFZmZlY3Qgd2hpY2ggaXMgY2FsbGVkIHdoZW5ldmVyIHRpbWluZyBvbiB0aGUg
b3duaW5nIEFuaW1hdGlvbiBjaGFuZ2VzLCBzbyBmb3IgaW5zdGFuY2Ugd2hlbiBjYW5jZWwoKSBp
cyBjYWxsZWQgYXMgd2UgY2FuY2VsIGEgQ1NTCisgICAgICAgIEFuaW1hdGlvbi4gVGhhdCB3YXkg
d2UgZW5zdXJlIHdlIGFkZCBhbmQgcmVtb3ZlIEtleWZyYW1lRWZmZWN0IGluc3RhbmNlcyBmcm9t
IHRoZSBLZXlmcmFtZUVmZmVjdFN0YWNrIGFzIHRoZSBhbmltYXRpb24gYmVjb21lcyByZWxldmFu
dCwgd2hpY2ggaXMgbm93CisgICAgICAgIGFuIGFkZGVkIGNvbmRpdGlvbiBjaGVja2VkIGJ5IEtl
eWZyYW1lRWZmZWN0U3RhY2s6OmFkZEVmZmVjdCgpLgorCisgICAgICAgIEZpbmFsbHksIHRoaXMg
cmV2ZWFsZWQgYW4gaXNzdWUgaW4gS2V5ZnJhbWVFZmZlY3RTdGFjazo6ZW5zdXJlRWZmZWN0c0Fy
ZVNvcnRlZCgpIHdoZXJlIHdlIHdvdWxkIGNvbnNpZGVyIENTU1RyYW5zaXRpb24gYW5kIENTU0Fu
aW1hdGlvbiBvYmplY3RzIHRvIGJlCisgICAgICAgIHJlcHJlc2VudGF0aXZlIG9mIGEgQ1NTIFRy
YW5zaXRpb24gb3IgQ1NTIEFuaW1hdGlvbiBldmVuIGFmdGVyIHRoZSByZWxhdGlvbnNoaXAgd2l0
aCB0aGVpciBvd25pbmcgZWxlbWVudCBoYWQgYmVlbiBzZXZlcmVkLiBXZSBub3cgY29ycmVjdGx5
IGNoZWNrIHRoYXQKKyAgICAgICAgcmVsYXRpb25zaGlwIGlzIGludGFjdCBhbmQgb3RoZXJ3aXNl
IGNvbnNpZGVyIHRob3NlIGFuaW1hdGlvbnMganVzdCBsaWtlIGFueSBvdGhlciBhbmltYXRpb24u
CisKKyAgICAgICAgKiBhbmltYXRpb24vQW5pbWF0aW9uVGltZWxpbmUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QW5pbWF0aW9uVGltZWxpbmU6OmFuaW1hdGlvblRpbWluZ0RpZENoYW5nZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpBbmltYXRpb25UaW1lbGluZTo6dXBkYXRlR2xvYmFsUG9zaXRpb24p
OgorICAgICAgICAoV2ViQ29yZTo6QW5pbWF0aW9uVGltZWxpbmU6OnJlbW92ZURlY2xhcmF0aXZl
QW5pbWF0aW9uRnJvbUxpc3RzRm9yT3duaW5nRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpB
bmltYXRpb25UaW1lbGluZTo6dXBkYXRlQ1NTQW5pbWF0aW9uc0ZvckVsZW1lbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6QW5pbWF0aW9uVGltZWxpbmU6OnVwZGF0ZUNTU1RyYW5zaXRpb25zRm9yRWxl
bWVudEFuZFByb3BlcnR5KToKKyAgICAgICAgKFdlYkNvcmU6OkFuaW1hdGlvblRpbWVsaW5lOjp1
cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6QW5pbWF0
aW9uVGltZWxpbmU6OmNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBhbmltYXRpb24vQW5pbWF0aW9uVGltZWxpbmUuaDoKKyAgICAgICAgKiBhbmltYXRpb24v
Q1NTQW5pbWF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0FuaW1hdGlvbjo6c3luY1By
b3BlcnRpZXNXaXRoQmFja2luZ0FuaW1hdGlvbik6CisgICAgICAgICogYW5pbWF0aW9uL0NTU1Ry
YW5zaXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVHJhbnNpdGlvbjo6c2V0VGltaW5n
UHJvcGVydGllcyk6CisgICAgICAgICogYW5pbWF0aW9uL0RlY2xhcmF0aXZlQW5pbWF0aW9uLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkRlY2xhcmF0aXZlQW5pbWF0aW9uOjpjYW5IYXZlR2xvYmFs
UG9zaXRpb24pOgorICAgICAgICAqIGFuaW1hdGlvbi9EZWNsYXJhdGl2ZUFuaW1hdGlvbi5oOgor
ICAgICAgICAqIGFuaW1hdGlvbi9Eb2N1bWVudFRpbWVsaW5lLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkRvY3VtZW50VGltZWxpbmU6OmdldEFuaW1hdGlvbnMgY29uc3QpOgorICAgICAgICAqIGFu
aW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVm
ZmVjdDo6YW5pbWF0aW9uVGltZWxpbmVEaWRDaGFuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6S2V5
ZnJhbWVFZmZlY3Q6OmFuaW1hdGlvblRpbWluZ0RpZENoYW5nZSk6CisgICAgICAgIChXZWJDb3Jl
OjpLZXlmcmFtZUVmZmVjdDo6dXBkYXRlRWZmZWN0U3RhY2tNZW1iZXJzaGlwKToKKyAgICAgICAg
KFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpzZXRBbmltYXRpb24pOgorICAgICAgICAoV2ViQ29y
ZTo6S2V5ZnJhbWVFZmZlY3Q6OnNldFRhcmdldCk6CisgICAgICAgICogYW5pbWF0aW9uL0tleWZy
YW1lRWZmZWN0Lmg6CisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3RTdGFjazo6YWRkRWZmZWN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0U3RhY2s6OmVuc3VyZUVmZmVjdHNBcmVTb3J0
ZWQpOgorICAgICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmg6CisgICAgICAg
ICogYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJBbmlt
YXRpb246OnRpbWluZ0RpZENoYW5nZSk6CisgICAgICAgICogYW5pbWF0aW9uL1dlYkFuaW1hdGlv
bi5oOgorICAgICAgICAoV2ViQ29yZTo6V2ViQW5pbWF0aW9uOjpjYW5IYXZlR2xvYmFsUG9zaXRp
b24pOgorCiAyMDE5LTExLTI2ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CiAK
ICAgICAgICAgW1dlYiBBbmltYXRpb25zXSBMYXlvdXQgb2YgY2hpbGRyZW4gb2YgZWxlbWVudCB3
aXRoIGZvcndhcmRzLWZpbGxpbmcgb3BhY2l0eSBhbmltYXRpb24gbWF5IGJlIGluY29ycmVjdCBh
ZnRlciByZW1vdmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQW5pbWF0
aW9uVGltZWxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0FuaW1hdGlvblRpbWVs
aW5lLmNwcAppbmRleCAzYTkyYTkzNzFhNmRmYjVlMTk2MzYwZTk5OTBiZGUzZGRiMTRkMGY5Li5h
N2VkNjg5NTU1OGJjZDc4MTE5MGNiYmNhOTc4MDE5MDg0NjEyNmFkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vQW5pbWF0aW9uVGltZWxpbmUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25UaW1lbGluZS5jcHAKQEAgLTYyLDggKzYyLDkgQEAg
dm9pZCBBbmltYXRpb25UaW1lbGluZTo6Zm9yZ2V0QW5pbWF0aW9uKFdlYkFuaW1hdGlvbiogYW5p
bWF0aW9uKQogCiB2b2lkIEFuaW1hdGlvblRpbWVsaW5lOjphbmltYXRpb25UaW1pbmdEaWRDaGFu
Z2UoV2ViQW5pbWF0aW9uJiBhbmltYXRpb24pCiB7CisgICAgdXBkYXRlR2xvYmFsUG9zaXRpb24o
YW5pbWF0aW9uKTsKKwogICAgIGlmIChtX2FuaW1hdGlvbnMuYWRkKCZhbmltYXRpb24pKSB7Ci0g
ICAgICAgIGFuaW1hdGlvbi5zZXRHbG9iYWxQb3NpdGlvbihtX2FsbEFuaW1hdGlvbnMuc2l6ZSgp
KTsKICAgICAgICAgbV9hbGxBbmltYXRpb25zLmFwcGVuZChtYWtlV2Vha1B0cigmYW5pbWF0aW9u
KSk7CiAgICAgICAgIGF1dG8qIHRpbWVsaW5lID0gYW5pbWF0aW9uLnRpbWVsaW5lKCk7CiAgICAg
ICAgIGlmICh0aW1lbGluZSAmJiB0aW1lbGluZSAhPSB0aGlzKQpAQCAtNzEsNiArNzIsMTMgQEAg
dm9pZCBBbmltYXRpb25UaW1lbGluZTo6YW5pbWF0aW9uVGltaW5nRGlkQ2hhbmdlKFdlYkFuaW1h
dGlvbiYgYW5pbWF0aW9uKQogICAgIH0KIH0KIAordm9pZCBBbmltYXRpb25UaW1lbGluZTo6dXBk
YXRlR2xvYmFsUG9zaXRpb24oV2ViQW5pbWF0aW9uJiBhbmltYXRpb24pCit7CisgICAgc3RhdGlj
IHVpbnQ2NF90IHNfZ2xvYmFsUG9zaXRpb24gPSAwOworICAgIGlmICghYW5pbWF0aW9uLmdsb2Jh
bFBvc2l0aW9uKCkgJiYgYW5pbWF0aW9uLmNhbkhhdmVHbG9iYWxQb3NpdGlvbigpKQorICAgICAg
ICBhbmltYXRpb24uc2V0R2xvYmFsUG9zaXRpb24oKytzX2dsb2JhbFBvc2l0aW9uKTsKK30KKwog
dm9pZCBBbmltYXRpb25UaW1lbGluZTo6cmVtb3ZlQW5pbWF0aW9uKFdlYkFuaW1hdGlvbiYgYW5p
bWF0aW9uKQogewogICAgIEFTU0VSVCghYW5pbWF0aW9uLnRpbWVsaW5lKCkgfHwgYW5pbWF0aW9u
LnRpbWVsaW5lKCkgPT0gdGhpcyk7CkBAIC0xNTYsOSArMTY0LDExIEBAIHZvaWQgQW5pbWF0aW9u
VGltZWxpbmU6OnJlbW92ZURlY2xhcmF0aXZlQW5pbWF0aW9uRnJvbUxpc3RzRm9yT3duaW5nRWxl
bWVudChXZWJBCiAgICAgICAgIGlmIChpdGVyYXRvciAhPSBtX2VsZW1lbnRUb0NTU0FuaW1hdGlv
bkJ5TmFtZS5lbmQoKSkgewogICAgICAgICAgICAgYXV0byYgY3NzQW5pbWF0aW9uc0J5TmFtZSA9
IGl0ZXJhdG9yLT52YWx1ZTsKICAgICAgICAgICAgIGF1dG8mIG5hbWUgPSBkb3duY2FzdDxDU1NB
bmltYXRpb24+KGFuaW1hdGlvbikuYW5pbWF0aW9uTmFtZSgpOwotICAgICAgICAgICAgY3NzQW5p
bWF0aW9uc0J5TmFtZS5yZW1vdmUobmFtZSk7Ci0gICAgICAgICAgICBpZiAoY3NzQW5pbWF0aW9u
c0J5TmFtZS5pc0VtcHR5KCkpCi0gICAgICAgICAgICAgICAgbV9lbGVtZW50VG9DU1NBbmltYXRp
b25CeU5hbWUucmVtb3ZlKCZlbGVtZW50KTsKKyAgICAgICAgICAgIGlmIChjc3NBbmltYXRpb25z
QnlOYW1lLmdldChuYW1lKSA9PSAmYW5pbWF0aW9uKSB7CisgICAgICAgICAgICAgICAgY3NzQW5p
bWF0aW9uc0J5TmFtZS5yZW1vdmUobmFtZSk7CisgICAgICAgICAgICAgICAgaWYgKGNzc0FuaW1h
dGlvbnNCeU5hbWUuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgICAgICBtX2VsZW1lbnRUb0NT
U0FuaW1hdGlvbkJ5TmFtZS5yZW1vdmUoJmVsZW1lbnQpOworICAgICAgICAgICAgfQogICAgICAg
ICB9CiAgICAgfSBlbHNlIGlmIChpczxDU1NUcmFuc2l0aW9uPihhbmltYXRpb24pKSB7CiAgICAg
ICAgIGF1dG8mIHRyYW5zaXRpb24gPSBkb3duY2FzdDxDU1NUcmFuc2l0aW9uPihhbmltYXRpb24p
OwpAQCAtMjUyLDcgKzI2Miw3IEBAIHZvaWQgQW5pbWF0aW9uVGltZWxpbmU6OnVwZGF0ZUNTU0Fu
aW1hdGlvbnNGb3JFbGVtZW50KEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFJlCiAgICAgaWYgKGN1
cnJlbnRTdHlsZSAmJiBjdXJyZW50U3R5bGUtPmhhc0FuaW1hdGlvbnMoKSAmJiBjdXJyZW50U3R5
bGUtPmRpc3BsYXkoKSAhPSBEaXNwbGF5VHlwZTo6Tm9uZSAmJiBhZnRlckNoYW5nZVN0eWxlLmRp
c3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6Tm9uZSkgewogICAgICAgICBpZiAobV9lbGVtZW50VG9D
U1NBbmltYXRpb25CeU5hbWUuY29udGFpbnMoJmVsZW1lbnQpKSB7CiAgICAgICAgICAgICBmb3Ig
KGNvbnN0IGF1dG8mIGNzc0FuaW1hdGlvbnNCeU5hbWVNYXBJdGVtIDogbV9lbGVtZW50VG9DU1NB
bmltYXRpb25CeU5hbWUudGFrZSgmZWxlbWVudCkpCi0gICAgICAgICAgICAgICAgY2FuY2VsRGVj
bGFyYXRpdmVBbmltYXRpb24oKmNzc0FuaW1hdGlvbnNCeU5hbWVNYXBJdGVtLnZhbHVlKTsKKyAg
ICAgICAgICAgICAgICBjc3NBbmltYXRpb25zQnlOYW1lTWFwSXRlbS52YWx1ZS0+Y2FuY2VsRnJv
bVN0eWxlKCk7CiAgICAgICAgIH0KICAgICAgICAgZWxlbWVudC5lbnN1cmVLZXlmcmFtZUVmZmVj
dFN0YWNrKCkuc2V0Q1NTQW5pbWF0aW9uTmFtZXMoV1RGTW92ZShhbmltYXRpb25OYW1lcykpOwog
ICAgICAgICByZXR1cm47CkBAIC0yODEsMTYgKzI5MSwxNyBAQCB2b2lkIEFuaW1hdGlvblRpbWVs
aW5lOjp1cGRhdGVDU1NBbmltYXRpb25zRm9yRWxlbWVudChFbGVtZW50JiBlbGVtZW50LCBjb25z
dCBSZQogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGN1cnJlbnRBbmltYXRpb25zLT5z
aXplKCk7ICsraSkgewogICAgICAgICAgICAgYXV0byYgY3VycmVudEFuaW1hdGlvbiA9IGN1cnJl
bnRBbmltYXRpb25zLT5hbmltYXRpb24oaSk7CiAgICAgICAgICAgICBhdXRvJiBuYW1lID0gY3Vy
cmVudEFuaW1hdGlvbi5uYW1lKCk7Ci0gICAgICAgICAgICBhbmltYXRpb25OYW1lcy5hcHBlbmQo
bmFtZSk7CiAgICAgICAgICAgICBpZiAobmFtZXNPZlByZXZpb3VzQW5pbWF0aW9ucy5jb250YWlu
cyhuYW1lKSkgewogICAgICAgICAgICAgICAgIC8vIFdlJ3ZlIGZvdW5kIHRoZSBuYW1lIG9mIHRo
aXMgYW5pbWF0aW9uIGluIG91ciBsaXN0IG9mIHByZXZpb3VzIGFuaW1hdGlvbnMsIHRoaXMgbWVh
bnMgd2UndmUgYWxyZWFkeQogICAgICAgICAgICAgICAgIC8vIGNyZWF0ZWQgYSBDU1NBbmltYXRp
b24gb2JqZWN0IGZvciBpdCBhbmQgbmVlZCB0byBlbnN1cmUgdGhhdCB0aGlzIENTU0FuaW1hdGlv
biBpcyBiYWNrZWQgYnkgdGhlIGN1cnJlbnQKICAgICAgICAgICAgICAgICAvLyBhbmltYXRpb24g
b2JqZWN0IGZvciB0aGlzIGFuaW1hdGlvbiBuYW1lLgogICAgICAgICAgICAgICAgIGlmIChhdXRv
IGNzc0FuaW1hdGlvbiA9IGNzc0FuaW1hdGlvbnNCeU5hbWUuZ2V0KG5hbWUpKQogICAgICAgICAg
ICAgICAgICAgICBjc3NBbmltYXRpb24tPnNldEJhY2tpbmdBbmltYXRpb24oY3VycmVudEFuaW1h
dGlvbik7CisgICAgICAgICAgICAgICAgYW5pbWF0aW9uTmFtZXMuYXBwZW5kKG5hbWUpOwogICAg
ICAgICAgICAgfSBlbHNlIGlmIChzaG91bGRDb25zaWRlckFuaW1hdGlvbihlbGVtZW50LCBjdXJy
ZW50QW5pbWF0aW9uKSkgewogICAgICAgICAgICAgICAgIC8vIE90aGVyd2lzZSB3ZSBhcmUgZGVh
bGluZyB3aXRoIGEgbmV3IGFuaW1hdGlvbiBuYW1lIGFuZCBtdXN0IGNyZWF0ZSBhIENTU0FuaW1h
dGlvbiBmb3IgaXQuCiAgICAgICAgICAgICAgICAgY3NzQW5pbWF0aW9uc0J5TmFtZS5zZXQobmFt
ZSwgQ1NTQW5pbWF0aW9uOjpjcmVhdGUoZWxlbWVudCwgY3VycmVudEFuaW1hdGlvbiwgY3VycmVu
dFN0eWxlLCBhZnRlckNoYW5nZVN0eWxlKSk7CisgICAgICAgICAgICAgICAgYW5pbWF0aW9uTmFt
ZXMuYXBwZW5kKG5hbWUpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgLy8gUmVtb3ZlIHRo
ZSBuYW1lIG9mIHRoaXMgYW5pbWF0aW9uIGZyb20gb3VyIGxpc3Qgc2luY2UgaXQncyBub3cga25v
d24gdG8gYmUgY3VycmVudC4KICAgICAgICAgICAgIG5hbWVzT2ZQcmV2aW91c0FuaW1hdGlvbnMu
cmVtb3ZlKG5hbWUpOwpAQCAtMzAxLDcgKzMxMiw3IEBAIHZvaWQgQW5pbWF0aW9uVGltZWxpbmU6
OnVwZGF0ZUNTU0FuaW1hdGlvbnNGb3JFbGVtZW50KEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFJl
CiAgICAgLy8gcmVtb3ZlIHRoZSBDU1NBbmltYXRpb24gb2JqZWN0IGNyZWF0ZWQgZm9yIHRoZW0u
CiAgICAgZm9yIChjb25zdCBhdXRvJiBuYW1lT2ZBbmltYXRpb25Ub1JlbW92ZSA6IG5hbWVzT2ZQ
cmV2aW91c0FuaW1hdGlvbnMpIHsKICAgICAgICAgaWYgKGF1dG8gYW5pbWF0aW9uID0gY3NzQW5p
bWF0aW9uc0J5TmFtZS50YWtlKG5hbWVPZkFuaW1hdGlvblRvUmVtb3ZlKSkKLSAgICAgICAgICAg
IGNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKCphbmltYXRpb24pOworICAgICAgICAgICAgYW5p
bWF0aW9uLT5jYW5jZWxGcm9tU3R5bGUoKTsKICAgICB9CiAKICAgICBlbGVtZW50LmVuc3VyZUtl
eWZyYW1lRWZmZWN0U3RhY2soKS5zZXRDU1NBbmltYXRpb25OYW1lcyhXVEZNb3ZlKGFuaW1hdGlv
bk5hbWVzKSk7CkBAIC00NzIsMTUgKzQ4MywxNSBAQCB2b2lkIEFuaW1hdGlvblRpbWVsaW5lOjp1
cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRBbmRQcm9wZXJ0eShFbGVtZW50JiBlbGVtZQog
ICAgICAgICBpZiAoQ1NTUHJvcGVydHlBbmltYXRpb246OnByb3BlcnRpZXNFcXVhbChwcm9wZXJ0
eSwgJnByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlvbkN1cnJlbnRTdHlsZSwgJmFmdGVyQ2hhbmdl
U3R5bGUpIHx8ICFDU1NQcm9wZXJ0eUFuaW1hdGlvbjo6Y2FuUHJvcGVydHlCZUludGVycG9sYXRl
ZChwcm9wZXJ0eSwgJmN1cnJlbnRTdHlsZSwgJmFmdGVyQ2hhbmdlU3R5bGUpKSB7CiAgICAgICAg
ICAgICAvLyAxLiBJZiB0aGUgY3VycmVudCB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgaW4gdGhlIHJ1
bm5pbmcgdHJhbnNpdGlvbiBpcyBlcXVhbCB0byB0aGUgdmFsdWUgb2YgdGhlIHByb3BlcnR5IGlu
IHRoZSBhZnRlci1jaGFuZ2Ugc3R5bGUsCiAgICAgICAgICAgICAvLyAgICBvciBpZiB0aGVzZSB0
d28gdmFsdWVzIGNhbm5vdCBiZSBpbnRlcnBvbGF0ZWQsIHRoZW4gaW1wbGVtZW50YXRpb25zIG11
c3QgY2FuY2VsIHRoZSBydW5uaW5nIHRyYW5zaXRpb24uCi0gICAgICAgICAgICBjYW5jZWxEZWNs
YXJhdGl2ZUFuaW1hdGlvbigqcHJldmlvdXNseVJ1bm5pbmdUcmFuc2l0aW9uKTsKKyAgICAgICAg
ICAgIHByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlvbi0+Y2FuY2VsRnJvbVN0eWxlKCk7CiAgICAg
ICAgIH0gZWxzZSBpZiAodHJhbnNpdGlvbkNvbWJpbmVkRHVyYXRpb24obWF0Y2hpbmdCYWNraW5n
QW5pbWF0aW9uKSA8PSAwLjAgfHwgIUNTU1Byb3BlcnR5QW5pbWF0aW9uOjpjYW5Qcm9wZXJ0eUJl
SW50ZXJwb2xhdGVkKHByb3BlcnR5LCAmcHJldmlvdXNseVJ1bm5pbmdUcmFuc2l0aW9uQ3VycmVu
dFN0eWxlLCAmYWZ0ZXJDaGFuZ2VTdHlsZSkpIHsKICAgICAgICAgICAgIC8vIDIuIE90aGVyd2lz
ZSwgaWYgdGhlIGNvbWJpbmVkIGR1cmF0aW9uIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAwcywg
b3IgaWYgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIHByb3BlcnR5IGluIHRoZSBydW5uaW5nIHRy
YW5zaXRpb24KICAgICAgICAgICAgIC8vICAgIGNhbm5vdCBiZSBpbnRlcnBvbGF0ZWQgd2l0aCB0
aGUgdmFsdWUgb2YgdGhlIHByb3BlcnR5IGluIHRoZSBhZnRlci1jaGFuZ2Ugc3R5bGUsIHRoZW4g
aW1wbGVtZW50YXRpb25zIG11c3QgY2FuY2VsIHRoZSBydW5uaW5nIHRyYW5zaXRpb24uCi0gICAg
ICAgICAgICBjYW5jZWxEZWNsYXJhdGl2ZUFuaW1hdGlvbigqcHJldmlvdXNseVJ1bm5pbmdUcmFu
c2l0aW9uKTsKKyAgICAgICAgICAgIHByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlvbi0+Y2FuY2Vs
RnJvbVN0eWxlKCk7CiAgICAgICAgIH0gZWxzZSBpZiAoQ1NTUHJvcGVydHlBbmltYXRpb246OnBy
b3BlcnRpZXNFcXVhbChwcm9wZXJ0eSwgJnByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlvbi0+cmV2
ZXJzaW5nQWRqdXN0ZWRTdGFydFN0eWxlKCksICZhZnRlckNoYW5nZVN0eWxlKSkgewogICAgICAg
ICAgICAgLy8gMy4gT3RoZXJ3aXNlLCBpZiB0aGUgcmV2ZXJzaW5nLWFkanVzdGVkIHN0YXJ0IHZh
bHVlIG9mIHRoZSBydW5uaW5nIHRyYW5zaXRpb24gaXMgdGhlIHNhbWUgYXMgdGhlIHZhbHVlIG9m
IHRoZSBwcm9wZXJ0eSBpbiB0aGUgYWZ0ZXItY2hhbmdlCiAgICAgICAgICAgICAvLyAgICBzdHls
ZSAoc2VlIHRoZSBzZWN0aW9uIG9uIHJldmVyc2luZyBvZiB0cmFuc2l0aW9ucyBmb3Igd2h5IHRo
ZXNlIGNhc2UgZXhpc3RzKSwgaW1wbGVtZW50YXRpb25zIG11c3QgY2FuY2VsIHRoZSBydW5uaW5n
IHRyYW5zaXRpb24KLSAgICAgICAgICAgIGNhbmNlbERlY2xhcmF0aXZlQW5pbWF0aW9uKCpwcmV2
aW91c2x5UnVubmluZ1RyYW5zaXRpb24pOworICAgICAgICAgICAgcHJldmlvdXNseVJ1bm5pbmdU
cmFuc2l0aW9uLT5jYW5jZWxGcm9tU3R5bGUoKTsKIAogICAgICAgICAgICAgLy8gYW5kIHN0YXJ0
IGEgbmV3IHRyYW5zaXRpb24gd2hvc2U6CiAgICAgICAgICAgICAvLyAgIC0gcmV2ZXJzaW5nLWFk
anVzdGVkIHN0YXJ0IHZhbHVlIGlzIHRoZSBlbmQgdmFsdWUgb2YgdGhlIHJ1bm5pbmcgdHJhbnNp
dGlvbiwKQEAgLTUwNiw3ICs1MTcsNyBAQCB2b2lkIEFuaW1hdGlvblRpbWVsaW5lOjp1cGRhdGVD
U1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRBbmRQcm9wZXJ0eShFbGVtZW50JiBlbGVtZQogICAgICAg
ICAgICAgZW5zdXJlUnVubmluZ1RyYW5zaXRpb25zQnlQcm9wZXJ0eShlbGVtZW50KS5zZXQocHJv
cGVydHksIENTU1RyYW5zaXRpb246OmNyZWF0ZShlbGVtZW50LCBwcm9wZXJ0eSwgZ2VuZXJhdGlv
blRpbWUsICptYXRjaGluZ0JhY2tpbmdBbmltYXRpb24sICZwcmV2aW91c2x5UnVubmluZ1RyYW5z
aXRpb25DdXJyZW50U3R5bGUsIGFmdGVyQ2hhbmdlU3R5bGUsIGRlbGF5LCBkdXJhdGlvbiwgcmV2
ZXJzaW5nQWRqdXN0ZWRTdGFydFN0eWxlLCByZXZlcnNpbmdTaG9ydGVuaW5nRmFjdG9yKSk7CiAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvLyA0LiBPdGhlcndpc2UsIGltcGxlbWVudGF0
aW9ucyBtdXN0IGNhbmNlbCB0aGUgcnVubmluZyB0cmFuc2l0aW9uCi0gICAgICAgICAgICBjYW5j
ZWxEZWNsYXJhdGl2ZUFuaW1hdGlvbigqcHJldmlvdXNseVJ1bm5pbmdUcmFuc2l0aW9uKTsKKyAg
ICAgICAgICAgIHByZXZpb3VzbHlSdW5uaW5nVHJhbnNpdGlvbi0+Y2FuY2VsRnJvbVN0eWxlKCk7
CiAKICAgICAgICAgICAgIC8vIGFuZCBzdGFydCBhIG5ldyB0cmFuc2l0aW9uIHdob3NlOgogICAg
ICAgICAgICAgLy8gICAtIHN0YXJ0IHRpbWUgaXMgdGhlIHRpbWUgb2YgdGhlIHN0eWxlIGNoYW5n
ZSBldmVudCBwbHVzIHRoZSBtYXRjaGluZyB0cmFuc2l0aW9uIGRlbGF5LApAQCAtNTMwLDcgKzU0
MSw3IEBAIHZvaWQgQW5pbWF0aW9uVGltZWxpbmU6OnVwZGF0ZUNTU1RyYW5zaXRpb25zRm9yRWxl
bWVudChFbGVtZW50JiBlbGVtZW50LCBjb25zdCBSCiAgICAgaWYgKGN1cnJlbnRTdHlsZS5oYXNU
cmFuc2l0aW9ucygpICYmIGN1cnJlbnRTdHlsZS5kaXNwbGF5KCkgIT0gRGlzcGxheVR5cGU6Ok5v
bmUgJiYgYWZ0ZXJDaGFuZ2VTdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6Ok5vbmUpIHsK
ICAgICAgICAgaWYgKG1fZWxlbWVudFRvUnVubmluZ0NTU1RyYW5zaXRpb25CeUNTU1Byb3BlcnR5
SUQuY29udGFpbnMoJmVsZW1lbnQpKSB7CiAgICAgICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIGNz
c1RyYW5zaXRpb25zQnlDU1NQcm9wZXJ0eUlETWFwSXRlbSA6IG1fZWxlbWVudFRvUnVubmluZ0NT
U1RyYW5zaXRpb25CeUNTU1Byb3BlcnR5SUQudGFrZSgmZWxlbWVudCkpCi0gICAgICAgICAgICAg
ICAgY2FuY2VsRGVjbGFyYXRpdmVBbmltYXRpb24oKmNzc1RyYW5zaXRpb25zQnlDU1NQcm9wZXJ0
eUlETWFwSXRlbS52YWx1ZSk7CisgICAgICAgICAgICAgICAgY3NzVHJhbnNpdGlvbnNCeUNTU1By
b3BlcnR5SURNYXBJdGVtLnZhbHVlLT5jYW5jZWxGcm9tU3R5bGUoKTsKICAgICAgICAgfQogICAg
ICAgICByZXR1cm47CiAgICAgfQpAQCAtNTY4LDExICs1NzksNCBAQCB2b2lkIEFuaW1hdGlvblRp
bWVsaW5lOjp1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnQoRWxlbWVudCYgZWxlbWVudCwg
Y29uc3QgUgogICAgICAgICB1cGRhdGVDU1NUcmFuc2l0aW9uc0ZvckVsZW1lbnRBbmRQcm9wZXJ0
eShlbGVtZW50LCBwcm9wZXJ0eSwgY3VycmVudFN0eWxlLCBhZnRlckNoYW5nZVN0eWxlLCBydW5u
aW5nVHJhbnNpdGlvbnNCeVByb3BlcnR5LCBjb21wbGV0ZWRUcmFuc2l0aW9uc0J5UHJvcGVydHks
IGdlbmVyYXRpb25UaW1lKTsKIH0KIAotdm9pZCBBbmltYXRpb25UaW1lbGluZTo6Y2FuY2VsRGVj
bGFyYXRpdmVBbmltYXRpb24oRGVjbGFyYXRpdmVBbmltYXRpb24mIGFuaW1hdGlvbikKLXsKLSAg
ICBhbmltYXRpb24uY2FuY2VsRnJvbVN0eWxlKCk7Ci0gICAgcmVtb3ZlQW5pbWF0aW9uKGFuaW1h
dGlvbik7Ci0gICAgbV9hbGxBbmltYXRpb25zLnJlbW92ZUZpcnN0KCZhbmltYXRpb24pOwotfQot
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmlt
YXRpb24vQW5pbWF0aW9uVGltZWxpbmUuaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9Bbmlt
YXRpb25UaW1lbGluZS5oCmluZGV4IGYwOGIzMzk0NmZiYjFjMDc3ZGRmYzQxZjFiN2I4NjBiMzg0
NWZmN2EuLjMxNDFjZjUwNzA4YmY1ZmEwOWQ4MjllOThmZDRjMjYwODBlNGYwMjggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25UaW1lbGluZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9BbmltYXRpb25UaW1lbGluZS5oCkBAIC04MiwxMCArODIs
MTAgQEAgcHJvdGVjdGVkOgogICAgIEhhc2hNYXA8RWxlbWVudCosIFByb3BlcnR5VG9UcmFuc2l0
aW9uTWFwPiBtX2VsZW1lbnRUb0NvbXBsZXRlZENTU1RyYW5zaXRpb25CeUNTU1Byb3BlcnR5SUQ7
CiAKIHByaXZhdGU6CisgICAgdm9pZCB1cGRhdGVHbG9iYWxQb3NpdGlvbihXZWJBbmltYXRpb24m
KTsKICAgICBSZWZQdHI8V2ViQW5pbWF0aW9uPiBjc3NBbmltYXRpb25Gb3JFbGVtZW50QW5kUHJv
cGVydHkoRWxlbWVudCYsIENTU1Byb3BlcnR5SUQpOwogICAgIFByb3BlcnR5VG9UcmFuc2l0aW9u
TWFwJiBlbnN1cmVSdW5uaW5nVHJhbnNpdGlvbnNCeVByb3BlcnR5KEVsZW1lbnQmKTsKICAgICB2
b2lkIHVwZGF0ZUNTU1RyYW5zaXRpb25zRm9yRWxlbWVudEFuZFByb3BlcnR5KEVsZW1lbnQmLCBD
U1NQcm9wZXJ0eUlELCBjb25zdCBSZW5kZXJTdHlsZSYgY3VycmVudFN0eWxlLCBjb25zdCBSZW5k
ZXJTdHlsZSYgYWZ0ZXJDaGFuZ2VTdHlsZSwgUHJvcGVydHlUb1RyYW5zaXRpb25NYXAmLCBQcm9w
ZXJ0eVRvVHJhbnNpdGlvbk1hcCYsIGNvbnN0IE1vbm90b25pY1RpbWUpOwotICAgIHZvaWQgY2Fu
Y2VsRGVjbGFyYXRpdmVBbmltYXRpb24oRGVjbGFyYXRpdmVBbmltYXRpb24mKTsKIAogICAgIEVs
ZW1lbnRUb0FuaW1hdGlvbnNNYXAgbV9lbGVtZW50VG9BbmltYXRpb25zTWFwOwogICAgIEVsZW1l
bnRUb0FuaW1hdGlvbnNNYXAgbV9lbGVtZW50VG9DU1NBbmltYXRpb25zTWFwOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU0FuaW1hdGlvbi5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vQ1NTQW5pbWF0aW9uLmNwcAppbmRleCA0ZWNiZjAzNjI5MGU5ZGRmZjdm
YmE4MTI1MTk5Yjc3NDZmZjczYTVmLi43YzcyZjYyNGMzMzBhZjk2YmE3MGI3YWU0ZTkyYjUwMWNh
MTAxMDdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTQW5pbWF0aW9u
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTQW5pbWF0aW9uLmNwcApAQCAt
OTcsNiArOTcsNyBAQCB2b2lkIENTU0FuaW1hdGlvbjo6c3luY1Byb3BlcnRpZXNXaXRoQmFja2lu
Z0FuaW1hdGlvbigpCiAgICAgYW5pbWF0aW9uRWZmZWN0LT5zZXREZWxheShTZWNvbmRzKGFuaW1h
dGlvbi5kZWxheSgpKSk7CiAgICAgYW5pbWF0aW9uRWZmZWN0LT5zZXRJdGVyYXRpb25EdXJhdGlv
bihTZWNvbmRzKGFuaW1hdGlvbi5kdXJhdGlvbigpKSk7CiAgICAgYW5pbWF0aW9uRWZmZWN0LT51
cGRhdGVTdGF0aWNUaW1pbmdQcm9wZXJ0aWVzKCk7CisgICAgZWZmZWN0VGltaW5nRGlkQ2hhbmdl
KCk7CiAKICAgICAvLyBTeW5jaHJvbml6ZSB0aGUgcGxheSBzdGF0ZQogICAgIGlmIChhbmltYXRp
b24ucGxheVN0YXRlKCkgPT0gQW5pbWF0aW9uUGxheVN0YXRlOjpQbGF5aW5nICYmIHBsYXlTdGF0
ZSgpID09IFdlYkFuaW1hdGlvbjo6UGxheVN0YXRlOjpQYXVzZWQpIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9DU1NUcmFuc2l0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9DU1NUcmFuc2l0aW9uLmNwcAppbmRleCA5YzdmNjkwMjYyN2U1MGZhNTc0NDNl
MDFmZjIzNzU0MGI4NGIzMWRlLi5kZmY1ZmIxZjc5YTg5YzU2NjBhNDljMWIzNjQzZGQwN2Q4MjQz
MjcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vQ1NTVHJhbnNpdGlvbi5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU1RyYW5zaXRpb24uY3BwCkBAIC03
NCw2ICs3NCw3IEBAIHZvaWQgQ1NTVHJhbnNpdGlvbjo6c2V0VGltaW5nUHJvcGVydGllcyhTZWNv
bmRzIGRlbGF5LCBTZWNvbmRzIGR1cmF0aW9uKQogICAgIGFuaW1hdGlvbkVmZmVjdC0+c2V0SXRl
cmF0aW9uRHVyYXRpb24oZHVyYXRpb24pOwogICAgIGFuaW1hdGlvbkVmZmVjdC0+c2V0VGltaW5n
RnVuY3Rpb24oYmFja2luZ0FuaW1hdGlvbigpLnRpbWluZ0Z1bmN0aW9uKCkpOwogICAgIGFuaW1h
dGlvbkVmZmVjdC0+dXBkYXRlU3RhdGljVGltaW5nUHJvcGVydGllcygpOworICAgIGVmZmVjdFRp
bWluZ0RpZENoYW5nZSgpOwogCiAgICAgdW5zdXNwZW5kRWZmZWN0SW52YWxpZGF0aW9uKCk7CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vRGVjbGFyYXRpdmVBbmltYXRp
b24uY3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RlY2xhcmF0aXZlQW5pbWF0aW9uLmNw
cAppbmRleCAyYzY3NzBkOTkzMGNhN2Q4NmViZTg3N2VmZjkzMWM5ZDlkZTA2NGUzLi5iYmU0YzM3
MDU3NWYyOWVjZGQyMzFhNjU2N2JiMDVkMDZjN2E1NDk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vRGVjbGFyYXRpdmVBbmltYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9EZWNsYXJhdGl2ZUFuaW1hdGlvbi5jcHAKQEAgLTcxLDYgKzcxLDE3IEBA
IHZvaWQgRGVjbGFyYXRpdmVBbmltYXRpb246OnRpY2soKQogICAgIH0KIH0KIAorYm9vbCBEZWNs
YXJhdGl2ZUFuaW1hdGlvbjo6Y2FuSGF2ZUdsb2JhbFBvc2l0aW9uKCkKK3sKKyAgICAvLyBodHRw
czovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLWFuaW1hdGlvbnMtMi8jYW5pbWF0aW9uLWNvbXBvc2l0
ZS1vcmRlcgorICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3MtdHJhbnNpdGlvbnMt
Mi8jYW5pbWF0aW9uLWNvbXBvc2l0ZS1vcmRlcgorICAgIC8vIENTUyBBbmltYXRpb25zIGFuZCBD
U1MgVHJhbnNpdGlvbnMgZ2VuZXJhdGVkIHVzaW5nIHRoZSBtYXJrdXAgZGVmaW5lZCBpbiB0aGlz
IHNwZWNpZmljYXRpb24gYXJlIG5vdCBhZGRlZAorICAgIC8vIHRvIHRoZSBnbG9iYWwgYW5pbWF0
aW9uIGxpc3Qgd2hlbiB0aGV5IGFyZSBjcmVhdGVkLiBJbnN0ZWFkLCB0aGVzZSBhbmltYXRpb25z
IGFyZSBhcHBlbmRlZCB0byB0aGUgZ2xvYmFsCisgICAgLy8gYW5pbWF0aW9uIGxpc3QgYXQgdGhl
IGZpcnN0IG1vbWVudCB3aGVuIHRoZXkgdHJhbnNpdGlvbiBvdXQgb2YgdGhlIGlkbGUgcGxheSBz
dGF0ZSBhZnRlciBiZWluZyBkaXNhc3NvY2lhdGVkCisgICAgLy8gZnJvbSB0aGVpciBvd25pbmcg
ZWxlbWVudC4KKyAgICByZXR1cm4gIW1fb3duaW5nRWxlbWVudCAmJiBwbGF5U3RhdGUoKSAhPSBX
ZWJBbmltYXRpb246OlBsYXlTdGF0ZTo6SWRsZTsKK30KKwogdm9pZCBEZWNsYXJhdGl2ZUFuaW1h
dGlvbjo6ZGlzYXNzb2NpYXRlRnJvbU93bmluZ0VsZW1lbnQoKQogewogICAgIGlmICghbV9vd25p
bmdFbGVtZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0RlY2xhcmF0
aXZlQW5pbWF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vRGVjbGFyYXRpdmVBbmlt
YXRpb24uaAppbmRleCBjOTY2ZTU4YzJkZjEwMTMwNGM5NDJhMGZmYTRlODI4YzZkYWMzMzc0Li4z
NjNlOThjZTMxNzY2Yzk1YjZlOTMzZWRlYzdmMTI3Yjc5NDU4YzYxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vRGVjbGFyYXRpdmVBbmltYXRpb24uaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vRGVjbGFyYXRpdmVBbmltYXRpb24uaApAQCAtNjcsNiArNjcsOCBA
QCBwdWJsaWM6CiAgICAgYm9vbCBuZWVkc1RpY2soKSBjb25zdCBvdmVycmlkZTsKICAgICB2b2lk
IHRpY2soKSBvdmVycmlkZTsKIAorICAgIGJvb2wgY2FuSGF2ZUdsb2JhbFBvc2l0aW9uKCkgZmlu
YWw7CisKIHByb3RlY3RlZDoKICAgICBEZWNsYXJhdGl2ZUFuaW1hdGlvbihFbGVtZW50JiwgY29u
c3QgQW5pbWF0aW9uJik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9E
b2N1bWVudFRpbWVsaW5lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9Eb2N1bWVudFRp
bWVsaW5lLmNwcAppbmRleCBhZWE1NThkOTk0ODUzYzFmZjJlMWY2YWJiMDBlNDNhYjE0MmQ3Mjgz
Li4yMGEwN2VlN2M4MWM1N2FmNjNkM2Y4YWUxNTI5NWNmMmY1MjU5NjgwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vRG9jdW1lbnRUaW1lbGluZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYW5pbWF0aW9uL0RvY3VtZW50VGltZWxpbmUuY3BwCkBAIC0xODIsNiArMTgyLDEw
IEBAIFZlY3RvcjxSZWZQdHI8V2ViQW5pbWF0aW9uPj4gRG9jdW1lbnRUaW1lbGluZTo6Z2V0QW5p
bWF0aW9ucygpIGNvbnN0CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9KTsKIAorICAgIHN0
ZDo6c29ydCh3ZWJBbmltYXRpb25zLmJlZ2luKCksIHdlYkFuaW1hdGlvbnMuZW5kKCksIFtdKGF1
dG8mIGxocywgYXV0byYgcmhzKSB7CisgICAgICAgIHJldHVybiBsaHMtPmdsb2JhbFBvc2l0aW9u
KCkgPCByaHMtPmdsb2JhbFBvc2l0aW9uKCk7CisgICAgfSk7CisKICAgICAvLyBGaW5hbGx5LCB3
ZSBjYW4gY29uY2F0ZW5hdGUgdGhlIHNvcnRlZCBDU1MgVHJhbnNpdGlvbnMsIENTUyBBbmltYXRp
b25zIGFuZCBXZWIgQW5pbWF0aW9ucyBpbiB0aGVpciByZWxhdGl2ZSBjb21wb3NpdGUgb3JkZXIu
CiAgICAgVmVjdG9yPFJlZlB0cjxXZWJBbmltYXRpb24+PiBhbmltYXRpb25zOwogICAgIGFuaW1h
dGlvbnMuYXBwZW5kUmFuZ2UoY3NzVHJhbnNpdGlvbnMuYmVnaW4oKSwgY3NzVHJhbnNpdGlvbnMu
ZW5kKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZm
ZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAKaW5k
ZXggOThiNjE2OGUxOGFkNmFjNzA1ZTA1MmYyM2VhMTNiMmY1M2IxYmE1MS4uYWYzMGRkYzJjMTYy
YWVmYmU2ZjA0NzY0NmFmYmVlMzNiZjkyYWQxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRp
b24vS2V5ZnJhbWVFZmZlY3QuY3BwCkBAIC05OTYsMjEgKzk5Niw0MyBAQCB2b2lkIEtleWZyYW1l
RWZmZWN0OjphbmltYXRpb25UaW1lbGluZURpZENoYW5nZShBbmltYXRpb25UaW1lbGluZSogdGlt
ZWxpbmUpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICh0aW1lbGluZSkKLSAgICAgICAgbV90
YXJnZXQtPmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2soKS5hZGRFZmZlY3QoKnRoaXMpOwotICAg
IGVsc2UKKyAgICAgICAgbV9pblRhcmdldEVmZmVjdFN0YWNrID0gbV90YXJnZXQtPmVuc3VyZUtl
eWZyYW1lRWZmZWN0U3RhY2soKS5hZGRFZmZlY3QoKnRoaXMpOworICAgIGVsc2UgeworICAgICAg
ICBtX3RhcmdldC0+ZW5zdXJlS2V5ZnJhbWVFZmZlY3RTdGFjaygpLnJlbW92ZUVmZmVjdCgqdGhp
cyk7CisgICAgICAgIG1faW5UYXJnZXRFZmZlY3RTdGFjayA9IGZhbHNlOworICAgIH0KK30KKwor
dm9pZCBLZXlmcmFtZUVmZmVjdDo6YW5pbWF0aW9uVGltaW5nRGlkQ2hhbmdlKCkKK3sKKyAgICB1
cGRhdGVFZmZlY3RTdGFja01lbWJlcnNoaXAoKTsKK30KKwordm9pZCBLZXlmcmFtZUVmZmVjdDo6
dXBkYXRlRWZmZWN0U3RhY2tNZW1iZXJzaGlwKCkKK3sKKyAgICBpZiAoIW1fdGFyZ2V0KQorICAg
ICAgICByZXR1cm47CisKKyAgICBib29sIGlzUmVsZXZhbnQgPSBhbmltYXRpb24oKSAmJiBhbmlt
YXRpb24oKS0+aXNSZWxldmFudCgpOworICAgIGlmIChpc1JlbGV2YW50ICYmICFtX2luVGFyZ2V0
RWZmZWN0U3RhY2spCisgICAgICAgIG1faW5UYXJnZXRFZmZlY3RTdGFjayA9IG1fdGFyZ2V0LT5l
bnN1cmVLZXlmcmFtZUVmZmVjdFN0YWNrKCkuYWRkRWZmZWN0KCp0aGlzKTsKKyAgICBlbHNlIGlm
ICghaXNSZWxldmFudCAmJiBtX2luVGFyZ2V0RWZmZWN0U3RhY2spIHsKICAgICAgICAgbV90YXJn
ZXQtPmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2soKS5yZW1vdmVFZmZlY3QoKnRoaXMpOworICAg
ICAgICBtX2luVGFyZ2V0RWZmZWN0U3RhY2sgPSBmYWxzZTsKKyAgICB9CiB9CiAKIHZvaWQgS2V5
ZnJhbWVFZmZlY3Q6OnNldEFuaW1hdGlvbihXZWJBbmltYXRpb24qIGFuaW1hdGlvbikKIHsKICAg
ICBib29sIGFuaW1hdGlvbkNoYW5nZWQgPSBhbmltYXRpb24gIT0gdGhpcy0+YW5pbWF0aW9uKCk7
CiAgICAgQW5pbWF0aW9uRWZmZWN0OjpzZXRBbmltYXRpb24oYW5pbWF0aW9uKTsKLSAgICBpZiAo
bV90YXJnZXQgJiYgYW5pbWF0aW9uQ2hhbmdlZCkgewotICAgICAgICBpZiAoYW5pbWF0aW9uKQot
ICAgICAgICAgICAgbV90YXJnZXQtPmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2soKS5hZGRFZmZl
Y3QoKnRoaXMpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBtX3RhcmdldC0+ZW5zdXJlS2V5
ZnJhbWVFZmZlY3RTdGFjaygpLnJlbW92ZUVmZmVjdCgqdGhpcyk7Ci0gICAgfQorCisgICAgaWYg
KCFhbmltYXRpb25DaGFuZ2VkKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoYW5pbWF0aW9u
KQorICAgICAgICBhbmltYXRpb24tPnVwZGF0ZVJlbGV2YW5jZSgpOworICAgIHVwZGF0ZUVmZmVj
dFN0YWNrTWVtYmVyc2hpcCgpOwogfQogCiB2b2lkIEtleWZyYW1lRWZmZWN0OjpzZXRUYXJnZXQo
UmVmUHRyPEVsZW1lbnQ+JiYgbmV3VGFyZ2V0KQpAQCAtMTAzMywxMCArMTA1NSwxMiBAQCB2b2lk
IEtleWZyYW1lRWZmZWN0OjpzZXRUYXJnZXQoUmVmUHRyPEVsZW1lbnQ+JiYgbmV3VGFyZ2V0KQog
ICAgIC8vIGFueSBhbmltYXRlZCBzdHlsZXMgYXJlIHJlbW92ZWQgaW1tZWRpYXRlbHkuCiAgICAg
aW52YWxpZGF0ZUVsZW1lbnQocHJldmlvdXNUYXJnZXQuZ2V0KCkpOwogCi0gICAgaWYgKHByZXZp
b3VzVGFyZ2V0KQorICAgIGlmIChwcmV2aW91c1RhcmdldCkgewogICAgICAgICBwcmV2aW91c1Rh
cmdldC0+ZW5zdXJlS2V5ZnJhbWVFZmZlY3RTdGFjaygpLnJlbW92ZUVmZmVjdCgqdGhpcyk7Cisg
ICAgICAgIG1faW5UYXJnZXRFZmZlY3RTdGFjayA9IGZhbHNlOworICAgIH0KICAgICBpZiAobV90
YXJnZXQpCi0gICAgICAgIG1fdGFyZ2V0LT5lbnN1cmVLZXlmcmFtZUVmZmVjdFN0YWNrKCkuYWRk
RWZmZWN0KCp0aGlzKTsKKyAgICAgICAgbV9pblRhcmdldEVmZmVjdFN0YWNrID0gbV90YXJnZXQt
PmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2soKS5hZGRFZmZlY3QoKnRoaXMpOwogfQogCiB2b2lk
IEtleWZyYW1lRWZmZWN0OjphcHBseShSZW5kZXJTdHlsZSYgdGFyZ2V0U3R5bGUpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oCmluZGV4IGI4MDgzMTQyYzUwNzhjMDcx
OGU3NGI1NTRhNzBmZjViZTkxNzExMjIuLjdhMWFlYjdhYmMyMzIyY2EwYzIwNDUxNzQ5MTVkMzEz
NDcyODNhODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVm
ZmVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oCkBA
IC0xMTYsNiArMTE2LDcgQEAgcHVibGljOgogICAgIHZvaWQgYW5pbWF0aW9uV2FzQ2FuY2VsZWQo
KSBmaW5hbDsKICAgICB2b2lkIGFuaW1hdGlvblN1c3BlbnNpb25TdGF0ZURpZENoYW5nZShib29s
KSBmaW5hbDsKICAgICB2b2lkIGFuaW1hdGlvblRpbWVsaW5lRGlkQ2hhbmdlKEFuaW1hdGlvblRp
bWVsaW5lKikgZmluYWw7CisgICAgdm9pZCBhbmltYXRpb25UaW1pbmdEaWRDaGFuZ2UoKTsKICAg
ICB2b2lkIGFwcGx5UGVuZGluZ0FjY2VsZXJhdGVkQWN0aW9ucygpOwogICAgIGJvb2wgaXNSdW5u
aW5nQWNjZWxlcmF0ZWQoKSBjb25zdCB7IHJldHVybiBtX2xhc3RSZWNvcmRlZEFjY2VsZXJhdGVk
QWN0aW9uICE9IEFjY2VsZXJhdGVkQWN0aW9uOjpTdG9wOyB9CiAgICAgYm9vbCBoYXNQZW5kaW5n
QWNjZWxlcmF0ZWRBY3Rpb24oKSBjb25zdCB7IHJldHVybiAhbV9wZW5kaW5nQWNjZWxlcmF0ZWRB
Y3Rpb25zLmlzRW1wdHkoKSAmJiBpc1J1bm5pbmdBY2NlbGVyYXRlZCgpOyB9CkBAIC0xNDcsNiAr
MTQ4LDcgQEAgcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIEFjY2VsZXJhdGVkQWN0aW9uIDogdWlu
dDhfdCB7IFBsYXksIFBhdXNlLCBTZWVrLCBTdG9wIH07CiAgICAgZW51bSBjbGFzcyBCbGVuZGlu
Z0tleWZyYW1lc1NvdXJjZSA6IHVpbnQ4X3QgeyBDU1NBbmltYXRpb24sIENTU1RyYW5zaXRpb24s
IFdlYkFuaW1hdGlvbiB9OwogCisgICAgdm9pZCB1cGRhdGVFZmZlY3RTdGFja01lbWJlcnNoaXAo
KTsKICAgICB2b2lkIGNvcHlQcm9wZXJ0aWVzRnJvbVNvdXJjZShSZWY8S2V5ZnJhbWVFZmZlY3Q+
JiYpOwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHByb2Nlc3NLZXlmcmFtZXMoSlNDOjpKU0dsb2Jh
bE9iamVjdCYsIEpTQzo6U3Ryb25nPEpTQzo6SlNPYmplY3Q+JiYpOwogICAgIHZvaWQgYWRkUGVu
ZGluZ0FjY2VsZXJhdGVkQWN0aW9uKEFjY2VsZXJhdGVkQWN0aW9uKTsKQEAgLTE4OCw2ICsxOTAs
NyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9iYWNrZHJvcEZpbHRlckZ1bmN0aW9uTGlzdHNNYXRj
aCB7IGZhbHNlIH07CiAjZW5kaWYKICAgICBib29sIG1fY29sb3JGaWx0ZXJGdW5jdGlvbkxpc3Rz
TWF0Y2ggeyBmYWxzZSB9OworICAgIGJvb2wgbV9pblRhcmdldEVmZmVjdFN0YWNrIHsgZmFsc2Ug
fTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Fu
aW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmNwcAppbmRleCA3NDc0NjRlOGViNWUzNmEzYjVm
NzMxMzE0ZjkwNTBkOWI1YWMwYWEwLi4xMjliNGFhYTMxMzFhNzNlNzc1MTQyYjNlMDk5NTRmZGRm
MzNmNTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZl
Y3RTdGFjay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0
U3RhY2suY3BwCkBAIC00MiwxNSArNDIsMTYgQEAgS2V5ZnJhbWVFZmZlY3RTdGFjazo6fktleWZy
YW1lRWZmZWN0U3RhY2soKQogICAgIEFTU0VSVChtX2VmZmVjdHMuaXNFbXB0eSgpKTsKIH0KIAot
dm9pZCBLZXlmcmFtZUVmZmVjdFN0YWNrOjphZGRFZmZlY3QoS2V5ZnJhbWVFZmZlY3QmIGVmZmVj
dCkKK2Jvb2wgS2V5ZnJhbWVFZmZlY3RTdGFjazo6YWRkRWZmZWN0KEtleWZyYW1lRWZmZWN0JiBl
ZmZlY3QpCiB7Ci0gICAgLy8gVG8gcXVhbGlmeSBmb3IgbWVtYmVyc2hpcCBpbiBhbiBlZmZlY3Qg
c3RhY2ssIGFuIGVmZmVjdCBtdXN0IGhhdmUgYSB0YXJnZXQsIGFuIGFuaW1hdGlvbiBhbmQgYSB0
aW1lbGluZS4KKyAgICAvLyBUbyBxdWFsaWZ5IGZvciBtZW1iZXJzaGlwIGluIGFuIGVmZmVjdCBz
dGFjaywgYW4gZWZmZWN0IG11c3QgaGF2ZSBhIHRhcmdldCwgYW4gYW5pbWF0aW9uLCBhIHRpbWVs
aW5lIGFuZCBiZSByZWxldmFudC4KICAgICAvLyBUaGlzIG1ldGhvZCB3aWxsIGJlIGNhbGxlZCBp
biBXZWJBbmltYXRpb24gYW5kIEtleWZyYW1lRWZmZWN0IGFzIHRob3NlIHByb3BlcnRpZXMgY2hh
bmdlLgotICAgIGlmICghZWZmZWN0LnRhcmdldCgpIHx8ICFlZmZlY3QuYW5pbWF0aW9uKCkgfHwg
IWVmZmVjdC5hbmltYXRpb24oKS0+dGltZWxpbmUoKSkKLSAgICAgICAgcmV0dXJuOworICAgIGlm
ICghZWZmZWN0LnRhcmdldCgpIHx8ICFlZmZlY3QuYW5pbWF0aW9uKCkgfHwgIWVmZmVjdC5hbmlt
YXRpb24oKS0+dGltZWxpbmUoKSB8fCAhZWZmZWN0LmFuaW1hdGlvbigpLT5pc1JlbGV2YW50KCkp
CisgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIG1fZWZmZWN0cy5hcHBlbmQobWFrZVdlYWtQ
dHIoJmVmZmVjdCkpOwogICAgIG1faXNTb3J0ZWQgPSBmYWxzZTsKKyAgICByZXR1cm4gdHJ1ZTsK
IH0KIAogdm9pZCBLZXlmcmFtZUVmZmVjdFN0YWNrOjpyZW1vdmVFZmZlY3QoS2V5ZnJhbWVFZmZl
Y3QmIGVmZmVjdCkKQEAgLTc2LDkgKzc3LDEyIEBAIHZvaWQgS2V5ZnJhbWVFZmZlY3RTdGFjazo6
ZW5zdXJlRWZmZWN0c0FyZVNvcnRlZCgpCiAgICAgICAgIEFTU0VSVChsaHNBbmltYXRpb24pOwog
ICAgICAgICBBU1NFUlQocmhzQW5pbWF0aW9uKTsKIAorICAgICAgICBib29sIGxoc0hhc093bmlu
Z0VsZW1lbnQgPSBpczxEZWNsYXJhdGl2ZUFuaW1hdGlvbj4obGhzQW5pbWF0aW9uKSAmJiBkb3du
Y2FzdDxEZWNsYXJhdGl2ZUFuaW1hdGlvbj4obGhzQW5pbWF0aW9uKS0+b3duaW5nRWxlbWVudCgp
OworICAgICAgICBib29sIHJoc0hhc093bmluZ0VsZW1lbnQgPSBpczxEZWNsYXJhdGl2ZUFuaW1h
dGlvbj4ocmhzQW5pbWF0aW9uKSAmJiBkb3duY2FzdDxEZWNsYXJhdGl2ZUFuaW1hdGlvbj4ocmhz
QW5pbWF0aW9uKS0+b3duaW5nRWxlbWVudCgpOworCiAgICAgICAgIC8vIENTUyBUcmFuc2l0aW9u
cyBzb3J0IGZpcnN0LgotICAgICAgICBib29sIGxoc0lzQ1NTVHJhbnNpdGlvbiA9IGlzPENTU1Ry
YW5zaXRpb24+KGxoc0FuaW1hdGlvbik7Ci0gICAgICAgIGJvb2wgcmhzSXNDU1NUcmFuc2l0aW9u
ID0gaXM8Q1NTVHJhbnNpdGlvbj4ocmhzQW5pbWF0aW9uKTsKKyAgICAgICAgYm9vbCBsaHNJc0NT
U1RyYW5zaXRpb24gPSBsaHNIYXNPd25pbmdFbGVtZW50ICYmIGlzPENTU1RyYW5zaXRpb24+KGxo
c0FuaW1hdGlvbik7CisgICAgICAgIGJvb2wgcmhzSXNDU1NUcmFuc2l0aW9uID0gcmhzSGFzT3du
aW5nRWxlbWVudCAmJiBpczxDU1NUcmFuc2l0aW9uPihyaHNBbmltYXRpb24pOwogICAgICAgICBp
ZiAobGhzSXNDU1NUcmFuc2l0aW9uIHx8IHJoc0lzQ1NTVHJhbnNpdGlvbikgewogICAgICAgICAg
ICAgaWYgKGxoc0lzQ1NTVHJhbnNpdGlvbiA9PSByaHNJc0NTU1RyYW5zaXRpb24pIHsKICAgICAg
ICAgICAgICAgICAvLyBTb3J0IHRyYW5zaXRpb25zIGZpcnN0IGJ5IHRoZWlyIGdlbmVyYXRpb24g
dGltZSwgYW5kIHRoZW4gYnkgdHJhbnNpdGlvbi1wcm9wZXJ0eS4KQEAgLTkzLDggKzk3LDggQEAg
dm9pZCBLZXlmcmFtZUVmZmVjdFN0YWNrOjplbnN1cmVFZmZlY3RzQXJlU29ydGVkKCkKICAgICAg
ICAgfQogCiAgICAgICAgIC8vIENTUyBBbmltYXRpb25zIHNvcnQgbmV4dC4KLSAgICAgICAgYm9v
bCBsaHNJc0NTU0FuaW1hdGlvbiA9IGlzPENTU0FuaW1hdGlvbj4obGhzQW5pbWF0aW9uKTsKLSAg
ICAgICAgYm9vbCByaHNJc0NTU0FuaW1hdGlvbiA9IGlzPENTU0FuaW1hdGlvbj4ocmhzQW5pbWF0
aW9uKTsKKyAgICAgICAgYm9vbCBsaHNJc0NTU0FuaW1hdGlvbiA9IGxoc0hhc093bmluZ0VsZW1l
bnQgJiYgaXM8Q1NTQW5pbWF0aW9uPihsaHNBbmltYXRpb24pOworICAgICAgICBib29sIHJoc0lz
Q1NTQW5pbWF0aW9uID0gcmhzSGFzT3duaW5nRWxlbWVudCAmJiBpczxDU1NBbmltYXRpb24+KHJo
c0FuaW1hdGlvbik7CiAgICAgICAgIGlmIChsaHNJc0NTU0FuaW1hdGlvbiB8fCByaHNJc0NTU0Fu
aW1hdGlvbikgewogICAgICAgICAgICAgaWYgKGxoc0lzQ1NTQW5pbWF0aW9uID09IHJoc0lzQ1NT
QW5pbWF0aW9uKSB7CiAgICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3Jn
L2Nzcy1hbmltYXRpb25zLTIvI2FuaW1hdGlvbi1jb21wb3NpdGUtb3JkZXIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmggYi9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5oCmluZGV4IGU2NTY4Mjg3MWQw
ZTE2ZGQ5YzNmODViZDZkMzU4OWFlYTBkM2U3MjguLjc5YTRlOTdiM2IwMzE3YzM2ZTFmNTM2ODhj
MTBkZTZkNjNkNDRiNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlm
cmFtZUVmZmVjdFN0YWNrLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0U3RhY2suaApAQCAtMzgsNyArMzgsNyBAQCBwdWJsaWM6CiAgICAgZXhwbGljaXQgS2V5
ZnJhbWVFZmZlY3RTdGFjaygpOwogICAgIH5LZXlmcmFtZUVmZmVjdFN0YWNrKCk7CiAKLSAgICB2
b2lkIGFkZEVmZmVjdChLZXlmcmFtZUVmZmVjdCYpOworICAgIGJvb2wgYWRkRWZmZWN0KEtleWZy
YW1lRWZmZWN0Jik7CiAgICAgdm9pZCByZW1vdmVFZmZlY3QoS2V5ZnJhbWVFZmZlY3QmKTsKICAg
ICBib29sIGhhc0VmZmVjdHMoKSBjb25zdCB7IHJldHVybiAhbV9lZmZlY3RzLmlzRW1wdHkoKTsg
fQogICAgIFZlY3RvcjxXZWFrUHRyPEtleWZyYW1lRWZmZWN0Pj4gc29ydGVkRWZmZWN0cygpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcAppbmRleCBiYWY4MjBjZGY0
ODM0OTYyMWRlNTRlZjhhYWY2MjRjZGI1ZWJkOGUwLi43MzdkYTc1NWM2MjIyZWM1ZWI2Mzk0YmRj
MGVlZjljZThjMmM4ZDMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vV2Vi
QW5pbWF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9u
LmNwcApAQCAtNzIxLDYgKzcyMSwxMiBAQCB2b2lkIFdlYkFuaW1hdGlvbjo6dGltaW5nRGlkQ2hh
bmdlKERpZFNlZWsgZGlkU2VlaywgU3luY2hyb25vdXNseU5vdGlmeSBzeW5jaHJvbgogewogICAg
IG1fc2hvdWxkU2tpcFVwZGF0aW5nRmluaXNoZWRTdGF0ZVdoZW5SZXNvbHZpbmcgPSBmYWxzZTsK
ICAgICB1cGRhdGVGaW5pc2hlZFN0YXRlKGRpZFNlZWssIHN5bmNocm9ub3VzbHlOb3RpZnkpOwor
CisgICAgaWYgKGlzPEtleWZyYW1lRWZmZWN0PihtX2VmZmVjdCkpIHsKKyAgICAgICAgdXBkYXRl
UmVsZXZhbmNlKCk7CisgICAgICAgIGRvd25jYXN0PEtleWZyYW1lRWZmZWN0PigqbV9lZmZlY3Qp
LmFuaW1hdGlvblRpbWluZ0RpZENoYW5nZSgpOworICAgIH0KKwogICAgIGlmIChtX3RpbWVsaW5l
KQogICAgICAgICBtX3RpbWVsaW5lLT5hbmltYXRpb25UaW1pbmdEaWRDaGFuZ2UoKnRoaXMpOwog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uaAppbmRleCBjZTBjN2U5YmM1
N2Y5ZmU1ZTdiYThlMDAxYjVmNzI0MWY2OTVjZTkxLi5lZTU4ZDAzOTI4OTRkNTJmOGI4ZTdlYjhl
MmE4ZjUzMTQ2NTAwMjllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vV2Vi
QW5pbWF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5o
CkBAIC0xMjAsNiArMTIwLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBpc1J1bm5pbmdBY2NlbGVy
YXRlZCgpIGNvbnN0OwogICAgIGJvb2wgaXNSZWxldmFudCgpIGNvbnN0IHsgcmV0dXJuIG1faXNS
ZWxldmFudDsgfQorICAgIHZvaWQgdXBkYXRlUmVsZXZhbmNlKCk7CiAgICAgdm9pZCBlZmZlY3RU
aW1pbmdEaWRDaGFuZ2UoKTsKICAgICB2b2lkIHN1c3BlbmRFZmZlY3RJbnZhbGlkYXRpb24oKTsK
ICAgICB2b2lkIHVuc3VzcGVuZEVmZmVjdEludmFsaWRhdGlvbigpOwpAQCAtMTM0LDYgKzEzNSw4
IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaGFzUGVuZGluZ0FjdGl2aXR5KCkgY29uc3QgZmluYWw7
CiAKKyAgICB2aXJ0dWFsIGJvb2wgY2FuSGF2ZUdsb2JhbFBvc2l0aW9uKCkgeyByZXR1cm4gdHJ1
ZTsgfQorCiAgICAgLy8gQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIuCiAgICAgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IGZpbmFsIHsgcmV0
dXJuIEFjdGl2ZURPTU9iamVjdDo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOyB9CiAgICAgdm9p
ZCBjb250ZXh0RGVzdHJveWVkKCkgZmluYWw7CkBAIC0xNjksNyArMTcyLDYgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIHNldFRpbWVsaW5lSW50ZXJuYWwoUmVmUHRyPEFuaW1hdGlvblRpbWVsaW5lPiYm
KTsKICAgICBib29sIGlzRWZmZWN0SW52YWxpZGF0aW9uU3VzcGVuZGVkKCkgeyByZXR1cm4gbV9z
dXNwZW5kQ291bnQ7IH0KICAgICBib29sIGNvbXB1dGVSZWxldmFuY2UoKTsKLSAgICB2b2lkIHVw
ZGF0ZVJlbGV2YW5jZSgpOwogICAgIHZvaWQgaW52YWxpZGF0ZUVmZmVjdCgpOwogICAgIGRvdWJs
ZSBlZmZlY3RpdmVQbGF5YmFja1JhdGUoKSBjb25zdDsKICAgICB2b2lkIGFwcGx5UGVuZGluZ1Bs
YXliYWNrUmF0ZSgpOwpAQCAtMTk0LDcgKzE5Niw3IEBAIHByaXZhdGU6CiAgICAgVGltZVRvUnVu
UGVuZGluZ1Rhc2sgbV90aW1lVG9SdW5QZW5kaW5nUGxheVRhc2sgeyBUaW1lVG9SdW5QZW5kaW5n
VGFzazo6Tm90U2NoZWR1bGVkIH07CiAgICAgVGltZVRvUnVuUGVuZGluZ1Rhc2sgbV90aW1lVG9S
dW5QZW5kaW5nUGF1c2VUYXNrIHsgVGltZVRvUnVuUGVuZGluZ1Rhc2s6Ok5vdFNjaGVkdWxlZCB9
OwogICAgIFJlcGxhY2VTdGF0ZSBtX3JlcGxhY2VTdGF0ZSB7IFJlcGxhY2VTdGF0ZTo6QWN0aXZl
IH07Ci0gICAgdW5zaWduZWQgbV9nbG9iYWxQb3NpdGlvbjsKKyAgICB1bnNpZ25lZCBtX2dsb2Jh
bFBvc2l0aW9uIHsgMCB9OwogCiAgICAgLy8gQWN0aXZlRE9NT2JqZWN0LgogICAgIGNvbnN0IGNo
YXIqIGFjdGl2ZURPTU9iamVjdE5hbWUoKSBjb25zdCBmaW5hbDsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2MmU4NTliNTgw
NmJjMjFhZDNmNmE1NjA0ZDI3MjAxMjYxYTllYWZhLi5jNzU4YzZiY2I5NjBkMzAxOTA1MGNhMDUx
ZWQ4OGVkMzg2ODI2ZDI4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTktMTEtMjcgIEFudG9p
bmUgUXVpbnQgIDxncmFvdXRzQGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OKHIyNTI0
NTUpOiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9ldmVudHMvRXZlbnQtZGlz
cGF0Y2gtb24tZGlzYWJsZWQtZWxlbWVudHMuaHRtbCBmYWlscyBvbiBpT1MgYW5kIFdLMQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA0MjcyCisgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS81NzI1Mzc0Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmluZyB0aGlzIHNwZWNpZmljIGV4cGVjdGF0aW9u
IGZvciBXSzEgc2luY2UgaXQgbm93IGJlaGF2ZXMganVzdCBsaWtlIHRoZSBvdGhlciBjb25maWd1
cmF0aW9ucy4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLW9uLWRpc2FibGVkLWVsZW1l
bnRzLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKwogMjAxOS0xMS0yNiAgQW50b2luZSBRdWludCAg
PGdyYW91dHNAYXBwbGUuY29tPgogCiAgICAgICAgIFtXZWIgQW5pbWF0aW9uc10gTGF5b3V0IG9m
IGNoaWxkcmVuIG9mIGVsZW1lbnQgd2l0aCBmb3J3YXJkcy1maWxsaW5nIG9wYWNpdHkgYW5pbWF0
aW9uIG1heSBiZSBpbmNvcnJlY3QgYWZ0ZXIgcmVtb3ZhbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbS9l
dmVudHMvRXZlbnQtZGlzcGF0Y2gtb24tZGlzYWJsZWQtZWxlbWVudHMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2RvbS9ldmVudHMvRXZlbnQtZGlzcGF0Y2gtb24tZGlzYWJsZWQtZWxlbWVudHMtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2N2MzM2UwNmFkYWIwNGY4N2Rj
MzYwYzMxMWRiNzIzODZhMDBhYTA0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL0V2ZW50LWRpc3BhdGNoLW9uLWRpc2FibGVkLWVs
ZW1lbnRzLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLQotSGFy
bmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCi0KLVBBU1MgQ2FuIGRpc3BhdGNo
IHVudHJ1c3RlZCAnY2xpY2snIEV2ZW50cyBhdCBkaXNhYmxlZCBIVE1MIGVsZW1lbnRzLiAKLVBB
U1MgQ2FuIGRpc3BhdGNoIHVudHJ1c3RlZCBFdmVudHMgYXQgZGlzYWJsZWQgSFRNTCBlbGVtZW50
cy4gCi1QQVNTIENhbiBkaXNwYXRjaCBDdXN0b21FdmVudHMgYXQgZGlzYWJsZWQgSFRNTCBlbGVt
ZW50cy4gCi1QQVNTIENhbGxpbmcgY2xpY2soKSBvbiBkaXNhYmxlZCBlbGVtZW50cyBtdXN0IG5v
dCBkaXNwYXRjaCBldmVudHMuIAotUEFTUyBDU1MgVHJhbnNpdGlvbnMgdHJhbnNpdGlvbnJ1biwg
dHJhbnNpdGlvbnN0YXJ0LCB0cmFuc2l0aW9uZW5kIGV2ZW50cyBmaXJlIG9uIGRpc2FibGVkIGZv
cm0gZWxlbWVudHMgCi1USU1FT1VUIENTUyBUcmFuc2l0aW9ucyB0cmFuc2l0aW9uY2FuY2VsIGV2
ZW50IGZpcmVzIG9uIGRpc2FibGVkIGZvcm0gZWxlbWVudHMgVGVzdCB0aW1lZCBvdXQKLU5PVFJV
TiBDU1MgQW5pbWF0aW9uIGFuaW1hdGlvbnN0YXJ0LCBhbmltYXRpb25pdGVyYXRpb24sIGFuaW1h
dGlvbmVuZCBmaXJlIG9uIGRpc2FibGVkIGZvcm0gZWxlbWVudHMgCi1OT1RSVU4gQ1NTIEFuaW1h
dGlvbidzIGFuaW1hdGlvbmNhbmNlbCBldmVudCBmaXJlcyBvbiBkaXNhYmxlZCBmb3JtIGVsZW1l
bnRzIAotTk9UUlVOIFJlYWwgY2xpY2tzIG9uIGRpc2FibGVkIGVsZW1lbnRzIG11c3Qgbm90IGRp
c3BhdGNoIGV2ZW50cy4gCi0K
</data>
<flag name="review"
          id="400217"
          type_id="1"
          status="+"
          setter="dino"
    />
          </attachment>
      

    </bug>

</bugzilla>