<?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>200947</bug_id>
          
          <creation_ts>2019-08-20 15:43:55 -0700</creation_ts>
          <short_desc>Web Inspector: Page: re-add enable/disable after r248454</short_desc>
          <delta_ts>2019-08-26 17:53:43 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=201119</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>200854</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1563277</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-08-20 15:43:55 -0700</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563288</commentid>
    <comment_count>1</comment_count>
      <attachid>376825</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-08-20 16:18:56 -0700</bug_when>
    <thetext>Created attachment 376825
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563403</commentid>
    <comment_count>2</comment_count>
      <attachid>376825</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2019-08-20 23:55:49 -0700</bug_when>
    <thetext>Comment on attachment 376825
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563435</commentid>
    <comment_count>3</comment_count>
      <attachid>376860</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-08-21 03:30:55 -0700</bug_when>
    <thetext>Created attachment 376860
Patch

There are some timing issues for CSS commands being sent before Page.enable, as CSS (via DOM) doesn&apos;t wait for a target to exist</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563528</commentid>
    <comment_count>4</comment_count>
      <attachid>376860</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-21 09:50:20 -0700</bug_when>
    <thetext>Comment on attachment 376860
Patch

Clearing flags on attachment: 376860

Committed r248943: &lt;https://trac.webkit.org/changeset/248943&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563529</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-21 09:50:22 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1563530</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-08-21 09:51:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/54559513&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376825</attachid>
            <date>2019-08-20 16:18:56 -0700</date>
            <delta_ts>2019-08-21 03:30:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200947-20190820161855.patch</filename>
            <type>text/plain</type>
            <size>32856</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGUyZjNiNWJhY2JmNTcwMzBjZTM1YTJkMTcxMDZl
