<?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>185182</bug_id>
          
          <creation_ts>2018-05-01 21:04:01 -0700</creation_ts>
          <short_desc>Pipe volume through PlaybackSessionManager/Proxy.</short_desc>
          <delta_ts>2018-05-02 08:50:40 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>
          
          
          <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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jeremyj-wk</cc>
    
    <cc>jonlee</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1419539</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-05-01 21:04:01 -0700</bug_when>
    <thetext>Pipe volume through PlaybackSessionManager/Proxy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1419542</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-05-01 21:06:09 -0700</bug_when>
    <thetext>&lt;rdar://problem/39890630&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1419544</commentid>
    <comment_count>2</comment_count>
      <attachid>339268</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-05-01 21:06:53 -0700</bug_when>
    <thetext>Created attachment 339268
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1419545</commentid>
    <comment_count>3</comment_count>
      <attachid>339269</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-05-01 21:07:59 -0700</bug_when>
    <thetext>Created attachment 339269
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1419565</commentid>
    <comment_count>4</comment_count>
      <attachid>339269</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2018-05-01 21:56:08 -0700</bug_when>
    <thetext>Comment on attachment 339269
Patch

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

&gt; Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm:621
&gt; +    return m_playbackModel ? m_playbackModel-&gt;volume() : false;

Seems weird/wrong to return false here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1419566</commentid>
    <comment_count>5</comment_count>
      <attachid>339269</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-05-01 21:58:38 -0700</bug_when>
    <thetext>Comment on attachment 339269
Patch

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

&gt;&gt; Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm:621
&gt;&gt; +    return m_playbackModel ? m_playbackModel-&gt;volume() : false;
&gt; 
&gt; Seems weird/wrong to return false here.

Brain fart. Should 0.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1419654</commentid>
    <comment_count>6</comment_count>
      <attachid>339269</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-02 08:50:38 -0700</bug_when>
    <thetext>Comment on attachment 339269
Patch

Clearing flags on attachment: 339269

Committed r231231: &lt;https://trac.webkit.org/changeset/231231&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1419655</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-02 08:50:40 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>339268</attachid>
            <date>2018-05-01 21:06:53 -0700</date>
            <delta_ts>2018-05-01 21:07:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-185182-20180501210652.patch</filename>
            <type>text/plain</type>
            <size>16656</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMxMTU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTRhZDIwNzBhNGVhMzQ4
ZGM0MjAyNmYxOGI3NzdkODc1OTU3NTNkNi4uNmYyMGQ4Y2RhZmRkMjBhOGQzMjYxOWUyMGI3YTgw
NGEyMjNhMjdlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE4LTA1LTAxICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFBpcGUgdm9sdW1lIHRocm91
Z2ggUGxheWJhY2tTZXNzaW9uTWFuYWdlci9Qcm94eS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NTE4MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciB0aGUgdm9sdW1lIHByb3Bl
cnR5IHRvIFBsYXliYWNrU2Vzc2lvbk1vZGVsLCBhbmQgYWxsIGl0cyBjbGllbnRzLgorCisgICAg
ICAgICogcGxhdGZvcm0vY29jb2EvUGxheWJhY2tTZXNzaW9uTW9kZWwuaDoKKyAgICAgICAgKFdl
YkNvcmU6OlBsYXliYWNrU2Vzc2lvbk1vZGVsQ2xpZW50Ojp2b2x1bWVDaGFuZ2VkKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9jb2NvYS9QbGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVudC5oOgor
ICAgICAgICAqIHBsYXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50
Lm1tOgorICAgICAgICAoV2ViQ29yZTo6UGxheWJhY2tTZXNzaW9uTW9kZWxNZWRpYUVsZW1lbnQ6
OnVwZGF0ZUZvckV2ZW50TmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpQbGF5YmFja1Nlc3Npb25N
b2RlbE1lZGlhRWxlbWVudDo6c2V0Vm9sdW1lKToKKyAgICAgICAgKFdlYkNvcmU6OlBsYXliYWNr
U2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50Ojp2b2x1bWUgY29uc3QpOgorICAgICAgICAqIHBsYXRm
b3JtL2lvcy9QbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdC5oOgorICAgICAgICAqIHBsYXRm
b3JtL2lvcy9QbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdC5tbToKKyAgICAgICAgKFdlYkNv
cmU6OlBsYXliYWNrU2Vzc2lvbkludGVyZmFjZUFWS2l0Ojp2b2x1bWVDaGFuZ2VkKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9pb3MvV2ViQVZQbGF5ZXJDb250cm9sbGVyLmg6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1dlYkFWUGxheWVyQ29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV2ViQVZQbGF5
ZXJDb250cm9sbGVyIHZvbHVtZV0pOgorICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIg
c2V0Vm9sdW1lOl0pOgorICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgdm9sdW1lQ2hh
bmdlZDpdKToKKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJDb250cm9sbGVyIHJlc2V0TWVkaWFTdGF0
ZV0pOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVy
QVZLaXQubW06CisgICAgICAgIChWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6dm9s
dW1lQ2hhbmdlZCk6CisgICAgICAgIChWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6
dm9sdW1lIGNvbnN0KToKKyAgICAgICAgKFZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0
OjpzZXRWb2x1bWUpOgorCiAyMDE4LTA0LTMwICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnph
cm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBXZWJraXQgc2hvdWxkIHNwb29mIGFzIFNh
ZmFyaSBvbiBhIE1hYyB3aGVuIG9uIENoYXNlLmNvbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCAyNjRmNWFkMmFjOWFh
ZDlmNWI2YmZkOWU1MjI5YmU2ZDU4OTA3ODBmLi41ZTg4NWZmMDQ1MzY3ZTY2Y2U1YzUyZDhlMmIx
MDc0Y2I2YjFlODkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE4LTA1LTAxICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFBpcGUgdm9sdW1lIHRocm91
Z2ggUGxheWJhY2tTZXNzaW9uTWFuYWdlci9Qcm94eS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NTE4MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Np
b25NYW5hZ2VyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25N
YW5hZ2VyLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tT
ZXNzaW9uTWFuYWdlci5tbToKKyAgICAgICAgKFdlYktpdDo6UGxheWJhY2tTZXNzaW9uSW50ZXJm
YWNlQ29udGV4dDo6dm9sdW1lQ2hhbmdlZCk6CisgICAgICAgIChXZWJLaXQ6OlBsYXliYWNrU2Vz
c2lvbk1hbmFnZXI6OnZvbHVtZUNoYW5nZWQpOgorICAgICAgICAoV2ViS2l0OjpQbGF5YmFja1Nl
c3Npb25NYW5hZ2VyOjpzZXRWb2x1bWUpOgorCiAyMDE4LTA1LTAxICBKZXIgTm9ibGUgIDxqZXIu
bm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIEdldCB0aGUgV2ViS2l0LmZyYW1ld29yayBidW5k
bGUgYnkgYXNraW5nIGZvciBXS1dlYlZpZXcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVsLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9jb2NvYS9QbGF5YmFja1Nlc3Npb25Nb2RlbC5oCmluZGV4IDc0NzgwOWQyNjViMGUzNjc3
ZDlhNTJmODg3NTYyZjEzMzZhNTdjMzguLjFjNGYwZTNhZWU5NDExM2Y3MDgxNGFlODUwYzg0ZDQ0
ZTc3ZTJlOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BsYXli
YWNrU2Vzc2lvbk1vZGVsLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvUGxh
eWJhY2tTZXNzaW9uTW9kZWwuaApAQCAtNTgsNiArNTgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHRvZ2dsZVBpY3R1cmVJblBpY3R1cmUoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHRv
Z2dsZU11dGVkKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRNdXRlZChib29sKSA9IDA7Cisg
ICAgdmlydHVhbCB2b2lkIHNldFZvbHVtZShkb3VibGUpID0gMDsKIAogICAgIGVudW0gRXh0ZXJu
YWxQbGF5YmFja1RhcmdldFR5cGUgeyBUYXJnZXRUeXBlTm9uZSwgVGFyZ2V0VHlwZUFpclBsYXks
IFRhcmdldFR5cGVUVk91dCB9OwogCkBAIC04MSw2ICs4Miw3IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIFN0cmluZyBleHRlcm5hbFBsYXliYWNrTG9jYWxpemVkRGV2aWNlTmFtZSgpIGNvbnN0ID0g
MDsKICAgICB2aXJ0dWFsIGJvb2wgd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWQoKSBjb25z
dCA9IDA7CiAgICAgdmlydHVhbCBib29sIGlzTXV0ZWQoKSBjb25zdCA9IDA7CisgICAgdmlydHVh
bCBkb3VibGUgdm9sdW1lKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBpc1BpY3R1cmVJ
blBpY3R1cmVBY3RpdmUoKSBjb25zdCA9IDA7CiB9OwogCkBAIC0xMDEsNiArMTAzLDcgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgdm9pZCBleHRlcm5hbFBsYXliYWNrQ2hhbmdlZChib29sIC8qIGVu
YWJsZWQgKi8sIFBsYXliYWNrU2Vzc2lvbk1vZGVsOjpFeHRlcm5hbFBsYXliYWNrVGFyZ2V0VHlw
ZSwgY29uc3QgU3RyaW5nJiAvKiBsb2NhbGl6ZWREZXZpY2VOYW1lICovKSB7IH0KICAgICB2aXJ0
dWFsIHZvaWQgd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWRDaGFuZ2VkKGJvb2wpIHsgfQog
ICAgIHZpcnR1YWwgdm9pZCBtdXRlZENoYW5nZWQoYm9vbCkgeyB9CisgICAgdmlydHVhbCB2b2lk
IHZvbHVtZUNoYW5nZWQoZG91YmxlKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgcGljdHVyZUluUGlj
dHVyZUFjdGl2ZUNoYW5nZWQoYm9vbCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGVuc3VyZUNvbnRy
b2xzTWFuYWdlcigpIHsgfQogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9jb2NvYS9QbGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVudC5oCmluZGV4
IDdhMDc0OGVlYzY0MWM4OTBkN2VlYWQxNjg2NTE5YTZkNDFmZmQzNTYuLmY1OTI3ZGNlMDM1YTdk
ZTdjMGM2YzkwNDZlNmQ1YjAyMDRjYWM4ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvUGxheWJhY2tTZXNzaW9uTW9kZWxNZWRpYUVsZW1l
bnQuaApAQCAtNzIsNiArNzIsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB0
b2dnbGVQaWN0dXJlSW5QaWN0dXJlKCkgZmluYWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB0
b2dnbGVNdXRlZCgpIGZpbmFsOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0TXV0ZWQoYm9v
bCkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRWb2x1bWUoZG91YmxlKSBmaW5h
bDsKIAogICAgIGRvdWJsZSBkdXJhdGlvbigpIGNvbnN0IGZpbmFsOwogICAgIGRvdWJsZSBjdXJy
ZW50VGltZSgpIGNvbnN0IGZpbmFsOwpAQCAtOTIsNiArOTMsNyBAQCBwdWJsaWM6CiAgICAgU3Ry
aW5nIGV4dGVybmFsUGxheWJhY2tMb2NhbGl6ZWREZXZpY2VOYW1lKCkgY29uc3QgZmluYWw7CiAg
ICAgYm9vbCB3aXJlbGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZCgpIGNvbnN0IGZpbmFsOwogICAg
IGJvb2wgaXNNdXRlZCgpIGNvbnN0IGZpbmFsOworICAgIGRvdWJsZSB2b2x1bWUoKSBjb25zdCBm
aW5hbDsKICAgICBib29sIGlzUGljdHVyZUluUGljdHVyZUFjdGl2ZSgpIGNvbnN0IGZpbmFsOwog
CiBwcm90ZWN0ZWQ6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9Q
bGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVudC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50Lm1tCmluZGV4IGI4NjEw
ZWZhMWU1OWZjM2ZlYmRkMjcxOGExNjYzOWJjMzgxMjRiMTUuLjc5YTAzMGNhYmNjMzc2MDUwN2Rm
NmU0MmM4ZTQzODZlMzg0Mjg1MDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50Lm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50Lm1t
CkBAIC0xODEsOCArMTgxLDEwIEBAIHZvaWQgUGxheWJhY2tTZXNzaW9uTW9kZWxNZWRpYUVsZW1l
bnQ6OnVwZGF0ZUZvckV2ZW50TmFtZShjb25zdCBXVEY6OkF0b21pY1N0cmluCiAKICAgICBpZiAo
YWxsCiAgICAgICAgIHx8IGV2ZW50TmFtZSA9PSBldmVudE5hbWVzKCkudm9sdW1lY2hhbmdlRXZl
bnQpIHsKLSAgICAgICAgZm9yIChhdXRvIGNsaWVudCA6IG1fY2xpZW50cykKKyAgICAgICAgZm9y
IChhdXRvIGNsaWVudCA6IG1fY2xpZW50cykgewogICAgICAgICAgICAgY2xpZW50LT5tdXRlZENo
YW5nZWQoaXNNdXRlZCgpKTsKKyAgICAgICAgICAgIGNsaWVudC0+dm9sdW1lQ2hhbmdlZCh2b2x1
bWUoKSk7CisgICAgICAgIH0KICAgICB9CiB9CiB2b2lkIFBsYXliYWNrU2Vzc2lvbk1vZGVsTWVk
aWFFbGVtZW50OjphZGRDbGllbnQoUGxheWJhY2tTZXNzaW9uTW9kZWxDbGllbnQmIGNsaWVudCkK
QEAgLTI5OSw2ICszMDEsMTIgQEAgdm9pZCBQbGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVu
dDo6c2V0TXV0ZWQoYm9vbCBtdXRlZCkKICAgICAgICAgbV9tZWRpYUVsZW1lbnQtPnNldE11dGVk
KG11dGVkKTsKIH0KIAordm9pZCBQbGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVudDo6c2V0
Vm9sdW1lKGRvdWJsZSB2b2x1bWUpCit7CisgICAgaWYgKG1fbWVkaWFFbGVtZW50KQorICAgICAg
ICBtX21lZGlhRWxlbWVudC0+c2V0Vm9sdW1lKHZvbHVtZSk7Cit9CisKIHZvaWQgUGxheWJhY2tT
ZXNzaW9uTW9kZWxNZWRpYUVsZW1lbnQ6OnVwZGF0ZU1lZGlhU2VsZWN0aW9uT3B0aW9ucygpCiB7
CiAgICAgaWYgKCFtX21lZGlhRWxlbWVudCkKQEAgLTUzOCw2ICs1NDYsMTEgQEAgYm9vbCBQbGF5
YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVudDo6aXNNdXRlZCgpIGNvbnN0CiAgICAgcmV0dXJu
IG1fbWVkaWFFbGVtZW50ID8gbV9tZWRpYUVsZW1lbnQtPm11dGVkKCkgOiBmYWxzZTsKIH0KIAor
ZG91YmxlIFBsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50Ojp2b2x1bWUoKSBjb25zdAor
eworICAgIHJldHVybiBtX21lZGlhRWxlbWVudCA/IG1fbWVkaWFFbGVtZW50LT52b2x1bWUoKSA6
IDA7Cit9CisKIGJvb2wgUGxheWJhY2tTZXNzaW9uTW9kZWxNZWRpYUVsZW1lbnQ6OmlzUGljdHVy
ZUluUGljdHVyZUFjdGl2ZSgpIGNvbnN0CiB7CiAgICAgaWYgKCFtX21lZGlhRWxlbWVudCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9QbGF5YmFja1Nlc3Npb25JbnRl
cmZhY2VBVktpdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1BsYXliYWNrU2Vzc2lv
bkludGVyZmFjZUFWS2l0LmgKaW5kZXggZWNlNzcxNTE5MmE3MjMwYTdjMzUyMTUzN2JiY2JkMjM3
ZDJjYTM1Mi4uODU4MDE5MTVlMGYwMTk2ODBkZjQ3YzgxNmMwYmRkYjViNjBiYzM5MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1BsYXliYWNrU2Vzc2lvbkludGVyZmFj
ZUFWS2l0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1BsYXliYWNrU2Vzc2lv
bkludGVyZmFjZUFWS2l0LmgKQEAgLTc5LDYgKzc5LDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVf
RVhQT1JUIHZvaWQgZXh0ZXJuYWxQbGF5YmFja0NoYW5nZWQoYm9vbCBlbmFibGVkLCBQbGF5YmFj
a1Nlc3Npb25Nb2RlbDo6RXh0ZXJuYWxQbGF5YmFja1RhcmdldFR5cGUsIGNvbnN0IFN0cmluZyYg
bG9jYWxpemVkRGV2aWNlTmFtZSkgb3ZlcnJpZGU7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB3
aXJlbGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZENoYW5nZWQoYm9vbCkgb3ZlcnJpZGU7CiAgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBtdXRlZENoYW5nZWQoYm9vbCkgb3ZlcnJpZGU7CisgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCB2b2x1bWVDaGFuZ2VkKGRvdWJsZSkgb3ZlcnJpZGU7CiAKICAgICBX
RUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQgaW52YWxpZGF0ZSgpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlQVZLaXQu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxheWJhY2tTZXNzaW9uSW50ZXJmYWNl
QVZLaXQubW0KaW5kZXggM2YxZGNkYTA4MmY2M2RhMGIxZDU3YzZiMWE4M2E3Y2Y5Y2ZiY2QwNS4u
YThmZDNiMDRkMDI5NjdlZWNhNTJjZGEwZWMxOTA1N2JhNTMyNWI1MiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1BsYXliYWNrU2Vzc2lvbkludGVyZmFjZUFWS2l0Lm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9QbGF5YmFja1Nlc3Npb25JbnRlcmZh
Y2VBVktpdC5tbQpAQCAtMjAxLDYgKzIwMSwxMSBAQCB2b2lkIFBsYXliYWNrU2Vzc2lvbkludGVy
ZmFjZUFWS2l0OjptdXRlZENoYW5nZWQoYm9vbCBtdXRlZCkKICAgICBbbV9wbGF5ZXJDb250cm9s
bGVyIHNldE11dGVkOm11dGVkXTsKIH0KIAordm9pZCBQbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VB
VktpdDo6dm9sdW1lQ2hhbmdlZChkb3VibGUgdm9sdW1lKQoreworICAgIFttX3BsYXllckNvbnRy
b2xsZXIgdm9sdW1lQ2hhbmdlZDp2b2x1bWVdOworfQorCiB2b2lkIFBsYXliYWNrU2Vzc2lvbklu
dGVyZmFjZUFWS2l0OjppbnZhbGlkYXRlKCkKIHsKICAgICBpZiAoIW1fcGxheWJhY2tTZXNzaW9u
TW9kZWwpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViQVZQbGF5
ZXJDb250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViQVZQbGF5ZXJD
b250cm9sbGVyLmgKaW5kZXggMWUwMzIwNWFkMDMyZmRjZjhlZjY5NmQyMGI4MmNmZWExN2NhYzU0
Ni4uMzhkN2RhZWMxMTlmMmY0OTFkZjY0YTlkMGRiOTAxZDAxYTA0OTg2ZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYkFWUGxheWVyQ29udHJvbGxlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJBVlBsYXllckNvbnRyb2xsZXIuaApAQCAt
NzEsNiArNzEsOCBAQCBjbGFzcyBQbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdDsKIEBwcm9w
ZXJ0eSAocmV0YWluKSBBVlZhbHVlVGltaW5nICp0aW1pbmc7CiBAcHJvcGVydHkgKHJldGFpbikg
TlNBcnJheSAqc2Vla2FibGVUaW1lUmFuZ2VzOwogQHByb3BlcnR5IChnZXR0ZXI9aXNNdXRlZCkg
Qk9PTCBtdXRlZDsKK0Bwcm9wZXJ0eSBkb3VibGUgdm9sdW1lOworLSAodm9pZCl2b2x1bWVDaGFu
Z2VkOihkb3VibGUpdm9sdW1lOwogCiBAcHJvcGVydHkgKHJlYWRvbmx5KSBCT09MIGhhc01lZGlh
U2VsZWN0aW9uT3B0aW9uczsKIEBwcm9wZXJ0eSAocmVhZG9ubHkpIEJPT0wgaGFzQXVkaW9NZWRp
YVNlbGVjdGlvbk9wdGlvbnM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
b3MvV2ViQVZQbGF5ZXJDb250cm9sbGVyLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9z
L1dlYkFWUGxheWVyQ29udHJvbGxlci5tbQppbmRleCBmYzliYWFkN2RkZmQzZGNjMjU2ODc4ZTIz
MDRiMzQxYTU0MDk3N2FkLi4wZDAxNzNlODU5NjVkOGU1ZTRiMjQzNTk2YjBmZGE0YTExMjgxNGM5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViQVZQbGF5ZXJDb250
cm9sbGVyLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJBVlBsYXllckNv
bnRyb2xsZXIubW0KQEAgLTUxMSw2ICs1MTEsMjQgQEAgLSAodm9pZCl0b2dnbGVNdXRlZDooaWQp
c2VuZGVyCiAgICAgICAgIHNlbGYuZGVsZWdhdGUtPnRvZ2dsZU11dGVkKCk7CiB9CiAKKy0gKGRv
dWJsZSl2b2x1bWUKK3sKKyAgICByZXR1cm4gc2VsZi5kZWxlZ2F0ZSA/IHNlbGYuZGVsZWdhdGUt
PnZvbHVtZSgpIDogMDsKK30KKworLSAodm9pZClzZXRWb2x1bWU6KGRvdWJsZSl2b2x1bWUKK3sK
KyAgICBpZiAoc2VsZi5kZWxlZ2F0ZSkKKyAgICAgICAgc2VsZi5kZWxlZ2F0ZS0+c2V0Vm9sdW1l
KHZvbHVtZSk7Cit9CisKKy0gKHZvaWQpdm9sdW1lQ2hhbmdlZDooZG91YmxlKXZvbHVtZQorewor
ICAgIFVOVVNFRF9QQVJBTSh2b2x1bWUpOworICAgIFtzZWxmIHdpbGxDaGFuZ2VWYWx1ZUZvcktl
eTpAInZvbHVtZSJdOworICAgIFtzZWxmIGRpZENoYW5nZVZhbHVlRm9yS2V5OkAidm9sdW1lIl07
Cit9CisKIC0gKHZvaWQpb2JzZXJ2ZVZhbHVlRm9yS2V5UGF0aDooTlNTdHJpbmcgKilrZXlQYXRo
IG9mT2JqZWN0OihpZClvYmplY3QgY2hhbmdlOihOU0RpY3Rpb25hcnkgKiljaGFuZ2UgY29udGV4
dDoodm9pZCAqKWNvbnRleHQKIHsKICAgICB1c2luZyBuYW1lc3BhY2UgUEFMOwpAQCAtNjE2LDYg
KzYzNCw3IEBAIC0gKHZvaWQpcmVzZXRNZWRpYVN0YXRlCiAgICAgc2VsZi5tYXhUaW1pbmcgPSBu
aWw7CiAgICAgc2VsZi50aW1pbmcgPSBuaWw7CiAgICAgc2VsZi5yYXRlID0gMDsKKyAgICBzZWxm
LnZvbHVtZSA9IDA7CiAKICAgICBzZWxmLnNlZWthYmxlVGltZVJhbmdlcyA9IFtOU011dGFibGVB
cnJheSBhcnJheV07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9X
ZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckFWS2l0Lm1tCmluZGV4IDI1NTkx
NGY0NGM1ZDY4MTM0MzEyZWQ4OWFlNDc4ZWNjZmVlYzFhMjkuLmVhMzBmODk0NThlMGNkNzA3NDZj
ODYwMGRiNGMxNTAxZjljNWJjZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW0KKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5tbQpA
QCAtMTczLDYgKzE3Myw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCB0b2dnbGVQaWN0dXJlSW5QaWN0
dXJlKCkgb3ZlcnJpZGUgeyB9CiAgICAgdm9pZCB0b2dnbGVNdXRlZCgpIG92ZXJyaWRlOwogICAg
IHZvaWQgc2V0TXV0ZWQoYm9vbCkgZmluYWw7CisgICAgdm9pZCBzZXRWb2x1bWUoZG91YmxlKSBm
aW5hbDsKIAogICAgIC8vIFBsYXliYWNrU2Vzc2lvbk1vZGVsQ2xpZW50CiAgICAgdm9pZCBkdXJh
dGlvbkNoYW5nZWQoZG91YmxlKSBvdmVycmlkZTsKQEAgLTE4Niw2ICsxODcsNyBAQCBwcml2YXRl
OgogICAgIHZvaWQgZXh0ZXJuYWxQbGF5YmFja0NoYW5nZWQoYm9vbCBlbmFibGVkLCBQbGF5YmFj
a1Nlc3Npb25Nb2RlbDo6RXh0ZXJuYWxQbGF5YmFja1RhcmdldFR5cGUsIGNvbnN0IFN0cmluZyYg
bG9jYWxpemVkRGV2aWNlTmFtZSkgb3ZlcnJpZGU7CiAgICAgdm9pZCB3aXJlbGVzc1ZpZGVvUGxh
eWJhY2tEaXNhYmxlZENoYW5nZWQoYm9vbCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBtdXRlZENoYW5n
ZWQoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9pZCB2b2x1bWVDaGFuZ2VkKGRvdWJsZSkgb3ZlcnJp
ZGU7CiAKICAgICAvLyBWaWRlb0Z1bGxzY3JlZW5Nb2RlbAogICAgIHZvaWQgYWRkQ2xpZW50KFZp
ZGVvRnVsbHNjcmVlbk1vZGVsQ2xpZW50Jikgb3ZlcnJpZGU7CkBAIC0xOTgsNiArMjAwLDcgQEAg
cHJpdmF0ZToKICAgICBib29sIGhhc1ZpZGVvKCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgRmxvYXRT
aXplIHZpZGVvRGltZW5zaW9ucygpIGNvbnN0IG92ZXJyaWRlOwogICAgIGJvb2wgaXNNdXRlZCgp
IGNvbnN0IG92ZXJyaWRlOworICAgIGRvdWJsZSB2b2x1bWUoKSBjb25zdCBvdmVycmlkZTsKICAg
ICBib29sIGlzUGljdHVyZUluUGljdHVyZUFjdGl2ZSgpIGNvbnN0IG92ZXJyaWRlOwogCiAgICAg
SGFzaFNldDxQbGF5YmFja1Nlc3Npb25Nb2RlbENsaWVudCo+IG1fcGxheWJhY2tDbGllbnRzOwpA
QCAtNTIwLDYgKzUyMywxOCBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0
OjptdXRlZENoYW5nZWQoYm9vbCBtdXRlZCkKICAgICAgICAgY2xpZW50LT5tdXRlZENoYW5nZWQo
bXV0ZWQpOwogfQogCit2b2lkIFZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0Ojp2b2x1
bWVDaGFuZ2VkKGRvdWJsZSB2b2x1bWUpCit7CisgICAgaWYgKFdlYlRocmVhZElzQ3VycmVudCgp
KSB7CisgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIFtw
cm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih0aGlzKSwgdm9sdW1lXSB7CisgICAgICAgICAgICBw
cm90ZWN0ZWRUaGlzLT52b2x1bWVDaGFuZ2VkKHZvbHVtZSk7CisgICAgICAgIH0pOworICAgICAg
ICByZXR1cm47CisgICAgfQorCisgICAgZm9yIChhdXRvJiBjbGllbnQgOiBtX3BsYXliYWNrQ2xp
ZW50cykKKyAgICAgICAgY2xpZW50LT52b2x1bWVDaGFuZ2VkKHZvbHVtZSk7Cit9CiAjcHJhZ21h
IG1hcmsgVmlkZW9GdWxsc2NyZWVuTW9kZWwKIAogdm9pZCBWaWRlb0Z1bGxzY3JlZW5Db250cm9s
bGVyQ29udGV4dDo6YWRkQ2xpZW50KFZpZGVvRnVsbHNjcmVlbk1vZGVsQ2xpZW50JiBjbGllbnQp
CkBAIC02MDAsNiArNjE1LDEyIEBAIGJvb2wgVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRl
eHQ6OmlzTXV0ZWQoKSBjb25zdAogICAgIHJldHVybiBtX3BsYXliYWNrTW9kZWwgPyBtX3BsYXli
YWNrTW9kZWwtPmlzTXV0ZWQoKSA6IGZhbHNlOwogfQogCitkb3VibGUgVmlkZW9GdWxsc2NyZWVu
Q29udHJvbGxlckNvbnRleHQ6OnZvbHVtZSgpIGNvbnN0Cit7CisgICAgQVNTRVJUKGlzVUlUaHJl
YWQoKSk7CisgICAgcmV0dXJuIG1fcGxheWJhY2tNb2RlbCA/IG1fcGxheWJhY2tNb2RlbC0+dm9s
dW1lKCkgOiBmYWxzZTsKK30KKwogYm9vbCBWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4
dDo6aXNQaWN0dXJlSW5QaWN0dXJlQWN0aXZlKCkgY29uc3QKIHsKICAgICBBU1NFUlQoaXNVSVRo
cmVhZCgpKTsKQEAgLTY3MSw2ICs2OTIsMTUgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5Db250cm9s
bGVyQ29udGV4dDo6c2V0TXV0ZWQoYm9vbCBtdXRlZCkKICAgICB9KTsKIH0KIAordm9pZCBWaWRl
b0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6c2V0Vm9sdW1lKGRvdWJsZSB2b2x1bWUpCit7
CisgICAgQVNTRVJUKGlzVUlUaHJlYWQoKSk7CisgICAgV2ViVGhyZWFkUnVuKFtwcm90ZWN0ZWRU
aGlzID0gbWFrZVJlZlB0cih0aGlzKSwgdGhpcywgdm9sdW1lXSB7CisgICAgICAgIGlmIChtX3Bs
YXliYWNrTW9kZWwpCisgICAgICAgICAgICBtX3BsYXliYWNrTW9kZWwtPnNldFZvbHVtZSh2b2x1
bWUpOworICAgIH0pOworfQorCiB2b2lkIFZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0
OjpiZWdpblNjcnViYmluZygpCiB7CiAgICAgQVNTRVJUKGlzVUlUaHJlYWQoKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdl
ci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFn
ZXIuaAppbmRleCBhODQ0ZjBlMWFhZWQ4Y2UxOTJmZTk2MDQ0YWEwNzJkOWQ1Yzg3MzE4Li43ZjQw
Njg1NGNhYzZmMmE2NWRhYzI5MDgxNzQ0NTgxMTExZjI1MzM2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlci5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyLmgKQEAg
LTg4LDYgKzg4LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGV4dGVybmFsUGxheWJhY2tDaGFuZ2Vk
KGJvb2wgZW5hYmxlZCwgV2ViQ29yZTo6UGxheWJhY2tTZXNzaW9uTW9kZWw6OkV4dGVybmFsUGxh
eWJhY2tUYXJnZXRUeXBlLCBjb25zdCBTdHJpbmcmIGxvY2FsaXplZERldmljZU5hbWUpIGZpbmFs
OwogICAgIHZvaWQgd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWRDaGFuZ2VkKGJvb2wpIGZp
bmFsOwogICAgIHZvaWQgbXV0ZWRDaGFuZ2VkKGJvb2wpIGZpbmFsOworICAgIHZvaWQgdm9sdW1l
Q2hhbmdlZChkb3VibGUpIGZpbmFsOwogCiAgICAgUGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlQ29u
dGV4dChQbGF5YmFja1Nlc3Npb25NYW5hZ2VyJiwgdWludDY0X3QgY29udGV4dElkKTsKIApAQCAt
MTM5LDYgKzE0MCw3IEBAIHByb3RlY3RlZDoKICAgICB2b2lkIGV4dGVybmFsUGxheWJhY2tDaGFu
Z2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9vbCBlbmFibGVkLCBXZWJDb3JlOjpQbGF5YmFja1Nl
c3Npb25Nb2RlbDo6RXh0ZXJuYWxQbGF5YmFja1RhcmdldFR5cGUsIFN0cmluZyBsb2NhbGl6ZWRE
ZXZpY2VOYW1lKTsKICAgICB2b2lkIHdpcmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkQ2hhbmdl
ZCh1aW50NjRfdCBjb250ZXh0SWQsIGJvb2wpOwogICAgIHZvaWQgbXV0ZWRDaGFuZ2VkKHVpbnQ2
NF90IGNvbnRleHRJZCwgYm9vbCk7CisgICAgdm9pZCB2b2x1bWVDaGFuZ2VkKHVpbnQ2NF90IGNv
bnRleHRJZCwgZG91YmxlKTsKIAogICAgIC8vIE1lc3NhZ2VzIGZyb20gUGxheWJhY2tTZXNzaW9u
TWFuYWdlclByb3h5CiAgICAgdm9pZCBwbGF5KHVpbnQ2NF90IGNvbnRleHRJZCk7CkBAIC0xNTcs
NiArMTU5LDcgQEAgcHJvdGVjdGVkOgogICAgIHZvaWQgdG9nZ2xlUGljdHVyZUluUGljdHVyZSh1
aW50NjRfdCBjb250ZXh0SWQpOwogICAgIHZvaWQgdG9nZ2xlTXV0ZWQodWludDY0X3QgY29udGV4
dElkKTsKICAgICB2b2lkIHNldE11dGVkKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9vbCBtdXRlZCk7
CisgICAgdm9pZCBzZXRWb2x1bWUodWludDY0X3QgY29udGV4dElkLCBkb3VibGUgdm9sdW1lKTsK
IAogICAgIFdlYlBhZ2UqIG1fcGFnZTsKICAgICBIYXNoTWFwPFdlYkNvcmU6OkhUTUxNZWRpYUVs
ZW1lbnQqLCB1aW50NjRfdD4gbV9tZWRpYUVsZW1lbnRzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXIubWVzc2FnZXMuaW4g
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlci5t
ZXNzYWdlcy5pbgppbmRleCBiNmUxNjZmNjljOTkwYWI3YWU4MmMzZDgxYzYxNmIwMTc5MzZkYmE5
Li40ZDJhNzg2ZTEzOTA1NjQ4MjNhMTg5OTNmNWZjZjU3MjkxY2Y2NWQ2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlci5tZXNz
YWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNz
aW9uTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMzksNSArMzksNiBAQCBtZXNzYWdlcyAtPiBQbGF5
YmFja1Nlc3Npb25NYW5hZ2VyIHsKICAgICBUb2dnbGVQaWN0dXJlSW5QaWN0dXJlKHVpbnQ2NF90
IGNvbnRleHRJZCkKICAgICBUb2dnbGVNdXRlZCh1aW50NjRfdCBjb250ZXh0SWQpCiAgICAgU2V0
TXV0ZWQodWludDY0X3QgY29udGV4dElkLCBib29sIG11dGVkKQorICAgIFNldFZvbHVtZSh1aW50
NjRfdCBjb250ZXh0SWQsIGRvdWJsZSB2b2x1bWUpCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyLm1tIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXIubW0K
aW5kZXggYWNmNTJmNjAwZGU2YzMxNTU4MTYzNjNjN2Q3MDQwZjhlNjYyMWQzMi4uYzVkZjMxZTBm
Y2U5NDBiNTc0M2IxZmRmOGY3ZjMxMzFhZDgzZmQzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXIubW0KKysrIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXIubW0KQEAgLTE1
NSw2ICsxNTUsMTIgQEAgdm9pZCBQbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VDb250ZXh0OjptdXRl
ZENoYW5nZWQoYm9vbCBtdXRlZCkKICAgICAgICAgbV9tYW5hZ2VyLT5tdXRlZENoYW5nZWQobV9j
b250ZXh0SWQsIG11dGVkKTsKIH0KIAordm9pZCBQbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VDb250
ZXh0Ojp2b2x1bWVDaGFuZ2VkKGRvdWJsZSB2b2x1bWUpCit7CisgICAgaWYgKG1fbWFuYWdlcikK
KyAgICAgICAgbV9tYW5hZ2VyLT52b2x1bWVDaGFuZ2VkKG1fY29udGV4dElkLCB2b2x1bWUpOwor
fQorCiAjcHJhZ21hIG1hcmsgLSBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyCiAKIFJlZjxQbGF5YmFj
a1Nlc3Npb25NYW5hZ2VyPiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyOjpjcmVhdGUoV2ViUGFnZSYg
cGFnZSkKQEAgLTM3OCw2ICszODQsMTEgQEAgdm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyOjpt
dXRlZENoYW5nZWQodWludDY0X3QgY29udGV4dElkLCBib29sIG11dGVkKQogICAgIG1fcGFnZS0+
c2VuZChNZXNzYWdlczo6UGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpNdXRlZENoYW5nZWQo
Y29udGV4dElkLCBtdXRlZCkpOwogfQogCit2b2lkIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXI6OnZv
bHVtZUNoYW5nZWQodWludDY0X3QgY29udGV4dElkLCBkb3VibGUgdm9sdW1lKQoreworICAgIG1f
cGFnZS0+c2VuZChNZXNzYWdlczo6UGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpWb2x1bWVD
aGFuZ2VkKGNvbnRleHRJZCwgdm9sdW1lKSk7Cit9CisKICNwcmFnbWEgbWFyayBNZXNzYWdlcyBm
cm9tIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eToKIAogdm9pZCBQbGF5YmFja1Nlc3Npb25N
YW5hZ2VyOjpwbGF5KHVpbnQ2NF90IGNvbnRleHRJZCkKQEAgLTQ3Nyw2ICs0ODgsMTIgQEAgdm9p
ZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyOjpzZXRNdXRlZCh1aW50NjRfdCBjb250ZXh0SWQsIGJv
b2wgbXV0ZWQpCiAgICAgZW5zdXJlTW9kZWwoY29udGV4dElkKS5zZXRNdXRlZChtdXRlZCk7CiB9
CiAKK3ZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdlcjo6c2V0Vm9sdW1lKHVpbnQ2NF90IGNvbnRl
eHRJZCwgZG91YmxlIHZvbHVtZSkKK3sKKyAgICBVc2VyR2VzdHVyZUluZGljYXRvciBpbmRpY2F0
b3IoUHJvY2Vzc2luZ1VzZXJHZXN0dXJlKTsKKyAgICBlbnN1cmVNb2RlbChjb250ZXh0SWQpLnNl
dFZvbHVtZSh2b2x1bWUpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAogI2VuZGlmIC8v
IFBMQVRGT1JNKElPUykgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRB
VElPTl9NT0RFKSkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>339269</attachid>
            <date>2018-05-01 21:07:59 -0700</date>
            <delta_ts>2018-05-02 08:50:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-185182-20180501210759.patch</filename>
            <type>text/plain</type>
            <size>22542</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMxMTU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTRhZDIwNzBhNGVhMzQ4
ZGM0MjAyNmYxOGI3NzdkODc1OTU3NTNkNi4uNmYyMGQ4Y2RhZmRkMjBhOGQzMjYxOWUyMGI3YTgw
NGEyMjNhMjdlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE4LTA1LTAxICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFBpcGUgdm9sdW1lIHRocm91
Z2ggUGxheWJhY2tTZXNzaW9uTWFuYWdlci9Qcm94eS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NTE4MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciB0aGUgdm9sdW1lIHByb3Bl
cnR5IHRvIFBsYXliYWNrU2Vzc2lvbk1vZGVsLCBhbmQgYWxsIGl0cyBjbGllbnRzLgorCisgICAg
ICAgICogcGxhdGZvcm0vY29jb2EvUGxheWJhY2tTZXNzaW9uTW9kZWwuaDoKKyAgICAgICAgKFdl
YkNvcmU6OlBsYXliYWNrU2Vzc2lvbk1vZGVsQ2xpZW50Ojp2b2x1bWVDaGFuZ2VkKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9jb2NvYS9QbGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVudC5oOgor
ICAgICAgICAqIHBsYXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50
Lm1tOgorICAgICAgICAoV2ViQ29yZTo6UGxheWJhY2tTZXNzaW9uTW9kZWxNZWRpYUVsZW1lbnQ6
OnVwZGF0ZUZvckV2ZW50TmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpQbGF5YmFja1Nlc3Npb25N
b2RlbE1lZGlhRWxlbWVudDo6c2V0Vm9sdW1lKToKKyAgICAgICAgKFdlYkNvcmU6OlBsYXliYWNr
U2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50Ojp2b2x1bWUgY29uc3QpOgorICAgICAgICAqIHBsYXRm
b3JtL2lvcy9QbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdC5oOgorICAgICAgICAqIHBsYXRm
b3JtL2lvcy9QbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdC5tbToKKyAgICAgICAgKFdlYkNv
cmU6OlBsYXliYWNrU2Vzc2lvbkludGVyZmFjZUFWS2l0Ojp2b2x1bWVDaGFuZ2VkKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9pb3MvV2ViQVZQbGF5ZXJDb250cm9sbGVyLmg6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1dlYkFWUGxheWVyQ29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV2ViQVZQbGF5
ZXJDb250cm9sbGVyIHZvbHVtZV0pOgorICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIg
c2V0Vm9sdW1lOl0pOgorICAgICAgICAoLVtXZWJBVlBsYXllckNvbnRyb2xsZXIgdm9sdW1lQ2hh
bmdlZDpdKToKKyAgICAgICAgKC1bV2ViQVZQbGF5ZXJDb250cm9sbGVyIHJlc2V0TWVkaWFTdGF0
ZV0pOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVy
QVZLaXQubW06CisgICAgICAgIChWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6dm9s
dW1lQ2hhbmdlZCk6CisgICAgICAgIChWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6
dm9sdW1lIGNvbnN0KToKKyAgICAgICAgKFZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0
OjpzZXRWb2x1bWUpOgorCiAyMDE4LTA0LTMwICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnph
cm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBXZWJraXQgc2hvdWxkIHNwb29mIGFzIFNh
ZmFyaSBvbiBhIE1hYyB3aGVuIG9uIENoYXNlLmNvbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCAyNjRmNWFkMmFjOWFh
ZDlmNWI2YmZkOWU1MjI5YmU2ZDU4OTA3ODBmLi5iZjUyMDVjMDM4ZGRlNmIxMTA4YzNjZjZhMzEz
ZmNkZDkzMDJmNjIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTA1LTAxICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFBpcGUgdm9sdW1lIHRocm91
Z2ggUGxheWJhY2tTZXNzaW9uTWFuYWdlci9Qcm94eS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NTE4MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lv
bk1hbmFnZXJQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Np
b25NYW5hZ2VyUHJveHkubWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1Bs
YXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5tbToKKyAgICAgICAgKFdlYktpdDo6UGxheWJhY2tT
ZXNzaW9uTW9kZWxDb250ZXh0OjpzZXRWb2x1bWUpOgorICAgICAgICAoV2ViS2l0OjpQbGF5YmFj
a1Nlc3Npb25Nb2RlbENvbnRleHQ6OnZvbHVtZUNoYW5nZWQpOgorICAgICAgICAoV2ViS2l0OjpQ
bGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OnZvbHVtZUNoYW5nZWQpOgorICAgICAgICAoV2Vi
S2l0OjpQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OnNldFZvbHVtZSk6CisgICAgICAgICog
V2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyLmg6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyLm1lc3NhZ2VzLmluOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlci5tbToKKyAgICAgICAg
KFdlYktpdDo6UGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlQ29udGV4dDo6dm9sdW1lQ2hhbmdlZCk6
CisgICAgICAgIChXZWJLaXQ6OlBsYXliYWNrU2Vzc2lvbk1hbmFnZXI6OnZvbHVtZUNoYW5nZWQp
OgorICAgICAgICAoV2ViS2l0OjpQbGF5YmFja1Nlc3Npb25NYW5hZ2VyOjpzZXRWb2x1bWUpOgor
CiAyMDE4LTA1LTAxICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAg
IEdldCB0aGUgV2ViS2l0LmZyYW1ld29yayBidW5kbGUgYnkgYXNraW5nIGZvciBXS1dlYlZpZXcK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lv
bk1vZGVsLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9QbGF5YmFja1Nlc3Npb25N
b2RlbC5oCmluZGV4IDc0NzgwOWQyNjViMGUzNjc3ZDlhNTJmODg3NTYyZjEzMzZhNTdjMzguLjFj
NGYwZTNhZWU5NDExM2Y3MDgxNGFlODUwYzg0ZDQ0ZTc3ZTJlOTkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVsLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvUGxheWJhY2tTZXNzaW9uTW9kZWwuaApAQCAtNTgs
NiArNTgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHRvZ2dsZVBpY3R1cmVJblBpY3R1
cmUoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHRvZ2dsZU11dGVkKCkgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCBzZXRNdXRlZChib29sKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHNldFZvbHVtZShk
b3VibGUpID0gMDsKIAogICAgIGVudW0gRXh0ZXJuYWxQbGF5YmFja1RhcmdldFR5cGUgeyBUYXJn
ZXRUeXBlTm9uZSwgVGFyZ2V0VHlwZUFpclBsYXksIFRhcmdldFR5cGVUVk91dCB9OwogCkBAIC04
MSw2ICs4Miw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIFN0cmluZyBleHRlcm5hbFBsYXliYWNr
TG9jYWxpemVkRGV2aWNlTmFtZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgd2lyZWxl
c3NWaWRlb1BsYXliYWNrRGlzYWJsZWQoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBib29sIGlz
TXV0ZWQoKSBjb25zdCA9IDA7CisgICAgdmlydHVhbCBkb3VibGUgdm9sdW1lKCkgY29uc3QgPSAw
OwogICAgIHZpcnR1YWwgYm9vbCBpc1BpY3R1cmVJblBpY3R1cmVBY3RpdmUoKSBjb25zdCA9IDA7
CiB9OwogCkBAIC0xMDEsNiArMTAzLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBleHRl
cm5hbFBsYXliYWNrQ2hhbmdlZChib29sIC8qIGVuYWJsZWQgKi8sIFBsYXliYWNrU2Vzc2lvbk1v
ZGVsOjpFeHRlcm5hbFBsYXliYWNrVGFyZ2V0VHlwZSwgY29uc3QgU3RyaW5nJiAvKiBsb2NhbGl6
ZWREZXZpY2VOYW1lICovKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgd2lyZWxlc3NWaWRlb1BsYXli
YWNrRGlzYWJsZWRDaGFuZ2VkKGJvb2wpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBtdXRlZENoYW5n
ZWQoYm9vbCkgeyB9CisgICAgdmlydHVhbCB2b2lkIHZvbHVtZUNoYW5nZWQoZG91YmxlKSB7IH0K
ICAgICB2aXJ0dWFsIHZvaWQgcGljdHVyZUluUGljdHVyZUFjdGl2ZUNoYW5nZWQoYm9vbCkgeyB9
CiAgICAgdmlydHVhbCB2b2lkIGVuc3VyZUNvbnRyb2xzTWFuYWdlcigpIHsgfQogfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVs
TWVkaWFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9QbGF5YmFja1Nl
c3Npb25Nb2RlbE1lZGlhRWxlbWVudC5oCmluZGV4IDdhMDc0OGVlYzY0MWM4OTBkN2VlYWQxNjg2
NTE5YTZkNDFmZmQzNTYuLmY1OTI3ZGNlMDM1YTdkZTdjMGM2YzkwNDZlNmQ1YjAyMDRjYWM4ZDMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lv
bk1vZGVsTWVkaWFFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2Ev
UGxheWJhY2tTZXNzaW9uTW9kZWxNZWRpYUVsZW1lbnQuaApAQCAtNzIsNiArNzIsNyBAQCBwdWJs
aWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB0b2dnbGVQaWN0dXJlSW5QaWN0dXJlKCkgZmlu
YWw7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB0b2dnbGVNdXRlZCgpIGZpbmFsOwogICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgc2V0TXV0ZWQoYm9vbCkgZmluYWw7CisgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCBzZXRWb2x1bWUoZG91YmxlKSBmaW5hbDsKIAogICAgIGRvdWJsZSBkdXJhdGlvbigp
IGNvbnN0IGZpbmFsOwogICAgIGRvdWJsZSBjdXJyZW50VGltZSgpIGNvbnN0IGZpbmFsOwpAQCAt
OTIsNiArOTMsNyBAQCBwdWJsaWM6CiAgICAgU3RyaW5nIGV4dGVybmFsUGxheWJhY2tMb2NhbGl6
ZWREZXZpY2VOYW1lKCkgY29uc3QgZmluYWw7CiAgICAgYm9vbCB3aXJlbGVzc1ZpZGVvUGxheWJh
Y2tEaXNhYmxlZCgpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgaXNNdXRlZCgpIGNvbnN0IGZpbmFs
OworICAgIGRvdWJsZSB2b2x1bWUoKSBjb25zdCBmaW5hbDsKICAgICBib29sIGlzUGljdHVyZUlu
UGljdHVyZUFjdGl2ZSgpIGNvbnN0IGZpbmFsOwogCiBwcm90ZWN0ZWQ6CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9QbGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxl
bWVudC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1v
ZGVsTWVkaWFFbGVtZW50Lm1tCmluZGV4IGI4NjEwZWZhMWU1OWZjM2ZlYmRkMjcxOGExNjYzOWJj
MzgxMjRiMTUuLjc5YTAzMGNhYmNjMzc2MDUwN2RmNmU0MmM4ZTQzODZlMzg0Mjg1MDcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1vZGVs
TWVkaWFFbGVtZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BsYXli
YWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50Lm1tCkBAIC0xODEsOCArMTgxLDEwIEBAIHZvaWQg
UGxheWJhY2tTZXNzaW9uTW9kZWxNZWRpYUVsZW1lbnQ6OnVwZGF0ZUZvckV2ZW50TmFtZShjb25z
dCBXVEY6OkF0b21pY1N0cmluCiAKICAgICBpZiAoYWxsCiAgICAgICAgIHx8IGV2ZW50TmFtZSA9
PSBldmVudE5hbWVzKCkudm9sdW1lY2hhbmdlRXZlbnQpIHsKLSAgICAgICAgZm9yIChhdXRvIGNs
aWVudCA6IG1fY2xpZW50cykKKyAgICAgICAgZm9yIChhdXRvIGNsaWVudCA6IG1fY2xpZW50cykg
ewogICAgICAgICAgICAgY2xpZW50LT5tdXRlZENoYW5nZWQoaXNNdXRlZCgpKTsKKyAgICAgICAg
ICAgIGNsaWVudC0+dm9sdW1lQ2hhbmdlZCh2b2x1bWUoKSk7CisgICAgICAgIH0KICAgICB9CiB9
CiB2b2lkIFBsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50OjphZGRDbGllbnQoUGxheWJh
Y2tTZXNzaW9uTW9kZWxDbGllbnQmIGNsaWVudCkKQEAgLTI5OSw2ICszMDEsMTIgQEAgdm9pZCBQ
bGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVudDo6c2V0TXV0ZWQoYm9vbCBtdXRlZCkKICAg
ICAgICAgbV9tZWRpYUVsZW1lbnQtPnNldE11dGVkKG11dGVkKTsKIH0KIAordm9pZCBQbGF5YmFj
a1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVudDo6c2V0Vm9sdW1lKGRvdWJsZSB2b2x1bWUpCit7Cisg
ICAgaWYgKG1fbWVkaWFFbGVtZW50KQorICAgICAgICBtX21lZGlhRWxlbWVudC0+c2V0Vm9sdW1l
KHZvbHVtZSk7Cit9CisKIHZvaWQgUGxheWJhY2tTZXNzaW9uTW9kZWxNZWRpYUVsZW1lbnQ6OnVw
ZGF0ZU1lZGlhU2VsZWN0aW9uT3B0aW9ucygpCiB7CiAgICAgaWYgKCFtX21lZGlhRWxlbWVudCkK
QEAgLTUzOCw2ICs1NDYsMTEgQEAgYm9vbCBQbGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVu
dDo6aXNNdXRlZCgpIGNvbnN0CiAgICAgcmV0dXJuIG1fbWVkaWFFbGVtZW50ID8gbV9tZWRpYUVs
ZW1lbnQtPm11dGVkKCkgOiBmYWxzZTsKIH0KIAorZG91YmxlIFBsYXliYWNrU2Vzc2lvbk1vZGVs
TWVkaWFFbGVtZW50Ojp2b2x1bWUoKSBjb25zdAoreworICAgIHJldHVybiBtX21lZGlhRWxlbWVu
dCA/IG1fbWVkaWFFbGVtZW50LT52b2x1bWUoKSA6IDA7Cit9CisKIGJvb2wgUGxheWJhY2tTZXNz
aW9uTW9kZWxNZWRpYUVsZW1lbnQ6OmlzUGljdHVyZUluUGljdHVyZUFjdGl2ZSgpIGNvbnN0CiB7
CiAgICAgaWYgKCFtX21lZGlhRWxlbWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2lvcy9QbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdC5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vaW9zL1BsYXliYWNrU2Vzc2lvbkludGVyZmFjZUFWS2l0LmgKaW5kZXggZWNl
NzcxNTE5MmE3MjMwYTdjMzUyMTUzN2JiY2JkMjM3ZDJjYTM1Mi4uODU4MDE5MTVlMGYwMTk2ODBk
ZjQ3YzgxNmMwYmRkYjViNjBiYzM5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vaW9zL1BsYXliYWNrU2Vzc2lvbkludGVyZmFjZUFWS2l0LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vaW9zL1BsYXliYWNrU2Vzc2lvbkludGVyZmFjZUFWS2l0LmgKQEAgLTc5LDYg
Kzc5LDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZXh0ZXJuYWxQbGF5YmFj
a0NoYW5nZWQoYm9vbCBlbmFibGVkLCBQbGF5YmFja1Nlc3Npb25Nb2RlbDo6RXh0ZXJuYWxQbGF5
YmFja1RhcmdldFR5cGUsIGNvbnN0IFN0cmluZyYgbG9jYWxpemVkRGV2aWNlTmFtZSkgb3ZlcnJp
ZGU7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB3aXJlbGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxl
ZENoYW5nZWQoYm9vbCkgb3ZlcnJpZGU7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBtdXRlZENo
YW5nZWQoYm9vbCkgb3ZlcnJpZGU7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB2b2x1bWVDaGFu
Z2VkKGRvdWJsZSkgb3ZlcnJpZGU7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIHZvaWQg
aW52YWxpZGF0ZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
UGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9pb3MvUGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlQVZLaXQubW0KaW5kZXggM2YxZGNkYTA4MmY2
M2RhMGIxZDU3YzZiMWE4M2E3Y2Y5Y2ZiY2QwNS4uYThmZDNiMDRkMDI5NjdlZWNhNTJjZGEwZWMx
OTA1N2JhNTMyNWI1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1Bs
YXliYWNrU2Vzc2lvbkludGVyZmFjZUFWS2l0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2lvcy9QbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdC5tbQpAQCAtMjAxLDYgKzIwMSwx
MSBAQCB2b2lkIFBsYXliYWNrU2Vzc2lvbkludGVyZmFjZUFWS2l0OjptdXRlZENoYW5nZWQoYm9v
bCBtdXRlZCkKICAgICBbbV9wbGF5ZXJDb250cm9sbGVyIHNldE11dGVkOm11dGVkXTsKIH0KIAor
dm9pZCBQbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdDo6dm9sdW1lQ2hhbmdlZChkb3VibGUg
dm9sdW1lKQoreworICAgIFttX3BsYXllckNvbnRyb2xsZXIgdm9sdW1lQ2hhbmdlZDp2b2x1bWVd
OworfQorCiB2b2lkIFBsYXliYWNrU2Vzc2lvbkludGVyZmFjZUFWS2l0OjppbnZhbGlkYXRlKCkK
IHsKICAgICBpZiAoIW1fcGxheWJhY2tTZXNzaW9uTW9kZWwpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViQVZQbGF5ZXJDb250cm9sbGVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9pb3MvV2ViQVZQbGF5ZXJDb250cm9sbGVyLmgKaW5kZXggMWUwMzIwNWFk
MDMyZmRjZjhlZjY5NmQyMGI4MmNmZWExN2NhYzU0Ni4uMzhkN2RhZWMxMTlmMmY0OTFkZjY0YTlk
MGRiOTAxZDAxYTA0OTg2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9z
L1dlYkFWUGxheWVyQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lv
cy9XZWJBVlBsYXllckNvbnRyb2xsZXIuaApAQCAtNzEsNiArNzEsOCBAQCBjbGFzcyBQbGF5YmFj
a1Nlc3Npb25JbnRlcmZhY2VBVktpdDsKIEBwcm9wZXJ0eSAocmV0YWluKSBBVlZhbHVlVGltaW5n
ICp0aW1pbmc7CiBAcHJvcGVydHkgKHJldGFpbikgTlNBcnJheSAqc2Vla2FibGVUaW1lUmFuZ2Vz
OwogQHByb3BlcnR5IChnZXR0ZXI9aXNNdXRlZCkgQk9PTCBtdXRlZDsKK0Bwcm9wZXJ0eSBkb3Vi
bGUgdm9sdW1lOworLSAodm9pZCl2b2x1bWVDaGFuZ2VkOihkb3VibGUpdm9sdW1lOwogCiBAcHJv
cGVydHkgKHJlYWRvbmx5KSBCT09MIGhhc01lZGlhU2VsZWN0aW9uT3B0aW9uczsKIEBwcm9wZXJ0
eSAocmVhZG9ubHkpIEJPT0wgaGFzQXVkaW9NZWRpYVNlbGVjdGlvbk9wdGlvbnM7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViQVZQbGF5ZXJDb250cm9sbGVyLm1t
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYkFWUGxheWVyQ29udHJvbGxlci5tbQpp
bmRleCBmYzliYWFkN2RkZmQzZGNjMjU2ODc4ZTIzMDRiMzQxYTU0MDk3N2FkLi4wZDAxNzNlODU5
NjVkOGU1ZTRiMjQzNTk2YjBmZGE0YTExMjgxNGM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9pb3MvV2ViQVZQbGF5ZXJDb250cm9sbGVyLm1tCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2lvcy9XZWJBVlBsYXllckNvbnRyb2xsZXIubW0KQEAgLTUxMSw2ICs1MTEs
MjQgQEAgLSAodm9pZCl0b2dnbGVNdXRlZDooaWQpc2VuZGVyCiAgICAgICAgIHNlbGYuZGVsZWdh
dGUtPnRvZ2dsZU11dGVkKCk7CiB9CiAKKy0gKGRvdWJsZSl2b2x1bWUKK3sKKyAgICByZXR1cm4g
c2VsZi5kZWxlZ2F0ZSA/IHNlbGYuZGVsZWdhdGUtPnZvbHVtZSgpIDogMDsKK30KKworLSAodm9p
ZClzZXRWb2x1bWU6KGRvdWJsZSl2b2x1bWUKK3sKKyAgICBpZiAoc2VsZi5kZWxlZ2F0ZSkKKyAg
ICAgICAgc2VsZi5kZWxlZ2F0ZS0+c2V0Vm9sdW1lKHZvbHVtZSk7Cit9CisKKy0gKHZvaWQpdm9s
dW1lQ2hhbmdlZDooZG91YmxlKXZvbHVtZQoreworICAgIFVOVVNFRF9QQVJBTSh2b2x1bWUpOwor
ICAgIFtzZWxmIHdpbGxDaGFuZ2VWYWx1ZUZvcktleTpAInZvbHVtZSJdOworICAgIFtzZWxmIGRp
ZENoYW5nZVZhbHVlRm9yS2V5OkAidm9sdW1lIl07Cit9CisKIC0gKHZvaWQpb2JzZXJ2ZVZhbHVl
Rm9yS2V5UGF0aDooTlNTdHJpbmcgKilrZXlQYXRoIG9mT2JqZWN0OihpZClvYmplY3QgY2hhbmdl
OihOU0RpY3Rpb25hcnkgKiljaGFuZ2UgY29udGV4dDoodm9pZCAqKWNvbnRleHQKIHsKICAgICB1
c2luZyBuYW1lc3BhY2UgUEFMOwpAQCAtNjE2LDYgKzYzNCw3IEBAIC0gKHZvaWQpcmVzZXRNZWRp
YVN0YXRlCiAgICAgc2VsZi5tYXhUaW1pbmcgPSBuaWw7CiAgICAgc2VsZi50aW1pbmcgPSBuaWw7
CiAgICAgc2VsZi5yYXRlID0gMDsKKyAgICBzZWxmLnZvbHVtZSA9IDA7CiAKICAgICBzZWxmLnNl
ZWthYmxlVGltZVJhbmdlcyA9IFtOU011dGFibGVBcnJheSBhcnJheV07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVy
QVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVu
Q29udHJvbGxlckFWS2l0Lm1tCmluZGV4IDI1NTkxNGY0NGM1ZDY4MTM0MzEyZWQ4OWFlNDc4ZWNj
ZmVlYzFhMjkuLmVhMzBmODk0NThlMGNkNzA3NDZjODYwMGRiNGMxNTAxZjljNWJjZTkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250
cm9sbGVyQVZLaXQubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVv
RnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5tbQpAQCAtMTczLDYgKzE3Myw3IEBAIHByaXZhdGU6
CiAgICAgdm9pZCB0b2dnbGVQaWN0dXJlSW5QaWN0dXJlKCkgb3ZlcnJpZGUgeyB9CiAgICAgdm9p
ZCB0b2dnbGVNdXRlZCgpIG92ZXJyaWRlOwogICAgIHZvaWQgc2V0TXV0ZWQoYm9vbCkgZmluYWw7
CisgICAgdm9pZCBzZXRWb2x1bWUoZG91YmxlKSBmaW5hbDsKIAogICAgIC8vIFBsYXliYWNrU2Vz
c2lvbk1vZGVsQ2xpZW50CiAgICAgdm9pZCBkdXJhdGlvbkNoYW5nZWQoZG91YmxlKSBvdmVycmlk
ZTsKQEAgLTE4Niw2ICsxODcsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZXh0ZXJuYWxQbGF5YmFj
a0NoYW5nZWQoYm9vbCBlbmFibGVkLCBQbGF5YmFja1Nlc3Npb25Nb2RlbDo6RXh0ZXJuYWxQbGF5
YmFja1RhcmdldFR5cGUsIGNvbnN0IFN0cmluZyYgbG9jYWxpemVkRGV2aWNlTmFtZSkgb3ZlcnJp
ZGU7CiAgICAgdm9pZCB3aXJlbGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZENoYW5nZWQoYm9vbCkg
b3ZlcnJpZGU7CiAgICAgdm9pZCBtdXRlZENoYW5nZWQoYm9vbCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCB2b2x1bWVDaGFuZ2VkKGRvdWJsZSkgb3ZlcnJpZGU7CiAKICAgICAvLyBWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbAogICAgIHZvaWQgYWRkQ2xpZW50KFZpZGVvRnVsbHNjcmVlbk1vZGVsQ2xpZW50Jikg
b3ZlcnJpZGU7CkBAIC0xOTgsNiArMjAwLDcgQEAgcHJpdmF0ZToKICAgICBib29sIGhhc1ZpZGVv
KCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgRmxvYXRTaXplIHZpZGVvRGltZW5zaW9ucygpIGNvbnN0
IG92ZXJyaWRlOwogICAgIGJvb2wgaXNNdXRlZCgpIGNvbnN0IG92ZXJyaWRlOworICAgIGRvdWJs
ZSB2b2x1bWUoKSBjb25zdCBvdmVycmlkZTsKICAgICBib29sIGlzUGljdHVyZUluUGljdHVyZUFj
dGl2ZSgpIGNvbnN0IG92ZXJyaWRlOwogCiAgICAgSGFzaFNldDxQbGF5YmFja1Nlc3Npb25Nb2Rl
bENsaWVudCo+IG1fcGxheWJhY2tDbGllbnRzOwpAQCAtNTIwLDYgKzUyMywxOCBAQCB2b2lkIFZp
ZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0OjptdXRlZENoYW5nZWQoYm9vbCBtdXRlZCkK
ICAgICAgICAgY2xpZW50LT5tdXRlZENoYW5nZWQobXV0ZWQpOwogfQogCit2b2lkIFZpZGVvRnVs
bHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0Ojp2b2x1bWVDaGFuZ2VkKGRvdWJsZSB2b2x1bWUpCit7
CisgICAgaWYgKFdlYlRocmVhZElzQ3VycmVudCgpKSB7CisgICAgICAgIGRpc3BhdGNoX2FzeW5j
KGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih0
aGlzKSwgdm9sdW1lXSB7CisgICAgICAgICAgICBwcm90ZWN0ZWRUaGlzLT52b2x1bWVDaGFuZ2Vk
KHZvbHVtZSk7CisgICAgICAgIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgZm9y
IChhdXRvJiBjbGllbnQgOiBtX3BsYXliYWNrQ2xpZW50cykKKyAgICAgICAgY2xpZW50LT52b2x1
bWVDaGFuZ2VkKHZvbHVtZSk7Cit9CiAjcHJhZ21hIG1hcmsgVmlkZW9GdWxsc2NyZWVuTW9kZWwK
IAogdm9pZCBWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6YWRkQ2xpZW50KFZpZGVv
RnVsbHNjcmVlbk1vZGVsQ2xpZW50JiBjbGllbnQpCkBAIC02MDAsNiArNjE1LDEyIEBAIGJvb2wg
VmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ6OmlzTXV0ZWQoKSBjb25zdAogICAgIHJl
dHVybiBtX3BsYXliYWNrTW9kZWwgPyBtX3BsYXliYWNrTW9kZWwtPmlzTXV0ZWQoKSA6IGZhbHNl
OwogfQogCitkb3VibGUgVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckNvbnRleHQ6OnZvbHVtZSgp
IGNvbnN0Cit7CisgICAgQVNTRVJUKGlzVUlUaHJlYWQoKSk7CisgICAgcmV0dXJuIG1fcGxheWJh
Y2tNb2RlbCA/IG1fcGxheWJhY2tNb2RlbC0+dm9sdW1lKCkgOiBmYWxzZTsKK30KKwogYm9vbCBW
aWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6aXNQaWN0dXJlSW5QaWN0dXJlQWN0aXZl
KCkgY29uc3QKIHsKICAgICBBU1NFUlQoaXNVSVRocmVhZCgpKTsKQEAgLTY3MSw2ICs2OTIsMTUg
QEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4dDo6c2V0TXV0ZWQoYm9vbCBt
dXRlZCkKICAgICB9KTsKIH0KIAordm9pZCBWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQ29udGV4
dDo6c2V0Vm9sdW1lKGRvdWJsZSB2b2x1bWUpCit7CisgICAgQVNTRVJUKGlzVUlUaHJlYWQoKSk7
CisgICAgV2ViVGhyZWFkUnVuKFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih0aGlzKSwgdGhp
cywgdm9sdW1lXSB7CisgICAgICAgIGlmIChtX3BsYXliYWNrTW9kZWwpCisgICAgICAgICAgICBt
X3BsYXliYWNrTW9kZWwtPnNldFZvbHVtZSh2b2x1bWUpOworICAgIH0pOworfQorCiB2b2lkIFZp
ZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJDb250ZXh0OjpiZWdpblNjcnViYmluZygpCiB7CiAgICAg
QVNTRVJUKGlzVUlUaHJlYWQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5oCmluZGV4IGQ5MDFlYTc5
M2ZiOWFlMjA2YzhjZTYyMThjMDZlOWUxNWRkOTM5ZDEuLmU1ZDZhNDk3NjJlZjljMjM1ZTg4ZmEz
ZTE3Mjk2ZTdjMDAyZWFmZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5oCkBAIC04NCw2ICs4NCw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIGV4dGVybmFsUGxheWJhY2tDaGFuZ2VkKGJvb2wsIFBsYXli
YWNrU2Vzc2lvbk1vZGVsOjpFeHRlcm5hbFBsYXliYWNrVGFyZ2V0VHlwZSwgY29uc3QgU3RyaW5n
Jik7CiAgICAgdm9pZCB3aXJlbGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZENoYW5nZWQoYm9vbCk7
CiAgICAgdm9pZCBtdXRlZENoYW5nZWQoYm9vbCk7CisgICAgdm9pZCB2b2x1bWVDaGFuZ2VkKGRv
dWJsZSk7CiAgICAgdm9pZCBwaWN0dXJlSW5QaWN0dXJlQWN0aXZlQ2hhbmdlZChib29sKTsKIAog
cHJpdmF0ZToKQEAgLTExMSw2ICsxMTIsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgdG9nZ2xlUGlj
dHVyZUluUGljdHVyZSgpIGZpbmFsOwogICAgIHZvaWQgdG9nZ2xlTXV0ZWQoKSBmaW5hbDsKICAg
ICB2b2lkIHNldE11dGVkKGJvb2wpIGZpbmFsOworICAgIHZvaWQgc2V0Vm9sdW1lKGRvdWJsZSkg
ZmluYWw7CiAKICAgICBkb3VibGUgcGxheWJhY2tTdGFydGVkVGltZSgpIGNvbnN0IGZpbmFsIHsg
cmV0dXJuIG1fcGxheWJhY2tTdGFydGVkVGltZTsgfQogICAgIGRvdWJsZSBkdXJhdGlvbigpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIG1fZHVyYXRpb247IH0KQEAgLTEzMiw2ICsxMzQsNyBAQCBwcml2
YXRlOgogICAgIFN0cmluZyBleHRlcm5hbFBsYXliYWNrTG9jYWxpemVkRGV2aWNlTmFtZSgpIGNv
bnN0IGZpbmFsIHsgcmV0dXJuIG1fZXh0ZXJuYWxQbGF5YmFja0xvY2FsaXplZERldmljZU5hbWU7
IH0KICAgICBib29sIHdpcmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gbV93aXJlbGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZDsgfQogICAgIGJvb2wgaXNN
dXRlZCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fbXV0ZWQ7IH0KKyAgICBkb3VibGUgdm9sdW1l
KCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV92b2x1bWU7IH0KICAgICBib29sIGlzUGljdHVyZUlu
UGljdHVyZUFjdGl2ZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fcGljdHVyZUluUGljdHVyZUFj
dGl2ZTsgfQogCiAgICAgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5KiBtX21hbmFnZXI7CkBA
IC0xNTgsNiArMTYxLDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9leHRlcm5hbFBsYXliYWNr
TG9jYWxpemVkRGV2aWNlTmFtZTsKICAgICBib29sIG1fd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlz
YWJsZWQgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9tdXRlZCB7IGZhbHNlIH07CisgICAgZG91Ymxl
IG1fdm9sdW1lIHsgMCB9OwogICAgIGJvb2wgbV9waWN0dXJlSW5QaWN0dXJlQWN0aXZlIHsgZmFs
c2UgfTsKIH07CiAKQEAgLTIwNSw2ICsyMDksNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcmF0ZUNo
YW5nZWQodWludDY0X3QgY29udGV4dElkLCBib29sIGlzUGxheWluZywgZG91YmxlIHJhdGUpOwog
ICAgIHZvaWQgaGFuZGxlQ29udHJvbGxlZEVsZW1lbnRJRFJlc3BvbnNlKHVpbnQ2NF90LCBTdHJp
bmcpIGNvbnN0OwogICAgIHZvaWQgbXV0ZWRDaGFuZ2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9v
bCBtdXRlZCk7CisgICAgdm9pZCB2b2x1bWVDaGFuZ2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgZG91
YmxlIHZvbHVtZSk7CiAgICAgdm9pZCBwaWN0dXJlSW5QaWN0dXJlQWN0aXZlQ2hhbmdlZCh1aW50
NjRfdCBjb250ZXh0SWQsIGJvb2wgcGljdHVyZUluUGljdHVyZUFjdGl2ZSk7CiAKICAgICAvLyBN
ZXNzYWdlcyB0byBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyCkBAIC0yMjMsNiArMjI4LDcgQEAgcHJp
dmF0ZToKICAgICB2b2lkIHRvZ2dsZVBpY3R1cmVJblBpY3R1cmUodWludDY0X3QgY29udGV4dElk
KTsKICAgICB2b2lkIHRvZ2dsZU11dGVkKHVpbnQ2NF90IGNvbnRleHRJZCk7CiAgICAgdm9pZCBz
ZXRNdXRlZCh1aW50NjRfdCBjb250ZXh0SWQsIGJvb2wpOworICAgIHZvaWQgc2V0Vm9sdW1lKHVp
bnQ2NF90IGNvbnRleHRJZCwgZG91YmxlKTsKIAogICAgIFdlYlBhZ2VQcm94eSogbV9wYWdlOwog
ICAgIEhhc2hNYXA8dWludDY0X3QsIE1vZGVsSW50ZXJmYWNlVHVwbGU+IG1fY29udGV4dE1hcDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lv
bk1hbmFnZXJQcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29h
L1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5tZXNzYWdlcy5pbgppbmRleCA1YzBiNjhlNjMy
NWRlNzU5ZWJkOTFlYzlhZTgxNGU0OGRmMmVkN2I0Li5iMTUxYzljYTNlNjExNjljOWNjNDZmNzc2
NTE4NjVmMjhmZGY2Njc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5Lm1lc3NhZ2Vz
LmluCkBAIC0zNyw2ICszNyw3IEBAIG1lc3NhZ2VzIC0+IFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQ
cm94eSB7CiAgICAgUGxheWJhY2tTdGFydGVkVGltZUNoYW5nZWQodWludDY0X3QgY29udGV4dElk
LCBkb3VibGUgcGxheWJhY2tTdGFydGVkVGltZSkKICAgICBSYXRlQ2hhbmdlZCh1aW50NjRfdCBj
b250ZXh0SWQsIGJvb2wgaXNQbGF5aW5nLCBkb3VibGUgcmF0ZSkKICAgICBNdXRlZENoYW5nZWQo
dWludDY0X3QgY29udGV4dElkLCBib29sIG11dGVkKTsKKyAgICBWb2x1bWVDaGFuZ2VkKHVpbnQ2
NF90IGNvbnRleHRJZCwgZG91YmxlIHZvbHVtZSk7CiAgICAgUGljdHVyZUluUGljdHVyZUFjdGl2
ZUNoYW5nZWQodWludDY0X3QgY29udGV4dElkLCBib29sIHBpY3R1cmVJblBpY3R1cmVBY3RpdmUp
CiAgICAgU2V0VXBQbGF5YmFja0NvbnRyb2xzTWFuYWdlcldpdGhJRCh1aW50NjRfdCBjb250ZXh0
SWQpCiAgICAgQ2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkubW0g
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJv
eHkubW0KaW5kZXggYzU5OTUzZDJlYzUzNTViZTFjNDUwZDcwYjk3NTkxMTc2YmFiYjFhNy4uYWRi
OGU2MzM0ODkxN2RlODAzNzcwZmY4YmNiOWNhN2ZjYzIyYjU0MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5Lm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQ
cm94eS5tbQpAQCAtMTQ2LDYgKzE0NiwxMiBAQCB2b2lkIFBsYXliYWNrU2Vzc2lvbk1vZGVsQ29u
dGV4dDo6c2V0TXV0ZWQoYm9vbCBtdXRlZCkKICAgICAgICAgbV9tYW5hZ2VyLT5zZXRNdXRlZCht
X2NvbnRleHRJZCwgbXV0ZWQpOwogfQogCit2b2lkIFBsYXliYWNrU2Vzc2lvbk1vZGVsQ29udGV4
dDo6c2V0Vm9sdW1lKGRvdWJsZSB2b2x1bWUpCit7CisgICAgaWYgKG1fbWFuYWdlcikKKyAgICAg
ICAgbV9tYW5hZ2VyLT5zZXRWb2x1bWUobV9jb250ZXh0SWQsIHZvbHVtZSk7Cit9CisKIHZvaWQg
UGxheWJhY2tTZXNzaW9uTW9kZWxDb250ZXh0OjpwbGF5YmFja1N0YXJ0ZWRUaW1lQ2hhbmdlZChk
b3VibGUgcGxheWJhY2tTdGFydGVkVGltZSkKIHsKICAgICBtX3BsYXliYWNrU3RhcnRlZFRpbWUg
PSBwbGF5YmFja1N0YXJ0ZWRUaW1lOwpAQCAtMjU4LDYgKzI2NCwxMyBAQCB2b2lkIFBsYXliYWNr
U2Vzc2lvbk1vZGVsQ29udGV4dDo6bXV0ZWRDaGFuZ2VkKGJvb2wgbXV0ZWQpCiAgICAgICAgIGNs
aWVudC0+bXV0ZWRDaGFuZ2VkKG11dGVkKTsKIH0KIAordm9pZCBQbGF5YmFja1Nlc3Npb25Nb2Rl
bENvbnRleHQ6OnZvbHVtZUNoYW5nZWQoZG91YmxlIHZvbHVtZSkKK3sKKyAgICBtX3ZvbHVtZSA9
IHZvbHVtZTsKKyAgICBmb3IgKGF1dG8qIGNsaWVudCA6IG1fY2xpZW50cykKKyAgICAgICAgY2xp
ZW50LT52b2x1bWVDaGFuZ2VkKHZvbHVtZSk7Cit9CisKIHZvaWQgUGxheWJhY2tTZXNzaW9uTW9k
ZWxDb250ZXh0OjpwaWN0dXJlSW5QaWN0dXJlQWN0aXZlQ2hhbmdlZChib29sIGFjdGl2ZSkKIHsK
ICAgICBtX3BpY3R1cmVJblBpY3R1cmVBY3RpdmUgPSBhY3RpdmU7CkBAIC00NDAsNiArNDUzLDEx
IEBAIHZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjptdXRlZENoYW5nZWQodWludDY0
X3QgY29udGV4dElkLCBib29sIG11dGVkKQogICAgIGVuc3VyZU1vZGVsKGNvbnRleHRJZCkubXV0
ZWRDaGFuZ2VkKG11dGVkKTsKIH0KIAordm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6
OnZvbHVtZUNoYW5nZWQodWludDY0X3QgY29udGV4dElkLCBkb3VibGUgdm9sdW1lKQoreworICAg
IGVuc3VyZU1vZGVsKGNvbnRleHRJZCkudm9sdW1lQ2hhbmdlZCh2b2x1bWUpOworfQorCiB2b2lk
IFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6ZHVyYXRpb25DaGFuZ2VkKHVpbnQ2NF90IGNv
bnRleHRJZCwgZG91YmxlIGR1cmF0aW9uKQogewogICAgIGVuc3VyZU1vZGVsKGNvbnRleHRJZCku
ZHVyYXRpb25DaGFuZ2VkKGR1cmF0aW9uKTsKQEAgLTU0OSw2ICs1NjcsMTEgQEAgdm9pZCBQbGF5
YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OnNldE11dGVkKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9v
bCBtdXRlZCkKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OlBsYXliYWNrU2Vzc2lvbk1hbmFn
ZXI6OlNldE11dGVkKGNvbnRleHRJZCwgbXV0ZWQpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKIH0KIAor
dm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OnNldFZvbHVtZSh1aW50NjRfdCBjb250
ZXh0SWQsIGRvdWJsZSB2b2x1bWUpCit7CisgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpQbGF5
YmFja1Nlc3Npb25NYW5hZ2VyOjpTZXRWb2x1bWUoY29udGV4dElkLCB2b2x1bWUpLCBtX3BhZ2Ut
PnBhZ2VJRCgpKTsKK30KKwogdm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OnJlcXVl
c3RDb250cm9sbGVkRWxlbWVudElEKCkKIHsKICAgICBpZiAobV9jb250cm9sc01hbmFnZXJDb250
ZXh0SWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJh
Y2tTZXNzaW9uTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXli
YWNrU2Vzc2lvbk1hbmFnZXIuaAppbmRleCBhODQ0ZjBlMWFhZWQ4Y2UxOTJmZTk2MDQ0YWEwNzJk
OWQ1Yzg3MzE4Li43ZjQwNjg1NGNhYzZmMmE2NWRhYzI5MDgxNzQ0NTgxMTExZjI1MzM2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNzaW9uTWFu
YWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Np
b25NYW5hZ2VyLmgKQEAgLTg4LDYgKzg4LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGV4dGVybmFs
UGxheWJhY2tDaGFuZ2VkKGJvb2wgZW5hYmxlZCwgV2ViQ29yZTo6UGxheWJhY2tTZXNzaW9uTW9k
ZWw6OkV4dGVybmFsUGxheWJhY2tUYXJnZXRUeXBlLCBjb25zdCBTdHJpbmcmIGxvY2FsaXplZERl
dmljZU5hbWUpIGZpbmFsOwogICAgIHZvaWQgd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWRD
aGFuZ2VkKGJvb2wpIGZpbmFsOwogICAgIHZvaWQgbXV0ZWRDaGFuZ2VkKGJvb2wpIGZpbmFsOwor
ICAgIHZvaWQgdm9sdW1lQ2hhbmdlZChkb3VibGUpIGZpbmFsOwogCiAgICAgUGxheWJhY2tTZXNz
aW9uSW50ZXJmYWNlQ29udGV4dChQbGF5YmFja1Nlc3Npb25NYW5hZ2VyJiwgdWludDY0X3QgY29u
dGV4dElkKTsKIApAQCAtMTM5LDYgKzE0MCw3IEBAIHByb3RlY3RlZDoKICAgICB2b2lkIGV4dGVy
bmFsUGxheWJhY2tDaGFuZ2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9vbCBlbmFibGVkLCBXZWJD
b3JlOjpQbGF5YmFja1Nlc3Npb25Nb2RlbDo6RXh0ZXJuYWxQbGF5YmFja1RhcmdldFR5cGUsIFN0
cmluZyBsb2NhbGl6ZWREZXZpY2VOYW1lKTsKICAgICB2b2lkIHdpcmVsZXNzVmlkZW9QbGF5YmFj
a0Rpc2FibGVkQ2hhbmdlZCh1aW50NjRfdCBjb250ZXh0SWQsIGJvb2wpOwogICAgIHZvaWQgbXV0
ZWRDaGFuZ2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9vbCk7CisgICAgdm9pZCB2b2x1bWVDaGFu
Z2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgZG91YmxlKTsKIAogICAgIC8vIE1lc3NhZ2VzIGZyb20g
UGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5CiAgICAgdm9pZCBwbGF5KHVpbnQ2NF90IGNvbnRl
eHRJZCk7CkBAIC0xNTcsNiArMTU5LDcgQEAgcHJvdGVjdGVkOgogICAgIHZvaWQgdG9nZ2xlUGlj
dHVyZUluUGljdHVyZSh1aW50NjRfdCBjb250ZXh0SWQpOwogICAgIHZvaWQgdG9nZ2xlTXV0ZWQo
dWludDY0X3QgY29udGV4dElkKTsKICAgICB2b2lkIHNldE11dGVkKHVpbnQ2NF90IGNvbnRleHRJ
ZCwgYm9vbCBtdXRlZCk7CisgICAgdm9pZCBzZXRWb2x1bWUodWludDY0X3QgY29udGV4dElkLCBk
b3VibGUgdm9sdW1lKTsKIAogICAgIFdlYlBhZ2UqIG1fcGFnZTsKICAgICBIYXNoTWFwPFdlYkNv
cmU6OkhUTUxNZWRpYUVsZW1lbnQqLCB1aW50NjRfdD4gbV9tZWRpYUVsZW1lbnRzOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFn
ZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tT
ZXNzaW9uTWFuYWdlci5tZXNzYWdlcy5pbgppbmRleCBiNmUxNjZmNjljOTkwYWI3YWU4MmMzZDgx
YzYxNmIwMTc5MzZkYmE5Li40ZDJhNzg2ZTEzOTA1NjQ4MjNhMTg5OTNmNWZjZjU3MjkxY2Y2NWQ2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNz
aW9uTWFuYWdlci5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29j
b2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMzksNSArMzksNiBAQCBt
ZXNzYWdlcyAtPiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyIHsKICAgICBUb2dnbGVQaWN0dXJlSW5Q
aWN0dXJlKHVpbnQ2NF90IGNvbnRleHRJZCkKICAgICBUb2dnbGVNdXRlZCh1aW50NjRfdCBjb250
ZXh0SWQpCiAgICAgU2V0TXV0ZWQodWludDY0X3QgY29udGV4dElkLCBib29sIG11dGVkKQorICAg
IFNldFZvbHVtZSh1aW50NjRfdCBjb250ZXh0SWQsIGRvdWJsZSB2b2x1bWUpCiB9CiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Np
b25NYW5hZ2VyLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vz
c2lvbk1hbmFnZXIubW0KaW5kZXggYWNmNTJmNjAwZGU2YzMxNTU4MTYzNjNjN2Q3MDQwZjhlNjYy
MWQzMi4uYzVkZjMxZTBmY2U5NDBiNTc0M2IxZmRmOGY3ZjMxMzFhZDgzZmQzYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXIu
bW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vzc2lvbk1h
bmFnZXIubW0KQEAgLTE1NSw2ICsxNTUsMTIgQEAgdm9pZCBQbGF5YmFja1Nlc3Npb25JbnRlcmZh
Y2VDb250ZXh0OjptdXRlZENoYW5nZWQoYm9vbCBtdXRlZCkKICAgICAgICAgbV9tYW5hZ2VyLT5t
dXRlZENoYW5nZWQobV9jb250ZXh0SWQsIG11dGVkKTsKIH0KIAordm9pZCBQbGF5YmFja1Nlc3Np
b25JbnRlcmZhY2VDb250ZXh0Ojp2b2x1bWVDaGFuZ2VkKGRvdWJsZSB2b2x1bWUpCit7CisgICAg
aWYgKG1fbWFuYWdlcikKKyAgICAgICAgbV9tYW5hZ2VyLT52b2x1bWVDaGFuZ2VkKG1fY29udGV4
dElkLCB2b2x1bWUpOworfQorCiAjcHJhZ21hIG1hcmsgLSBQbGF5YmFja1Nlc3Npb25NYW5hZ2Vy
CiAKIFJlZjxQbGF5YmFja1Nlc3Npb25NYW5hZ2VyPiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyOjpj
cmVhdGUoV2ViUGFnZSYgcGFnZSkKQEAgLTM3OCw2ICszODQsMTEgQEAgdm9pZCBQbGF5YmFja1Nl
c3Npb25NYW5hZ2VyOjptdXRlZENoYW5nZWQodWludDY0X3QgY29udGV4dElkLCBib29sIG11dGVk
KQogICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6UGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5
OjpNdXRlZENoYW5nZWQoY29udGV4dElkLCBtdXRlZCkpOwogfQogCit2b2lkIFBsYXliYWNrU2Vz
c2lvbk1hbmFnZXI6OnZvbHVtZUNoYW5nZWQodWludDY0X3QgY29udGV4dElkLCBkb3VibGUgdm9s
dW1lKQoreworICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6UGxheWJhY2tTZXNzaW9uTWFuYWdl
clByb3h5OjpWb2x1bWVDaGFuZ2VkKGNvbnRleHRJZCwgdm9sdW1lKSk7Cit9CisKICNwcmFnbWEg
bWFyayBNZXNzYWdlcyBmcm9tIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eToKIAogdm9pZCBQ
bGF5YmFja1Nlc3Npb25NYW5hZ2VyOjpwbGF5KHVpbnQ2NF90IGNvbnRleHRJZCkKQEAgLTQ3Nyw2
ICs0ODgsMTIgQEAgdm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyOjpzZXRNdXRlZCh1aW50NjRf
dCBjb250ZXh0SWQsIGJvb2wgbXV0ZWQpCiAgICAgZW5zdXJlTW9kZWwoY29udGV4dElkKS5zZXRN
dXRlZChtdXRlZCk7CiB9CiAKK3ZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdlcjo6c2V0Vm9sdW1l
KHVpbnQ2NF90IGNvbnRleHRJZCwgZG91YmxlIHZvbHVtZSkKK3sKKyAgICBVc2VyR2VzdHVyZUlu
ZGljYXRvciBpbmRpY2F0b3IoUHJvY2Vzc2luZ1VzZXJHZXN0dXJlKTsKKyAgICBlbnN1cmVNb2Rl
bChjb250ZXh0SWQpLnNldFZvbHVtZSh2b2x1bWUpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKIAogI2VuZGlmIC8vIFBMQVRGT1JNKElPUykgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxF
KFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>