ODQ1OWVkZDhjZDEuLjgxZmU1YjA1ZTZhMzQ0ODY4YjExM2RmNzFjY2MzZDRjOTAxZGE3ZGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE5LTA4LTIwICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBQ
YWdlOiByZS1hZGQgZW5hYmxlL2Rpc2FibGUgYWZ0ZXIgcjI0ODQ1NAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwOTQ3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2Ugc2hvdWxkbid0IGRlc2lnbiB0aGUg
YWdlbnQgc3lzdGVtIHdpdGggb25seSBXZWIgSW5zcGVjdG9yIGluIG1pbmQuIE90aGVyIGNsaWVu
dHMgbWF5IHdhbnQKKyAgICAgICAgdG8gaGF2ZSBkaWZmZXJlbnQgZnVuY3Rpb25hbGl0eSwgbm90
IGJlaW5nIHRvbGQgYWJvdXQgZnJhbWVzIGNyZWF0aW9uL3VwZGF0ZXMvZGVzdHJ1Y3Rpb24uCisg
ICAgICAgIEluIHRoZXNlIGNhc2VzLCB3ZSBzaG91bGQgaGF2ZSBncmFjZWZ1bCBlcnJvciBtZXNz
YWdlIGZhaWx1cmVzIGZvciBvdGhlciBhZ2VudHMgdGhhdCByZWx5IG9uCisgICAgICAgIHRoZSBQ
YWdlIGFnZW50LgorCisgICAgICAgICogaW5zcGVjdG9yL3Byb3RvY29sL1BhZ2UuanNvbjoKKwog
MjAxOS0wOC0yMCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAg
IFtKU0NdIEFycmF5LnByb3RvdHlwZS50b1N0cmluZyBzaG91bGQgbm90IGdldCAiam9pbiIgZnVu
Y3Rpb24gZWFjaCB0aW1lCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzU2NzA4ZDY1OTc5MDg2OGMyMDgwNTVmZjU0
YTY0MTZjZWIwODY4Mi4uMWI3NjNhM2E4NWM3MGU2ZDliODFmZDMyYzJkMTIwMzhmY2Y0MmYyYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDE5LTA4LTIwICBEZXZpbiBSb3Vzc28gIDxk
cm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBQYWdlOiByZS1hZGQg
ZW5hYmxlL2Rpc2FibGUgYWZ0ZXIgcjI0ODQ1NAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwOTQ3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgV2Ugc2hvdWxkbid0IGRlc2lnbiB0aGUgYWdlbnQgc3lzdGVt
IHdpdGggb25seSBXZWIgSW5zcGVjdG9yIGluIG1pbmQuIE90aGVyIGNsaWVudHMgbWF5IHdhbnQK
KyAgICAgICAgdG8gaGF2ZSBkaWZmZXJlbnQgZnVuY3Rpb25hbGl0eSwgbm90IGJlaW5nIHRvbGQg
YWJvdXQgZnJhbWVzIGNyZWF0aW9uL3VwZGF0ZXMvZGVzdHJ1Y3Rpb24uCisgICAgICAgIEluIHRo
ZXNlIGNhc2VzLCB3ZSBzaG91bGQgaGF2ZSBncmFjZWZ1bCBlcnJvciBtZXNzYWdlIGZhaWx1cmVz
IGZvciBvdGhlciBhZ2VudHMgdGhhdCByZWx5IG9uCisgICAgICAgIHRoZSBQYWdlIGFnZW50Lgor
CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JQYWdlQWdlbnQuaDoKKyAgICAg
ICAgKiBpbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvclBhZ2VBZ2VudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JQYWdlQWdlbnQ6OmRpZENyZWF0ZUZyb250ZW5kQW5kQmFja2VuZCk6
CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JQYWdlQWdlbnQ6OndpbGxEZXN0cm95RnJvbnRl
bmRBbmRCYWNrZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclBhZ2VBZ2VudDo6ZW5h
YmxlKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JQYWdlQWdlbnQ6OmRpc2Fi
bGUpOiBBZGRlZC4KKworICAgICAgICAqIGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQXBwbGlj
YXRpb25DYWNoZUFnZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckFwcGxpY2F0
aW9uQ2FjaGVBZ2VudDo6dXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1cyk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEZyYW1lc1dpdGhNYW5p
ZmVzdHMpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50
Ojphc3NlcnRGcmFtZVdpdGhEb2N1bWVudExvYWRlcik6CisgICAgICAgICogaW5zcGVjdG9yL2Fn
ZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JD
U1NBZ2VudDo6c2V0QWN0aXZlU3R5bGVTaGVldHNGb3JEb2N1bWVudCk6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JDU1NBZ2VudDo6Z2V0TWF0Y2hlZFN0eWxlc0Zvck5vZGUpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9yQ1NTQWdlbnQ6OmdldElubGluZVN0eWxlc0Zvck5vZGUpOgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ1NTQWdlbnQ6OmdldEFsbFN0eWxlU2hlZXRzKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNTU0FnZW50OjpjcmVhdGVTdHlsZVNoZWV0KToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNTU0FnZW50Ojphc0luc3BlY3RvclN0eWxlU2hl
ZXQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ1NTQWdlbnQ6OmJpbmRTdHlsZVNoZWV0
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRPTUFnZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRPTUFnZW50OjpoaWdobGlnaHRTZWxlY3Rvcik6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JET01BZ2VudDo6aGlnaGxpZ2h0RnJhbWUpOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NQWdlbnQ6OmJ1aWxkT2JqZWN0Rm9yTm9kZSk6Cisg
ICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclRpbWVsaW5lQWdlbnQ6OnNldEZyYW1lSWRlbnRpZmll
cik6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9wYWdlL1BhZ2VOZXR3b3JrQWdlbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UGFnZU5ldHdvcmtBZ2VudDo6bG9hZGVySWRlbnRpZmllcik6
CisgICAgICAgIChXZWJDb3JlOjpQYWdlTmV0d29ya0FnZW50OjpmcmFtZUlkZW50aWZpZXIpOgor
ICAgICAgICAoV2ViQ29yZTo6UGFnZU5ldHdvcmtBZ2VudDo6c2NyaXB0RXhlY3V0aW9uQ29udGV4
dCk6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9wYWdlL1BhZ2VSdW50aW1lQWdlbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UGFnZVJ1bnRpbWVBZ2VudDo6ZGlkQ3JlYXRlTWFpbldvcmxk
Q29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpQYWdlUnVudGltZUFnZW50OjpyZXBvcnRFeGVj
dXRpb25Db250ZXh0Q3JlYXRpb24pOgorCiAyMDE5LTA4LTIwICBKdXN0aW4gRmFuICA8anVzdGlu
X2ZhbkBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBjb21tZW50IGZvbGxvdy11cCBm
b3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMDc1Mi4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvQ2hhbmdlTG9nCmluZGV4IDAyN2ZjOGI4ZDBjZjE5ZDdkMDlhOWZkZjhiODg5YTE1Y2Jk
OWI1NjUuLmVmMWExMmJkZTZmZjZmNjNmZDRiMTcyNDkyZDAxYWM5YmY0YWU3ZmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE5LTA4LTIwICBEZXZpbiBSb3Vz
c28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBQYWdlOiBy
ZS1hZGQgZW5hYmxlL2Rpc2FibGUgYWZ0ZXIgcjI0ODQ1NAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwOTQ3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2Ugc2hvdWxkbid0IGRlc2lnbiB0aGUgYWdlbnQg
c3lzdGVtIHdpdGggb25seSBXZWIgSW5zcGVjdG9yIGluIG1pbmQuIE90aGVyIGNsaWVudHMgbWF5
IHdhbnQKKyAgICAgICAgdG8gaGF2ZSBkaWZmZXJlbnQgZnVuY3Rpb25hbGl0eSwgbm90IGJlaW5n
IHRvbGQgYWJvdXQgZnJhbWVzIGNyZWF0aW9uL3VwZGF0ZXMvZGVzdHJ1Y3Rpb24uCisgICAgICAg
IEluIHRoZXNlIGNhc2VzLCB3ZSBzaG91bGQgaGF2ZSBncmFjZWZ1bCBlcnJvciBtZXNzYWdlIGZh
aWx1cmVzIGZvciBvdGhlciBhZ2VudHMgdGhhdCByZWx5IG9uCisgICAgICAgIHRoZSBQYWdlIGFn
ZW50LgorCisgICAgICAgICogVXNlckludGVyZmFjZS9Db250cm9sbGVycy9OZXR3b3JrTWFuYWdl
ci5qczoKKyAgICAgICAgKFdJLk5ldHdvcmtNYW5hZ2VyLnByb3RvdHlwZS5pbml0aWFsaXplVGFy
Z2V0KToKKwogMjAxOS0wOC0yMCAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAK
ICAgICAgICAgV2ViIEluc3BlY3RvcjogU291cmNlczogbW92ZSB0aGUgcmVzb3VyY2UgdHlwZSBz
Y29wZSBiYXIgdG8gYmUgbmV4dCB0byB0aGUgZmlsdGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL3Byb3RvY29sL1BhZ2UuanNvbiBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvUGFnZS5qc29uCmluZGV4IDEzMDIyNDY4MWRmNGQ4
ZWQyM2ZlNjBlOTAxN2VhZTE2MWFkOTk5OTIuLmYzZTZhMjBlODJlYjMzNzNlYzM0ODA2MjUyZDlm
NjFlZGY1YjJhY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
cHJvdG9jb2wvUGFnZS5qc29uCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
cHJvdG9jb2wvUGFnZS5qc29uCkBAIC0xMTAsNiArMTEwLDE0IEBACiAgICAgICAgIH0KICAgICBd
LAogICAgICJjb21tYW5kcyI6IFsKKyAgICAgICAgeworICAgICAgICAgICAgIm5hbWUiOiAiZW5h
YmxlIiwKKyAgICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJFbmFibGVzIHBhZ2UgZG9tYWluIG5v
dGlmaWNhdGlvbnMuIgorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICAibmFtZSI6
ICJkaXNhYmxlIiwKKyAgICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJEaXNhYmxlcyBwYWdlIGRv
bWFpbiBub3RpZmljYXRpb25zLiIKKyAgICAgICAgfSwKICAgICAgICAgewogICAgICAgICAgICAg
Im5hbWUiOiAicmVsb2FkIiwKICAgICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJSZWxvYWRzIHRo
ZSBtYWluIGZyYW1lIG9mIHRoZSBpbnNwZWN0ZWQgcGFnZS4iLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBcHBsaWNhdGlv
bkNhY2hlQWdlbnQuY3BwCmluZGV4IGZkZjA0NGM1NzliMzY4YzMyMDUxYjY1ZGM0NDBlMzg3ZjYw
MThmYjcuLmVjMTY1YjdkOTdkMTRiOTAwZTk3N2QwM2U1ZDc3NTQ3NzliOGU5ZmIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQXBwbGljYXRpb25D
YWNoZUFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3Bl
Y3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAKQEAgLTg1LDYgKzg1LDEwIEBAIHZvaWQgSW5z
cGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpkaXNhYmxlKEVycm9yU3RyaW5nJiBlcnJvclN0
cmluZykKIAogdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OnVwZGF0ZUFwcGxp
Y2F0aW9uQ2FjaGVTdGF0dXMoRnJhbWUqIGZyYW1lKQogeworICAgIGF1dG8qIHBhZ2VBZ2VudCA9
IG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKTsKKyAgICBpZiAoIXBh
Z2VBZ2VudCkKKyAgICAgICAgcmV0dXJuOworCiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0
dXJuOwogCkBAIC05Niw3ICsxMDAsNyBAQCB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVB
Z2VudDo6dXBkYXRlQXBwbGljYXRpb25DYWNoZVN0YXR1cyhGcmFtZSogZnJhbWUpCiAgICAgaW50
IHN0YXR1cyA9IGhvc3Quc3RhdHVzKCk7CiAgICAgYXV0byBtYW5pZmVzdFVSTCA9IGhvc3QuYXBw
bGljYXRpb25DYWNoZUluZm8oKS5tYW5pZmVzdC5zdHJpbmcoKTsKIAotICAgIG1fZnJvbnRlbmRE
aXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNhY2hlU3RhdHVzVXBkYXRlZChtX2luc3RydW1lbnRpbmdB
Z2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCktPmZyYW1lSWQoZnJhbWUpLCBtYW5pZmVzdFVSTCwg
c3RhdHVzKTsKKyAgICBtX2Zyb250ZW5kRGlzcGF0Y2hlci0+YXBwbGljYXRpb25DYWNoZVN0YXR1
c1VwZGF0ZWQocGFnZUFnZW50LT5mcmFtZUlkKGZyYW1lKSwgbWFuaWZlc3RVUkwsIHN0YXR1cyk7
CiB9CiAKIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpuZXR3b3JrU3RhdGVD
aGFuZ2VkKCkKQEAgLTEwNCw4ICsxMDgsMTQgQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQ6Om5ldHdvcmtTdGF0ZUNoYW5nZWQoKQogICAgIG1fZnJvbnRlbmREaXNwYXRjaGVy
LT5uZXR3b3JrU3RhdGVVcGRhdGVkKHBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJTdHJhdGVn
eSgpLT5pc09uTGluZSgpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdl
bnQ6OmdldEZyYW1lc1dpdGhNYW5pZmVzdHMoRXJyb3JTdHJpbmcmLCBSZWZQdHI8SlNPTjo6QXJy
YXlPZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5p
ZmVzdD4+JiByZXN1bHQpCit2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0
RnJhbWVzV2l0aE1hbmlmZXN0cyhFcnJvclN0cmluZyYgZXJyb3JTdHJpbmcsIFJlZlB0cjxKU09O
OjpBcnJheU9mPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkZyYW1lV2l0
aE1hbmlmZXN0Pj4mIHJlc3VsdCkKIHsKKyAgICBhdXRvKiBwYWdlQWdlbnQgPSBtX2luc3RydW1l
bnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCk7CisgICAgaWYgKCFwYWdlQWdlbnQpIHsK
KyAgICAgICAgZXJyb3JTdHJpbmcgPSAiUGFnZSBkb21haW4gbXVzdCBiZSBlbmFibGVkIl9zOwor
ICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgcmVzdWx0ID0gSlNPTjo6QXJyYXlPZjxJbnNw
ZWN0b3I6OlByb3RvY29sOjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD46OmNy
ZWF0ZSgpOwogCiAgICAgZm9yIChGcmFtZSogZnJhbWUgPSAmbV9pbnNwZWN0ZWRQYWdlLm1haW5G
cmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7CkBA
IC0xMTcsNyArMTI3LDcgQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6Omdl
dEZyYW1lc1dpdGhNYW5pZmVzdHMoRXJyb3JTdHJpbmcmLCBSZWZQdHIKICAgICAgICAgU3RyaW5n
IG1hbmlmZXN0VVJMID0gaG9zdC5hcHBsaWNhdGlvbkNhY2hlSW5mbygpLm1hbmlmZXN0LnN0cmlu
ZygpOwogICAgICAgICBpZiAoIW1hbmlmZXN0VVJMLmlzRW1wdHkoKSkgewogICAgICAgICAgICAg
cmVzdWx0LT5hZGRJdGVtKEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkZy
YW1lV2l0aE1hbmlmZXN0OjpjcmVhdGUoKQotICAgICAgICAgICAgICAgIC5zZXRGcmFtZUlkKG1f
aW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKS0+ZnJhbWVJZChmcmFtZSkp
CisgICAgICAgICAgICAgICAgLnNldEZyYW1lSWQocGFnZUFnZW50LT5mcmFtZUlkKGZyYW1lKSkK
ICAgICAgICAgICAgICAgICAuc2V0TWFuaWZlc3RVUkwobWFuaWZlc3RVUkwpCiAgICAgICAgICAg
ICAgICAgLnNldFN0YXR1cyhzdGF0aWNfY2FzdDxpbnQ+KGhvc3Quc3RhdHVzKCkpKQogICAgICAg
ICAgICAgICAgIC5yZWxlYXNlKCkpOwpAQCAtMTI3LDcgKzEzNywxMyBAQCB2b2lkIEluc3BlY3Rv
ckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0RnJhbWVzV2l0aE1hbmlmZXN0cyhFcnJvclN0cmlu
ZyYsIFJlZlB0cgogCiBEb2N1bWVudExvYWRlciogSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFn
ZW50Ojphc3NlcnRGcmFtZVdpdGhEb2N1bWVudExvYWRlcihFcnJvclN0cmluZyYgZXJyb3JTdHJp
bmcsIGNvbnN0IFN0cmluZyYgZnJhbWVJZCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBtX2luc3Ry
dW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCktPmFzc2VydEZyYW1lKGVycm9yU3Ry
aW5nLCBmcmFtZUlkKTsKKyAgICBhdXRvKiBwYWdlQWdlbnQgPSBtX2luc3RydW1lbnRpbmdBZ2Vu
dHMuaW5zcGVjdG9yUGFnZUFnZW50KCk7CisgICAgaWYgKCFwYWdlQWdlbnQpIHsKKyAgICAgICAg
ZXJyb3JTdHJpbmcgPSAiUGFnZSBkb21haW4gbXVzdCBiZSBlbmFibGVkIl9zOworICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICBhdXRvKiBmcmFtZSA9IHBhZ2VBZ2VudC0+YXNz
ZXJ0RnJhbWUoZXJyb3JTdHJpbmcsIGZyYW1lSWQpOwogICAgIGlmICghZnJhbWUpCiAgICAgICAg
IHJldHVybiBudWxscHRyOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckNTU0FnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9h
Z2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwCmluZGV4IDQ0ZTljNWFiZWI0Yzk2NmFiYWVhOTQ0
YTQwZDVlMDNkNDcyZDExZTguLjU3OGE4Zjg0MWIzZmJlYjQ5ODY1NzQxMmU2ODc2NTAyYjgwZmQ4
NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9y
Q1NTQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVj
dG9yQ1NTQWdlbnQuY3BwCkBAIC0zOTEsOCArMzkxLDEwIEBAIHZvaWQgSW5zcGVjdG9yQ1NTQWdl
bnQ6OnNldEFjdGl2ZVN0eWxlU2hlZXRzRm9yRG9jdW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50LCBW
ZWN0CiAgICAgZm9yIChhdXRvKiBjc3NTdHlsZVNoZWV0IDogYWRkZWRTdHlsZVNoZWV0cykgewog
ICAgICAgICBwcmV2aW91c2x5S25vd25BY3RpdmVTdHlsZVNoZWV0cy5hZGQoY3NzU3R5bGVTaGVl
dCk7CiAgICAgICAgIGlmICghbV9jc3NTdHlsZVNoZWV0VG9JbnNwZWN0b3JTdHlsZVNoZWV0LmNv
bnRhaW5zKGNzc1N0eWxlU2hlZXQpKSB7Ci0gICAgICAgICAgICBJbnNwZWN0b3JTdHlsZVNoZWV0
KiBpbnNwZWN0b3JTdHlsZVNoZWV0ID0gYmluZFN0eWxlU2hlZXQoY3NzU3R5bGVTaGVldCk7Ci0g
ICAgICAgICAgICBtX2Zyb250ZW5kRGlzcGF0Y2hlci0+c3R5bGVTaGVldEFkZGVkKGluc3BlY3Rv
clN0eWxlU2hlZXQtPmJ1aWxkT2JqZWN0Rm9yU3R5bGVTaGVldEluZm8oKSk7CisgICAgICAgICAg
ICBpZiAobV9pbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpKSB7CisgICAg
ICAgICAgICAgICAgSW5zcGVjdG9yU3R5bGVTaGVldCogaW5zcGVjdG9yU3R5bGVTaGVldCA9IGJp
bmRTdHlsZVNoZWV0KGNzc1N0eWxlU2hlZXQpOworICAgICAgICAgICAgICAgIG1fZnJvbnRlbmRE
aXNwYXRjaGVyLT5zdHlsZVNoZWV0QWRkZWQoaW5zcGVjdG9yU3R5bGVTaGVldC0+YnVpbGRPYmpl
Y3RGb3JTdHlsZVNoZWV0SW5mbygpKTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0K
IH0KQEAgLTQ2Myw2ICs0NjUsMTEgQEAgc3RhdGljIE9wdGlvbmFsPEluc3BlY3Rvcjo6UHJvdG9j
b2w6OkNTUzo6UHNldWRvSWQ+IHByb3RvY29sVmFsdWVGb3JQc2V1ZG9JZChQc2UKIAogdm9pZCBJ
bnNwZWN0b3JDU1NBZ2VudDo6Z2V0TWF0Y2hlZFN0eWxlc0Zvck5vZGUoRXJyb3JTdHJpbmcmIGVy
cm9yU3RyaW5nLCBpbnQgbm9kZUlkLCBjb25zdCBib29sKiBpbmNsdWRlUHNldWRvLCBjb25zdCBi
b29sKiBpbmNsdWRlSW5oZXJpdGVkLCBSZWZQdHI8SlNPTjo6QXJyYXlPZjxJbnNwZWN0b3I6OlBy
b3RvY29sOjpDU1M6OlJ1bGVNYXRjaD4+JiBtYXRjaGVkQ1NTUnVsZXMsIFJlZlB0cjxKU09OOjpB
cnJheU9mPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkNTUzo6UHNldWRvSWRNYXRjaGVzPj4mIHBzZXVk
b0lkTWF0Y2hlcywgUmVmUHRyPEpTT046OkFycmF5T2Y8SW5zcGVjdG9yOjpQcm90b2NvbDo6Q1NT
OjpJbmhlcml0ZWRTdHlsZUVudHJ5Pj4mIGluaGVyaXRlZEVudHJpZXMpCiB7CisgICAgaWYgKCFt
X2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCkpIHsKKyAgICAgICAgZXJy
b3JTdHJpbmcgPSAiUGFnZSBkb21haW4gbXVzdCBiZSBlbmFibGVkIl9zOworICAgICAgICByZXR1
cm47CisgICAgfQorCiAgICAgRWxlbWVudCogZWxlbWVudCA9IGVsZW1lbnRGb3JJZChlcnJvclN0
cmluZywgbm9kZUlkKTsKICAgICBpZiAoIWVsZW1lbnQpCiAgICAgICAgIHJldHVybjsKQEAgLTUy
OCw2ICs1MzUsMTEgQEAgdm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6Z2V0TWF0Y2hlZFN0eWxlc0Zv
ck5vZGUoRXJyb3JTdHJpbmcmIGVycm9yU3RyaW5nLCBpbnQgbm8KIAogdm9pZCBJbnNwZWN0b3JD
U1NBZ2VudDo6Z2V0SW5saW5lU3R5bGVzRm9yTm9kZShFcnJvclN0cmluZyYgZXJyb3JTdHJpbmcs
IGludCBub2RlSWQsIFJlZlB0cjxJbnNwZWN0b3I6OlByb3RvY29sOjpDU1M6OkNTU1N0eWxlPiYg
aW5saW5lU3R5bGUsIFJlZlB0cjxJbnNwZWN0b3I6OlByb3RvY29sOjpDU1M6OkNTU1N0eWxlPiYg
YXR0cmlidXRlc1N0eWxlKQogeworICAgIGlmIChtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVj
dG9yUGFnZUFnZW50KCkpIHsKKyAgICAgICAgZXJyb3JTdHJpbmcgPSAiUGFnZSBkb21haW4gbXVz
dCBiZSBlbmFibGVkIl9zOworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgYXV0byogZWxl
bWVudCA9IGVsZW1lbnRGb3JJZChlcnJvclN0cmluZywgbm9kZUlkKTsKICAgICBpZiAoIWlzPFN0
eWxlZEVsZW1lbnQ+KGVsZW1lbnQpKQogICAgICAgICByZXR1cm47CkBAIC01NTIsOCArNTY0LDEz
IEBAIHZvaWQgSW5zcGVjdG9yQ1NTQWdlbnQ6OmdldENvbXB1dGVkU3R5bGVGb3JOb2RlKEVycm9y
U3RyaW5nJiBlcnJvclN0cmluZywgaW50IG5vCiAgICAgc3R5bGUgPSBpbnNwZWN0b3JTdHlsZS0+
YnVpbGRBcnJheUZvckNvbXB1dGVkU3R5bGUoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JDU1NBZ2Vu
dDo6Z2V0QWxsU3R5bGVTaGVldHMoRXJyb3JTdHJpbmcmLCBSZWZQdHI8SlNPTjo6QXJyYXlPZjxJ
bnNwZWN0b3I6OlByb3RvY29sOjpDU1M6OkNTU1N0eWxlU2hlZXRIZWFkZXI+PiYgc3R5bGVJbmZv
cykKK3ZvaWQgSW5zcGVjdG9yQ1NTQWdlbnQ6OmdldEFsbFN0eWxlU2hlZXRzKEVycm9yU3RyaW5n
JiBlcnJvclN0cmluZywgUmVmUHRyPEpTT046OkFycmF5T2Y8SW5zcGVjdG9yOjpQcm90b2NvbDo6
Q1NTOjpDU1NTdHlsZVNoZWV0SGVhZGVyPj4mIHN0eWxlSW5mb3MpCiB7CisgICAgaWYgKCFtX2lu
c3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCkpIHsKKyAgICAgICAgZXJyb3JT
dHJpbmcgPSAiUGFnZSBkb21haW4gbXVzdCBiZSBlbmFibGVkIl9zOworICAgICAgICByZXR1cm47
CisgICAgfQorCiAgICAgc3R5bGVJbmZvcyA9IEpTT046OkFycmF5T2Y8SW5zcGVjdG9yOjpQcm90
b2NvbDo6Q1NTOjpDU1NTdHlsZVNoZWV0SGVhZGVyPjo6Y3JlYXRlKCk7CiAKICAgICBWZWN0b3I8
SW5zcGVjdG9yU3R5bGVTaGVldCo+IGluc3BlY3RvclN0eWxlU2hlZXRzOwpAQCAtNjgxLDEyICs2
OTgsMTYgQEAgdm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6c2V0UnVsZVNlbGVjdG9yKEVycm9yU3Ry
aW5nJiBlcnJvclN0cmluZywgY29uc3QgSlNPTjo6T2IKIAogdm9pZCBJbnNwZWN0b3JDU1NBZ2Vu
dDo6Y3JlYXRlU3R5bGVTaGVldChFcnJvclN0cmluZyYgZXJyb3JTdHJpbmcsIGNvbnN0IFN0cmlu
ZyYgZnJhbWVJZCwgU3RyaW5nKiBzdHlsZVNoZWV0SWQpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0g
bV9pbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpLT5mcmFtZUZvcklkKGZy
YW1lSWQpOwotICAgIGlmICghZnJhbWUpIHsKLSAgICAgICAgZXJyb3JTdHJpbmcgPSAiTm8gZnJh
bWUgZm9yIGdpdmVuIGlkIGZvdW5kIl9zOworICAgIGF1dG8qIHBhZ2VBZ2VudCA9IG1faW5zdHJ1
bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKTsKKyAgICBpZiAoIXBhZ2VBZ2VudCkg
eworICAgICAgICBlcnJvclN0cmluZyA9ICJQYWdlIGRvbWFpbiBtdXN0IGJlIGVuYWJsZWQiX3M7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAgICBhdXRvKiBmcmFtZSA9IHBhZ2VBZ2VudC0+
YXNzZXJ0RnJhbWUoZXJyb3JTdHJpbmcsIGZyYW1lSWQpOworICAgIGlmICghZnJhbWUpCisgICAg
ICAgIHJldHVybjsKKwogICAgIERvY3VtZW50KiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgp
OwogICAgIGlmICghZG9jdW1lbnQpIHsKICAgICAgICAgZXJyb3JTdHJpbmcgPSAiTm8gZG9jdW1l
bnQgZm9yIGZyYW1lIl9zOwpAQCAtODY1LDcgKzg4NiwxMCBAQCBJbnNwZWN0b3JTdHlsZVNoZWV0
Rm9ySW5saW5lU3R5bGUmIEluc3BlY3RvckNTU0FnZW50Ojphc0luc3BlY3RvclN0eWxlU2hlZXQo
U3R5bAogewogICAgIHJldHVybiBtX25vZGVUb0luc3BlY3RvclN0eWxlU2hlZXQuZW5zdXJlKCZl
bGVtZW50LCBbdGhpcywgJmVsZW1lbnRdIHsKICAgICAgICAgU3RyaW5nIG5ld1N0eWxlU2hlZXRJ
ZCA9IFN0cmluZzo6bnVtYmVyKG1fbGFzdFN0eWxlU2hlZXRJZCsrKTsKKworICAgICAgICBBU1NF
UlQobV9pbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpKTsKICAgICAgICAg
YXV0byBpbnNwZWN0b3JTdHlsZVNoZWV0ID0gSW5zcGVjdG9yU3R5bGVTaGVldEZvcklubGluZVN0
eWxlOjpjcmVhdGUobV9pbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpLCBu
ZXdTdHlsZVNoZWV0SWQsIGVsZW1lbnQsIEluc3BlY3Rvcjo6UHJvdG9jb2w6OkNTUzo6U3R5bGVT
aGVldE9yaWdpbjo6UmVndWxhciwgdGhpcyk7CisKICAgICAgICAgbV9pZFRvSW5zcGVjdG9yU3R5
bGVTaGVldC5zZXQobmV3U3R5bGVTaGVldElkLCBpbnNwZWN0b3JTdHlsZVNoZWV0LmNvcHlSZWYo
KSk7CiAgICAgICAgIHJldHVybiBpbnNwZWN0b3JTdHlsZVNoZWV0OwogICAgIH0pLml0ZXJhdG9y
LT52YWx1ZTsKQEAgLTkwNiw3ICs5MzAsMTAgQEAgSW5zcGVjdG9yU3R5bGVTaGVldCogSW5zcGVj
dG9yQ1NTQWdlbnQ6OmJpbmRTdHlsZVNoZWV0KENTU1N0eWxlU2hlZXQqIHN0eWxlU2hlZXQKICAg
ICBpZiAoIWluc3BlY3RvclN0eWxlU2hlZXQpIHsKICAgICAgICAgU3RyaW5nIGlkID0gU3RyaW5n
OjpudW1iZXIobV9sYXN0U3R5bGVTaGVldElkKyspOwogICAgICAgICBEb2N1bWVudCogZG9jdW1l
bnQgPSBzdHlsZVNoZWV0LT5vd25lckRvY3VtZW50KCk7CisKKyAgICAgICAgQVNTRVJUKG1faW5z
dHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKSk7CiAgICAgICAgIGluc3BlY3Rv
clN0eWxlU2hlZXQgPSBJbnNwZWN0b3JTdHlsZVNoZWV0OjpjcmVhdGUobV9pbnN0cnVtZW50aW5n
QWdlbnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpLCBpZCwgc3R5bGVTaGVldCwgZGV0ZWN0T3JpZ2lu
KHN0eWxlU2hlZXQsIGRvY3VtZW50KSwgSW5zcGVjdG9yRE9NQWdlbnQ6OmRvY3VtZW50VVJMU3Ry
aW5nKGRvY3VtZW50KSwgdGhpcyk7CisKICAgICAgICAgbV9pZFRvSW5zcGVjdG9yU3R5bGVTaGVl
dC5zZXQoaWQsIGluc3BlY3RvclN0eWxlU2hlZXQpOwogICAgICAgICBtX2Nzc1N0eWxlU2hlZXRU
b0luc3BlY3RvclN0eWxlU2hlZXQuc2V0KHN0eWxlU2hlZXQsIGluc3BlY3RvclN0eWxlU2hlZXQp
OwogICAgICAgICBpZiAobV9jcmVhdGluZ1ZpYUluc3BlY3RvclN0eWxlU2hlZXQpIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRE9NQWdlbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JET01BZ2VudC5j
cHAKaW5kZXggZjBhMjhjMTMzMWM1YmIzMDg4ZDUzZTcyNDNkYmFmNGVlYjYzZTdiZC4uMGRmMDQ1
NDg1NTllMTQwNjNiOTQyYjdjMTFlY2NkM2I0NmU3MGI3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JET01BZ2VudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JET01BZ2VudC5jcHAKQEAgLTEyMjQs
MTIgKzEyMjQsMTYgQEAgdm9pZCBJbnNwZWN0b3JET01BZ2VudDo6aGlnaGxpZ2h0U2VsZWN0b3Io
RXJyb3JTdHJpbmcmIGVycm9yU3RyaW5nLCBjb25zdCBKU09OOjoKICAgICBSZWZQdHI8RG9jdW1l
bnQ+IGRvY3VtZW50OwogCiAgICAgaWYgKGZyYW1lSWQpIHsKLSAgICAgICAgRnJhbWUqIGZyYW1l
ID0gbV9pbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpLT5mcmFtZUZvcklk
KCpmcmFtZUlkKTsKLSAgICAgICAgaWYgKCFmcmFtZSkgewotICAgICAgICAgICAgZXJyb3JTdHJp
bmcgPSAiTm8gZnJhbWUgZm9yIGdpdmVuIGlkIGZvdW5kIl9zOworICAgICAgICBhdXRvKiBwYWdl
QWdlbnQgPSBtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCk7CisgICAg
ICAgIGlmICghcGFnZUFnZW50KSB7CisgICAgICAgICAgICBlcnJvclN0cmluZyA9ICJQYWdlIGRv
bWFpbiBtdXN0IGJlIGVuYWJsZWQiX3M7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0K
IAorICAgICAgICBhdXRvKiBmcmFtZSA9IHBhZ2VBZ2VudC0+YXNzZXJ0RnJhbWUoZXJyb3JTdHJp
bmcsICpmcmFtZUlkKTsKKyAgICAgICAgaWYgKCFmcmFtZSkKKyAgICAgICAgICAgIHJldHVybjsK
KwogICAgICAgICBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgpOwogICAgIH0gZWxzZQogICAg
ICAgICBkb2N1bWVudCA9IG1fZG9jdW1lbnQ7CkBAIC0xMzExLDcgKzEzMTUsMTMgQEAgdm9pZCBJ
bnNwZWN0b3JET01BZ2VudDo6aGlnaGxpZ2h0Tm9kZUxpc3QoRXJyb3JTdHJpbmcmIGVycm9yU3Ry
aW5nLCBjb25zdCBKU09OOjoKIAogdm9pZCBJbnNwZWN0b3JET01BZ2VudDo6aGlnaGxpZ2h0RnJh
bWUoRXJyb3JTdHJpbmcmIGVycm9yU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQsIGNvbnN0
IEpTT046Ok9iamVjdCogY29sb3IsIGNvbnN0IEpTT046Ok9iamVjdCogb3V0bGluZUNvbG9yKQog
ewotICAgIEZyYW1lKiBmcmFtZSA9IG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdl
QWdlbnQoKS0+YXNzZXJ0RnJhbWUoZXJyb3JTdHJpbmcsIGZyYW1lSWQpOworICAgIGF1dG8qIHBh
Z2VBZ2VudCA9IG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKTsKKyAg
ICBpZiAoIXBhZ2VBZ2VudCkgeworICAgICAgICBlcnJvclN0cmluZyA9ICJQYWdlIGRvbWFpbiBt
dXN0IGJlIGVuYWJsZWQiX3M7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBhdXRvKiBm
cmFtZSA9IHBhZ2VBZ2VudC0+YXNzZXJ0RnJhbWUoZXJyb3JTdHJpbmcsIGZyYW1lSWQpOwogICAg
IGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybjsKIApAQCAtMTU1MSw4ICsxNTYxLDExIEBAIFJl
ZjxJbnNwZWN0b3I6OlByb3RvY29sOjpET006Ok5vZGU+IEluc3BlY3RvckRPTUFnZW50OjpidWls
ZE9iamVjdEZvck5vZGUoTm9kZSoKICAgICAgICAgICAgIHZhbHVlLT5zZXRDaGlsZHJlbihXVEZN
b3ZlKGNoaWxkcmVuKSk7CiAgICAgfQogCi0gICAgaWYgKGF1dG8qIGZyYW1lVmlldyA9IG5vZGUt
PmRvY3VtZW50KCkudmlldygpKQotICAgICAgICB2YWx1ZS0+c2V0RnJhbWVJZChtX2luc3RydW1l
bnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCktPmZyYW1lSWQoJmZyYW1lVmlldy0+ZnJh
bWUoKSkpOworICAgIGF1dG8qIHBhZ2VBZ2VudCA9IG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNw
ZWN0b3JQYWdlQWdlbnQoKTsKKyAgICBpZiAocGFnZUFnZW50KSB7CisgICAgICAgIGlmIChhdXRv
KiBmcmFtZVZpZXcgPSBub2RlLT5kb2N1bWVudCgpLnZpZXcoKSkKKyAgICAgICAgICAgIHZhbHVl
LT5zZXRGcmFtZUlkKHBhZ2VBZ2VudC0+ZnJhbWVJZCgmZnJhbWVWaWV3LT5mcmFtZSgpKSk7Cisg
ICAgfQogCiAgICAgaWYgKGlzPEVsZW1lbnQ+KCpub2RlKSkgewogICAgICAgICBFbGVtZW50JiBl
bGVtZW50ID0gZG93bmNhc3Q8RWxlbWVudD4oKm5vZGUpOwpAQCAtMTU4OCw3ICsxNjAxLDggQEAg
UmVmPEluc3BlY3Rvcjo6UHJvdG9jb2w6OkRPTTo6Tm9kZT4gSW5zcGVjdG9yRE9NQWdlbnQ6OmJ1
aWxkT2JqZWN0Rm9yTm9kZShOb2RlKgogICAgICAgICB9CiAgICAgfSBlbHNlIGlmIChpczxEb2N1
bWVudD4oKm5vZGUpKSB7CiAgICAgICAgIERvY3VtZW50JiBkb2N1bWVudCA9IGRvd25jYXN0PERv
Y3VtZW50Pigqbm9kZSk7Ci0gICAgICAgIHZhbHVlLT5zZXRGcmFtZUlkKG1faW5zdHJ1bWVudGlu
Z0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKS0+ZnJhbWVJZChkb2N1bWVudC5mcmFtZSgpKSk7
CisgICAgICAgIGlmIChwYWdlQWdlbnQpCisgICAgICAgICAgICB2YWx1ZS0+c2V0RnJhbWVJZChw
YWdlQWdlbnQtPmZyYW1lSWQoZG9jdW1lbnQuZnJhbWUoKSkpOwogICAgICAgICB2YWx1ZS0+c2V0
RG9jdW1lbnRVUkwoZG9jdW1lbnRVUkxTdHJpbmcoJmRvY3VtZW50KSk7CiAgICAgICAgIHZhbHVl
LT5zZXRCYXNlVVJMKGRvY3VtZW50QmFzZVVSTFN0cmluZygmZG9jdW1lbnQpKTsKICAgICAgICAg
dmFsdWUtPnNldFhtbFZlcnNpb24oZG9jdW1lbnQueG1sVmVyc2lvbigpKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yUGFnZUFnZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yUGFnZUFnZW50LmNwcApp
bmRleCBjNjQxYTZhMDQ4NDE5MzI2OGUyOWU5MGZmMDEyNmFiOTExYzkzMGRmLi5iZmVhNmQxNjIy
MWRiMmM2YTE0MDg1MTJlYjRiNWJhNTE1OGNiNzQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwCkBAIC0zNDMsNiAr
MzQzLDIxIEBAIEluc3BlY3RvclBhZ2VBZ2VudDo6SW5zcGVjdG9yUGFnZUFnZW50KFBhZ2VBZ2Vu
dENvbnRleHQmIGNvbnRleHQsIEluc3BlY3RvckNsaWVuCiAKIHZvaWQgSW5zcGVjdG9yUGFnZUFn
ZW50OjpkaWRDcmVhdGVGcm9udGVuZEFuZEJhY2tlbmQoSW5zcGVjdG9yOjpGcm9udGVuZFJvdXRl
ciosIEluc3BlY3Rvcjo6QmFja2VuZERpc3BhdGNoZXIqKQogeworfQorCit2b2lkIEluc3BlY3Rv
clBhZ2VBZ2VudDo6d2lsbERlc3Ryb3lGcm9udGVuZEFuZEJhY2tlbmQoSW5zcGVjdG9yOjpEaXNj
b25uZWN0UmVhc29uKQoreworICAgIEVycm9yU3RyaW5nIHVudXNlZDsKKyAgICBkaXNhYmxlKHVu
dXNlZCk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yUGFnZUFnZW50OjplbmFibGUoRXJyb3JTdHJpbmcm
IGVycm9yU3RyaW5nKQoreworICAgIGlmIChtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9y
UGFnZUFnZW50KCkgPT0gdGhpcykgeworICAgICAgICBlcnJvclN0cmluZyA9ICJQYWdlIGRvbWFp
biBhbHJlYWR5IGVuYWJsZWQiX3M7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICBtX2lu
c3RydW1lbnRpbmdBZ2VudHMuc2V0SW5zcGVjdG9yUGFnZUFnZW50KHRoaXMpOwogCiAgICAgYXV0
byBzdG9wd2F0Y2ggPSBtX2Vudmlyb25tZW50LmV4ZWN1dGlvblN0b3B3YXRjaCgpOwpAQCAtMzU0
LDggKzM2OSwxMCBAQCB2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6ZGlkQ3JlYXRlRnJvbnRlbmRB
bmRCYWNrZW5kKEluc3BlY3Rvcjo6RnJvbnRlbmRSb3V0ZXIqLAogI2VuZGlmCiB9CiAKLXZvaWQg
SW5zcGVjdG9yUGFnZUFnZW50Ojp3aWxsRGVzdHJveUZyb250ZW5kQW5kQmFja2VuZChJbnNwZWN0
b3I6OkRpc2Nvbm5lY3RSZWFzb24pCit2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6ZGlzYWJsZShF
cnJvclN0cmluZyYpCiB7CisgICAgbV9pbnN0cnVtZW50aW5nQWdlbnRzLnNldEluc3BlY3RvclBh
Z2VBZ2VudChudWxscHRyKTsKKwogICAgIEVycm9yU3RyaW5nIHVudXNlZDsKICAgICBzZXRTaG93
UGFpbnRSZWN0cyh1bnVzZWQsIGZhbHNlKTsKICAgICBzZXRTaG93UnVsZXJzKHVudXNlZCwgZmFs
c2UpOwpAQCAtMzcxLDggKzM4OCw2IEBAIHZvaWQgSW5zcGVjdG9yUGFnZUFnZW50Ojp3aWxsRGVz
dHJveUZyb250ZW5kQW5kQmFja2VuZChJbnNwZWN0b3I6OkRpc2Nvbm5lY3RSZWFzCiAjdW5kZWYg
RElTQUJMRV9JTlNQRUNUT1JfT1ZFUlJJREVfU0VUVElORwogCiAgICAgbV9jbGllbnQtPnNldE1v
Y2tDYXB0dXJlRGV2aWNlc0VuYWJsZWRPdmVycmlkZShXVEY6Om51bGxvcHQpOwotCi0gICAgbV9p
bnN0cnVtZW50aW5nQWdlbnRzLnNldEluc3BlY3RvclBhZ2VBZ2VudChudWxscHRyKTsKIH0KIAog
ZG91YmxlIEluc3BlY3RvclBhZ2VBZ2VudDo6dGltZXN0YW1wKCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yUGFnZUFnZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvclBhZ2VBZ2VudC5oCmluZGV4IDExZDQ5
OWZiMjEwZGY3ZDMxMzFhMjlhZjY5OTFiZmY0YWJhYzU0YzcuLjNlZWQwMTljOWZlZTQ2M2I0ZWFm
ZjEzNzBmYjBlYWUxMjAxNzQ4MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yUGFnZUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2FnZW50cy9JbnNwZWN0b3JQYWdlQWdlbnQuaApAQCAtODgsNiArODgsOCBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIERvY3VtZW50TG9hZGVyKiBhc3NlcnREb2N1bWVudExvYWRlcihFcnJvclN0
cmluZyYsIEZyYW1lKik7CiAKICAgICAvLyBQYWdlQmFja2VuZERpc3BhdGNoZXJIYW5kbGVyCisg
ICAgdm9pZCBlbmFibGUoRXJyb3JTdHJpbmcmKSBmaW5hbDsKKyAgICB2b2lkIGRpc2FibGUoRXJy
b3JTdHJpbmcmKSBmaW5hbDsKICAgICB2b2lkIHJlbG9hZChFcnJvclN0cmluZyYsIGNvbnN0IGJv
b2wqIG9wdGlvbmFsUmVsb2FkRnJvbU9yaWdpbiwgY29uc3QgYm9vbCogb3B0aW9uYWxSZXZhbGlk
YXRlQWxsUmVzb3VyY2VzKSBmaW5hbDsKICAgICB2b2lkIG5hdmlnYXRlKEVycm9yU3RyaW5nJiwg
Y29uc3QgU3RyaW5nJiB1cmwpIGZpbmFsOwogICAgIHZvaWQgb3ZlcnJpZGVVc2VyQWdlbnQoRXJy
b3JTdHJpbmcmLCBjb25zdCBTdHJpbmcqIHZhbHVlKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3Bw
CmluZGV4IDMwZDg2Yzc0NjNjNDdmNWIzYWQyYjM4Y2Y1ZGUyNDlkNDRlYjlhNWQuLmUwZTg2MGQ4
NjYwNmU5NTFiM2U0NjAwN2IxOWQyMjU5YmViNTdiYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcApA
QCAtNzQxLDcgKzc0MSwxMSBAQCB2b2lkIEluc3BlY3RvclRpbWVsaW5lQWdlbnQ6OnNldEZyYW1l
SWRlbnRpZmllcihKU09OOjpPYmplY3QqIHJlY29yZCwgRnJhbWUqIGZyYQogICAgIGlmICghZnJh
bWUpCiAgICAgICAgIHJldHVybjsKIAotICAgIHJlY29yZC0+c2V0U3RyaW5nKCJmcmFtZUlkIl9z
LCBtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCktPmZyYW1lSWQoZnJh
bWUpKTsKKyAgICBhdXRvKiBwYWdlQWdlbnQgPSBtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVj
dG9yUGFnZUFnZW50KCk7CisgICAgaWYgKCFwYWdlQWdlbnQpCisgICAgICAgIHJldHVybjsKKwor
ICAgIHJlY29yZC0+c2V0U3RyaW5nKCJmcmFtZUlkIl9zLCBwYWdlQWdlbnQtPmZyYW1lSWQoZnJh
bWUpKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JUaW1lbGluZUFnZW50OjpkaWRDb21wbGV0ZVJlY29y
ZEVudHJ5KGNvbnN0IFRpbWVsaW5lUmVjb3JkRW50cnkmIGVudHJ5KQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9wYWdlL1BhZ2VOZXR3b3JrQWdlbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9wYWdlL1BhZ2VOZXR3b3JrQWdlbnQuY3Bw
CmluZGV4IDk4MGFkODJhNTI1ZjAyZTFmZTg2M2I3MmE5MTRiYWQyZDY2ZTYxZTAuLmNjOGNkNDFj
ZGY4YmI0Zjk3MGQzZWM1NmMwY2M2ZWU5M2ZjYzk1ZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9hZ2VudHMvcGFnZS9QYWdlTmV0d29ya0FnZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL3BhZ2UvUGFnZU5ldHdvcmtBZ2VudC5jcHAKQEAg
LTQ4LDE1ICs0OCwxOSBAQCBQYWdlTmV0d29ya0FnZW50OjpQYWdlTmV0d29ya0FnZW50KFBhZ2VB
Z2VudENvbnRleHQmIGNvbnRleHQpCiAKIFN0cmluZyBQYWdlTmV0d29ya0FnZW50Ojpsb2FkZXJJ
ZGVudGlmaWVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiB7Ci0gICAgaWYgKGxvYWRlcikKLSAg
ICAgICAgcmV0dXJuIG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKS0+
bG9hZGVySWQobG9hZGVyKTsKKyAgICBpZiAobG9hZGVyKSB7CisgICAgICAgIGlmIChhdXRvKiBw
YWdlQWdlbnQgPSBtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCkpCisg
ICAgICAgICAgICByZXR1cm4gcGFnZUFnZW50LT5sb2FkZXJJZChsb2FkZXIpOworICAgIH0KICAg
ICByZXR1cm4geyB9OwogfQogCiBTdHJpbmcgUGFnZU5ldHdvcmtBZ2VudDo6ZnJhbWVJZGVudGlm
aWVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiB7Ci0gICAgaWYgKGxvYWRlcikKLSAgICAgICAg
cmV0dXJuIG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKS0+ZnJhbWVJ
ZChsb2FkZXItPmZyYW1lKCkpOworICAgIGlmIChsb2FkZXIpIHsKKyAgICAgICAgaWYgKGF1dG8q
IHBhZ2VBZ2VudCA9IG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKSkK
KyAgICAgICAgICAgIHJldHVybiBwYWdlQWdlbnQtPmZyYW1lSWQobG9hZGVyLT5mcmFtZSgpKTsK
KyAgICB9CiAgICAgcmV0dXJuIHsgfTsKIH0KIApAQCAtOTYsNyArMTAwLDEzIEBAIHZvaWQgUGFn
ZU5ldHdvcmtBZ2VudDo6c2V0UmVzb3VyY2VDYWNoaW5nRGlzYWJsZWQoYm9vbCBkaXNhYmxlZCkK
IAogU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogUGFnZU5ldHdvcmtBZ2VudDo6c2NyaXB0RXhlY3V0
aW9uQ29udGV4dChFcnJvclN0cmluZyYgZXJyb3JTdHJpbmcsIGNvbnN0IFN0cmluZyYgZnJhbWVJ
ZCkKIHsKLSAgICBhdXRvKiBmcmFtZSA9IG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQ
YWdlQWdlbnQoKS0+YXNzZXJ0RnJhbWUoZXJyb3JTdHJpbmcsIGZyYW1lSWQpOworICAgIGF1dG8q
IHBhZ2VBZ2VudCA9IG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKTsK
KyAgICBpZiAoIXBhZ2VBZ2VudCkgeworICAgICAgICBlcnJvclN0cmluZyA9ICJQYWdlIGRvbWFp
biBtdXN0IGJlIGVuYWJsZWQiX3M7CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKwor
ICAgIGF1dG8qIGZyYW1lID0gcGFnZUFnZW50LT5hc3NlcnRGcmFtZShlcnJvclN0cmluZywgZnJh
bWVJZCk7CiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvcGFnZS9QYWdlUnVudGltZUFn
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvcGFnZS9QYWdlUnVudGlt
ZUFnZW50LmNwcAppbmRleCA4OTg1YmM5NDVmZTc1ZTBlODUxYTM2ZGUzNTg0YWIwNDcxYzBmZGZm
Li4yODRkMjg2ODVjZDlhMTJlODUwYWRmZTRkYmYyZjI3MTYzNDcwOTgyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL3BhZ2UvUGFnZVJ1bnRpbWVBZ2VudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9wYWdlL1BhZ2VSdW50aW1lQWdl
bnQuY3BwCkBAIC04NSw3ICs4NSwxMSBAQCB2b2lkIFBhZ2VSdW50aW1lQWdlbnQ6OmRpc2FibGUo
RXJyb3JTdHJpbmcmIGVycm9yU3RyaW5nKQogCiB2b2lkIFBhZ2VSdW50aW1lQWdlbnQ6OmRpZENy
ZWF0ZU1haW5Xb3JsZENvbnRleHQoRnJhbWUmIGZyYW1lKQogewotICAgIGF1dG8gZnJhbWVJZCA9
IG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKS0+ZnJhbWVJZCgmZnJh
bWUpOworICAgIGF1dG8qIHBhZ2VBZ2VudCA9IG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0
b3JQYWdlQWdlbnQoKTsKKyAgICBpZiAoIXBhZ2VBZ2VudCkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgYXV0byBmcmFtZUlkID0gcGFnZUFnZW50LT5mcmFtZUlkKCZmcmFtZSk7CiAgICAgYXV0byog
c2NyaXB0U3RhdGUgPSBtYWluV29ybGRFeGVjU3RhdGUoJmZyYW1lKTsKICAgICBub3RpZnlDb250
ZXh0Q3JlYXRlZChmcmFtZUlkLCBzY3JpcHRTdGF0ZSwgbnVsbHB0ciwgdHJ1ZSk7CiB9CkBAIC0x
MTgsMTEgKzEyMiwxNiBAQCB2b2lkIFBhZ2VSdW50aW1lQWdlbnQ6OnVubXV0ZUNvbnNvbGUoKQog
CiB2b2lkIFBhZ2VSdW50aW1lQWdlbnQ6OnJlcG9ydEV4ZWN1dGlvbkNvbnRleHRDcmVhdGlvbigp
CiB7CisgICAgYXV0byogcGFnZUFnZW50ID0gbV9pbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3Rv
clBhZ2VBZ2VudCgpOworICAgIGlmICghcGFnZUFnZW50KQorICAgICAgICByZXR1cm47CisKICAg
ICBWZWN0b3I8c3RkOjpwYWlyPEpTQzo6RXhlY1N0YXRlKiwgU2VjdXJpdHlPcmlnaW4qPj4gaXNv
bGF0ZWRDb250ZXh0czsKICAgICBmb3IgKEZyYW1lKiBmcmFtZSA9ICZtX2luc3BlY3RlZFBhZ2Uu
bWFpbkZyYW1lKCk7IGZyYW1lOyBmcmFtZSA9IGZyYW1lLT50cmVlKCkudHJhdmVyc2VOZXh0KCkp
IHsKICAgICAgICAgaWYgKCFmcmFtZS0+c2NyaXB0KCkuY2FuRXhlY3V0ZVNjcmlwdHMoTm90QWJv
dXRUb0V4ZWN1dGVTY3JpcHQpKQogICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIFN0cmlu
ZyBmcmFtZUlkID0gbV9pbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpLT5m
cmFtZUlkKGZyYW1lKTsKKworICAgICAgICBTdHJpbmcgZnJhbWVJZCA9IHBhZ2VBZ2VudC0+ZnJh
bWVJZChmcmFtZSk7CiAKICAgICAgICAgSlNDOjpFeGVjU3RhdGUqIHNjcmlwdFN0YXRlID0gbWFp
bldvcmxkRXhlY1N0YXRlKGZyYW1lKTsKICAgICAgICAgbm90aWZ5Q29udGV4dENyZWF0ZWQoZnJh
bWVJZCwgc2NyaXB0U3RhdGUsIG51bGxwdHIsIHRydWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvTmV0d29ya01hbmFnZXIuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9OZXR3b3Jr
TWFuYWdlci5qcwppbmRleCA3YTVjOWY1YjYwM2U3Mzg5YmYyMzU5ZDNlNDEzMGZmNmZkN2Q2YTU3
Li5mODJhOTg3YThkNGEzYzUyNzBhMDE2NmI0NGMxYTk0NGNjNzg3ZjY1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9OZXR3b3JrTWFu
YWdlci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9s
bGVycy9OZXR3b3JrTWFuYWdlci5qcwpAQCAtNzYsMTAgKzc2LDcgQEAgV0kuTmV0d29ya01hbmFn
ZXIgPSBjbGFzcyBOZXR3b3JrTWFuYWdlciBleHRlbmRzIFdJLk9iamVjdAogICAgIGluaXRpYWxp
emVUYXJnZXQodGFyZ2V0KQogICAgIHsKICAgICAgICAgaWYgKHRhcmdldC5QYWdlQWdlbnQpIHsK
LSAgICAgICAgICAgIC8vIENPTVBBVElCSUxJVFkgKGlPUyAxMyk6IFBhZ2UuZW5hYmxlIHdhcyBy
ZW1vdmVkLgotICAgICAgICAgICAgaWYgKHRhcmdldC5QYWdlQWdlbnQuZW5hYmxlKQotICAgICAg
ICAgICAgICAgIHRhcmdldC5QYWdlQWdlbnQuZW5hYmxlKCk7Ci0KKyAgICAgICAgICAgIHRhcmdl
dC5QYWdlQWdlbnQuZW5hYmxlKCk7CiAgICAgICAgICAgICB0YXJnZXQuUGFnZUFnZW50LmdldFJl
c291cmNlVHJlZSh0aGlzLl9wcm9jZXNzTWFpbkZyYW1lUmVzb3VyY2VUcmVlUGF5bG9hZC5iaW5k
KHRoaXMpKTsKICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZDY5YTRlYjM2MWY3Y2I0OWJjZDFjODYxZjJm
YWIzNjBiYzIzYTI4OS4uNWU1MzljN2IxY2E1MTU0MWVlNTk1NDMzNzIzYzAwOTEwMjdiMDhjYSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE5LTA4LTIwICBEZXZpbiBSb3Vzc28gIDxkcm91c3Nv
QGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBQYWdlOiByZS1hZGQgZW5hYmxl
L2Rpc2FibGUgYWZ0ZXIgcjI0ODQ1NAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjAwOTQ3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBodHRwL3Rlc3RzL2luc3BlY3Rvci9wYWdlL2xvYWRpbmctaWZyYW1l
LWRvY3VtZW50LW5vZGUuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvY3NzL2dldE1hdGNoZWRT
dHlsZXNGb3JOb2RlLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL2Nzcy9nZXRNYXRjaGVkU3R5
bGVzRm9yTm9kZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVjdG9yL3BhZ2UvYXJjaGl2
ZS5odG1sOgorICAgICAgICAqIGluc3BlY3Rvci9wYWdlL2ZyYW1lU2NoZWR1bGVkTmF2aWdhdGlv
bi5odG1sOgorICAgICAgICAqIGluc3BlY3Rvci9wYWdlL2ZyYW1lU2NoZWR1bGVkTmF2aWdhdGlv
bi1hc3luYy1kZWxlZ2F0ZXMuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvcGFnZS9mcmFtZVN0
YXJ0ZWRMb2FkaW5nLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL3BhZ2UvbWVkaWEtcXVlcnkt
bGlzdC1saXN0ZW5lci1leGNlcHRpb24uaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvdGltZWxp
bmUvbGluZS1jb2x1bW4uaHRtbDoKKwogMjAxOS0wOC0yMCAgUnVzc2VsbCBFcHN0ZWluICA8cmVw
c3RlaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFVwZGF0aW5nIEV4cGVjdGF0aW9ucyBmb3IgTXVs
dGlwbGUgTmV3bHkgUGFzc2luZyBUZXN0cy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW5zcGVjdG9yL3BhZ2UvbG9hZGluZy1pZnJhbWUtZG9jdW1lbnQtbm9kZS5odG1sIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvcGFnZS9sb2FkaW5nLWlmcmFtZS1kb2N1
bWVudC1ub2RlLmh0bWwKaW5kZXggNTJmNzY4OWIwMzVjZDA2MWI0MzNiOTM4MWEzZjljOTc0ODMw
YmU1NC4uOTU5ODUxOWNiYThjMGNlMWQzNjY0MDM4ODNlYTYzNGNjYWM3NTQxMyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvcGFnZS9sb2FkaW5nLWlmcmFtZS1k
b2N1bWVudC1ub2RlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3Iv
cGFnZS9sb2FkaW5nLWlmcmFtZS1kb2N1bWVudC1ub2RlLmh0bWwKQEAgLTM1LDE0ICszNSwxNyBA
QCBmdW5jdGlvbiB0ZXN0KCkKIAogICAgIGZ1bmN0aW9uIHN0ZXAxX2Jvb3RzdHJhcCgpIHsKICAg
ICAgICAgUHJvdG9jb2xUZXN0LmxvZygic3RlcDFfYm9vdHN0cmFwIik7Ci0gICAgICAgIC8vIEVu
YWJsZSB0aGUgUnVudGltZS5leGVjdXRpb25Db250ZXh0Q3JlYXRlZCBldmVudC4KLSAgICAgICAg
SW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIlJ1bnRpbWUuZW5hYmxlIiwge30sIGZ1bmN0
aW9uKCkgewotICAgICAgICAgICAgLy8gSW5pdGlhbGl6ZSB0aGUgRE9NIGFnZW50LgotICAgICAg
ICAgICAgSW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIkRPTS5nZXREb2N1bWVudCIsIHt9
LCBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICBQcm90b2NvbFRlc3QubG9nKCJNYWluIGRv
Y3VtZW50IGxvYWRlZCIpOwotICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgIC8vIEFk
ZCB0aGUgaWZyYW1lIHRvIHRoZSBET00uCi0gICAgICAgICAgICAgICAgSW5zcGVjdG9yUHJvdG9j
b2wuc2VuZENvbW1hbmQoIlJ1bnRpbWUuZXZhbHVhdGUiLCB7ICJleHByZXNzaW9uIjogImFwcGVu
ZElmcmFtZSgpIiB9KTsKKyAgICAgICAgLy8gRW5hYmxlIHRoZSBmcmFtZSBldmVudHMuCisgICAg
ICAgIEluc3BlY3RvclByb3RvY29sLnNlbmRDb21tYW5kKCJQYWdlLmVuYWJsZSIsIHt9LCBmdW5j
dGlvbigpIHsKKyAgICAgICAgICAgIC8vIEVuYWJsZSB0aGUgUnVudGltZS5leGVjdXRpb25Db250
ZXh0Q3JlYXRlZCBldmVudC4KKyAgICAgICAgICAgIEluc3BlY3RvclByb3RvY29sLnNlbmRDb21t
YW5kKCJSdW50aW1lLmVuYWJsZSIsIHt9LCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAv
LyBJbml0aWFsaXplIHRoZSBET00gYWdlbnQuCisgICAgICAgICAgICAgICAgSW5zcGVjdG9yUHJv
dG9jb2wuc2VuZENvbW1hbmQoIkRPTS5nZXREb2N1bWVudCIsIHt9LCBmdW5jdGlvbigpIHsKKyAg
ICAgICAgICAgICAgICAgICAgUHJvdG9jb2xUZXN0LmxvZygiTWFpbiBkb2N1bWVudCBsb2FkZWQi
KTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIC8vIEFkZCB0aGUg
aWZyYW1lIHRvIHRoZSBET00uCisgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclByb3RvY29s
LnNlbmRDb21tYW5kKCJSdW50aW1lLmV2YWx1YXRlIiwgeyAiZXhwcmVzc2lvbiI6ICJhcHBlbmRJ
ZnJhbWUoKSIgfSk7CisgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICB9KTsKICAgICAg
ICAgfSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9nZXRN
YXRjaGVkU3R5bGVzRm9yTm9kZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
Y3NzL2dldE1hdGNoZWRTdHlsZXNGb3JOb2RlLWV4cGVjdGVkLnR4dAppbmRleCAzNWM1NjZmNDhm
MjY0OTBmNWE4NmY1NmJjZjkyMWY4YjQ2OGM0MzI2Li4yYzRkNTI0NDlkNDhjODk2Nzg4YmIwYmQw
YzM4YjI3Zjc1NWFjZjI2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL2dl
dE1hdGNoZWRTdHlsZXNGb3JOb2RlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvY3NzL2dldE1hdGNoZWRTdHlsZXNGb3JOb2RlLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsx
LDYgQEAKIFRlc3RpbmcgQ1NTLmdldE1hdGNoZWRTdHlsZXNGb3JOb2RlLgogCitFbmFibGluZyBQ
YWdlIGRvbWFpbi4uLgogUmVxdWVzdGluZyBkb2N1bWVudC4uLgogUXVlcnlpbmcgZm9yICJkaXYj
eCIuLi4KIEdldHRpbmcgbWF0Y2hlZCBzdHlsZXMgZm9yICJkaXYjeCIuLi4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3MvZ2V0TWF0Y2hlZFN0eWxlc0Zvck5vZGUuaHRtbCBi
L0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3MvZ2V0TWF0Y2hlZFN0eWxlc0Zvck5vZGUuaHRtbApp
bmRleCA2ZGJiZjJlYTM5YTA0ZmUzNDRkNmMxODIyMTJjMTViYzhhODdiYTJmLi5kYjk1ZGRmMzMw
ZmQxOTI2YWQ3ZTc4OGM5NmQzYzI1MWY1MDYwZmNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvY3NzL2dldE1hdGNoZWRTdHlsZXNGb3JOb2RlLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL2Nzcy9nZXRNYXRjaGVkU3R5bGVzRm9yTm9kZS5odG1sCkBAIC0zNSw2ICsz
NSwxMyBAQAogZnVuY3Rpb24gdGVzdCgpCiB7CiAgICAgUHJvbWlzZS5yZXNvbHZlKCkKKyAgICAu
dGhlbigoKSA9PiB7CisgICAgICAgIFByb3RvY29sVGVzdC5sb2coIkVuYWJsaW5nIFBhZ2UgZG9t
YWluLi4uIik7CisgICAgICAgIHJldHVybiBJbnNwZWN0b3JQcm90b2NvbC5hd2FpdENvbW1hbmQo
eworICAgICAgICAgICAgbWV0aG9kOiAiUGFnZS5lbmFibGUiLAorICAgICAgICAgICAgcGFyYW1z
OiB7fSwKKyAgICAgICAgfSk7CisgICAgfSkKICAgICAudGhlbigoKSA9PiB7CiAgICAgICAgIFBy
b3RvY29sVGVzdC5sb2coIlJlcXVlc3RpbmcgZG9jdW1lbnQuLi4iKTsKICAgICAgICAgcmV0dXJu
IEluc3BlY3RvclByb3RvY29sLmF3YWl0Q29tbWFuZCh7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvcGFnZS9hcmNoaXZlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvcGFn
ZS9hcmNoaXZlLmh0bWwKaW5kZXggNmE3OGY4ZGVmMWFiMzdlMzA1OGUzYTJmZjVkMDBlOTI2YjU1
MDU5Mi4uODA2OTFkMGE0MmFhZmVhMTJhN2NjNTFlZGNmMzI4NzlmYWFkNWM3MCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3BhZ2UvYXJjaGl2ZS5odG1sCisrKyBiL0xheW91dFRl
c3RzL2luc3BlY3Rvci9wYWdlL2FyY2hpdmUuaHRtbApAQCAtNCw2ICs0LDcgQEAKIDxzY3JpcHQ+
CiBmdW5jdGlvbiB0ZXN0KCkKIHsKKyAgICBJbnNwZWN0b3JQcm90b2NvbC5zZW5kQ29tbWFuZCgi
UGFnZS5lbmFibGUiLCB7fSk7CiAgICAgSW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIlBh
Z2UuYXJjaGl2ZSIsIHt9LCBmdW5jdGlvbihldmVudCkgewogICAgICAgICB2YXIgZGF0YSA9IGV2
ZW50LnJlc3VsdC5kYXRhOwogICAgICAgICBpZiAoIWRhdGEpCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvcGFnZS9mcmFtZVNjaGVkdWxlZE5hdmlnYXRpb24tYXN5bmMtZGVsZWdh
dGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvcGFnZS9mcmFtZVNjaGVkdWxlZE5hdmln
YXRpb24tYXN5bmMtZGVsZWdhdGVzLmh0bWwKaW5kZXggNWZjODgzZmIyMGJmZTYyNzI4NDllNzgx
OWU2YzI0OTE5MWYwOTBhMy4uYWFmMWY4MTQ0YWE3M2VlMGNlNTE1Zjk3ZThlZjgwYzhiMjQzYzNl
MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3BhZ2UvZnJhbWVTY2hlZHVsZWRO
YXZpZ2F0aW9uLWFzeW5jLWRlbGVnYXRlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rv
ci9wYWdlL2ZyYW1lU2NoZWR1bGVkTmF2aWdhdGlvbi1hc3luYy1kZWxlZ2F0ZXMuaHRtbApAQCAt
MTYsNiArMTYsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBJbnNwZWN0b3JQcm90b2NvbC5ldmVu
dEhhbmRsZXJbIlBhZ2UuZnJhbWVTY2hlZHVsZWROYXZpZ2F0aW9uIl0gPSBvblNjaGVkdWxlZDsK
ICAgICBJbnNwZWN0b3JQcm90b2NvbC5ldmVudEhhbmRsZXJbIlBhZ2UuZnJhbWVTdGFydGVkTG9h
ZGluZyJdID0gb25TdGFydGVkOwogICAgIEluc3BlY3RvclByb3RvY29sLmV2ZW50SGFuZGxlclsi
UGFnZS5mcmFtZUNsZWFyZWRTY2hlZHVsZWROYXZpZ2F0aW9uIl0gPSBvbkNsZWFyZWQ7CisgICAg
SW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIlBhZ2UuZW5hYmxlIiwge30pOwogCiAgICAg
ZnVuY3Rpb24gb25TY2hlZHVsZWQobXNnKQogICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2luc3BlY3Rvci9wYWdlL2ZyYW1lU2NoZWR1bGVkTmF2aWdhdGlvbi5odG1sIGIvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL3BhZ2UvZnJhbWVTY2hlZHVsZWROYXZpZ2F0aW9uLmh0bWwKaW5kZXggZmM2
YTU4ZDg4MGY1MjYyMjhjMDEwZjRmZWQzNDMyNWE4NzQ3NjVhZS4uZmZiMDQ3ZWE2NDJkMDNlYmI1
MjE1NmFlYjNiNjE1YjMxMDllMWFhNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9y
L3BhZ2UvZnJhbWVTY2hlZHVsZWROYXZpZ2F0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL3BhZ2UvZnJhbWVTY2hlZHVsZWROYXZpZ2F0aW9uLmh0bWwKQEAgLTEzLDYgKzEzLDcg
QEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgSW5zcGVjdG9yUHJvdG9jb2wuZXZlbnRIYW5kbGVyWyJQ
YWdlLmZyYW1lU2NoZWR1bGVkTmF2aWdhdGlvbiJdID0gb25TY2hlZHVsZWQ7CiAgICAgSW5zcGVj
dG9yUHJvdG9jb2wuZXZlbnRIYW5kbGVyWyJQYWdlLmZyYW1lU3RhcnRlZExvYWRpbmciXSA9IG9u
U3RhcnRlZDsKICAgICBJbnNwZWN0b3JQcm90b2NvbC5ldmVudEhhbmRsZXJbIlBhZ2UuZnJhbWVD
bGVhcmVkU2NoZWR1bGVkTmF2aWdhdGlvbiJdID0gb25DbGVhcmVkOworICAgIEluc3BlY3RvclBy
b3RvY29sLnNlbmRDb21tYW5kKCJQYWdlLmVuYWJsZSIsIHt9KTsKIAogICAgIGZ1bmN0aW9uIG9u
U2NoZWR1bGVkKG1zZykKICAgICB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
cGFnZS9mcmFtZVN0YXJ0ZWRMb2FkaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvcGFn
ZS9mcmFtZVN0YXJ0ZWRMb2FkaW5nLmh0bWwKaW5kZXggOTM2NGJjMzc3ZDFkN2FlMWIzNDU5ZTNh
YjQ5YzEwNzQxMTA3NWVhYS4uM2Y3MjgwYzkyZTRlMzQxZGRmZjhlNjdlMGE3NjRjMTRmOTEwYmZm
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3BhZ2UvZnJhbWVTdGFydGVkTG9h
ZGluZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9wYWdlL2ZyYW1lU3RhcnRlZExv
YWRpbmcuaHRtbApAQCAtMTQsNiArMTQsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKIHsKICAgICBJbnNw
ZWN0b3JQcm90b2NvbC5ldmVudEhhbmRsZXJbIlBhZ2UuZnJhbWVTdGFydGVkTG9hZGluZyJdID0g
b25TdGFydDsKICAgICBJbnNwZWN0b3JQcm90b2NvbC5ldmVudEhhbmRsZXJbIlBhZ2UuZnJhbWVT
dG9wcGVkTG9hZGluZyJdID0gb25TdG9wOworICAgIEluc3BlY3RvclByb3RvY29sLnNlbmRDb21t
YW5kKCJQYWdlLmVuYWJsZSIsIHt9KTsKIAogICAgIGZ1bmN0aW9uIG9uU3RhcnQoKQogICAgIHsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9wYWdlL21lZGlhLXF1ZXJ5LWxpc3Qt
bGlzdGVuZXItZXhjZXB0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvcGFnZS9tZWRp
YS1xdWVyeS1saXN0LWxpc3RlbmVyLWV4Y2VwdGlvbi5odG1sCmluZGV4IDhiYTc0NGMxYTY5MjNh
ODg3ZTdiZGNlNjgwMzY4MTllMmUwODZmMTguLmI2OWFkNzFmODBkMDFhMzRlNDQ4YzNkODg3MDYw
NmZkYjk5NTk3YTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9wYWdlL21lZGlh
LXF1ZXJ5LWxpc3QtbGlzdGVuZXItZXhjZXB0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL3BhZ2UvbWVkaWEtcXVlcnktbGlzdC1saXN0ZW5lci1leGNlcHRpb24uaHRtbApAQCAt
MTAsNiArMTAsNyBAQCB0aGVNZWRpYVF1ZXJ5TGlzdC5hZGRMaXN0ZW5lcihmdW5jdGlvbihhTWVk
aWFRdWVyeUxpc3QpIHsKIAogZnVuY3Rpb24gdGVzdCgpCiB7CisgICAgSW5zcGVjdG9yUHJvdG9j
b2wuc2VuZENvbW1hbmQoIlBhZ2UuZW5hYmxlIiwge30pOwogICAgIEluc3BlY3RvclByb3RvY29s
LnNlbmRDb21tYW5kKCJQYWdlLnNldEVtdWxhdGVkTWVkaWEiLCB7Im1lZGlhIjogInByaW50In0s
IGZ1bmN0aW9uKG1lc3NhZ2VPYmplY3QpIHsKICAgICAgICAgaWYgKG1lc3NhZ2VPYmplY3QuZXJy
b3IpCiAgICAgICAgICAgICBQcm90b2NvbFRlc3QubG9nKCJGQUlMRUQ6ICIgKyBtZXNzYWdlT2Jq
ZWN0LmVycm9yLm1lc3NhZ2UpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3Rp
bWVsaW5lL2xpbmUtY29sdW1uLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUv
bGluZS1jb2x1bW4uaHRtbAppbmRleCAwMzVlNGIxYTgzZDZiMGViODFlMjNkZmE2MzkwNWQ5ZWFl
ZDg5ZDM1Li41NzQzN2VkYmIzZTBhYjNlN2IxYmFiY2FjNGQ2YTEwYWY3Y2RiNzI0IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvbGluZS1jb2x1bW4uaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvbGluZS1jb2x1bW4uaHRtbApAQCAtMzcs
NiArMzcsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKIHsKICAgICBsZXQgc3VpdGUgPSBQcm90b2NvbFRl
c3QuY3JlYXRlQXN5bmNTdWl0ZSgiVGltZWxpbmUuTGluZUNvbHVtbiIpOwogCisgICAgSW5zcGVj
dG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIlBhZ2UuZW5hYmxlIiwge30pOwogICAgIEluc3BlY3Rv
clByb3RvY29sLnNlbmRDb21tYW5kKCJUaW1lbGluZS5lbmFibGUiKTsKIAogICAgIGZ1bmN0aW9u
IHJlcGxhY2VyKGtleSwgdmFsdWUpIHsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376860</attachid>
            <date>2019-08-21 03:30:55 -0700</date>
            <delta_ts>2019-08-21 09:50:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200947-20190821033054.patch</filename>
            <type>text/plain</type>
            <size>28188</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDczN2ZhYzVkZjVlYWJkYzQ2NjZkMjMzYWEwMzc5
ZmIxZjdlODdlMTQuLmEyZTllZWEzMmNhNmYwMzlmNGU4ZDM4YmM2NzY4ZTk2NTUyMTEzMjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE5LTA4LTIxICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBQ
YWdlOiByZS1hZGQgZW5hYmxlL2Rpc2FibGUgYWZ0ZXIgcjI0ODQ1NAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwOTQ3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgSm9zZXBoIFBlY29yYXJvLgorCisgICAgICAgIFdlIHNob3VsZG4ndCBkZXNpZ24gdGhl
IGFnZW50IHN5c3RlbSB3aXRoIG9ubHkgV2ViIEluc3BlY3RvciBpbiBtaW5kLiBPdGhlciBjbGll
bnRzIG1heSB3YW50CisgICAgICAgIHRvIGhhdmUgZGlmZmVyZW50IGZ1bmN0aW9uYWxpdHksIG5v
dCBiZWluZyB0b2xkIGFib3V0IGZyYW1lcyBjcmVhdGlvbi91cGRhdGVzL2Rlc3RydWN0aW9uLgor
ICAgICAgICBJbiB0aGVzZSBjYXNlcywgd2Ugc2hvdWxkIGhhdmUgZ3JhY2VmdWwgZXJyb3IgbWVz
c2FnZSBmYWlsdXJlcyBmb3Igb3RoZXIgYWdlbnRzIHRoYXQgcmVseSBvbgorICAgICAgICB0aGUg
UGFnZSBhZ2VudC4KKworICAgICAgICAqIGluc3BlY3Rvci9wcm90b2NvbC9QYWdlLmpzb246CisK
IDIwMTktMDgtMjAgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAg
IFVucmV2aWV3ZWQsIHNwZWN1bGF0aXZlIGJ1aWxkIGZpeCBmb3IgSGlnaCBTaWVycmEgYWZ0ZXIg
cjI0ODkyNQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IDdhNWFiZTgzMTNlNTQyN2I0NmQyMDk1NzI4ZDk4M2UyOWIz
NjIyNzkuLjcwMTIyYzg4N2FiZDJlZWRlODM0ZDlhNTFhODQxMGMyMGUxNjFkZGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSw0MiBAQAorMjAxOS0wOC0yMSAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0Bh
cHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUGFnZTogcmUtYWRkIGVuYWJsZS9k
aXNhYmxlIGFmdGVyIHIyNDg0NTQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMDk0NworCisgICAgICAgIFJldmlld2VkIGJ5IEpvc2VwaCBQZWNvcmFy
by4KKworICAgICAgICBXZSBzaG91bGRuJ3QgZGVzaWduIHRoZSBhZ2VudCBzeXN0ZW0gd2l0aCBv
bmx5IFdlYiBJbnNwZWN0b3IgaW4gbWluZC4gT3RoZXIgY2xpZW50cyBtYXkgd2FudAorICAgICAg
ICB0byBoYXZlIGRpZmZlcmVudCBmdW5jdGlvbmFsaXR5LCBub3QgYmVpbmcgdG9sZCBhYm91dCBm
cmFtZXMgY3JlYXRpb24vdXBkYXRlcy9kZXN0cnVjdGlvbi4KKyAgICAgICAgSW4gdGhlc2UgY2Fz
ZXMsIHdlIHNob3VsZCBoYXZlIGdyYWNlZnVsIGVycm9yIG1lc3NhZ2UgZmFpbHVyZXMgZm9yIG90
aGVyIGFnZW50cyB0aGF0IHJlbHkgb24KKyAgICAgICAgdGhlIFBhZ2UgYWdlbnQuCisKKyAgICAg
ICAgKiBpbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvclBhZ2VBZ2VudC5oOgorICAgICAgICAqIGlu
c3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yUGFnZUFnZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvclBhZ2VBZ2VudDo6ZGlkQ3JlYXRlRnJvbnRlbmRBbmRCYWNrZW5kKToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3RvclBhZ2VBZ2VudDo6d2lsbERlc3Ryb3lGcm9udGVuZEFuZEJh
Y2tlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjplbmFibGUpOiBB
ZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclBhZ2VBZ2VudDo6ZGlzYWJsZSk6IEFk
ZGVkLgorCisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNo
ZUFnZW50Ojp1cGRhdGVBcHBsaWNhdGlvbkNhY2hlU3RhdHVzKToKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0RnJhbWVzV2l0aE1hbmlmZXN0cyk6
CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmFzc2Vy
dEZyYW1lV2l0aERvY3VtZW50TG9hZGVyKToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL0lu
c3BlY3RvckNTU0FnZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNTU0FnZW50
OjpjcmVhdGVTdHlsZVNoZWV0KToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rv
ckRPTUFnZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRPTUFnZW50OjpoaWdo
bGlnaHRTZWxlY3Rvcik6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JET01BZ2VudDo6aGln
aGxpZ2h0RnJhbWUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NQWdlbnQ6OmJ1aWxk
T2JqZWN0Rm9yTm9kZSk6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JUaW1l
bGluZUFnZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclRpbWVsaW5lQWdlbnQ6
OnNldEZyYW1lSWRlbnRpZmllcik6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9wYWdlL1Bh
Z2VOZXR3b3JrQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZU5ldHdvcmtBZ2VudDo6
bG9hZGVySWRlbnRpZmllcik6CisgICAgICAgIChXZWJDb3JlOjpQYWdlTmV0d29ya0FnZW50Ojpm
cmFtZUlkZW50aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6UGFnZU5ldHdvcmtBZ2VudDo6c2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCk6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9wYWdlL1Bh
Z2VSdW50aW1lQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVJ1bnRpbWVBZ2VudDo6
ZGlkQ3JlYXRlTWFpbldvcmxkQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpQYWdlUnVudGlt
ZUFnZW50OjpyZXBvcnRFeGVjdXRpb25Db250ZXh0Q3JlYXRpb24pOgorCiAyMDE5LTA4LTIwICBS
eW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIG5leHRFbGVtZW50V2l0
aEdyZWF0ZXJUYWJJbmRleCBzaG91bGQgdXNlIHNoYWRvd0FkanVzdGVkVGFiSW5kZXgKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvQ2hhbmdlTG9nCmluZGV4IDAxYzUzOWM0OTllN2JjZTYzOGEyMmMwMjY5Nzc4YzQwYmRm
NThiOWMuLmZkYmYzODkyMzhmNmQzYjAxZjcyODgxM2ZjZGEwZDdhN2U3OWYxMWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE5LTA4LTIxICBEZXZpbiBSb3Vz
c28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBQYWdlOiBy
ZS1hZGQgZW5hYmxlL2Rpc2FibGUgYWZ0ZXIgcjI0ODQ1NAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwOTQ3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Sm9zZXBoIFBlY29yYXJvLgorCisgICAgICAgIFdlIHNob3VsZG4ndCBkZXNpZ24gdGhlIGFnZW50
IHN5c3RlbSB3aXRoIG9ubHkgV2ViIEluc3BlY3RvciBpbiBtaW5kLiBPdGhlciBjbGllbnRzIG1h
eSB3YW50CisgICAgICAgIHRvIGhhdmUgZGlmZmVyZW50IGZ1bmN0aW9uYWxpdHksIG5vdCBiZWlu
ZyB0b2xkIGFib3V0IGZyYW1lcyBjcmVhdGlvbi91cGRhdGVzL2Rlc3RydWN0aW9uLgorICAgICAg
ICBJbiB0aGVzZSBjYXNlcywgd2Ugc2hvdWxkIGhhdmUgZ3JhY2VmdWwgZXJyb3IgbWVzc2FnZSBm
YWlsdXJlcyBmb3Igb3RoZXIgYWdlbnRzIHRoYXQgcmVseSBvbgorICAgICAgICB0aGUgUGFnZSBh
Z2VudC4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvTmV0d29ya01hbmFn
ZXIuanM6CisgICAgICAgIChXSS5OZXR3b3JrTWFuYWdlci5wcm90b3R5cGUuaW5pdGlhbGl6ZVRh
cmdldCk6CisKIDIwMTktMDgtMjAgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgog
CiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEltcGxlbWVudCBgcXVlcnlIb2xkZXJzYCBDb21tYW5k
IExpbmUgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3By
b3RvY29sL1BhZ2UuanNvbiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9j
b2wvUGFnZS5qc29uCmluZGV4IDEzMDIyNDY4MWRmNGQ4ZWQyM2ZlNjBlOTAxN2VhZTE2MWFkOTk5
OTIuLmYzZTZhMjBlODJlYjMzNzNlYzM0ODA2MjUyZDlmNjFlZGY1YjJhY2UgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvUGFnZS5qc29uCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcHJvdG9jb2wvUGFnZS5qc29uCkBAIC0x
MTAsNiArMTEwLDE0IEBACiAgICAgICAgIH0KICAgICBdLAogICAgICJjb21tYW5kcyI6IFsKKyAg
ICAgICAgeworICAgICAgICAgICAgIm5hbWUiOiAiZW5hYmxlIiwKKyAgICAgICAgICAgICJkZXNj
cmlwdGlvbiI6ICJFbmFibGVzIHBhZ2UgZG9tYWluIG5vdGlmaWNhdGlvbnMuIgorICAgICAgICB9
LAorICAgICAgICB7CisgICAgICAgICAgICAibmFtZSI6ICJkaXNhYmxlIiwKKyAgICAgICAgICAg
ICJkZXNjcmlwdGlvbiI6ICJEaXNhYmxlcyBwYWdlIGRvbWFpbiBub3RpZmljYXRpb25zLiIKKyAg
ICAgICAgfSwKICAgICAgICAgewogICAgICAgICAgICAgIm5hbWUiOiAicmVsb2FkIiwKICAgICAg
ICAgICAgICJkZXNjcmlwdGlvbiI6ICJSZWxvYWRzIHRoZSBtYWluIGZyYW1lIG9mIHRoZSBpbnNw
ZWN0ZWQgcGFnZS4iLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50
cy9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3BwCmluZGV4IGZk
ZjA0NGM1NzliMzY4YzMyMDUxYjY1ZGM0NDBlMzg3ZjYwMThmYjcuLmVjMTY1YjdkOTdkMTRiOTAw
ZTk3N2QwM2U1ZDc3NTQ3NzliOGU5ZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9hZ2VudHMvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2Vu
dC5jcHAKQEAgLTg1LDYgKzg1LDEwIEBAIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFn
ZW50OjpkaXNhYmxlKEVycm9yU3RyaW5nJiBlcnJvclN0cmluZykKIAogdm9pZCBJbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQ6OnVwZGF0ZUFwcGxpY2F0aW9uQ2FjaGVTdGF0dXMoRnJhbWUq
IGZyYW1lKQogeworICAgIGF1dG8qIHBhZ2VBZ2VudCA9IG1faW5zdHJ1bWVudGluZ0FnZW50cy5p
bnNwZWN0b3JQYWdlQWdlbnQoKTsKKyAgICBpZiAoIXBhZ2VBZ2VudCkKKyAgICAgICAgcmV0dXJu
OworCiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuOwogCkBAIC05Niw3ICsxMDAsNyBA
QCB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6dXBkYXRlQXBwbGljYXRpb25D
YWNoZVN0YXR1cyhGcmFtZSogZnJhbWUpCiAgICAgaW50IHN0YXR1cyA9IGhvc3Quc3RhdHVzKCk7
CiAgICAgYXV0byBtYW5pZmVzdFVSTCA9IGhvc3QuYXBwbGljYXRpb25DYWNoZUluZm8oKS5tYW5p
ZmVzdC5zdHJpbmcoKTsKIAotICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5hcHBsaWNhdGlvbkNh
Y2hlU3RhdHVzVXBkYXRlZChtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50
KCktPmZyYW1lSWQoZnJhbWUpLCBtYW5pZmVzdFVSTCwgc3RhdHVzKTsKKyAgICBtX2Zyb250ZW5k
RGlzcGF0Y2hlci0+YXBwbGljYXRpb25DYWNoZVN0YXR1c1VwZGF0ZWQocGFnZUFnZW50LT5mcmFt
ZUlkKGZyYW1lKSwgbWFuaWZlc3RVUkwsIHN0YXR1cyk7CiB9CiAKIHZvaWQgSW5zcGVjdG9yQXBw
bGljYXRpb25DYWNoZUFnZW50OjpuZXR3b3JrU3RhdGVDaGFuZ2VkKCkKQEAgLTEwNCw4ICsxMDgs
MTQgQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6Om5ldHdvcmtTdGF0ZUNo
YW5nZWQoKQogICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5uZXR3b3JrU3RhdGVVcGRhdGVkKHBs
YXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJTdHJhdGVneSgpLT5pc09uTGluZSgpKTsKIH0KIAot
dm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEZyYW1lc1dpdGhNYW5pZmVz
dHMoRXJyb3JTdHJpbmcmLCBSZWZQdHI8SlNPTjo6QXJyYXlPZjxJbnNwZWN0b3I6OlByb3RvY29s
OjpBcHBsaWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD4+JiByZXN1bHQpCit2b2lkIElu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6Z2V0RnJhbWVzV2l0aE1hbmlmZXN0cyhFcnJv
clN0cmluZyYgZXJyb3JTdHJpbmcsIFJlZlB0cjxKU09OOjpBcnJheU9mPEluc3BlY3Rvcjo6UHJv
dG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkZyYW1lV2l0aE1hbmlmZXN0Pj4mIHJlc3VsdCkKIHsK
KyAgICBhdXRvKiBwYWdlQWdlbnQgPSBtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFn
ZUFnZW50KCk7CisgICAgaWYgKCFwYWdlQWdlbnQpIHsKKyAgICAgICAgZXJyb3JTdHJpbmcgPSAi
UGFnZSBkb21haW4gbXVzdCBiZSBlbmFibGVkIl9zOworICAgICAgICByZXR1cm47CisgICAgfQor
CiAgICAgcmVzdWx0ID0gSlNPTjo6QXJyYXlPZjxJbnNwZWN0b3I6OlByb3RvY29sOjpBcHBsaWNh
dGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD46OmNyZWF0ZSgpOwogCiAgICAgZm9yIChGcmFt
ZSogZnJhbWUgPSAmbV9pbnNwZWN0ZWRQYWdlLm1haW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBm
cmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7CkBAIC0xMTcsNyArMTI3LDcgQEAgdm9pZCBJ
bnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEZyYW1lc1dpdGhNYW5pZmVzdHMoRXJy
b3JTdHJpbmcmLCBSZWZQdHIKICAgICAgICAgU3RyaW5nIG1hbmlmZXN0VVJMID0gaG9zdC5hcHBs
aWNhdGlvbkNhY2hlSW5mbygpLm1hbmlmZXN0LnN0cmluZygpOwogICAgICAgICBpZiAoIW1hbmlm
ZXN0VVJMLmlzRW1wdHkoKSkgewogICAgICAgICAgICAgcmVzdWx0LT5hZGRJdGVtKEluc3BlY3Rv
cjo6UHJvdG9jb2w6OkFwcGxpY2F0aW9uQ2FjaGU6OkZyYW1lV2l0aE1hbmlmZXN0OjpjcmVhdGUo
KQotICAgICAgICAgICAgICAgIC5zZXRGcmFtZUlkKG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNw
ZWN0b3JQYWdlQWdlbnQoKS0+ZnJhbWVJZChmcmFtZSkpCisgICAgICAgICAgICAgICAgLnNldEZy
YW1lSWQocGFnZUFnZW50LT5mcmFtZUlkKGZyYW1lKSkKICAgICAgICAgICAgICAgICAuc2V0TWFu
aWZlc3RVUkwobWFuaWZlc3RVUkwpCiAgICAgICAgICAgICAgICAgLnNldFN0YXR1cyhzdGF0aWNf
Y2FzdDxpbnQ+KGhvc3Quc3RhdHVzKCkpKQogICAgICAgICAgICAgICAgIC5yZWxlYXNlKCkpOwpA
QCAtMTI3LDcgKzEzNywxMyBAQCB2b2lkIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudDo6
Z2V0RnJhbWVzV2l0aE1hbmlmZXN0cyhFcnJvclN0cmluZyYsIFJlZlB0cgogCiBEb2N1bWVudExv
YWRlciogSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojphc3NlcnRGcmFtZVdpdGhEb2N1
bWVudExvYWRlcihFcnJvclN0cmluZyYgZXJyb3JTdHJpbmcsIGNvbnN0IFN0cmluZyYgZnJhbWVJ
ZCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9y
UGFnZUFnZW50KCktPmFzc2VydEZyYW1lKGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKKyAgICBhdXRv
KiBwYWdlQWdlbnQgPSBtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCk7
CisgICAgaWYgKCFwYWdlQWdlbnQpIHsKKyAgICAgICAgZXJyb3JTdHJpbmcgPSAiUGFnZSBkb21h
aW4gbXVzdCBiZSBlbmFibGVkIl9zOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisK
KyAgICBhdXRvKiBmcmFtZSA9IHBhZ2VBZ2VudC0+YXNzZXJ0RnJhbWUoZXJyb3JTdHJpbmcsIGZy
YW1lSWQpOwogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckNTU0FnZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQu
Y3BwCmluZGV4IDQ0ZTljNWFiZWI0Yzk2NmFiYWVhOTQ0YTQwZDVlMDNkNDcyZDExZTguLmY0YzNm
ZjViNjQ3M2YwMmYyYTExM2VmOTM5Njc4OGYzYTI4MTI2ZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwCkBAIC02ODEs
MTIgKzY4MSwxNiBAQCB2b2lkIEluc3BlY3RvckNTU0FnZW50OjpzZXRSdWxlU2VsZWN0b3IoRXJy
b3JTdHJpbmcmIGVycm9yU3RyaW5nLCBjb25zdCBKU09OOjpPYgogCiB2b2lkIEluc3BlY3RvckNT
U0FnZW50OjpjcmVhdGVTdHlsZVNoZWV0KEVycm9yU3RyaW5nJiBlcnJvclN0cmluZywgY29uc3Qg
U3RyaW5nJiBmcmFtZUlkLCBTdHJpbmcqIHN0eWxlU2hlZXRJZCkKIHsKLSAgICBGcmFtZSogZnJh
bWUgPSBtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCktPmZyYW1lRm9y
SWQoZnJhbWVJZCk7Ci0gICAgaWYgKCFmcmFtZSkgewotICAgICAgICBlcnJvclN0cmluZyA9ICJO
byBmcmFtZSBmb3IgZ2l2ZW4gaWQgZm91bmQiX3M7CisgICAgYXV0byogcGFnZUFnZW50ID0gbV9p
bnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpOworICAgIGlmICghcGFnZUFn
ZW50KSB7CisgICAgICAgIGVycm9yU3RyaW5nID0gIlBhZ2UgZG9tYWluIG11c3QgYmUgZW5hYmxl
ZCJfczsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIGF1dG8qIGZyYW1lID0gcGFnZUFn
ZW50LT5hc3NlcnRGcmFtZShlcnJvclN0cmluZywgZnJhbWVJZCk7CisgICAgaWYgKCFmcmFtZSkK
KyAgICAgICAgcmV0dXJuOworCiAgICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gZnJhbWUtPmRvY3Vt
ZW50KCk7CiAgICAgaWYgKCFkb2N1bWVudCkgewogICAgICAgICBlcnJvclN0cmluZyA9ICJObyBk
b2N1bWVudCBmb3IgZnJhbWUiX3M7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3RvckRPTUFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yRE9NQWdlbnQuY3BwCmluZGV4IGYwYTI4YzEzMzFjNWJiMzA4OGQ1
M2U3MjQzZGJhZjRlZWI2M2U3YmQuLjBkZjA0NTQ4NTU5ZTE0MDYzYjk0MmI3YzExZWNjZDNiNDZl
NzBiNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVj
dG9yRE9NQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5z
cGVjdG9yRE9NQWdlbnQuY3BwCkBAIC0xMjI0LDEyICsxMjI0LDE2IEBAIHZvaWQgSW5zcGVjdG9y
RE9NQWdlbnQ6OmhpZ2hsaWdodFNlbGVjdG9yKEVycm9yU3RyaW5nJiBlcnJvclN0cmluZywgY29u
c3QgSlNPTjo6CiAgICAgUmVmUHRyPERvY3VtZW50PiBkb2N1bWVudDsKIAogICAgIGlmIChmcmFt
ZUlkKSB7Ci0gICAgICAgIEZyYW1lKiBmcmFtZSA9IG1faW5zdHJ1bWVudGluZ0FnZW50cy5pbnNw
ZWN0b3JQYWdlQWdlbnQoKS0+ZnJhbWVGb3JJZCgqZnJhbWVJZCk7Ci0gICAgICAgIGlmICghZnJh
bWUpIHsKLSAgICAgICAgICAgIGVycm9yU3RyaW5nID0gIk5vIGZyYW1lIGZvciBnaXZlbiBpZCBm
b3VuZCJfczsKKyAgICAgICAgYXV0byogcGFnZUFnZW50ID0gbV9pbnN0cnVtZW50aW5nQWdlbnRz
Lmluc3BlY3RvclBhZ2VBZ2VudCgpOworICAgICAgICBpZiAoIXBhZ2VBZ2VudCkgeworICAgICAg
ICAgICAgZXJyb3JTdHJpbmcgPSAiUGFnZSBkb21haW4gbXVzdCBiZSBlbmFibGVkIl9zOwogICAg
ICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKKyAgICAgICAgYXV0byogZnJhbWUgPSBwYWdl
QWdlbnQtPmFzc2VydEZyYW1lKGVycm9yU3RyaW5nLCAqZnJhbWVJZCk7CisgICAgICAgIGlmICgh
ZnJhbWUpCisgICAgICAgICAgICByZXR1cm47CisKICAgICAgICAgZG9jdW1lbnQgPSBmcmFtZS0+
ZG9jdW1lbnQoKTsKICAgICB9IGVsc2UKICAgICAgICAgZG9jdW1lbnQgPSBtX2RvY3VtZW50OwpA
QCAtMTMxMSw3ICsxMzE1LDEzIEBAIHZvaWQgSW5zcGVjdG9yRE9NQWdlbnQ6OmhpZ2hsaWdodE5v
ZGVMaXN0KEVycm9yU3RyaW5nJiBlcnJvclN0cmluZywgY29uc3QgSlNPTjo6CiAKIHZvaWQgSW5z
cGVjdG9yRE9NQWdlbnQ6OmhpZ2hsaWdodEZyYW1lKEVycm9yU3RyaW5nJiBlcnJvclN0cmluZywg
Y29uc3QgU3RyaW5nJiBmcmFtZUlkLCBjb25zdCBKU09OOjpPYmplY3QqIGNvbG9yLCBjb25zdCBK
U09OOjpPYmplY3QqIG91dGxpbmVDb2xvcikKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBtX2luc3Ry
dW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCktPmFzc2VydEZyYW1lKGVycm9yU3Ry
aW5nLCBmcmFtZUlkKTsKKyAgICBhdXRvKiBwYWdlQWdlbnQgPSBtX2luc3RydW1lbnRpbmdBZ2Vu
dHMuaW5zcGVjdG9yUGFnZUFnZW50KCk7CisgICAgaWYgKCFwYWdlQWdlbnQpIHsKKyAgICAgICAg
ZXJyb3JTdHJpbmcgPSAiUGFnZSBkb21haW4gbXVzdCBiZSBlbmFibGVkIl9zOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgYXV0byogZnJhbWUgPSBwYWdlQWdlbnQtPmFzc2VydEZyYW1l
KGVycm9yU3RyaW5nLCBmcmFtZUlkKTsKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm47
CiAKQEAgLTE1NTEsOCArMTU2MSwxMSBAQCBSZWY8SW5zcGVjdG9yOjpQcm90b2NvbDo6RE9NOjpO
b2RlPiBJbnNwZWN0b3JET01BZ2VudDo6YnVpbGRPYmplY3RGb3JOb2RlKE5vZGUqCiAgICAgICAg
ICAgICB2YWx1ZS0+c2V0Q2hpbGRyZW4oV1RGTW92ZShjaGlsZHJlbikpOwogICAgIH0KIAotICAg
IGlmIChhdXRvKiBmcmFtZVZpZXcgPSBub2RlLT5kb2N1bWVudCgpLnZpZXcoKSkKLSAgICAgICAg
dmFsdWUtPnNldEZyYW1lSWQobV9pbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvclBhZ2VBZ2Vu
dCgpLT5mcmFtZUlkKCZmcmFtZVZpZXctPmZyYW1lKCkpKTsKKyAgICBhdXRvKiBwYWdlQWdlbnQg
PSBtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCk7CisgICAgaWYgKHBh
Z2VBZ2VudCkgeworICAgICAgICBpZiAoYXV0byogZnJhbWVWaWV3ID0gbm9kZS0+ZG9jdW1lbnQo
KS52aWV3KCkpCisgICAgICAgICAgICB2YWx1ZS0+c2V0RnJhbWVJZChwYWdlQWdlbnQtPmZyYW1l
SWQoJmZyYW1lVmlldy0+ZnJhbWUoKSkpOworICAgIH0KIAogICAgIGlmIChpczxFbGVtZW50Pigq
bm9kZSkpIHsKICAgICAgICAgRWxlbWVudCYgZWxlbWVudCA9IGRvd25jYXN0PEVsZW1lbnQ+KCpu
b2RlKTsKQEAgLTE1ODgsNyArMTYwMSw4IEBAIFJlZjxJbnNwZWN0b3I6OlByb3RvY29sOjpET006
Ok5vZGU+IEluc3BlY3RvckRPTUFnZW50OjpidWlsZE9iamVjdEZvck5vZGUoTm9kZSoKICAgICAg
ICAgfQogICAgIH0gZWxzZSBpZiAoaXM8RG9jdW1lbnQ+KCpub2RlKSkgewogICAgICAgICBEb2N1
bWVudCYgZG9jdW1lbnQgPSBkb3duY2FzdDxEb2N1bWVudD4oKm5vZGUpOwotICAgICAgICB2YWx1
ZS0+c2V0RnJhbWVJZChtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCkt
PmZyYW1lSWQoZG9jdW1lbnQuZnJhbWUoKSkpOworICAgICAgICBpZiAocGFnZUFnZW50KQorICAg
ICAgICAgICAgdmFsdWUtPnNldEZyYW1lSWQocGFnZUFnZW50LT5mcmFtZUlkKGRvY3VtZW50LmZy
YW1lKCkpKTsKICAgICAgICAgdmFsdWUtPnNldERvY3VtZW50VVJMKGRvY3VtZW50VVJMU3RyaW5n
KCZkb2N1bWVudCkpOwogICAgICAgICB2YWx1ZS0+c2V0QmFzZVVSTChkb2N1bWVudEJhc2VVUkxT
dHJpbmcoJmRvY3VtZW50KSk7CiAgICAgICAgIHZhbHVlLT5zZXRYbWxWZXJzaW9uKGRvY3VtZW50
LnhtbFZlcnNpb24oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAKaW5kZXggYzY0MWE2YTA0ODQxOTMyNjhlMjllOTBm
ZjAxMjZhYjkxMWM5MzBkZi4uYmZlYTZkMTYyMjFkYjJjNmExNDA4NTEyZWI0YjViYTUxNThjYjc0
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JQ
YWdlQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVj
dG9yUGFnZUFnZW50LmNwcApAQCAtMzQzLDYgKzM0MywyMSBAQCBJbnNwZWN0b3JQYWdlQWdlbnQ6
Okluc3BlY3RvclBhZ2VBZ2VudChQYWdlQWdlbnRDb250ZXh0JiBjb250ZXh0LCBJbnNwZWN0b3JD
bGllbgogCiB2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6ZGlkQ3JlYXRlRnJvbnRlbmRBbmRCYWNr
ZW5kKEluc3BlY3Rvcjo6RnJvbnRlbmRSb3V0ZXIqLCBJbnNwZWN0b3I6OkJhY2tlbmREaXNwYXRj
aGVyKikKIHsKK30KKwordm9pZCBJbnNwZWN0b3JQYWdlQWdlbnQ6OndpbGxEZXN0cm95RnJvbnRl
bmRBbmRCYWNrZW5kKEluc3BlY3Rvcjo6RGlzY29ubmVjdFJlYXNvbikKK3sKKyAgICBFcnJvclN0
cmluZyB1bnVzZWQ7CisgICAgZGlzYWJsZSh1bnVzZWQpOworfQorCit2b2lkIEluc3BlY3RvclBh
Z2VBZ2VudDo6ZW5hYmxlKEVycm9yU3RyaW5nJiBlcnJvclN0cmluZykKK3sKKyAgICBpZiAobV9p
bnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpID09IHRoaXMpIHsKKyAgICAg
ICAgZXJyb3JTdHJpbmcgPSAiUGFnZSBkb21haW4gYWxyZWFkeSBlbmFibGVkIl9zOworICAgICAg
ICByZXR1cm47CisgICAgfQorCiAgICAgbV9pbnN0cnVtZW50aW5nQWdlbnRzLnNldEluc3BlY3Rv
clBhZ2VBZ2VudCh0aGlzKTsKIAogICAgIGF1dG8gc3RvcHdhdGNoID0gbV9lbnZpcm9ubWVudC5l
eGVjdXRpb25TdG9wd2F0Y2goKTsKQEAgLTM1NCw4ICszNjksMTAgQEAgdm9pZCBJbnNwZWN0b3JQ
YWdlQWdlbnQ6OmRpZENyZWF0ZUZyb250ZW5kQW5kQmFja2VuZChJbnNwZWN0b3I6OkZyb250ZW5k
Um91dGVyKiwKICNlbmRpZgogfQogCi12b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6d2lsbERlc3Ry
b3lGcm9udGVuZEFuZEJhY2tlbmQoSW5zcGVjdG9yOjpEaXNjb25uZWN0UmVhc29uKQordm9pZCBJ
bnNwZWN0b3JQYWdlQWdlbnQ6OmRpc2FibGUoRXJyb3JTdHJpbmcmKQogeworICAgIG1faW5zdHJ1
bWVudGluZ0FnZW50cy5zZXRJbnNwZWN0b3JQYWdlQWdlbnQobnVsbHB0cik7CisKICAgICBFcnJv
clN0cmluZyB1bnVzZWQ7CiAgICAgc2V0U2hvd1BhaW50UmVjdHModW51c2VkLCBmYWxzZSk7CiAg
ICAgc2V0U2hvd1J1bGVycyh1bnVzZWQsIGZhbHNlKTsKQEAgLTM3MSw4ICszODgsNiBAQCB2b2lk
IEluc3BlY3RvclBhZ2VBZ2VudDo6d2lsbERlc3Ryb3lGcm9udGVuZEFuZEJhY2tlbmQoSW5zcGVj
dG9yOjpEaXNjb25uZWN0UmVhcwogI3VuZGVmIERJU0FCTEVfSU5TUEVDVE9SX09WRVJSSURFX1NF
VFRJTkcKIAogICAgIG1fY2xpZW50LT5zZXRNb2NrQ2FwdHVyZURldmljZXNFbmFibGVkT3ZlcnJp
ZGUoV1RGOjpudWxsb3B0KTsKLQotICAgIG1faW5zdHJ1bWVudGluZ0FnZW50cy5zZXRJbnNwZWN0
b3JQYWdlQWdlbnQobnVsbHB0cik7CiB9CiAKIGRvdWJsZSBJbnNwZWN0b3JQYWdlQWdlbnQ6OnRp
bWVzdGFtcCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0lu
c3BlY3RvclBhZ2VBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNw
ZWN0b3JQYWdlQWdlbnQuaAppbmRleCAxMWQ0OTlmYjIxMGRmN2QzMTMxYTI5YWY2OTkxYmZmNGFi
YWM1NGM3Li4zZWVkMDE5YzlmZWU0NjNiNGVhZmYxMzcwZmIwZWFlMTIwMTc0ODFmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvclBhZ2VBZ2VudC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yUGFnZUFnZW50
LmgKQEAgLTg4LDYgKzg4LDggQEAgcHVibGljOgogICAgIHN0YXRpYyBEb2N1bWVudExvYWRlciog
YXNzZXJ0RG9jdW1lbnRMb2FkZXIoRXJyb3JTdHJpbmcmLCBGcmFtZSopOwogCiAgICAgLy8gUGFn
ZUJhY2tlbmREaXNwYXRjaGVySGFuZGxlcgorICAgIHZvaWQgZW5hYmxlKEVycm9yU3RyaW5nJikg
ZmluYWw7CisgICAgdm9pZCBkaXNhYmxlKEVycm9yU3RyaW5nJikgZmluYWw7CiAgICAgdm9pZCBy
ZWxvYWQoRXJyb3JTdHJpbmcmLCBjb25zdCBib29sKiBvcHRpb25hbFJlbG9hZEZyb21PcmlnaW4s
IGNvbnN0IGJvb2wqIG9wdGlvbmFsUmV2YWxpZGF0ZUFsbFJlc291cmNlcykgZmluYWw7CiAgICAg
dm9pZCBuYXZpZ2F0ZShFcnJvclN0cmluZyYsIGNvbnN0IFN0cmluZyYgdXJsKSBmaW5hbDsKICAg
ICB2b2lkIG92ZXJyaWRlVXNlckFnZW50KEVycm9yU3RyaW5nJiwgY29uc3QgU3RyaW5nKiB2YWx1
ZSkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0lu
c3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50
cy9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcAppbmRleCAzMGQ4NmM3NDYzYzQ3ZjViM2FkMmIz
OGNmNWRlMjQ5ZDQ0ZWI5YTVkLi5lMGU4NjBkODY2MDZlOTUxYjNlNDYwMDdiMTlkMjI1OWJlYjU3
YmJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rv
clRpbWVsaW5lQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMv
SW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHAKQEAgLTc0MSw3ICs3NDEsMTEgQEAgdm9pZCBJbnNw
ZWN0b3JUaW1lbGluZUFnZW50OjpzZXRGcmFtZUlkZW50aWZpZXIoSlNPTjo6T2JqZWN0KiByZWNv
cmQsIEZyYW1lKiBmcmEKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm47CiAKLSAgICBy
ZWNvcmQtPnNldFN0cmluZygiZnJhbWVJZCJfcywgbV9pbnN0cnVtZW50aW5nQWdlbnRzLmluc3Bl
Y3RvclBhZ2VBZ2VudCgpLT5mcmFtZUlkKGZyYW1lKSk7CisgICAgYXV0byogcGFnZUFnZW50ID0g
bV9pbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpOworICAgIGlmICghcGFn
ZUFnZW50KQorICAgICAgICByZXR1cm47CisKKyAgICByZWNvcmQtPnNldFN0cmluZygiZnJhbWVJ
ZCJfcywgcGFnZUFnZW50LT5mcmFtZUlkKGZyYW1lKSk7CiB9CiAKIHZvaWQgSW5zcGVjdG9yVGlt
ZWxpbmVBZ2VudDo6ZGlkQ29tcGxldGVSZWNvcmRFbnRyeShjb25zdCBUaW1lbGluZVJlY29yZEVu
dHJ5JiBlbnRyeSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMv
cGFnZS9QYWdlTmV0d29ya0FnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2Vu
dHMvcGFnZS9QYWdlTmV0d29ya0FnZW50LmNwcAppbmRleCA5ODBhZDgyYTUyNWYwMmUxZmU4NjNi
NzJhOTE0YmFkMmQ2NmU2MWUwLi5jYzhjZDQxY2RmOGJiNGY5NzBkM2VjNTZjMGNjNmVlOTNmY2M5
NWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL3BhZ2UvUGFn
ZU5ldHdvcmtBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9w
YWdlL1BhZ2VOZXR3b3JrQWdlbnQuY3BwCkBAIC00OCwxNSArNDgsMTkgQEAgUGFnZU5ldHdvcmtB
Z2VudDo6UGFnZU5ldHdvcmtBZ2VudChQYWdlQWdlbnRDb250ZXh0JiBjb250ZXh0KQogCiBTdHJp
bmcgUGFnZU5ldHdvcmtBZ2VudDo6bG9hZGVySWRlbnRpZmllcihEb2N1bWVudExvYWRlciogbG9h
ZGVyKQogewotICAgIGlmIChsb2FkZXIpCi0gICAgICAgIHJldHVybiBtX2luc3RydW1lbnRpbmdB
Z2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCktPmxvYWRlcklkKGxvYWRlcik7CisgICAgaWYgKGxv
YWRlcikgeworICAgICAgICBpZiAoYXV0byogcGFnZUFnZW50ID0gbV9pbnN0cnVtZW50aW5nQWdl
bnRzLmluc3BlY3RvclBhZ2VBZ2VudCgpKQorICAgICAgICAgICAgcmV0dXJuIHBhZ2VBZ2VudC0+
bG9hZGVySWQobG9hZGVyKTsKKyAgICB9CiAgICAgcmV0dXJuIHsgfTsKIH0KIAogU3RyaW5nIFBh
Z2VOZXR3b3JrQWdlbnQ6OmZyYW1lSWRlbnRpZmllcihEb2N1bWVudExvYWRlciogbG9hZGVyKQog
ewotICAgIGlmIChsb2FkZXIpCi0gICAgICAgIHJldHVybiBtX2luc3RydW1lbnRpbmdBZ2VudHMu
aW5zcGVjdG9yUGFnZUFnZW50KCktPmZyYW1lSWQobG9hZGVyLT5mcmFtZSgpKTsKKyAgICBpZiAo
bG9hZGVyKSB7CisgICAgICAgIGlmIChhdXRvKiBwYWdlQWdlbnQgPSBtX2luc3RydW1lbnRpbmdB
Z2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCkpCisgICAgICAgICAgICByZXR1cm4gcGFnZUFnZW50
LT5mcmFtZUlkKGxvYWRlci0+ZnJhbWUoKSk7CisgICAgfQogICAgIHJldHVybiB7IH07CiB9CiAK
QEAgLTk2LDcgKzEwMCwxMyBAQCB2b2lkIFBhZ2VOZXR3b3JrQWdlbnQ6OnNldFJlc291cmNlQ2Fj
aGluZ0Rpc2FibGVkKGJvb2wgZGlzYWJsZWQpCiAKIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIFBh
Z2VOZXR3b3JrQWdlbnQ6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoRXJyb3JTdHJpbmcmIGVycm9y
U3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQpCiB7Ci0gICAgYXV0byogZnJhbWUgPSBtX2lu
c3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCktPmFzc2VydEZyYW1lKGVycm9y
U3RyaW5nLCBmcmFtZUlkKTsKKyAgICBhdXRvKiBwYWdlQWdlbnQgPSBtX2luc3RydW1lbnRpbmdB
Z2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCk7CisgICAgaWYgKCFwYWdlQWdlbnQpIHsKKyAgICAg
ICAgZXJyb3JTdHJpbmcgPSAiUGFnZSBkb21haW4gbXVzdCBiZSBlbmFibGVkIl9zOworICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICBhdXRvKiBmcmFtZSA9IHBhZ2VBZ2VudC0+
YXNzZXJ0RnJhbWUoZXJyb3JTdHJpbmcsIGZyYW1lSWQpOwogICAgIGlmICghZnJhbWUpCiAgICAg
ICAgIHJldHVybiBudWxscHRyOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvYWdlbnRzL3BhZ2UvUGFnZVJ1bnRpbWVBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvYWdlbnRzL3BhZ2UvUGFnZVJ1bnRpbWVBZ2VudC5jcHAKaW5kZXggODk4NWJjOTQ1ZmU3
NWUwZTg1MWEzNmRlMzU4NGFiMDQ3MWMwZmRmZi4uMjg0ZDI4Njg1Y2Q5YTEyZTg1MGFkZmU0ZGJm
MmYyNzE2MzQ3MDk4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50
cy9wYWdlL1BhZ2VSdW50aW1lQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9hZ2VudHMvcGFnZS9QYWdlUnVudGltZUFnZW50LmNwcApAQCAtODUsNyArODUsMTEgQEAgdm9p
ZCBQYWdlUnVudGltZUFnZW50OjpkaXNhYmxlKEVycm9yU3RyaW5nJiBlcnJvclN0cmluZykKIAog
dm9pZCBQYWdlUnVudGltZUFnZW50OjpkaWRDcmVhdGVNYWluV29ybGRDb250ZXh0KEZyYW1lJiBm
cmFtZSkKIHsKLSAgICBhdXRvIGZyYW1lSWQgPSBtX2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVj
dG9yUGFnZUFnZW50KCktPmZyYW1lSWQoJmZyYW1lKTsKKyAgICBhdXRvKiBwYWdlQWdlbnQgPSBt
X2luc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yUGFnZUFnZW50KCk7CisgICAgaWYgKCFwYWdl
QWdlbnQpCisgICAgICAgIHJldHVybjsKKworICAgIGF1dG8gZnJhbWVJZCA9IHBhZ2VBZ2VudC0+
ZnJhbWVJZCgmZnJhbWUpOwogICAgIGF1dG8qIHNjcmlwdFN0YXRlID0gbWFpbldvcmxkRXhlY1N0
YXRlKCZmcmFtZSk7CiAgICAgbm90aWZ5Q29udGV4dENyZWF0ZWQoZnJhbWVJZCwgc2NyaXB0U3Rh
dGUsIG51bGxwdHIsIHRydWUpOwogfQpAQCAtMTE4LDExICsxMjIsMTYgQEAgdm9pZCBQYWdlUnVu
dGltZUFnZW50Ojp1bm11dGVDb25zb2xlKCkKIAogdm9pZCBQYWdlUnVudGltZUFnZW50OjpyZXBv
cnRFeGVjdXRpb25Db250ZXh0Q3JlYXRpb24oKQogeworICAgIGF1dG8qIHBhZ2VBZ2VudCA9IG1f
aW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKTsKKyAgICBpZiAoIXBhZ2VB
Z2VudCkKKyAgICAgICAgcmV0dXJuOworCiAgICAgVmVjdG9yPHN0ZDo6cGFpcjxKU0M6OkV4ZWNT
dGF0ZSosIFNlY3VyaXR5T3JpZ2luKj4+IGlzb2xhdGVkQ29udGV4dHM7CiAgICAgZm9yIChGcmFt
ZSogZnJhbWUgPSAmbV9pbnNwZWN0ZWRQYWdlLm1haW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBm
cmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7CiAgICAgICAgIGlmICghZnJhbWUtPnNjcmlw
dCgpLmNhbkV4ZWN1dGVTY3JpcHRzKE5vdEFib3V0VG9FeGVjdXRlU2NyaXB0KSkKICAgICAgICAg
ICAgIGNvbnRpbnVlOwotICAgICAgICBTdHJpbmcgZnJhbWVJZCA9IG1faW5zdHJ1bWVudGluZ0Fn
ZW50cy5pbnNwZWN0b3JQYWdlQWdlbnQoKS0+ZnJhbWVJZChmcmFtZSk7CisKKyAgICAgICAgU3Ry
aW5nIGZyYW1lSWQgPSBwYWdlQWdlbnQtPmZyYW1lSWQoZnJhbWUpOwogCiAgICAgICAgIEpTQzo6
RXhlY1N0YXRlKiBzY3JpcHRTdGF0ZSA9IG1haW5Xb3JsZEV4ZWNTdGF0ZShmcmFtZSk7CiAgICAg
ICAgIG5vdGlmeUNvbnRleHRDcmVhdGVkKGZyYW1lSWQsIHNjcmlwdFN0YXRlLCBudWxscHRyLCB0
cnVlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Nv
bnRyb2xsZXJzL05ldHdvcmtNYW5hZ2VyLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvQ29udHJvbGxlcnMvTmV0d29ya01hbmFnZXIuanMKaW5kZXggN2E1YzlmNWI2MDNl
NzM4OWJmMjM1OWQzZTQxMzBmZjZmZDdkNmE1Ny4uZjgyYTk4N2E4ZDRhM2M1MjcwYTAxNjZiNDRj
MWE5NDRjYzc4N2Y2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvQ29udHJvbGxlcnMvTmV0d29ya01hbmFnZXIuanMKKysrIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvTmV0d29ya01hbmFnZXIuanMKQEAgLTc2
LDEwICs3Niw3IEBAIFdJLk5ldHdvcmtNYW5hZ2VyID0gY2xhc3MgTmV0d29ya01hbmFnZXIgZXh0
ZW5kcyBXSS5PYmplY3QKICAgICBpbml0aWFsaXplVGFyZ2V0KHRhcmdldCkKICAgICB7CiAgICAg
ICAgIGlmICh0YXJnZXQuUGFnZUFnZW50KSB7Ci0gICAgICAgICAgICAvLyBDT01QQVRJQklMSVRZ
IChpT1MgMTMpOiBQYWdlLmVuYWJsZSB3YXMgcmVtb3ZlZC4KLSAgICAgICAgICAgIGlmICh0YXJn
ZXQuUGFnZUFnZW50LmVuYWJsZSkKLSAgICAgICAgICAgICAgICB0YXJnZXQuUGFnZUFnZW50LmVu
YWJsZSgpOwotCisgICAgICAgICAgICB0YXJnZXQuUGFnZUFnZW50LmVuYWJsZSgpOwogICAgICAg
ICAgICAgdGFyZ2V0LlBhZ2VBZ2VudC5nZXRSZXNvdXJjZVRyZWUodGhpcy5fcHJvY2Vzc01haW5G
cmFtZVJlc291cmNlVHJlZVBheWxvYWQuYmluZCh0aGlzKSk7CiAgICAgICAgIH0KIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IDA0NTJkZDc5ZGM1YWJmZTczNDAwYzAxZjUyM2I1ZmYzMmRlYzZlN2QuLjlkMWRlMWRjYzVmYjQ1
NDUzYzE4ZmIzODVmN2IzODQ0Yzc1YTMzNWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAxOS0w
OC0yMSAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIElu
c3BlY3RvcjogUGFnZTogcmUtYWRkIGVuYWJsZS9kaXNhYmxlIGFmdGVyIHIyNDg0NTQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMDk0NworCisgICAg
ICAgIFJldmlld2VkIGJ5IEpvc2VwaCBQZWNvcmFyby4KKworICAgICAgICAqIGh0dHAvdGVzdHMv
aW5zcGVjdG9yL3BhZ2UvbG9hZGluZy1pZnJhbWUtZG9jdW1lbnQtbm9kZS5odG1sOgorICAgICAg
ICAqIGluc3BlY3Rvci9jc3MvZ2V0TWF0Y2hlZFN0eWxlc0Zvck5vZGUuaHRtbDoKKyAgICAgICAg
KiBpbnNwZWN0b3IvY3NzL2dldE1hdGNoZWRTdHlsZXNGb3JOb2RlLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiBpbnNwZWN0b3IvcGFnZS9hcmNoaXZlLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9y
L3BhZ2UvZnJhbWVTY2hlZHVsZWROYXZpZ2F0aW9uLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9y
L3BhZ2UvZnJhbWVTY2hlZHVsZWROYXZpZ2F0aW9uLWFzeW5jLWRlbGVnYXRlcy5odG1sOgorICAg
ICAgICAqIGluc3BlY3Rvci9wYWdlL2ZyYW1lU3RhcnRlZExvYWRpbmcuaHRtbDoKKyAgICAgICAg
KiBpbnNwZWN0b3IvcGFnZS9tZWRpYS1xdWVyeS1saXN0LWxpc3RlbmVyLWV4Y2VwdGlvbi5odG1s
OgorICAgICAgICAqIGluc3BlY3Rvci90aW1lbGluZS9saW5lLWNvbHVtbi5odG1sOgorCiAyMDE5
LTA4LTIwICBEZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIg
SW5zcGVjdG9yOiBJbXBsZW1lbnQgYHF1ZXJ5SG9sZGVyc2AgQ29tbWFuZCBMaW5lIEFQSQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvcGFnZS9sb2FkaW5nLWlm
cmFtZS1kb2N1bWVudC1ub2RlLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rv
ci9wYWdlL2xvYWRpbmctaWZyYW1lLWRvY3VtZW50LW5vZGUuaHRtbAppbmRleCA1MmY3Njg5YjAz
NWNkMDYxYjQzM2I5MzgxYTNmOWM5NzQ4MzBiZTU0Li41MWMyZDllMTAzZDQ3NzY5ODkzOGQ4ZGFl
OTU2MjNlMjY4Mzg3ZGE5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3Bl
Y3Rvci9wYWdlL2xvYWRpbmctaWZyYW1lLWRvY3VtZW50LW5vZGUuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9wYWdlL2xvYWRpbmctaWZyYW1lLWRvY3VtZW50LW5v
ZGUuaHRtbApAQCAtMzUsMTQgKzM1LDE3IEBAIGZ1bmN0aW9uIHRlc3QoKQogCiAgICAgZnVuY3Rp
b24gc3RlcDFfYm9vdHN0cmFwKCkgewogICAgICAgICBQcm90b2NvbFRlc3QubG9nKCJzdGVwMV9i
b290c3RyYXAiKTsKLSAgICAgICAgLy8gRW5hYmxlIHRoZSBSdW50aW1lLmV4ZWN1dGlvbkNvbnRl
eHRDcmVhdGVkIGV2ZW50LgotICAgICAgICBJbnNwZWN0b3JQcm90b2NvbC5zZW5kQ29tbWFuZCgi
UnVudGltZS5lbmFibGUiLCB7fSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAvLyBJbml0aWFs
aXplIHRoZSBET00gYWdlbnQuCi0gICAgICAgICAgICBJbnNwZWN0b3JQcm90b2NvbC5zZW5kQ29t
bWFuZCgiRE9NLmdldERvY3VtZW50Iiwge30sIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAg
IFByb3RvY29sVGVzdC5sb2coIk1haW4gZG9jdW1lbnQgbG9hZGVkIik7Ci0gICAgICAgICAgICAg
ICAgCi0gICAgICAgICAgICAgICAgLy8gQWRkIHRoZSBpZnJhbWUgdG8gdGhlIERPTS4KLSAgICAg
ICAgICAgICAgICBJbnNwZWN0b3JQcm90b2NvbC5zZW5kQ29tbWFuZCgiUnVudGltZS5ldmFsdWF0
ZSIsIHsgImV4cHJlc3Npb24iOiAiYXBwZW5kSWZyYW1lKCkiIH0pOworICAgICAgICAvLyBFbmFi
bGUgdGhlIGZyYW1lIGV2ZW50cy4KKyAgICAgICAgSW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1h
bmQoIlBhZ2UuZW5hYmxlIiwge30sIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgLy8gRW5hYmxl
IHRoZSBSdW50aW1lLmV4ZWN1dGlvbkNvbnRleHRDcmVhdGVkIGV2ZW50LgorICAgICAgICAgICAg
SW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIlJ1bnRpbWUuZW5hYmxlIiwge30sIGZ1bmN0
aW9uKCkgeworICAgICAgICAgICAgICAgIC8vIEluaXRpYWxpemUgdGhlIERPTSBhZ2VudC4KKyAg
ICAgICAgICAgICAgICBJbnNwZWN0b3JQcm90b2NvbC5zZW5kQ29tbWFuZCgiRE9NLmdldERvY3Vt
ZW50Iiwge30sIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgICAgICBQcm90b2NvbFRlc3Qu
bG9nKCJNYWluIGRvY3VtZW50IGxvYWRlZCIpOworCisgICAgICAgICAgICAgICAgICAgIC8vIEFk
ZCB0aGUgaWZyYW1lIHRvIHRoZSBET00uCisgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclBy
b3RvY29sLnNlbmRDb21tYW5kKCJSdW50aW1lLmV2YWx1YXRlIiwgeyAiZXhwcmVzc2lvbiI6ICJh
cHBlbmRJZnJhbWUoKSIgfSk7CisgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICB9KTsK
ICAgICAgICAgfSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nz
cy9nZXRNYXRjaGVkU3R5bGVzRm9yTm9kZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvY3NzL2dldE1hdGNoZWRTdHlsZXNGb3JOb2RlLWV4cGVjdGVkLnR4dAppbmRleCAzNWM1
NjZmNDhmMjY0OTBmNWE4NmY1NmJjZjkyMWY4YjQ2OGM0MzI2Li4yYzRkNTI0NDlkNDhjODk2Nzg4
YmIwYmQwYzM4YjI3Zjc1NWFjZjI2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
Y3NzL2dldE1hdGNoZWRTdHlsZXNGb3JOb2RlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvY3NzL2dldE1hdGNoZWRTdHlsZXNGb3JOb2RlLWV4cGVjdGVkLnR4dApAQCAt
MSw1ICsxLDYgQEAKIFRlc3RpbmcgQ1NTLmdldE1hdGNoZWRTdHlsZXNGb3JOb2RlLgogCitFbmFi
bGluZyBQYWdlIGRvbWFpbi4uLgogUmVxdWVzdGluZyBkb2N1bWVudC4uLgogUXVlcnlpbmcgZm9y
ICJkaXYjeCIuLi4KIEdldHRpbmcgbWF0Y2hlZCBzdHlsZXMgZm9yICJkaXYjeCIuLi4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3MvZ2V0TWF0Y2hlZFN0eWxlc0Zvck5vZGUu
aHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3MvZ2V0TWF0Y2hlZFN0eWxlc0Zvck5vZGUu
aHRtbAppbmRleCA2ZGJiZjJlYTM5YTA0ZmUzNDRkNmMxODIyMTJjMTViYzhhODdiYTJmLi5kYjk1
ZGRmMzMwZmQxOTI2YWQ3ZTc4OGM5NmQzYzI1MWY1MDYwZmNmIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvY3NzL2dldE1hdGNoZWRTdHlsZXNGb3JOb2RlLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9nZXRNYXRjaGVkU3R5bGVzRm9yTm9kZS5odG1sCkBAIC0z
NSw2ICszNSwxMyBAQAogZnVuY3Rpb24gdGVzdCgpCiB7CiAgICAgUHJvbWlzZS5yZXNvbHZlKCkK
KyAgICAudGhlbigoKSA9PiB7CisgICAgICAgIFByb3RvY29sVGVzdC5sb2coIkVuYWJsaW5nIFBh
Z2UgZG9tYWluLi4uIik7CisgICAgICAgIHJldHVybiBJbnNwZWN0b3JQcm90b2NvbC5hd2FpdENv
bW1hbmQoeworICAgICAgICAgICAgbWV0aG9kOiAiUGFnZS5lbmFibGUiLAorICAgICAgICAgICAg
cGFyYW1zOiB7fSwKKyAgICAgICAgfSk7CisgICAgfSkKICAgICAudGhlbigoKSA9PiB7CiAgICAg
ICAgIFByb3RvY29sVGVzdC5sb2coIlJlcXVlc3RpbmcgZG9jdW1lbnQuLi4iKTsKICAgICAgICAg
cmV0dXJuIEluc3BlY3RvclByb3RvY29sLmF3YWl0Q29tbWFuZCh7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbnNwZWN0b3IvcGFnZS9hcmNoaXZlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvcGFnZS9hcmNoaXZlLmh0bWwKaW5kZXggNmE3OGY4ZGVmMWFiMzdlMzA1OGUzYTJmZjVkMDBl
OTI2YjU1MDU5Mi4uODA2OTFkMGE0MmFhZmVhMTJhN2NjNTFlZGNmMzI4NzlmYWFkNWM3MCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3BhZ2UvYXJjaGl2ZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9wYWdlL2FyY2hpdmUuaHRtbApAQCAtNCw2ICs0LDcgQEAKIDxz
Y3JpcHQ+CiBmdW5jdGlvbiB0ZXN0KCkKIHsKKyAgICBJbnNwZWN0b3JQcm90b2NvbC5zZW5kQ29t
bWFuZCgiUGFnZS5lbmFibGUiLCB7fSk7CiAgICAgSW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1h
bmQoIlBhZ2UuYXJjaGl2ZSIsIHt9LCBmdW5jdGlvbihldmVudCkgewogICAgICAgICB2YXIgZGF0
YSA9IGV2ZW50LnJlc3VsdC5kYXRhOwogICAgICAgICBpZiAoIWRhdGEpCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvcGFnZS9mcmFtZVNjaGVkdWxlZE5hdmlnYXRpb24tYXN5bmMt
ZGVsZWdhdGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvcGFnZS9mcmFtZVNjaGVkdWxl
ZE5hdmlnYXRpb24tYXN5bmMtZGVsZWdhdGVzLmh0bWwKaW5kZXggNWZjODgzZmIyMGJmZTYyNzI4
NDllNzgxOWU2YzI0OTE5MWYwOTBhMy4uYWFmMWY4MTQ0YWE3M2VlMGNlNTE1Zjk3ZThlZjgwYzhi
MjQzYzNlMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3BhZ2UvZnJhbWVTY2hl
ZHVsZWROYXZpZ2F0aW9uLWFzeW5jLWRlbGVnYXRlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9wYWdlL2ZyYW1lU2NoZWR1bGVkTmF2aWdhdGlvbi1hc3luYy1kZWxlZ2F0ZXMuaHRt
bApAQCAtMTYsNiArMTYsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBJbnNwZWN0b3JQcm90b2Nv
bC5ldmVudEhhbmRsZXJbIlBhZ2UuZnJhbWVTY2hlZHVsZWROYXZpZ2F0aW9uIl0gPSBvblNjaGVk
dWxlZDsKICAgICBJbnNwZWN0b3JQcm90b2NvbC5ldmVudEhhbmRsZXJbIlBhZ2UuZnJhbWVTdGFy
dGVkTG9hZGluZyJdID0gb25TdGFydGVkOwogICAgIEluc3BlY3RvclByb3RvY29sLmV2ZW50SGFu
ZGxlclsiUGFnZS5mcmFtZUNsZWFyZWRTY2hlZHVsZWROYXZpZ2F0aW9uIl0gPSBvbkNsZWFyZWQ7
CisgICAgSW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIlBhZ2UuZW5hYmxlIiwge30pOwog
CiAgICAgZnVuY3Rpb24gb25TY2hlZHVsZWQobXNnKQogICAgIHsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2luc3BlY3Rvci9wYWdlL2ZyYW1lU2NoZWR1bGVkTmF2aWdhdGlvbi5odG1sIGIvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL3BhZ2UvZnJhbWVTY2hlZHVsZWROYXZpZ2F0aW9uLmh0bWwKaW5k
ZXggZmM2YTU4ZDg4MGY1MjYyMjhjMDEwZjRmZWQzNDMyNWE4NzQ3NjVhZS4uZmZiMDQ3ZWE2NDJk
MDNlYmI1MjE1NmFlYjNiNjE1YjMxMDllMWFhNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL3BhZ2UvZnJhbWVTY2hlZHVsZWROYXZpZ2F0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL3BhZ2UvZnJhbWVTY2hlZHVsZWROYXZpZ2F0aW9uLmh0bWwKQEAgLTEzLDYg
KzEzLDcgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgSW5zcGVjdG9yUHJvdG9jb2wuZXZlbnRIYW5k
bGVyWyJQYWdlLmZyYW1lU2NoZWR1bGVkTmF2aWdhdGlvbiJdID0gb25TY2hlZHVsZWQ7CiAgICAg
SW5zcGVjdG9yUHJvdG9jb2wuZXZlbnRIYW5kbGVyWyJQYWdlLmZyYW1lU3RhcnRlZExvYWRpbmci
XSA9IG9uU3RhcnRlZDsKICAgICBJbnNwZWN0b3JQcm90b2NvbC5ldmVudEhhbmRsZXJbIlBhZ2Uu
ZnJhbWVDbGVhcmVkU2NoZWR1bGVkTmF2aWdhdGlvbiJdID0gb25DbGVhcmVkOworICAgIEluc3Bl
Y3RvclByb3RvY29sLnNlbmRDb21tYW5kKCJQYWdlLmVuYWJsZSIsIHt9KTsKIAogICAgIGZ1bmN0
aW9uIG9uU2NoZWR1bGVkKG1zZykKICAgICB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvcGFnZS9mcmFtZVN0YXJ0ZWRMb2FkaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvcGFnZS9mcmFtZVN0YXJ0ZWRMb2FkaW5nLmh0bWwKaW5kZXggOTM2NGJjMzc3ZDFkN2FlMWIz
NDU5ZTNhYjQ5YzEwNzQxMTA3NWVhYS4uM2Y3MjgwYzkyZTRlMzQxZGRmZjhlNjdlMGE3NjRjMTRm
OTEwYmZmMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3BhZ2UvZnJhbWVTdGFy
dGVkTG9hZGluZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9wYWdlL2ZyYW1lU3Rh
cnRlZExvYWRpbmcuaHRtbApAQCAtMTQsNiArMTQsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKIHsKICAg
ICBJbnNwZWN0b3JQcm90b2NvbC5ldmVudEhhbmRsZXJbIlBhZ2UuZnJhbWVTdGFydGVkTG9hZGlu
ZyJdID0gb25TdGFydDsKICAgICBJbnNwZWN0b3JQcm90b2NvbC5ldmVudEhhbmRsZXJbIlBhZ2Uu
ZnJhbWVTdG9wcGVkTG9hZGluZyJdID0gb25TdG9wOworICAgIEluc3BlY3RvclByb3RvY29sLnNl
bmRDb21tYW5kKCJQYWdlLmVuYWJsZSIsIHt9KTsKIAogICAgIGZ1bmN0aW9uIG9uU3RhcnQoKQog
ICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9wYWdlL21lZGlhLXF1ZXJ5
LWxpc3QtbGlzdGVuZXItZXhjZXB0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvcGFn
ZS9tZWRpYS1xdWVyeS1saXN0LWxpc3RlbmVyLWV4Y2VwdGlvbi5odG1sCmluZGV4IDhiYTc0NGMx
YTY5MjNhODg3ZTdiZGNlNjgwMzY4MTllMmUwODZmMTguLmI2OWFkNzFmODBkMDFhMzRlNDQ4YzNk
ODg3MDYwNmZkYjk5NTk3YTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9wYWdl
L21lZGlhLXF1ZXJ5LWxpc3QtbGlzdGVuZXItZXhjZXB0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL3BhZ2UvbWVkaWEtcXVlcnktbGlzdC1saXN0ZW5lci1leGNlcHRpb24uaHRt
bApAQCAtMTAsNiArMTAsNyBAQCB0aGVNZWRpYVF1ZXJ5TGlzdC5hZGRMaXN0ZW5lcihmdW5jdGlv
bihhTWVkaWFRdWVyeUxpc3QpIHsKIAogZnVuY3Rpb24gdGVzdCgpCiB7CisgICAgSW5zcGVjdG9y
UHJvdG9jb2wuc2VuZENvbW1hbmQoIlBhZ2UuZW5hYmxlIiwge30pOwogICAgIEluc3BlY3RvclBy
b3RvY29sLnNlbmRDb21tYW5kKCJQYWdlLnNldEVtdWxhdGVkTWVkaWEiLCB7Im1lZGlhIjogInBy
aW50In0sIGZ1bmN0aW9uKG1lc3NhZ2VPYmplY3QpIHsKICAgICAgICAgaWYgKG1lc3NhZ2VPYmpl
Y3QuZXJyb3IpCiAgICAgICAgICAgICBQcm90b2NvbFRlc3QubG9nKCJGQUlMRUQ6ICIgKyBtZXNz
YWdlT2JqZWN0LmVycm9yLm1lc3NhZ2UpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVj
dG9yL3RpbWVsaW5lL2xpbmUtY29sdW1uLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGlt
ZWxpbmUvbGluZS1jb2x1bW4uaHRtbAppbmRleCAwMzVlNGIxYTgzZDZiMGViODFlMjNkZmE2Mzkw
NWQ5ZWFlZDg5ZDM1Li41NzQzN2VkYmIzZTBhYjNlN2IxYmFiY2FjNGQ2YTEwYWY3Y2RiNzI0IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvbGluZS1jb2x1bW4uaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvbGluZS1jb2x1bW4uaHRtbApA
QCAtMzcsNiArMzcsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKIHsKICAgICBsZXQgc3VpdGUgPSBQcm90
b2NvbFRlc3QuY3JlYXRlQXN5bmNTdWl0ZSgiVGltZWxpbmUuTGluZUNvbHVtbiIpOwogCisgICAg
SW5zcGVjdG9yUHJvdG9jb2wuc2VuZENvbW1hbmQoIlBhZ2UuZW5hYmxlIiwge30pOwogICAgIElu
c3BlY3RvclByb3RvY29sLnNlbmRDb21tYW5kKCJUaW1lbGluZS5lbmFibGUiKTsKIAogICAgIGZ1
bmN0aW9uIHJlcGxhY2VyKGtleSwgdmFsdWUpIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>