<?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>200703</bug_id>
          
          <creation_ts>2019-08-14 01:18:14 -0700</creation_ts>
          <short_desc>[JSC] Make PAC jump and return more explicit</short_desc>
          <delta_ts>2019-08-14 15:08:16 -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="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1561091</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-08-14 01:18:14 -0700</bug_when>
    <thetext>[JSC] Make PAC jump and return more explicit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1561095</commentid>
    <comment_count>1</comment_count>
      <attachid>376248</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-08-14 01:34:13 -0700</bug_when>
    <thetext>Created attachment 376248
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1561129</commentid>
    <comment_count>2</comment_count>
      <attachid>376248</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-08-14 03:54:04 -0700</bug_when>
    <thetext>Comment on attachment 376248
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1561267</commentid>
    <comment_count>3</comment_count>
      <attachid>376248</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-08-14 12:05:55 -0700</bug_when>
    <thetext>Comment on attachment 376248
Patch

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1561307</commentid>
    <comment_count>4</comment_count>
      <attachid>376248</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-14 13:15:10 -0700</bug_when>
    <thetext>Comment on attachment 376248
Patch

Clearing flags on attachment: 376248

Committed r248686: &lt;https://trac.webkit.org/changeset/248686&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1561308</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-14 13:15:12 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1561309</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-08-14 13:16:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/54315632&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1561349</commentid>
    <comment_count>7</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-08-14 15:08:16 -0700</bug_when>
    <thetext>Committed r248689: &lt;https://trac.webkit.org/changeset/248689&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376248</attachid>
            <date>2019-08-14 01:34:13 -0700</date>
            <delta_ts>2019-08-14 13:15:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200703-20190814013412.patch</filename>
            <type>text/plain</type>
            <size>40787</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ4NjYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAz
N2I5NTJiOWUxODQ2OWQ0YzlhMDNlNDhiNDA1NmVkODU2MWI1M2NkLi45N2VlNzg5N2ZkNGM5NWJh
OWZjNGQ3YzE0ZTI3YTM1YTJhNjI3YjVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw5MCBAQAorMjAxOS0wOC0xNCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIE1ha2UgUEFDIGp1bXAgYW5kIHJldHVybiBtb3JlIGV4cGxpY2l0
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDA3MDMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBh
dGNoIHJlZmFjdG9ycyBvdXIgbWFjcm8gYXNzZW1ibGVyLCBtYWlubHkgcmVsYXRlZCB0byBQQUMu
CisKKyAgICAgICAgMS4gTWFrZSBmYXItanVtcCBleHBsaWNpdCBieSByZW5hbWluZyBganVtcGAg
dG8gYGZhckp1bXBgLgorICAgICAgICAyLiBSZW1vdmUgdW51c2VkIG1ha2VUYWlsUmVjdXJzaXZl
Q2FsbCBhbmQgdGFpbFJlY3Vyc2l2ZUNhbGwuCisgICAgICAgIDMuIERvIG5vdCBtYWtlIGBBUk02
NEVBc3NlbWJsZXI6OnJldGAgYXMgYHJldGFiYC4gTWFjcm9Bc3NlbWJsZXJBUk02NEUgc2hvdWxk
IGNhbGwgYHJldGFiYCBleHBsaWNpdGx5IGluc3RlYWQuCisKKyAgICAgICAgKiBhc3NlbWJsZXIv
QVJNNjRFQXNzZW1ibGVyLmg6CisgICAgICAgIChKU0M6OkFSTTY0RUFzc2VtYmxlcjo6cmV0KTog
RGVsZXRlZC4KKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuaDoKKyAgICAgICAg
KiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NC5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fz
c2VtYmxlckFSTTY0OjpmYXJKdW1wKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJBUk02
NDo6bWFrZVRhaWxSZWN1cnNpdmVDYWxsKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6TWFjcm9B
c3NlbWJsZXJBUk02NDo6dGFpbFJlY3Vyc2l2ZUNhbGwpOiBEZWxldGVkLgorICAgICAgICAqIGFz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0RS5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2Vt
YmxlckFSTTY0RTo6ZmFySnVtcCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyQVJNNjRF
OjpyZXQpOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3Lmg6CisgICAg
ICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyQVJNdjc6OmZhckp1bXApOgorICAgICAgICAoSlNDOjpN
YWNyb0Fzc2VtYmxlckFSTXY3OjpyZWxhdGl2ZVRhYmxlSnVtcCk6CisgICAgICAgIChKU0M6Ok1h
Y3JvQXNzZW1ibGVyQVJNdjc6OnRhaWxSZWN1cnNpdmVDYWxsKTogRGVsZXRlZC4KKyAgICAgICAg
KEpTQzo6TWFjcm9Bc3NlbWJsZXJBUk12Nzo6bWFrZVRhaWxSZWN1cnNpdmVDYWxsKTogRGVsZXRl
ZC4KKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJNSVBTLmg6CisgICAgICAgIChK
U0M6Ok1hY3JvQXNzZW1ibGVyTUlQUzo6ZmFySnVtcCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNz
ZW1ibGVyTUlQUzo6dGFpbFJlY3Vyc2l2ZUNhbGwpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpN
YWNyb0Fzc2VtYmxlck1JUFM6Om1ha2VUYWlsUmVjdXJzaXZlQ2FsbCk6IERlbGV0ZWQuCisgICAg
ICAgICogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Lmg6CisgICAgICAgIChKU0M6Ok1hY3Jv
QXNzZW1ibGVyWDg2OjpmYXJKdW1wKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJYODY6
Omp1bXApOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclg4Njo6dGFpbFJl
Y3Vyc2l2ZUNhbGwpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclg4Njo6
bWFrZVRhaWxSZWN1cnNpdmVDYWxsKTogRGVsZXRlZC4KKyAgICAgICAgKiBhc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJYODZDb21tb24uaDoKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJYODZD
b21tb246OmZhckp1bXApOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4Nl82
NC5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclg4Nl82NDo6ZmFySnVtcCk6CisgICAg
ICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyWDg2XzY0OjpqdW1wKTogRGVsZXRlZC4KKyAgICAgICAg
KEpTQzo6TWFjcm9Bc3NlbWJsZXJYODZfNjQ6OnRhaWxSZWN1cnNpdmVDYWxsKTogRGVsZXRlZC4K
KyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJYODZfNjQ6Om1ha2VUYWlsUmVjdXJzaXZlQ2Fs
bCk6IERlbGV0ZWQuCisgICAgICAgICogYjMvQjNMb3dlck1hY3Jvcy5jcHA6CisgICAgICAgICog
YjMvdGVzdGIzXzYuY3BwOgorICAgICAgICAodGVzdEludGVycHJldGVyKToKKyAgICAgICAgKiBk
ZmcvREZHT1NSRXhpdENvbXBpbGVyQ29tbW9uLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjphZGp1
c3RBbmRKdW1wVG9UYXJnZXQpOgorICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHA6
CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmVtaXRTd2l0Y2hJbnRKdW1wKToK
KyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6ZW1pdFN3aXRjaEltbSk6CisgICAg
ICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmVtaXRTd2l0Y2hTdHJpbmdPblN0cmluZyk6
CisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwOgorICAgICAgICAoSlNDOjpE
Rkc6OlNwZWN1bGF0aXZlSklUOjpjb21waWxlKToKKyAgICAgICAgKiBkZmcvREZHVGh1bmtzLmNw
cDoKKyAgICAgICAgKEpTQzo6REZHOjpvc3JFeGl0R2VuZXJhdGlvblRodW5rR2VuZXJhdG9yKToK
KyAgICAgICAgKEpTQzo6REZHOjpvc3JFbnRyeVRodW5rR2VuZXJhdG9yKToKKyAgICAgICAgKiBq
aXQvQ0NhbGxIZWxwZXJzLmg6CisgICAgICAgIChKU0M6OkNDYWxsSGVscGVyczo6anVtcFRvRXhj
ZXB0aW9uSGFuZGxlcik6CisgICAgICAgICogaml0L0pJVC5jcHA6CisgICAgICAgIChKU0M6OkpJ
VDo6ZW1pdEVudGVyT3B0aW1pemF0aW9uQ2hlY2spOgorICAgICAgICAqIGppdC9KSVRPcGNvZGVz
LmNwcDoKKyAgICAgICAgKEpTQzo6SklUOjplbWl0X29wX2NhdGNoKToKKyAgICAgICAgKEpTQzo6
SklUOjplbWl0X29wX3N3aXRjaF9pbW0pOgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXRfb3Bfc3dp
dGNoX2NoYXIpOgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXRfb3Bfc3dpdGNoX3N0cmluZyk6Cisg
ICAgICAgIChKU0M6OkpJVDo6ZW1pdFNsb3dfb3BfbG9vcF9oaW50KToKKyAgICAgICAgKiBqaXQv
SklUT3Bjb2RlczMyXzY0LmNwcDoKKyAgICAgICAgKEpTQzo6SklUOjplbWl0X29wX2NhdGNoKToK
KyAgICAgICAgKEpTQzo6SklUOjplbWl0X29wX3N3aXRjaF9pbW0pOgorICAgICAgICAoSlNDOjpK
SVQ6OmVtaXRfb3Bfc3dpdGNoX2NoYXIpOgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXRfb3Bfc3dp
dGNoX3N0cmluZyk6CisgICAgICAgICogaml0L1RodW5rR2VuZXJhdG9ycy5jcHA6CisgICAgICAg
IChKU0M6OnNsb3dQYXRoRm9yKToKKyAgICAgICAgKEpTQzo6dmlydHVhbFRodW5rRm9yKToKKyAg
ICAgICAgKiBsbGludC9MTEludFRodW5rcy5jcHA6CisgICAgICAgIChKU0M6OkxMSW50OjpnZW5l
cmF0ZVRodW5rV2l0aEp1bXBUbyk6CisgICAgICAgICogd2FzbS9XYXNtQmluZGluZy5jcHA6Cisg
ICAgICAgIChKU0M6Oldhc206Ondhc21Ub1dhc20pOgorICAgICAgICAqIHdhc20vV2FzbVRodW5r
cy5jcHA6CisgICAgICAgIChKU0M6Oldhc206OnRocm93RXhjZXB0aW9uRnJvbVdhc21UaHVua0dl
bmVyYXRvcik6CisgICAgICAgICogd2FzbS9qcy9XYXNtVG9KUy5jcHA6CisgICAgICAgIChKU0M6
Oldhc206OmVtaXRUaHJvd1dhc21Ub0pTRXhjZXB0aW9uKToKKyAgICAgICAgKiB5YXJyL1lhcnJK
SVQuY3BwOgorICAgICAgICAoSlNDOjpZYXJyOjpZYXJyR2VuZXJhdG9yOjpsb2FkRnJvbUZyYW1l
QW5kSnVtcCk6CisKIDIwMTktMDgtMTMgIFNhYW0gQmFyYXRpICA8c2JhcmF0aUBhcHBsZS5jb20+
CiAKICAgICAgICAgQWRkIGEgd2F5IHRvIG9wdCBvdXQgb2Yga2VybiBUQ1NNIGZvciBsYXlvdXQg
dGVzdHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvQVJNNjRF
QXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0FSTTY0RUFzc2Vt
Ymxlci5oCmluZGV4IDA1ODFjMmE1MjMzMGYzMjRkOTcxNjBmMmFjYzcyODcyZjIxZDhlNjYuLjg4
ZmZkNTgwOGQyYjRlNDkxYjViMTE5MzAzNDg2YmVhYmQxZGNjYTMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvQVJNNjRFQXNzZW1ibGVyLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9BUk02NEVBc3NlbWJsZXIuaApAQCAtMzY2LDE1ICsz
NjYsNiBAQCBjbGFzcyBBUk02NEVBc3NlbWJsZXIgOiBwdWJsaWMgQVJNNjRBc3NlbWJsZXIgewog
ICAgICAgICByZXR1cm4gcmVhZFBvaW50ZXIocmVpbnRlcnByZXRfY2FzdDxpbnQqPihmcm9tKSAt
IGNhbGxJbnN0cnVjdGlvbiAtIE5VTUJFUl9PRl9BRERSRVNTX0VOQ09ESU5HX0lOU1RSVUNUSU9O
Uyk7CiAgICAgfQogCi0gICAgQUxXQVlTX0lOTElORSB2b2lkIHJldCgpIHsgcmV0YWIoKTsgfQot
Ci0gICAgLy8gTmVlZGVkIGJlY2F1c2Ugd2UgbmVlZCB0byBjYWxsIG91ciBvdmVybG9hZGVkIHJl
dCgpIGFib3ZlLgotICAgIEFMV0FZU19JTkxJTkUgdm9pZCByZXQoUmVnaXN0ZXJJRCBybikKLSAg
ICB7Ci0gICAgICAgIFJFTEVBU0VfQVNTRVJUKHJuID09IEFSTTY0UmVnaXN0ZXJzOjpscik7Ci0g
ICAgICAgIHJldCgpOwotICAgIH0KLQogICAgIHN0YXRpYyBjb25zdGV4cHIgcHRyZGlmZl90IE1B
WF9QT0lOVEVSX0JJVFMgPSA2NDsKICAgICBzdGF0aWMgY29uc3RleHByIHB0cmRpZmZfdCBCSVRT
X0VOQ09ERUFCTEVfUEVSX0lOU1RSVUNUSU9OID0gMTY7CiAgICAgc3RhdGljIGNvbnN0ZXhwciBw
dHJkaWZmX3QgTlVNQkVSX09GX0FERFJFU1NfRU5DT0RJTkdfSU5TVFJVQ1RJT05TID0gTUFYX1BP
SU5URVJfQklUUyAvIEJJVFNfRU5DT0RFQUJMRV9QRVJfSU5TVFJVQ1RJT047CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyLmgKaW5kZXggZTNiYThj
ZDRmNjRjMDU0OTlmMGI1NzAxZTJjZGJiOTBiNjczMDdjMi4uNjczZmM5MDg0ZWVmMWNhYTQ5Y2Ix
NGRhNjZhN2IzMGY3NjhmNTkzZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvTWFjcm9Bc3NlbWJsZXIuaApAQCAtMTI4LDYgKzEyOCw3IEBAIGNsYXNzIE1hY3JvQXNz
ZW1ibGVyIDogcHVibGljIE1hY3JvQXNzZW1ibGVyQmFzZSB7CiAKICAgICB1c2luZyBNYWNyb0Fz
c2VtYmxlckJhc2U6OnBvcDsKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6Omp1bXA7Cisg
ICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpmYXJKdW1wOwogICAgIHVzaW5nIE1hY3JvQXNz
ZW1ibGVyQmFzZTo6YnJhbmNoMzI7CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpjb21w
YXJlMzI7CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjptb3ZlOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0LmggYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjQuaAppbmRl
eCAyZWE5MTFlNmM5ZGI1YmE5NTNkZjk2OTQyOTM1ZGM4ZWMxZjY0Njg5Li4yYjViZmI1YzQ4ZGQ1
YWY1NDRlMGU4MmY0ZDViMWI0NTk3ZjdjZGZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjQuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjQuaApAQCAtMzE5OSw0MCArMzE5
OSwzNCBAQCBjbGFzcyBNYWNyb0Fzc2VtYmxlckFSTTY0IDogcHVibGljIEFic3RyYWN0TWFjcm9B
c3NlbWJsZXI8QXNzZW1ibGVyPiB7CiAgICAgICAgIHJldHVybiBKdW1wKGxhYmVsLCBtX21ha2VK
dW1wUGF0Y2hhYmxlID8gQXNzZW1ibGVyOjpKdW1wTm9Db25kaXRpb25GaXhlZFNpemUgOiBBc3Nl
bWJsZXI6Okp1bXBOb0NvbmRpdGlvbik7CiAgICAgfQogCi0gICAgdm9pZCBqdW1wKFJlZ2lzdGVy
SUQgdGFyZ2V0LCBQdHJUYWcpCisgICAgdm9pZCBmYXJKdW1wKFJlZ2lzdGVySUQgdGFyZ2V0LCBQ
dHJUYWcpCiAgICAgewogICAgICAgICBtX2Fzc2VtYmxlci5icih0YXJnZXQpOwogICAgIH0KIAot
ICAgIHZvaWQganVtcChBZGRyZXNzIGFkZHJlc3MsIFB0clRhZykKKyAgICB2b2lkIGZhckp1bXAo
QWRkcmVzcyBhZGRyZXNzLCBQdHJUYWcpCiAgICAgewogICAgICAgICBsb2FkNjQoYWRkcmVzcywg
Z2V0Q2FjaGVkRGF0YVRlbXBSZWdpc3RlcklEQW5kSW52YWxpZGF0ZSgpKTsKICAgICAgICAgbV9h
c3NlbWJsZXIuYnIoZGF0YVRlbXBSZWdpc3Rlcik7CiAgICAgfQogICAgIAotICAgIHZvaWQganVt
cChCYXNlSW5kZXggYWRkcmVzcywgUHRyVGFnKQorICAgIHZvaWQgZmFySnVtcChCYXNlSW5kZXgg
YWRkcmVzcywgUHRyVGFnKQogICAgIHsKICAgICAgICAgbG9hZDY0KGFkZHJlc3MsIGdldENhY2hl
ZERhdGFUZW1wUmVnaXN0ZXJJREFuZEludmFsaWRhdGUoKSk7CiAgICAgICAgIG1fYXNzZW1ibGVy
LmJyKGRhdGFUZW1wUmVnaXN0ZXIpOwogICAgIH0KIAotICAgIHZvaWQganVtcChBYnNvbHV0ZUFk
ZHJlc3MgYWRkcmVzcywgUHRyVGFnKQorICAgIHZvaWQgZmFySnVtcChBYnNvbHV0ZUFkZHJlc3Mg
YWRkcmVzcywgUHRyVGFnKQogICAgIHsKICAgICAgICAgbW92ZShUcnVzdGVkSW1tUHRyKGFkZHJl
c3MubV9wdHIpLCBnZXRDYWNoZWREYXRhVGVtcFJlZ2lzdGVySURBbmRJbnZhbGlkYXRlKCkpOwog
ICAgICAgICBsb2FkNjQoQWRkcmVzcyhkYXRhVGVtcFJlZ2lzdGVyKSwgZGF0YVRlbXBSZWdpc3Rl
cik7CiAgICAgICAgIG1fYXNzZW1ibGVyLmJyKGRhdGFUZW1wUmVnaXN0ZXIpOwogICAgIH0KIAot
ICAgIEFMV0FZU19JTkxJTkUgdm9pZCBqdW1wKFJlZ2lzdGVySUQgdGFyZ2V0LCBSZWdpc3RlcklE
IGp1bXBUYWcpIHsgVU5VU0VEX1BBUkFNKGp1bXBUYWcpLCBqdW1wKHRhcmdldCwgTm9QdHJUYWcp
OyB9Ci0gICAgQUxXQVlTX0lOTElORSB2b2lkIGp1bXAoQWRkcmVzcyBhZGRyZXNzLCBSZWdpc3Rl
cklEIGp1bXBUYWcpIHsgVU5VU0VEX1BBUkFNKGp1bXBUYWcpLCBqdW1wKGFkZHJlc3MsIE5vUHRy
VGFnKTsgfQotICAgIEFMV0FZU19JTkxJTkUgdm9pZCBqdW1wKEJhc2VJbmRleCBhZGRyZXNzLCBS
ZWdpc3RlcklEIGp1bXBUYWcpIHsgVU5VU0VEX1BBUkFNKGp1bXBUYWcpLCBqdW1wKGFkZHJlc3Ms
IE5vUHRyVGFnKTsgfQotICAgIEFMV0FZU19JTkxJTkUgdm9pZCBqdW1wKEFic29sdXRlQWRkcmVz
cyBhZGRyZXNzLCBSZWdpc3RlcklEIGp1bXBUYWcpIHsgVU5VU0VEX1BBUkFNKGp1bXBUYWcpLCBq
dW1wKGFkZHJlc3MsIE5vUHRyVGFnKTsgfQotCi0gICAgQUxXQVlTX0lOTElORSBDYWxsIG1ha2VU
YWlsUmVjdXJzaXZlQ2FsbChKdW1wIG9sZEp1bXApCi0gICAgewotICAgICAgICBvbGRKdW1wLmxp
bmsodGhpcyk7Ci0gICAgICAgIHJldHVybiB0YWlsUmVjdXJzaXZlQ2FsbCgpOwotICAgIH0KKyAg
ICBBTFdBWVNfSU5MSU5FIHZvaWQgZmFySnVtcChSZWdpc3RlcklEIHRhcmdldCwgUmVnaXN0ZXJJ
RCBqdW1wVGFnKSB7IFVOVVNFRF9QQVJBTShqdW1wVGFnKSwgZmFySnVtcCh0YXJnZXQsIE5vUHRy
VGFnKTsgfQorICAgIEFMV0FZU19JTkxJTkUgdm9pZCBmYXJKdW1wKEFkZHJlc3MgYWRkcmVzcywg
UmVnaXN0ZXJJRCBqdW1wVGFnKSB7IFVOVVNFRF9QQVJBTShqdW1wVGFnKSwgZmFySnVtcChhZGRy
ZXNzLCBOb1B0clRhZyk7IH0KKyAgICBBTFdBWVNfSU5MSU5FIHZvaWQgZmFySnVtcChCYXNlSW5k
ZXggYWRkcmVzcywgUmVnaXN0ZXJJRCBqdW1wVGFnKSB7IFVOVVNFRF9QQVJBTShqdW1wVGFnKSwg
ZmFySnVtcChhZGRyZXNzLCBOb1B0clRhZyk7IH0KKyAgICBBTFdBWVNfSU5MSU5FIHZvaWQgZmFy
SnVtcChBYnNvbHV0ZUFkZHJlc3MgYWRkcmVzcywgUmVnaXN0ZXJJRCBqdW1wVGFnKSB7IFVOVVNF
RF9QQVJBTShqdW1wVGFnKSwgZmFySnVtcChhZGRyZXNzLCBOb1B0clRhZyk7IH0KIAogICAgIEFM
V0FZU19JTkxJTkUgQ2FsbCBuZWFyQ2FsbCgpCiAgICAgewpAQCAtMzI1OCwxOCArMzI1Miw2IEBA
IGNsYXNzIE1hY3JvQXNzZW1ibGVyQVJNNjQgOiBwdWJsaWMgQWJzdHJhY3RNYWNyb0Fzc2VtYmxl
cjxBc3NlbWJsZXI+IHsKICAgICAgICAgbV9hc3NlbWJsZXIucmV0KCk7CiAgICAgfQogCi0gICAg
QUxXQVlTX0lOTElORSBDYWxsIHRhaWxSZWN1cnNpdmVDYWxsKCkKLSAgICB7Ci0gICAgICAgIC8v
IExpa2UgYSBub3JtYWwgY2FsbCwgYnV0IGRvbid0IGxpbmsuCi0gICAgICAgIEFzc2VtYmxlckxh
YmVsIHBvaW50ZXJMYWJlbCA9IG1fYXNzZW1ibGVyLmxhYmVsKCk7Ci0gICAgICAgIG1vdmVXaXRo
Rml4ZWRXaWR0aChUcnVzdGVkSW1tUHRyKG51bGxwdHIpLCBnZXRDYWNoZWREYXRhVGVtcFJlZ2lz
dGVySURBbmRJbnZhbGlkYXRlKCkpOwotICAgICAgICBtX2Fzc2VtYmxlci5icihkYXRhVGVtcFJl
Z2lzdGVyKTsKLSAgICAgICAgQXNzZW1ibGVyTGFiZWwgY2FsbExhYmVsID0gbV9hc3NlbWJsZXIu
bGFiZWwoKTsKLSAgICAgICAgQVNTRVJUX1VOVVNFRChwb2ludGVyTGFiZWwsIEFzc2VtYmxlcjo6
Z2V0RGlmZmVyZW5jZUJldHdlZW5MYWJlbHMoY2FsbExhYmVsLCBwb2ludGVyTGFiZWwpID09IFJF
UEFUQ0hfT0ZGU0VUX0NBTExfVE9fUE9JTlRFUik7Ci0gICAgICAgIHJldHVybiBDYWxsKGNhbGxM
YWJlbCwgQ2FsbDo6TGlua2FibGUpOwotICAgIH0KLQotCiAgICAgLy8gQ29tcGFyaXNvbnMgb3Bl
cmF0aW9ucwogCiAgICAgdm9pZCBjb21wYXJlMzIoUmVsYXRpb25hbENvbmRpdGlvbiBjb25kLCBS
ZWdpc3RlcklEIGxlZnQsIFJlZ2lzdGVySUQgcmlnaHQsIFJlZ2lzdGVySUQgZGVzdCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02
NEUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02
NEUuaAppbmRleCA5YzZlNzc1ZTUxNzQ0NWVmY2I1Y2I4YzA3OGI3OWIwNWEwODkxOGFlLi5mNTJj
NzVlYzkyYWI1MTNhMWI4NGU1YjZhNDdjMTk3NWEwZTZmOGI2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjRFLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0RS5oCkBAIC0x
OTAsNyArMTkwLDcgQEAgY2xhc3MgTWFjcm9Bc3NlbWJsZXJBUk02NEUgOiBwdWJsaWMgTWFjcm9B
c3NlbWJsZXJBUk02NCB7CiAKICAgICBBTFdBWVNfSU5MSU5FIEp1bXAganVtcCgpIHsgcmV0dXJu
IE1hY3JvQXNzZW1ibGVyQVJNNjQ6Omp1bXAoKTsgfQogCi0gICAgdm9pZCBqdW1wKFJlZ2lzdGVy
SUQgdGFyZ2V0LCBQdHJUYWcgdGFnKQorICAgIHZvaWQgZmFySnVtcChSZWdpc3RlcklEIHRhcmdl
dCwgUHRyVGFnIHRhZykKICAgICB7CiAgICAgICAgIGlmICh0YWcgPT0gTm9QdHJUYWcpCiAgICAg
ICAgICAgICByZXR1cm4gTWFjcm9Bc3NlbWJsZXJBUk02NDo6anVtcCh0YXJnZXQsIHRhZyk7CkBA
IC0yMDEsMTMgKzIwMSwxMyBAQCBjbGFzcyBNYWNyb0Fzc2VtYmxlckFSTTY0RSA6IHB1YmxpYyBN
YWNyb0Fzc2VtYmxlckFSTTY0IHsKICAgICAgICAganVtcCh0YXJnZXQsIGRpdmVyc2l0eUdQUik7
CiAgICAgfQogCi0gICAgdm9pZCBqdW1wKFJlZ2lzdGVySUQgdGFyZ2V0LCBSZWdpc3RlcklEIHRh
ZykKKyAgICB2b2lkIGZhckp1bXAoUmVnaXN0ZXJJRCB0YXJnZXQsIFJlZ2lzdGVySUQgdGFnKQog
ICAgIHsKICAgICAgICAgQVNTRVJUKHRhZyAhPSB0YXJnZXQpOwogICAgICAgICBtX2Fzc2VtYmxl
ci5icmFiKHRhcmdldCwgdGFnKTsKICAgICB9CiAKLSAgICB2b2lkIGp1bXAoQWRkcmVzcyBhZGRy
ZXNzLCBQdHJUYWcgdGFnKQorICAgIHZvaWQgZmFySnVtcChBZGRyZXNzIGFkZHJlc3MsIFB0clRh
ZyB0YWcpCiAgICAgewogICAgICAgICBpZiAodGFnID09IE5vUHRyVGFnKQogICAgICAgICAgICAg
cmV0dXJuIE1hY3JvQXNzZW1ibGVyQVJNNjQ6Omp1bXAoYWRkcmVzcywgdGFnKTsKQEAgLTIyMCw3
ICsyMjAsNyBAQCBjbGFzcyBNYWNyb0Fzc2VtYmxlckFSTTY0RSA6IHB1YmxpYyBNYWNyb0Fzc2Vt
YmxlckFSTTY0IHsKICAgICAgICAgbV9hc3NlbWJsZXIuYnJhYih0YXJnZXRHUFIsIGRpdmVyc2l0
eUdQUik7CiAgICAgfQogCi0gICAgdm9pZCBqdW1wKEFkZHJlc3MgYWRkcmVzcywgUmVnaXN0ZXJJ
RCB0YWcpCisgICAgdm9pZCBmYXJKdW1wKEFkZHJlc3MgYWRkcmVzcywgUmVnaXN0ZXJJRCB0YWcp
CiAgICAgewogICAgICAgICBSZWdpc3RlcklEIHRhcmdldEdQUiA9IGdldENhY2hlZERhdGFUZW1w
UmVnaXN0ZXJJREFuZEludmFsaWRhdGUoKTsKICAgICAgICAgQVNTRVJUKHRhZyAhPSB0YXJnZXRH
UFIpOwpAQCAtMjI4LDcgKzIyOCw3IEBAIGNsYXNzIE1hY3JvQXNzZW1ibGVyQVJNNjRFIDogcHVi
bGljIE1hY3JvQXNzZW1ibGVyQVJNNjQgewogICAgICAgICBtX2Fzc2VtYmxlci5icmFiKHRhcmdl
dEdQUiwgdGFnKTsKICAgICB9CiAKLSAgICB2b2lkIGp1bXAoQmFzZUluZGV4IGFkZHJlc3MsIFB0
clRhZyB0YWcpCisgICAgdm9pZCBmYXJKdW1wKEJhc2VJbmRleCBhZGRyZXNzLCBQdHJUYWcgdGFn
KQogICAgIHsKICAgICAgICAgaWYgKHRhZyA9PSBOb1B0clRhZykKICAgICAgICAgICAgIHJldHVy
biBNYWNyb0Fzc2VtYmxlckFSTTY0OjpqdW1wKGFkZHJlc3MsIHRhZyk7CkBAIC0yNDEsNyArMjQx
LDcgQEAgY2xhc3MgTWFjcm9Bc3NlbWJsZXJBUk02NEUgOiBwdWJsaWMgTWFjcm9Bc3NlbWJsZXJB
Uk02NCB7CiAgICAgICAgIG1fYXNzZW1ibGVyLmJyYWIodGFyZ2V0R1BSLCBkaXZlcnNpdHlHUFIp
OwogICAgIH0KIAotICAgIHZvaWQganVtcChCYXNlSW5kZXggYWRkcmVzcywgUmVnaXN0ZXJJRCB0
YWcpCisgICAgdm9pZCBmYXJKdW1wKEJhc2VJbmRleCBhZGRyZXNzLCBSZWdpc3RlcklEIHRhZykK
ICAgICB7CiAgICAgICAgIFJlZ2lzdGVySUQgdGFyZ2V0R1BSID0gZ2V0Q2FjaGVkRGF0YVRlbXBS
ZWdpc3RlcklEQW5kSW52YWxpZGF0ZSgpOwogICAgICAgICBBU1NFUlQodGFnICE9IHRhcmdldEdQ
Uik7CkBAIC0yNDksNyArMjQ5LDcgQEAgY2xhc3MgTWFjcm9Bc3NlbWJsZXJBUk02NEUgOiBwdWJs
aWMgTWFjcm9Bc3NlbWJsZXJBUk02NCB7CiAgICAgICAgIG1fYXNzZW1ibGVyLmJyYWIodGFyZ2V0
R1BSLCB0YWcpOwogICAgIH0KIAotICAgIHZvaWQganVtcChBYnNvbHV0ZUFkZHJlc3MgYWRkcmVz
cywgUHRyVGFnIHRhZykKKyAgICB2b2lkIGZhckp1bXAoQWJzb2x1dGVBZGRyZXNzIGFkZHJlc3Ms
IFB0clRhZyB0YWcpCiAgICAgewogICAgICAgICBpZiAodGFnID09IE5vUHRyVGFnKQogICAgICAg
ICAgICAgcmV0dXJuIE1hY3JvQXNzZW1ibGVyQVJNNjQ6Omp1bXAoYWRkcmVzcywgdGFnKTsKQEAg
LTI2Miw3ICsyNjIsNyBAQCBjbGFzcyBNYWNyb0Fzc2VtYmxlckFSTTY0RSA6IHB1YmxpYyBNYWNy
b0Fzc2VtYmxlckFSTTY0IHsKICAgICAgICAgbV9hc3NlbWJsZXIuYnJhYih0YXJnZXRHUFIsIGRp
dmVyc2l0eUdQUik7CiAgICAgfQogCi0gICAgdm9pZCBqdW1wKEFic29sdXRlQWRkcmVzcyBhZGRy
ZXNzLCBSZWdpc3RlcklEIHRhZykKKyAgICB2b2lkIGZhckp1bXAoQWJzb2x1dGVBZGRyZXNzIGFk
ZHJlc3MsIFJlZ2lzdGVySUQgdGFnKQogICAgIHsKICAgICAgICAgUmVnaXN0ZXJJRCB0YXJnZXRH
UFIgPSBnZXRDYWNoZWREYXRhVGVtcFJlZ2lzdGVySURBbmRJbnZhbGlkYXRlKCk7CiAgICAgICAg
IEFTU0VSVCh0YWcgIT0gdGFyZ2V0R1BSKTsKQEAgLTI3MCw2ICsyNzAsMTEgQEAgY2xhc3MgTWFj
cm9Bc3NlbWJsZXJBUk02NEUgOiBwdWJsaWMgTWFjcm9Bc3NlbWJsZXJBUk02NCB7CiAgICAgICAg
IGxvYWQ2NChBZGRyZXNzKHRhcmdldEdQUiksIHRhcmdldEdQUik7CiAgICAgICAgIG1fYXNzZW1i
bGVyLmJyYWIodGFyZ2V0R1BSLCB0YWcpOwogICAgIH0KKworICAgIEFMV0FZU19JTkxJTkUgdm9p
ZCByZXQoKQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIucmV0YWIoKTsKKyAgICB9CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9h
c3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk12Ny5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmgKaW5kZXggNTU5ZmMyNjNlOWY3ZWNjNzJjZGU3
N2VlZDllYjdhYTQxMDEzNWJmZi4uZDE0YTNlY2I0ZjIxY2U5YTdhNmE5MzVmMzQ5MjViNWY5ZDMz
MDE0OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fz
c2VtYmxlckFSTXY3LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNy
b0Fzc2VtYmxlckFSTXY3LmgKQEAgLTE2MzEsMjggKzE2MzEsMjggQEAgY2xhc3MgTWFjcm9Bc3Nl
bWJsZXJBUk12NyA6IHB1YmxpYyBBYnN0cmFjdE1hY3JvQXNzZW1ibGVyPEFzc2VtYmxlcj4gewog
ICAgICAgICByZXR1cm4gYnJhbmNoVGVzdDMyKGNvbmQsIGFkZHJlc3NUZW1wUmVnaXN0ZXIsIG1h
c2s4KTsKICAgICB9CiAKLSAgICB2b2lkIGp1bXAoUmVnaXN0ZXJJRCB0YXJnZXQsIFB0clRhZykK
KyAgICB2b2lkIGZhckp1bXAoUmVnaXN0ZXJJRCB0YXJnZXQsIFB0clRhZykKICAgICB7CiAgICAg
ICAgIG1fYXNzZW1ibGVyLmJ4KHRhcmdldCk7CiAgICAgfQogCiAgICAgLy8gQWRkcmVzcyBpcyBh
IG1lbW9yeSBsb2NhdGlvbiBjb250YWluaW5nIHRoZSBhZGRyZXNzIHRvIGp1bXAgdG8KLSAgICB2
b2lkIGp1bXAoQWRkcmVzcyBhZGRyZXNzLCBQdHJUYWcpCisgICAgdm9pZCBmYXJKdW1wKEFkZHJl
c3MgYWRkcmVzcywgUHRyVGFnKQogICAgIHsKICAgICAgICAgbG9hZDMyKGFkZHJlc3MsIGRhdGFU
ZW1wUmVnaXN0ZXIpOwogICAgICAgICBtX2Fzc2VtYmxlci5ieChkYXRhVGVtcFJlZ2lzdGVyKTsK
ICAgICB9CiAgICAgCi0gICAgdm9pZCBqdW1wKEFic29sdXRlQWRkcmVzcyBhZGRyZXNzLCBQdHJU
YWcpCisgICAgdm9pZCBmYXJKdW1wKEFic29sdXRlQWRkcmVzcyBhZGRyZXNzLCBQdHJUYWcpCiAg
ICAgewogICAgICAgICBtb3ZlKFRydXN0ZWRJbW1QdHIoYWRkcmVzcy5tX3B0ciksIGRhdGFUZW1w
UmVnaXN0ZXIpOwogICAgICAgICBsb2FkMzIoQWRkcmVzcyhkYXRhVGVtcFJlZ2lzdGVyKSwgZGF0
YVRlbXBSZWdpc3Rlcik7CiAgICAgICAgIG1fYXNzZW1ibGVyLmJ4KGRhdGFUZW1wUmVnaXN0ZXIp
OwogICAgIH0KIAotICAgIEFMV0FZU19JTkxJTkUgdm9pZCBqdW1wKFJlZ2lzdGVySUQgdGFyZ2V0
LCBSZWdpc3RlcklEIGp1bXBUYWcpIHsgVU5VU0VEX1BBUkFNKGp1bXBUYWcpLCBqdW1wKHRhcmdl
dCwgTm9QdHJUYWcpOyB9Ci0gICAgQUxXQVlTX0lOTElORSB2b2lkIGp1bXAoQWRkcmVzcyBhZGRy
ZXNzLCBSZWdpc3RlcklEIGp1bXBUYWcpIHsgVU5VU0VEX1BBUkFNKGp1bXBUYWcpLCBqdW1wKGFk
ZHJlc3MsIE5vUHRyVGFnKTsgfQotICAgIEFMV0FZU19JTkxJTkUgdm9pZCBqdW1wKEFic29sdXRl
QWRkcmVzcyBhZGRyZXNzLCBSZWdpc3RlcklEIGp1bXBUYWcpIHsgVU5VU0VEX1BBUkFNKGp1bXBU
YWcpLCBqdW1wKGFkZHJlc3MsIE5vUHRyVGFnKTsgfQorICAgIEFMV0FZU19JTkxJTkUgdm9pZCBm
YXJKdW1wKFJlZ2lzdGVySUQgdGFyZ2V0LCBSZWdpc3RlcklEIGp1bXBUYWcpIHsgVU5VU0VEX1BB
UkFNKGp1bXBUYWcpLCBmYXJKdW1wKHRhcmdldCwgTm9QdHJUYWcpOyB9CisgICAgQUxXQVlTX0lO
TElORSB2b2lkIGZhckp1bXAoQWRkcmVzcyBhZGRyZXNzLCBSZWdpc3RlcklEIGp1bXBUYWcpIHsg
VU5VU0VEX1BBUkFNKGp1bXBUYWcpLCBmYXJKdW1wKGFkZHJlc3MsIE5vUHRyVGFnKTsgfQorICAg
IEFMV0FZU19JTkxJTkUgdm9pZCBmYXJKdW1wKEFic29sdXRlQWRkcmVzcyBhZGRyZXNzLCBSZWdp
c3RlcklEIGp1bXBUYWcpIHsgVU5VU0VEX1BBUkFNKGp1bXBUYWcpLCBmYXJKdW1wKGFkZHJlc3Ms
IE5vUHRyVGFnKTsgfQogCiAgICAgLy8gQXJpdGhtZXRpYyBjb250cm9sIGZsb3cgb3BlcmF0aW9u
czoKICAgICAvLwpAQCAtMTc5OCw3ICsxNzk4LDcgQEAgY2xhc3MgTWFjcm9Bc3NlbWJsZXJBUk12
NyA6IHB1YmxpYyBBYnN0cmFjdE1hY3JvQXNzZW1ibGVyPEFzc2VtYmxlcj4gewogCiAgICAgICAg
IFNoaWZ0VHlwZUFuZEFtb3VudCBzaGlmdChTUlR5cGVfTFNMLCBzY2FsZSk7CiAgICAgICAgIG1f
YXNzZW1ibGVyLmFkZChkYXRhVGVtcFJlZ2lzdGVyLCBkYXRhVGVtcFJlZ2lzdGVyLCBpbmRleCwg
c2hpZnQpOwotICAgICAgICBqdW1wKGRhdGFUZW1wUmVnaXN0ZXIsIE5vUHRyVGFnKTsKKyAgICAg
ICAgZmFySnVtcChkYXRhVGVtcFJlZ2lzdGVyLCBOb1B0clRhZyk7CiAgICAgfQogCiAgICAgLy8g
TWlzY2VsbGFuZW91cyBvcGVyYXRpb25zOgpAQCAtMjAwNywyMCArMjAwNyw2IEBAIGNsYXNzIE1h
Y3JvQXNzZW1ibGVyQVJNdjcgOiBwdWJsaWMgQWJzdHJhY3RNYWNyb0Fzc2VtYmxlcjxBc3NlbWJs
ZXI+IHsKICAgICB9CiAgICAgQUxXQVlTX0lOTElORSBEYXRhTGFiZWxQdHIgc3RvcmVQdHJXaXRo
UGF0Y2goSW1wbGljaXRBZGRyZXNzIGFkZHJlc3MpIHsgcmV0dXJuIHN0b3JlUHRyV2l0aFBhdGNo
KFRydXN0ZWRJbW1QdHIobnVsbHB0ciksIGFkZHJlc3MpOyB9CiAKLQotICAgIEFMV0FZU19JTkxJ
TkUgQ2FsbCB0YWlsUmVjdXJzaXZlQ2FsbCgpCi0gICAgewotICAgICAgICAvLyBMaWtlIGEgbm9y
bWFsIGNhbGwsIGJ1dCBkb24ndCBsaW5rLgotICAgICAgICBtb3ZlRml4ZWRXaWR0aEVuY29kaW5n
KFRydXN0ZWRJbW0zMigwKSwgZGF0YVRlbXBSZWdpc3Rlcik7Ci0gICAgICAgIHJldHVybiBDYWxs
KG1fYXNzZW1ibGVyLmJ4KGRhdGFUZW1wUmVnaXN0ZXIpLCBDYWxsOjpMaW5rYWJsZSk7Ci0gICAg
fQotCi0gICAgQUxXQVlTX0lOTElORSBDYWxsIG1ha2VUYWlsUmVjdXJzaXZlQ2FsbChKdW1wIG9s
ZEp1bXApCi0gICAgewotICAgICAgICBvbGRKdW1wLmxpbmsodGhpcyk7Ci0gICAgICAgIHJldHVy
biB0YWlsUmVjdXJzaXZlQ2FsbCgpOwotICAgIH0KLQogICAgIHRlbXBsYXRlPFB0clRhZyByZXN1
bHRUYWcsIFB0clRhZyBsb2NhdGlvblRhZz4KICAgICBzdGF0aWMgRnVuY3Rpb25QdHI8cmVzdWx0
VGFnPiByZWFkQ2FsbFRhcmdldChDb2RlTG9jYXRpb25DYWxsPGxvY2F0aW9uVGFnPiBjYWxsKQog
ICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9B
c3NlbWJsZXJNSVBTLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyTUlQUy5oCmluZGV4IDkyZDAzYzhkMWRlYjNhODhjN2E1ZTA3NTFiMTg0NTcyMjk3M2Ix
ZjEuLjRmOWUyNjE2ZGMwYTUxNWM2ZjdkMWMwNGZkMTZmMjkxNDdmM2E1ZWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJNSVBTLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuaApA
QCAtMTkyMSwxNCArMTkyMSwxNCBAQCBjbGFzcyBNYWNyb0Fzc2VtYmxlck1JUFMgOiBwdWJsaWMg
QWJzdHJhY3RNYWNyb0Fzc2VtYmxlcjxBc3NlbWJsZXI+IHsKICAgICAgICAgcmV0dXJuIGJyYW5j
aEVxdWFsKE1JUFNSZWdpc3RlcnM6Onplcm8sIE1JUFNSZWdpc3RlcnM6Onplcm8pOwogICAgIH0K
IAotICAgIHZvaWQganVtcChSZWdpc3RlcklEIHRhcmdldCwgUHRyVGFnKQorICAgIHZvaWQgZmFy
SnVtcChSZWdpc3RlcklEIHRhcmdldCwgUHRyVGFnKQogICAgIHsKICAgICAgICAgbW92ZSh0YXJn
ZXQsIE1JUFNSZWdpc3RlcnM6OnQ5KTsKICAgICAgICAgbV9hc3NlbWJsZXIuanIoTUlQU1JlZ2lz
dGVyczo6dDkpOwogICAgICAgICBtX2Fzc2VtYmxlci5ub3AoKTsKICAgICB9CiAKLSAgICB2b2lk
IGp1bXAoQWRkcmVzcyBhZGRyZXNzLCBQdHJUYWcpCisgICAgdm9pZCBmYXJKdW1wKEFkZHJlc3Mg
YWRkcmVzcywgUHRyVGFnKQogICAgIHsKICAgICAgICAgbV9maXhlZFdpZHRoID0gdHJ1ZTsKICAg
ICAgICAgbG9hZDMyKGFkZHJlc3MsIE1JUFNSZWdpc3RlcnM6OnQ5KTsKQEAgLTE5MzcsNyArMTkz
Nyw3IEBAIGNsYXNzIE1hY3JvQXNzZW1ibGVyTUlQUyA6IHB1YmxpYyBBYnN0cmFjdE1hY3JvQXNz
ZW1ibGVyPEFzc2VtYmxlcj4gewogICAgICAgICBtX2ZpeGVkV2lkdGggPSBmYWxzZTsKICAgICB9
CiAKLSAgICB2b2lkIGp1bXAoQWJzb2x1dGVBZGRyZXNzIGFkZHJlc3MsIFB0clRhZykKKyAgICB2
b2lkIGZhckp1bXAoQWJzb2x1dGVBZGRyZXNzIGFkZHJlc3MsIFB0clRhZykKICAgICB7CiAgICAg
ICAgIG1fZml4ZWRXaWR0aCA9IHRydWU7CiAgICAgICAgIGxvYWQzMihhZGRyZXNzLm1fcHRyLCBN
SVBTUmVnaXN0ZXJzOjp0OSk7CkBAIC0xOTQ2LDkgKzE5NDYsOSBAQCBjbGFzcyBNYWNyb0Fzc2Vt
Ymxlck1JUFMgOiBwdWJsaWMgQWJzdHJhY3RNYWNyb0Fzc2VtYmxlcjxBc3NlbWJsZXI+IHsKICAg
ICAgICAgbV9maXhlZFdpZHRoID0gZmFsc2U7CiAgICAgfQogCi0gICAgQUxXQVlTX0lOTElORSB2
b2lkIGp1bXAoUmVnaXN0ZXJJRCB0YXJnZXQsIFJlZ2lzdGVySUQganVtcFRhZykgeyBVTlVTRURf
UEFSQU0oanVtcFRhZyksIGp1bXAodGFyZ2V0LCBOb1B0clRhZyk7IH0KLSAgICBBTFdBWVNfSU5M
SU5FIHZvaWQganVtcChBZGRyZXNzIGFkZHJlc3MsIFJlZ2lzdGVySUQganVtcFRhZykgeyBVTlVT
RURfUEFSQU0oanVtcFRhZyksIGp1bXAoYWRkcmVzcywgTm9QdHJUYWcpOyB9Ci0gICAgQUxXQVlT
X0lOTElORSB2b2lkIGp1bXAoQWJzb2x1dGVBZGRyZXNzIGFkZHJlc3MsIFJlZ2lzdGVySUQganVt
cFRhZykgeyBVTlVTRURfUEFSQU0oanVtcFRhZyksIGp1bXAoYWRkcmVzcywgTm9QdHJUYWcpOyB9
CisgICAgQUxXQVlTX0lOTElORSB2b2lkIGZhckp1bXAoUmVnaXN0ZXJJRCB0YXJnZXQsIFJlZ2lz
dGVySUQganVtcFRhZykgeyBVTlVTRURfUEFSQU0oanVtcFRhZyksIGZhckp1bXAodGFyZ2V0LCBO
b1B0clRhZyk7IH0KKyAgICBBTFdBWVNfSU5MSU5FIHZvaWQgZmFySnVtcChBZGRyZXNzIGFkZHJl
c3MsIFJlZ2lzdGVySUQganVtcFRhZykgeyBVTlVTRURfUEFSQU0oanVtcFRhZyksIGZhckp1bXAo
YWRkcmVzcywgTm9QdHJUYWcpOyB9CisgICAgQUxXQVlTX0lOTElORSB2b2lkIGZhckp1bXAoQWJz
b2x1dGVBZGRyZXNzIGFkZHJlc3MsIFJlZ2lzdGVySUQganVtcFRhZykgeyBVTlVTRURfUEFSQU0o
anVtcFRhZyksIGZhckp1bXAoYWRkcmVzcywgTm9QdHJUYWcpOyB9CiAKICAgICB2b2lkIG1vdmVE
b3VibGVUb0ludHMoRlBSZWdpc3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkZXN0MSwgUmVnaXN0ZXJJ
RCBkZXN0MikKICAgICB7CkBAIC0yNzA0LDIzICsyNzA0LDYgQEAgY2xhc3MgTWFjcm9Bc3NlbWJs
ZXJNSVBTIDogcHVibGljIEFic3RyYWN0TWFjcm9Bc3NlbWJsZXI8QXNzZW1ibGVyPiB7CiAgICAg
ICAgIHJldHVybiBzdG9yZVB0cldpdGhQYXRjaChUcnVzdGVkSW1tUHRyKG51bGxwdHIpLCBhZGRy
ZXNzKTsKICAgICB9CiAKLSAgICBDYWxsIHRhaWxSZWN1cnNpdmVDYWxsKCkKLSAgICB7Ci0gICAg
ICAgIC8vIExpa2UgYSBub3JtYWwgY2FsbCwgYnV0IGRvbid0IHVwZGF0ZSB0aGUgcmV0dXJuZWQg
YWRkcmVzcyByZWdpc3RlcgotICAgICAgICBtX2ZpeGVkV2lkdGggPSB0cnVlOwotICAgICAgICBt
b3ZlKFRydXN0ZWRJbW0zMigwKSwgTUlQU1JlZ2lzdGVyczo6dDkpOwotICAgICAgICBtX2Fzc2Vt
Ymxlci5qcihNSVBTUmVnaXN0ZXJzOjp0OSk7Ci0gICAgICAgIG1fYXNzZW1ibGVyLm5vcCgpOwot
ICAgICAgICBtX2ZpeGVkV2lkdGggPSBmYWxzZTsKLSAgICAgICAgcmV0dXJuIENhbGwobV9hc3Nl
bWJsZXIubGFiZWwoKSwgQ2FsbDo6TGlua2FibGUpOwotICAgIH0KLQotICAgIENhbGwgbWFrZVRh
aWxSZWN1cnNpdmVDYWxsKEp1bXAgb2xkSnVtcCkKLSAgICB7Ci0gICAgICAgIG9sZEp1bXAubGlu
ayh0aGlzKTsKLSAgICAgICAgcmV0dXJuIHRhaWxSZWN1cnNpdmVDYWxsKCk7Ci0gICAgfQotCiAg
ICAgdm9pZCBsb2FkRmxvYXQoQmFzZUluZGV4IGFkZHJlc3MsIEZQUmVnaXN0ZXJJRCBkZXN0KQog
ICAgIHsKICAgICAgICAgaWYgKCFtX2ZpeGVkV2lkdGgpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODYuaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODYuaAppbmRleCBlNGJhY2VkZDhi
YjhkOTY1ZTM0NjM3Mjk0NGYyNDVlZmE5NzQ1NmU0Li40MmEwOGZlNGYyZDBhYTRkODQ2M2YxMjI1
Y2ViMGQxZDIwZWVhMWE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1i
bGVyL01hY3JvQXNzZW1ibGVyWDg2LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2Vt
Ymxlci9NYWNyb0Fzc2VtYmxlclg4Ni5oCkBAIC01MSw2ICs1MSw3IEBAIGNsYXNzIE1hY3JvQXNz
ZW1ibGVyWDg2IDogcHVibGljIE1hY3JvQXNzZW1ibGVyWDg2Q29tbW9uIHsKICAgICB1c2luZyBN
YWNyb0Fzc2VtYmxlclg4NkNvbW1vbjo6YnJhbmNoMzI7CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJs
ZXJYODZDb21tb246OmNhbGw7CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJYODZDb21tb246Omp1
bXA7CisgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJYODZDb21tb246OmZhckp1bXA7CiAgICAgdXNp
bmcgTWFjcm9Bc3NlbWJsZXJYODZDb21tb246OmFkZERvdWJsZTsKICAgICB1c2luZyBNYWNyb0Fz
c2VtYmxlclg4NkNvbW1vbjo6bG9hZERvdWJsZTsKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlclg4
NkNvbW1vbjo6c3RvcmVEb3VibGU7CkBAIC0yMTksMjMgKzIyMCwxMiBAQCBjbGFzcyBNYWNyb0Fz
c2VtYmxlclg4NiA6IHB1YmxpYyBNYWNyb0Fzc2VtYmxlclg4NkNvbW1vbiB7CiAgICAgQUxXQVlT
X0lOTElORSBDYWxsIGNhbGwoUmVnaXN0ZXJJRCBjYWxsVGFnKSB7IHJldHVybiBVTlVTRURfUEFS
QU0oY2FsbFRhZyksIGNhbGwoTm9QdHJUYWcpOyB9CiAKICAgICAvLyBBZGRyZXNzIGlzIGEgbWVt
b3J5IGxvY2F0aW9uIGNvbnRhaW5pbmcgdGhlIGFkZHJlc3MgdG8ganVtcCB0bwotICAgIHZvaWQg
anVtcChBYnNvbHV0ZUFkZHJlc3MgYWRkcmVzcywgUHRyVGFnKQorICAgIHZvaWQgZmFySnVtcChB
YnNvbHV0ZUFkZHJlc3MgYWRkcmVzcywgUHRyVGFnKQogICAgIHsKICAgICAgICAgbV9hc3NlbWJs
ZXIuam1wX20oYWRkcmVzcy5tX3B0cik7CiAgICAgfQogCi0gICAgQUxXQVlTX0lOTElORSB2b2lk
IGp1bXAoQWJzb2x1dGVBZGRyZXNzIGFkZHJlc3MsIFJlZ2lzdGVySUQganVtcFRhZykgeyBVTlVT
RURfUEFSQU0oanVtcFRhZyksIGp1bXAoYWRkcmVzcywgTm9QdHJUYWcpOyB9Ci0KLSAgICBDYWxs
IHRhaWxSZWN1cnNpdmVDYWxsKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBDYWxsOjpmcm9tVGFp
bEp1bXAoanVtcCgpKTsKLSAgICB9Ci0KLSAgICBDYWxsIG1ha2VUYWlsUmVjdXJzaXZlQ2FsbChK
dW1wIG9sZEp1bXApCi0gICAgewotICAgICAgICByZXR1cm4gQ2FsbDo6ZnJvbVRhaWxKdW1wKG9s
ZEp1bXApOwotICAgIH0KLQorICAgIEFMV0FZU19JTkxJTkUgdm9pZCBmYXJKdW1wKEFic29sdXRl
QWRkcmVzcyBhZGRyZXNzLCBSZWdpc3RlcklEIGp1bXBUYWcpIHsgVU5VU0VEX1BBUkFNKGp1bXBU
YWcpLCBmYXJKdW1wKGFkZHJlc3MsIE5vUHRyVGFnKTsgfQogCiAgICAgRGF0YUxhYmVsUHRyIG1v
dmVXaXRoUGF0Y2goVHJ1c3RlZEltbVB0ciBpbml0aWFsVmFsdWUsIFJlZ2lzdGVySUQgZGVzdCkK
ICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3Jv
QXNzZW1ibGVyWDg2Q29tbW9uLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01h
Y3JvQXNzZW1ibGVyWDg2Q29tbW9uLmgKaW5kZXggZGYyNWE1ODQxNTczMjk3ZWUyMTc2ZGEyZTdh
M2VkYjJiOTZjZDBjMS4uMGUzMzczNWVkN2RjMjUwOTkwMjc3ZmYzMjFiMmFiMzA3MzA3NzBlNiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxl
clg4NkNvbW1vbi5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9B
c3NlbWJsZXJYODZDb21tb24uaApAQCAtMjc0NSwyNiArMjc0NSwyNiBAQCBjbGFzcyBNYWNyb0Fz
c2VtYmxlclg4NkNvbW1vbiA6IHB1YmxpYyBBYnN0cmFjdE1hY3JvQXNzZW1ibGVyPEFzc2VtYmxl
cj4gewogICAgICAgICByZXR1cm4gSnVtcChtX2Fzc2VtYmxlci5qbXAoKSk7CiAgICAgfQogCi0g
ICAgdm9pZCBqdW1wKFJlZ2lzdGVySUQgdGFyZ2V0LCBQdHJUYWcpCisgICAgdm9pZCBmYXJKdW1w
KFJlZ2lzdGVySUQgdGFyZ2V0LCBQdHJUYWcpCiAgICAgewogICAgICAgICBtX2Fzc2VtYmxlci5q
bXBfcih0YXJnZXQpOwogICAgIH0KIAogICAgIC8vIEFkZHJlc3MgaXMgYSBtZW1vcnkgbG9jYXRp
b24gY29udGFpbmluZyB0aGUgYWRkcmVzcyB0byBqdW1wIHRvCi0gICAgdm9pZCBqdW1wKEFkZHJl
c3MgYWRkcmVzcywgUHRyVGFnKQorICAgIHZvaWQgZmFySnVtcChBZGRyZXNzIGFkZHJlc3MsIFB0
clRhZykKICAgICB7CiAgICAgICAgIG1fYXNzZW1ibGVyLmptcF9tKGFkZHJlc3Mub2Zmc2V0LCBh
ZGRyZXNzLmJhc2UpOwogICAgIH0KIAogICAgIC8vIEFkZHJlc3MgaXMgYSBtZW1vcnkgbG9jYXRp
b24gY29udGFpbmluZyB0aGUgYWRkcmVzcyB0byBqdW1wIHRvCi0gICAgdm9pZCBqdW1wKEJhc2VJ
bmRleCBhZGRyZXNzLCBQdHJUYWcpCisgICAgdm9pZCBmYXJKdW1wKEJhc2VJbmRleCBhZGRyZXNz
LCBQdHJUYWcpCiAgICAgewogICAgICAgICBtX2Fzc2VtYmxlci5qbXBfbShhZGRyZXNzLm9mZnNl
dCwgYWRkcmVzcy5iYXNlLCBhZGRyZXNzLmluZGV4LCBhZGRyZXNzLnNjYWxlKTsKICAgICB9CiAK
LSAgICBBTFdBWVNfSU5MSU5FIHZvaWQganVtcChSZWdpc3RlcklEIHRhcmdldCwgUmVnaXN0ZXJJ
RCBqdW1wVGFnKSB7IFVOVVNFRF9QQVJBTShqdW1wVGFnKSwganVtcCh0YXJnZXQsIE5vUHRyVGFn
KTsgfQotICAgIEFMV0FZU19JTkxJTkUgdm9pZCBqdW1wKEFkZHJlc3MgYWRkcmVzcywgUmVnaXN0
ZXJJRCBqdW1wVGFnKSB7IFVOVVNFRF9QQVJBTShqdW1wVGFnKSwganVtcChhZGRyZXNzLCBOb1B0
clRhZyk7IH0KLSAgICBBTFdBWVNfSU5MSU5FIHZvaWQganVtcChCYXNlSW5kZXggYWRkcmVzcywg
UmVnaXN0ZXJJRCBqdW1wVGFnKSB7IFVOVVNFRF9QQVJBTShqdW1wVGFnKSwganVtcChhZGRyZXNz
LCBOb1B0clRhZyk7IH0KKyAgICBBTFdBWVNfSU5MSU5FIHZvaWQgZmFySnVtcChSZWdpc3RlcklE
IHRhcmdldCwgUmVnaXN0ZXJJRCBqdW1wVGFnKSB7IFVOVVNFRF9QQVJBTShqdW1wVGFnKSwgZmFy
SnVtcCh0YXJnZXQsIE5vUHRyVGFnKTsgfQorICAgIEFMV0FZU19JTkxJTkUgdm9pZCBmYXJKdW1w
KEFkZHJlc3MgYWRkcmVzcywgUmVnaXN0ZXJJRCBqdW1wVGFnKSB7IFVOVVNFRF9QQVJBTShqdW1w
VGFnKSwgZmFySnVtcChhZGRyZXNzLCBOb1B0clRhZyk7IH0KKyAgICBBTFdBWVNfSU5MSU5FIHZv
aWQgZmFySnVtcChCYXNlSW5kZXggYWRkcmVzcywgUmVnaXN0ZXJJRCBqdW1wVGFnKSB7IFVOVVNF
RF9QQVJBTShqdW1wVGFnKSwgZmFySnVtcChhZGRyZXNzLCBOb1B0clRhZyk7IH0KIAogICAgIC8v
IEFyaXRobWV0aWMgY29udHJvbCBmbG93IG9wZXJhdGlvbnM6CiAgICAgLy8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZfNjQuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZfNjQuaApp
bmRleCA0NTJkMjhkNWQ3ZDZkN2UzNDQzZmQ5NjZmNDQ5NGM2ODhhOWI4NDIxLi5lNjA3YWFlZGM0
ZDlhMTgzMTFjNzcwMDJiNzNhY2FhYjM1ZTcyYTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2XzY0LmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4Nl82NC5oCkBAIC01NCw2ICs1
NCw3IEBAIGNsYXNzIE1hY3JvQXNzZW1ibGVyWDg2XzY0IDogcHVibGljIE1hY3JvQXNzZW1ibGVy
WDg2Q29tbW9uIHsKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlclg4NkNvbW1vbjo6c3RvcmU4Owog
ICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyWDg2Q29tbW9uOjpjYWxsOwogICAgIHVzaW5nIE1hY3Jv
QXNzZW1ibGVyWDg2Q29tbW9uOjpqdW1wOworICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyWDg2Q29t
bW9uOjpmYXJKdW1wOwogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyWDg2Q29tbW9uOjphZGREb3Vi
bGU7CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJYODZDb21tb246OmxvYWREb3VibGU7CiAgICAg
dXNpbmcgTWFjcm9Bc3NlbWJsZXJYODZDb21tb246OmNvbnZlcnRJbnQzMlRvRG91YmxlOwpAQCAt
MjQzLDMwICsyNDQsMTMgQEAgY2xhc3MgTWFjcm9Bc3NlbWJsZXJYODZfNjQgOiBwdWJsaWMgTWFj
cm9Bc3NlbWJsZXJYODZDb21tb24gewogICAgIEFMV0FZU19JTkxJTkUgQ2FsbCBjYWxsKFJlZ2lz
dGVySUQgY2FsbFRhZykgeyByZXR1cm4gVU5VU0VEX1BBUkFNKGNhbGxUYWcpLCBjYWxsKE5vUHRy
VGFnKTsgfQogCiAgICAgLy8gQWRkcmVzcyBpcyBhIG1lbW9yeSBsb2NhdGlvbiBjb250YWluaW5n
IHRoZSBhZGRyZXNzIHRvIGp1bXAgdG8KLSAgICB2b2lkIGp1bXAoQWJzb2x1dGVBZGRyZXNzIGFk
ZHJlc3MsIFB0clRhZyB0YWcpCisgICAgdm9pZCBmYXJKdW1wKEFic29sdXRlQWRkcmVzcyBhZGRy
ZXNzLCBQdHJUYWcgdGFnKQogICAgIHsKICAgICAgICAgbW92ZShUcnVzdGVkSW1tUHRyKGFkZHJl
c3MubV9wdHIpLCBzY3JhdGNoUmVnaXN0ZXIoKSk7Ci0gICAgICAgIGp1bXAoQWRkcmVzcyhzY3Jh
dGNoUmVnaXN0ZXIoKSksIHRhZyk7CisgICAgICAgIGZhckp1bXAoQWRkcmVzcyhzY3JhdGNoUmVn
aXN0ZXIoKSksIHRhZyk7CiAgICAgfQogCi0gICAgQUxXQVlTX0lOTElORSB2b2lkIGp1bXAoQWJz
b2x1dGVBZGRyZXNzIGFkZHJlc3MsIFJlZ2lzdGVySUQganVtcFRhZykgeyBVTlVTRURfUEFSQU0o
anVtcFRhZyksIGp1bXAoYWRkcmVzcywgTm9QdHJUYWcpOyB9Ci0KLSAgICBDYWxsIHRhaWxSZWN1
cnNpdmVDYWxsKCkKLSAgICB7Ci0gICAgICAgIERhdGFMYWJlbFB0ciBsYWJlbCA9IG1vdmVXaXRo
UGF0Y2goVHJ1c3RlZEltbVB0cihudWxscHRyKSwgc2NyYXRjaFJlZ2lzdGVyKCkpOwotICAgICAg
ICBKdW1wIG5ld0p1bXAgPSBKdW1wKG1fYXNzZW1ibGVyLmptcF9yKHNjcmF0Y2hSZWdpc3Rlcigp
KSk7Ci0gICAgICAgIEFTU0VSVF9VTlVTRUQobGFiZWwsIGRpZmZlcmVuY2VCZXR3ZWVuKGxhYmVs
LCBuZXdKdW1wKSA9PSBSRVBBVENIX09GRlNFVF9DQUxMX1IxMSk7Ci0gICAgICAgIHJldHVybiBD
YWxsOjpmcm9tVGFpbEp1bXAobmV3SnVtcCk7Ci0gICAgfQotCi0gICAgQ2FsbCBtYWtlVGFpbFJl
Y3Vyc2l2ZUNhbGwoSnVtcCBvbGRKdW1wKQotICAgIHsKLSAgICAgICAgb2xkSnVtcC5saW5rKHRo
aXMpOwotICAgICAgICBEYXRhTGFiZWxQdHIgbGFiZWwgPSBtb3ZlV2l0aFBhdGNoKFRydXN0ZWRJ
bW1QdHIobnVsbHB0ciksIHNjcmF0Y2hSZWdpc3RlcigpKTsKLSAgICAgICAgSnVtcCBuZXdKdW1w
ID0gSnVtcChtX2Fzc2VtYmxlci5qbXBfcihzY3JhdGNoUmVnaXN0ZXIoKSkpOwotICAgICAgICBB
U1NFUlRfVU5VU0VEKGxhYmVsLCBkaWZmZXJlbmNlQmV0d2VlbihsYWJlbCwgbmV3SnVtcCkgPT0g
UkVQQVRDSF9PRkZTRVRfQ0FMTF9SMTEpOwotICAgICAgICByZXR1cm4gQ2FsbDo6ZnJvbVRhaWxK
dW1wKG5ld0p1bXApOwotICAgIH0KKyAgICBBTFdBWVNfSU5MSU5FIHZvaWQgZmFySnVtcChBYnNv
bHV0ZUFkZHJlc3MgYWRkcmVzcywgUmVnaXN0ZXJJRCBqdW1wVGFnKSB7IFVOVVNFRF9QQVJBTShq
dW1wVGFnKSwgZmFySnVtcChhZGRyZXNzLCBOb1B0clRhZyk7IH0KIAogICAgIENhbGwgdGhyZWFk
U2FmZVBhdGNoYWJsZU5lYXJDYWxsKCkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYjMvQjNMb3dlck1hY3Jvcy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMv
QjNMb3dlck1hY3Jvcy5jcHAKaW5kZXggMWE4YzgwZWRhN2YxOWUyN2Y4ZjRjYzc0NGExZWRmZTA1
OTVkMDk5Yy4uOTcyZTFiYmVjM2IyMGViMWJiZGQzODNlMjE4NTk0ZGFhYzkwNDgxZiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzTG93ZXJNYWNyb3MuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyTWFjcm9zLmNwcApAQCAtNTQwLDcgKzU0MCw3
IEBAIGNsYXNzIExvd2VyTWFjcm9zIHsKIAogICAgICAgICAgICAgICAgICAgICAgICAgaml0Lm1v
dmUoQ0NhbGxIZWxwZXJzOjpUcnVzdGVkSW1tUHRyKGp1bXBUYWJsZSksIHNjcmF0Y2gpOwogICAg
ICAgICAgICAgICAgICAgICAgICAgaml0LmxvYWQ2NChDQ2FsbEhlbHBlcnM6OkJhc2VJbmRleChz
Y3JhdGNoLCBpbmRleCwgQ0NhbGxIZWxwZXJzOjp0aW1lc1B0cigpKSwgc2NyYXRjaCk7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICBqaXQuanVtcChzY3JhdGNoLCBKU1N3aXRjaFB0clRhZyk7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBqaXQuZmFySnVtcChzY3JhdGNoLCBKU1N3aXRjaFB0clRh
Zyk7CiAKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRoZXNlIGxhYmVscyBhcmUgZ3VhcmFu
dGVlZCB0byBiZSBwb3B1bGF0ZWQgYmVmb3JlIGVpdGhlciBsYXRlIHBhdGhzIG9yCiAgICAgICAg
ICAgICAgICAgICAgICAgICAvLyBsaW5rIHRhc2tzIHJ1bi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy90ZXN0YjNfNi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMv
dGVzdGIzXzYuY3BwCmluZGV4IDA1YzcxNTgzMDA1YmFiMDJhMTMxNzJkNDg5MTJmYTUzMTk5OTYz
NGIuLjhkNjBmNWM1OTI1NWUwOWY2YjdmMTdjZGNkZTJhNTU3ZGYyNTJlY2MgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy90ZXN0YjNfNi5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2IzL3Rlc3RiM182LmNwcApAQCAtMTY4MCw3ICsxNjgwLDcgQEAgdm9pZCB0ZXN0
SW50ZXJwcmV0ZXIoKQogCiAgICAgICAgICAgICBqaXQubW92ZShDQ2FsbEhlbHBlcnM6OlRydXN0
ZWRJbW1QdHIoanVtcFRhYmxlKSwgc2NyYXRjaCk7CiAgICAgICAgICAgICBqaXQubG9hZDY0KEND
YWxsSGVscGVyczo6QmFzZUluZGV4KHNjcmF0Y2gsIHBhcmFtc1swXS5ncHIoKSwgQ0NhbGxIZWxw
ZXJzOjp0aW1lc1B0cigpKSwgc2NyYXRjaCk7Ci0gICAgICAgICAgICBqaXQuanVtcChzY3JhdGNo
LCBCM0NvbXBpbGF0aW9uUHRyVGFnKTsKKyAgICAgICAgICAgIGppdC5mYXJKdW1wKHNjcmF0Y2gs
IEIzQ29tcGlsYXRpb25QdHJUYWcpOwogCiAgICAgICAgICAgICBqaXQuYWRkTGlua1Rhc2soCiAg
ICAgICAgICAgICAgICAgWyYsIGp1bXBUYWJsZSwgbGFiZWxzXSAoTGlua0J1ZmZlciYgbGlua0J1
ZmZlcikgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPU1JFeGl0
Q29tcGlsZXJDb21tb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPU1JFeGl0
Q29tcGlsZXJDb21tb24uY3BwCmluZGV4IDg5NTI0ZGE3OWY3MTNjYzNiMGYzMTZiM2RkOTg0NmMw
NzkzNmVhNzEuLjk2ZTYyNTkwMzgzODJiNWI5MDZmZDVkYzc5YzMwMDcxYTU0NzA1ZmIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT1NSRXhpdENvbXBpbGVyQ29tbW9u
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09TUkV4aXRDb21waWxlckNv
bW1vbi5jcHAKQEAgLTMyMiw3ICszMjIsNyBAQCB2b2lkIGFkanVzdEFuZEp1bXBUb1RhcmdldChW
TSYgdm0sIENDYWxsSGVscGVycyYgaml0LCBjb25zdCBPU1JFeGl0QmFzZSYgZXhpdCkKICAgICB9
CiAgICAgCiAgICAgaml0Lm1vdmUoQXNzZW1ibHlIZWxwZXJzOjpUcnVzdGVkSW1tUHRyKGp1bXBU
YXJnZXQpLCBHUFJJbmZvOjpyZWdUMik7Ci0gICAgaml0Lmp1bXAoR1BSSW5mbzo6cmVnVDIsIE9T
UkV4aXRQdHJUYWcpOworICAgIGppdC5mYXJKdW1wKEdQUkluZm86OnJlZ1QyLCBPU1JFeGl0UHRy
VGFnKTsKIH0KIAogfSB9IC8vIG5hbWVzcGFjZSBKU0M6OkRGRwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAppbmRleCAyYWJjZGIzZmQ1Zjk3MGYz
ZmJiOTBkM2IwZjZlM2NkOWQ0MGZjZTM3Li4yMDdhOWI2OWI0ODg1NWI1NmIxZjgzNzIwNjUxYzJi
Yzc2ZTM4ZjllIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1
bGF0aXZlSklULmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0
aXZlSklULmNwcApAQCAtMTA2NDUsNyArMTA2NDUsNyBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpl
bWl0U3dpdGNoSW50SnVtcCgKICAgICBtX2ppdC5tb3ZlKFRydXN0ZWRJbW1QdHIodGFibGUuY3Rp
T2Zmc2V0cy5iZWdpbigpKSwgc2NyYXRjaCk7CiAgICAgbV9qaXQubG9hZFB0cihKSVRDb21waWxl
cjo6QmFzZUluZGV4KHNjcmF0Y2gsIHZhbHVlLCBKSVRDb21waWxlcjo6dGltZXNQdHIoKSksIHNj
cmF0Y2gpOwogICAgIAotICAgIG1faml0Lmp1bXAoc2NyYXRjaCwgSlNTd2l0Y2hQdHJUYWcpOwor
ICAgIG1faml0LmZhckp1bXAoc2NyYXRjaCwgSlNTd2l0Y2hQdHJUYWcpOwogICAgIGRhdGEtPmRp
ZFVzZUp1bXBUYWJsZSA9IHRydWU7CiB9CiAKQEAgLTEwNjc2LDcgKzEwNjc2LDcgQEAgdm9pZCBT
cGVjdWxhdGl2ZUpJVDo6ZW1pdFN3aXRjaEltbShOb2RlKiBub2RlLCBTd2l0Y2hEYXRhKiBkYXRh
KQogICAgICAgICBjYWxsT3BlcmF0aW9uKG9wZXJhdGlvbkZpbmRTd2l0Y2hJbW1UYXJnZXRGb3JE
b3VibGUsIHNjcmF0Y2gsIHZhbHVlUmVncywgZGF0YS0+c3dpdGNoVGFibGVJbmRleCk7CiAgICAg
ICAgIHNpbGVudEZpbGxBbGxSZWdpc3RlcnMoKTsKIAotICAgICAgICBtX2ppdC5qdW1wKHNjcmF0
Y2gsIEpTU3dpdGNoUHRyVGFnKTsKKyAgICAgICAgbV9qaXQuZmFySnVtcChzY3JhdGNoLCBKU1N3
aXRjaFB0clRhZyk7CiAgICAgICAgIG5vUmVzdWx0KG5vZGUsIFVzZUNoaWxkcmVuQ2FsbGVkRXhw
bGljaXRseSk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KQEAgLTEwOTMzLDcgKzEwOTMzLDcgQEAg
dm9pZCBTcGVjdWxhdGl2ZUpJVDo6ZW1pdFN3aXRjaFN0cmluZ09uU3RyaW5nKFN3aXRjaERhdGEq
IGRhdGEsIEdQUlJlZyBzdHJpbmcpCiAgICAgICAgIGNhbGxPcGVyYXRpb24oCiAgICAgICAgICAg
ICBvcGVyYXRpb25Td2l0Y2hTdHJpbmcsIHN0cmluZywgc3RhdGljX2Nhc3Q8c2l6ZV90PihkYXRh
LT5zd2l0Y2hUYWJsZUluZGV4KSwgc3RyaW5nKTsKICAgICAgICAgbV9qaXQuZXhjZXB0aW9uQ2hl
Y2soKTsKLSAgICAgICAgbV9qaXQuanVtcChzdHJpbmcsIEpTU3dpdGNoUHRyVGFnKTsKKyAgICAg
ICAgbV9qaXQuZmFySnVtcChzdHJpbmcsIEpTU3dpdGNoUHRyVGFnKTsKICAgICAgICAgcmV0dXJu
OwogICAgIH0KICAgICAKQEAgLTEwOTcxLDcgKzEwOTcxLDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJ
VDo6ZW1pdFN3aXRjaFN0cmluZ09uU3RyaW5nKFN3aXRjaERhdGEqIGRhdGEsIEdQUlJlZyBzdHJp
bmcpCiAgICAgY2FsbE9wZXJhdGlvbihvcGVyYXRpb25Td2l0Y2hTdHJpbmcsIHN0cmluZywgc3Rh
dGljX2Nhc3Q8c2l6ZV90PihkYXRhLT5zd2l0Y2hUYWJsZUluZGV4KSwgc3RyaW5nKTsKICAgICBz
aWxlbnRGaWxsQWxsUmVnaXN0ZXJzKCk7CiAgICAgbV9qaXQuZXhjZXB0aW9uQ2hlY2soKTsKLSAg
ICBtX2ppdC5qdW1wKHN0cmluZywgSlNTd2l0Y2hQdHJUYWcpOworICAgIG1faml0LmZhckp1bXAo
c3RyaW5nLCBKU1N3aXRjaFB0clRhZyk7CiB9CiAKIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmVtaXRT
d2l0Y2hTdHJpbmcoTm9kZSogbm9kZSwgU3dpdGNoRGF0YSogZGF0YSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQ2NC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwCmluZGV4IDczMDZjMmE0
YTkyZGQxYTczZjM2MDcxNjk1MzVlM2EyMWE0ODgzMDkuLjc5NGFkMDJjNTZhNWQ1M2ExMmQxODEw
ZDczZGNlZDdmOTE2ZmEwOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHU3BlY3VsYXRpdmVKSVQ2NC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdTcGVjdWxhdGl2ZUpJVDY0LmNwcApAQCAtNTA5Nyw3ICs1MDk3LDcgQEAgdm9pZCBTcGVjdWxh
dGl2ZUpJVDo6Y29tcGlsZShOb2RlKiBub2RlKQogICAgICAgICAgICAgICAgIG9zckVudGVyLmxp
bmsoJm1faml0KTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIG1faml0LmVtaXRSZXN0b3Jl
Q2FsbGVlU2F2ZXMoKTsKLSAgICAgICAgICAgIG1faml0Lmp1bXAodGVtcEdQUiwgR1BSSW5mbzo6
Y2FsbEZyYW1lUmVnaXN0ZXIpOworICAgICAgICAgICAgbV9qaXQuZmFySnVtcCh0ZW1wR1BSLCBH
UFJJbmZvOjpjYWxsRnJhbWVSZWdpc3Rlcik7CiAgICAgICAgIH0pOwogICAgICAgICBicmVhazsK
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1RodW5rcy5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1RodW5rcy5jcHAKaW5kZXggY2YyZjFl
MjMxN2RiYmQ2Njc1ZTIwZmZhNzQ0ZTE0NDM1MDg1YmNjZS4uOGFlNjZlZTZlYTFkMWRiM2Q1NzMw
NGIwNDFlZTRkMjg3YjNlMTgxNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdUaHVua3MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHVGh1bmtz
LmNwcApAQCAtOTksNyArOTksNyBAQCBNYWNyb0Fzc2VtYmxlckNvZGVSZWY8SklUVGh1bmtQdHJU
YWc+IG9zckV4aXRHZW5lcmF0aW9uVGh1bmtHZW5lcmF0b3IoVk0qIHZtKQogI2VuZGlmCiAgICAg
fQogCi0gICAgaml0Lmp1bXAoTWFjcm9Bc3NlbWJsZXI6OkFic29sdXRlQWRkcmVzcygmdm0tPm9z
ckV4aXRKdW1wRGVzdGluYXRpb24pLCBPU1JFeGl0UHRyVGFnKTsKKyAgICBqaXQuZmFySnVtcChN
YWNyb0Fzc2VtYmxlcjo6QWJzb2x1dGVBZGRyZXNzKCZ2bS0+b3NyRXhpdEp1bXBEZXN0aW5hdGlv
biksIE9TUkV4aXRQdHJUYWcpOwogCiAgICAgTGlua0J1ZmZlciBwYXRjaEJ1ZmZlcihqaXQsIEdM
T0JBTF9USFVOS19JRCk7CiAgICAgCkBAIC0xNDQsNyArMTQ0LDcgQEAgTWFjcm9Bc3NlbWJsZXJD
b2RlUmVmPEpJVFRodW5rUHRyVGFnPiBvc3JFbnRyeVRodW5rR2VuZXJhdG9yKFZNKiB2bSkKICAg
ICBqaXQucmVzdG9yZUNhbGxlZVNhdmVzRnJvbUVudHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZlcih2
bS0+dG9wRW50cnlGcmFtZSk7CiAgICAgaml0LmVtaXRNYXRlcmlhbGl6ZVRhZ0NoZWNrUmVnaXN0
ZXJzKCk7CiAKLSAgICBqaXQuanVtcChHUFJJbmZvOjpyZWdUMSwgR1BSSW5mbzo6Y2FsbEZyYW1l
UmVnaXN0ZXIpOworICAgIGppdC5mYXJKdW1wKEdQUkluZm86OnJlZ1QxLCBHUFJJbmZvOjpjYWxs
RnJhbWVSZWdpc3Rlcik7CiAKICAgICBMaW5rQnVmZmVyIHBhdGNoQnVmZmVyKGppdCwgR0xPQkFM
X1RIVU5LX0lEKTsKICAgICByZXR1cm4gRklOQUxJWkVfQ09ERShwYXRjaEJ1ZmZlciwgSklUVGh1
bmtQdHJUYWcsICJERkcgT1NSIGVudHJ5IHRodW5rIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0NDYWxsSGVscGVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pp
dC9DQ2FsbEhlbHBlcnMuaAppbmRleCBiYTY2OWE5YzFkZDQ2ZDMxYmRhODM5YzIyYTJlY2Y4YTJk
ZjQ5ZWZhLi44NzAxOTdhZjdjZjY5NmUxNDYyZGM1ODdhMDc3YjFjMTMwZWFiODVlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0NDYWxsSGVscGVycy5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvQ0NhbGxIZWxwZXJzLmgKQEAgLTc0Miw3ICs3NDIsNyBAQCBj
bGFzcyBDQ2FsbEhlbHBlcnMgOiBwdWJsaWMgQXNzZW1ibHlIZWxwZXJzIHsKICAgICAgICAgLy8g
Z2VuZXJpY1Vud2luZCgpIGxlYXZlcyB0aGUgaGFuZGxlciBDYWxsRnJhbWUqIGluIHZtLT5jYWxs
RnJhbWVGb3JDYXRjaCwKICAgICAgICAgLy8gYW5kIHRoZSBhZGRyZXNzIG9mIHRoZSBoYW5kbGVy
IGluIHZtLT50YXJnZXRNYWNoaW5lUENGb3JUaHJvdy4KICAgICAgICAgbG9hZFB0cigmdm0udGFy
Z2V0TWFjaGluZVBDRm9yVGhyb3csIEdQUkluZm86OnJlZ1QxKTsKLSAgICAgICAganVtcChHUFJJ
bmZvOjpyZWdUMSwgRXhjZXB0aW9uSGFuZGxlclB0clRhZyk7CisgICAgICAgIGZhckp1bXAoR1BS
SW5mbzo6cmVnVDEsIEV4Y2VwdGlvbkhhbmRsZXJQdHJUYWcpOwogICAgIH0KIAogICAgIHZvaWQg
cHJlcGFyZUZvclRhaWxDYWxsU2xvdyhHUFJSZWcgY2FsbGVlR1BSID0gSW52YWxpZEdQUlJlZykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qaXQvSklULmNwcAppbmRleCAwNWY3MGYxYWVhZjRjNGQ5ZjUyYzEwNmFi
NjZkYjllY2QyZWFiOGJlLi44MzQyZTVmYzVlZmNhMjg0OWRmZDEyZGI3YWE0YWI0OTgyYjYxZmU4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVQuY3BwCkBAIC0xMDYsNyArMTA2LDcgQEAgdm9pZCBK
SVQ6OmVtaXRFbnRlck9wdGltaXphdGlvbkNoZWNrKCkKIAogICAgIGNhbGxPcGVyYXRpb24ob3Bl
cmF0aW9uT3B0aW1pemUsIG1fYnl0ZWNvZGVPZmZzZXQpOwogICAgIHNraXBPcHRpbWl6ZS5hcHBl
bmQoYnJhbmNoVGVzdFB0cihaZXJvLCByZXR1cm5WYWx1ZUdQUikpOwotICAgIGp1bXAocmV0dXJu
VmFsdWVHUFIsIEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyKTsKKyAgICBmYXJKdW1wKHJldHVy
blZhbHVlR1BSLCBHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3Rlcik7CiAgICAgc2tpcE9wdGltaXpl
LmxpbmsodGhpcyk7CiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9qaXQvSklUT3Bjb2Rlcy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wY29k
ZXMuY3BwCmluZGV4IGVjYjFlMTFjNDZjMzQzYzVlNzFkYWJlMDdlNDVmNGMxMTUwMTFiNzEuLjFj
OWE5NTRlNjAyZDMwY2Q2NWVjYmM0ZTUxZDM4YTkxODEwZDgyMTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUT3Bjb2Rlcy5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVRPcGNvZGVzLmNwcApAQCAtNzI1LDcgKzcyNSw3IEBAIHZvaWQgSklUOjpl
bWl0X29wX2NhdGNoKGNvbnN0IEluc3RydWN0aW9uKiBjdXJyZW50SW5zdHJ1Y3Rpb24pCiAgICAg
ICAgIGNhbGxPcGVyYXRpb24ob3BlcmF0aW9uVHJ5T1NSRW50ZXJBdENhdGNoQW5kVmFsdWVQcm9m
aWxlLCBtX2J5dGVjb2RlT2Zmc2V0KTsKICAgICBhdXRvIHNraXBPU1JFbnRyeSA9IGJyYW5jaFRl
c3RQdHIoWmVybywgcmV0dXJuVmFsdWVHUFIpOwogICAgIGVtaXRSZXN0b3JlQ2FsbGVlU2F2ZXMo
KTsKLSAgICBqdW1wKHJldHVyblZhbHVlR1BSLCBFeGNlcHRpb25IYW5kbGVyUHRyVGFnKTsKKyAg
ICBmYXJKdW1wKHJldHVyblZhbHVlR1BSLCBFeGNlcHRpb25IYW5kbGVyUHRyVGFnKTsKICAgICBz
a2lwT1NSRW50cnkubGluayh0aGlzKTsKICAgICBpZiAoYnVmZmVyICYmIHNob3VsZEVtaXRQcm9m
aWxpbmcoKSkgewogICAgICAgICBidWZmZXItPmZvckVhY2goWyZdIChWYWx1ZVByb2ZpbGVBbmRP
cGVyYW5kJiBwcm9maWxlKSB7CkBAIC03NjUsNyArNzY1LDcgQEAgdm9pZCBKSVQ6OmVtaXRfb3Bf
c3dpdGNoX2ltbShjb25zdCBJbnN0cnVjdGlvbiogY3VycmVudEluc3RydWN0aW9uKQogCiAgICAg
ZW1pdEdldFZpcnR1YWxSZWdpc3RlcihzY3J1dGluZWUsIHJlZ1QwKTsKICAgICBjYWxsT3BlcmF0
aW9uKG9wZXJhdGlvblN3aXRjaEltbVdpdGhVbmtub3duS2V5VHlwZSwgcmVnVDAsIHRhYmxlSW5k
ZXgpOwotICAgIGp1bXAocmV0dXJuVmFsdWVHUFIsIEpTU3dpdGNoUHRyVGFnKTsKKyAgICBmYXJK
dW1wKHJldHVyblZhbHVlR1BSLCBKU1N3aXRjaFB0clRhZyk7CiB9CiAKIHZvaWQgSklUOjplbWl0
X29wX3N3aXRjaF9jaGFyKGNvbnN0IEluc3RydWN0aW9uKiBjdXJyZW50SW5zdHJ1Y3Rpb24pCkBA
IC03ODIsNyArNzgyLDcgQEAgdm9pZCBKSVQ6OmVtaXRfb3Bfc3dpdGNoX2NoYXIoY29uc3QgSW5z
dHJ1Y3Rpb24qIGN1cnJlbnRJbnN0cnVjdGlvbikKIAogICAgIGVtaXRHZXRWaXJ0dWFsUmVnaXN0
ZXIoc2NydXRpbmVlLCByZWdUMCk7CiAgICAgY2FsbE9wZXJhdGlvbihvcGVyYXRpb25Td2l0Y2hD
aGFyV2l0aFVua25vd25LZXlUeXBlLCByZWdUMCwgdGFibGVJbmRleCk7Ci0gICAganVtcChyZXR1
cm5WYWx1ZUdQUiwgSlNTd2l0Y2hQdHJUYWcpOworICAgIGZhckp1bXAocmV0dXJuVmFsdWVHUFIs
IEpTU3dpdGNoUHRyVGFnKTsKIH0KIAogdm9pZCBKSVQ6OmVtaXRfb3Bfc3dpdGNoX3N0cmluZyhj
b25zdCBJbnN0cnVjdGlvbiogY3VycmVudEluc3RydWN0aW9uKQpAQCAtNzk4LDcgKzc5OCw3IEBA
IHZvaWQgSklUOjplbWl0X29wX3N3aXRjaF9zdHJpbmcoY29uc3QgSW5zdHJ1Y3Rpb24qIGN1cnJl
bnRJbnN0cnVjdGlvbikKIAogICAgIGVtaXRHZXRWaXJ0dWFsUmVnaXN0ZXIoc2NydXRpbmVlLCBy
ZWdUMCk7CiAgICAgY2FsbE9wZXJhdGlvbihvcGVyYXRpb25Td2l0Y2hTdHJpbmdXaXRoVW5rbm93
bktleVR5cGUsIHJlZ1QwLCB0YWJsZUluZGV4KTsKLSAgICBqdW1wKHJldHVyblZhbHVlR1BSLCBK
U1N3aXRjaFB0clRhZyk7CisgICAgZmFySnVtcChyZXR1cm5WYWx1ZUdQUiwgSlNTd2l0Y2hQdHJU
YWcpOwogfQogCiB2b2lkIEpJVDo6ZW1pdF9vcF9kZWJ1Zyhjb25zdCBJbnN0cnVjdGlvbiogY3Vy
cmVudEluc3RydWN0aW9uKQpAQCAtMTA0Myw3ICsxMDQzLDcgQEAgdm9pZCBKSVQ6OmVtaXRTbG93
X29wX2xvb3BfaGludChjb25zdCBJbnN0cnVjdGlvbiogY3VycmVudEluc3RydWN0aW9uLCBWZWN0
b3I8U2wKICAgICAgICAgICAgIGFib3J0V2l0aFJlYXNvbihKSVRVbnJlYXNvbmFibGVMb29wSGlu
dEp1bXBUYXJnZXQpOwogICAgICAgICAgICAgb2subGluayh0aGlzKTsKICAgICAgICAgfQotICAg
ICAgICBqdW1wKHJldHVyblZhbHVlR1BSLCBHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3Rlcik7Cisg
ICAgICAgIGZhckp1bXAocmV0dXJuVmFsdWVHUFIsIEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVy
KTsKICAgICAgICAgbm9PcHRpbWl6ZWRFbnRyeS5saW5rKHRoaXMpOwogCiAgICAgICAgIGVtaXRK
dW1wU2xvd1RvSG90KGp1bXAoKSwgY3VycmVudEluc3RydWN0aW9uLT5zaXplKCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGNvZGVzMzJfNjQuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGNvZGVzMzJfNjQuY3BwCmluZGV4IDcxMzE5NmY0
NTdiYWQwZWY3ZmJlZGEyMzRmZTdiZDBhMWMxNGZlZjMuLjVkOGExM2I1YmUxYTIyYmRhNzVhNGNi
NWM2ZTNlOTJhZjI5N2U3YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQv
SklUT3Bjb2RlczMyXzY0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9w
Y29kZXMzMl82NC5jcHAKQEAgLTkxNyw3ICs5MTcsNyBAQCB2b2lkIEpJVDo6ZW1pdF9vcF9jYXRj
aChjb25zdCBJbnN0cnVjdGlvbiogY3VycmVudEluc3RydWN0aW9uKQogICAgICAgICBjYWxsT3Bl
cmF0aW9uKG9wZXJhdGlvblRyeU9TUkVudGVyQXRDYXRjaEFuZFZhbHVlUHJvZmlsZSwgbV9ieXRl
Y29kZU9mZnNldCk7CiAgICAgYXV0byBza2lwT1NSRW50cnkgPSBicmFuY2hUZXN0UHRyKFplcm8s
IHJldHVyblZhbHVlR1BSKTsKICAgICBlbWl0UmVzdG9yZUNhbGxlZVNhdmVzKCk7Ci0gICAganVt
cChyZXR1cm5WYWx1ZUdQUiwgTm9QdHJUYWcpOworICAgIGZhckp1bXAocmV0dXJuVmFsdWVHUFIs
IE5vUHRyVGFnKTsKICAgICBza2lwT1NSRW50cnkubGluayh0aGlzKTsKICAgICBpZiAoYnVmZmVy
ICYmIHNob3VsZEVtaXRQcm9maWxpbmcoKSkgewogICAgICAgICBidWZmZXItPmZvckVhY2goWyZd
IChWYWx1ZVByb2ZpbGVBbmRPcGVyYW5kJiBwcm9maWxlKSB7CkBAIC05NTcsNyArOTU3LDcgQEAg
dm9pZCBKSVQ6OmVtaXRfb3Bfc3dpdGNoX2ltbShjb25zdCBJbnN0cnVjdGlvbiogY3VycmVudElu
c3RydWN0aW9uKQogCiAgICAgZW1pdExvYWQoc2NydXRpbmVlLCByZWdUMSwgcmVnVDApOwogICAg
IGNhbGxPcGVyYXRpb24ob3BlcmF0aW9uU3dpdGNoSW1tV2l0aFVua25vd25LZXlUeXBlLCBKU1Zh
bHVlUmVncyhyZWdUMSwgcmVnVDApLCB0YWJsZUluZGV4KTsKLSAgICBqdW1wKHJldHVyblZhbHVl
R1BSLCBOb1B0clRhZyk7CisgICAgZmFySnVtcChyZXR1cm5WYWx1ZUdQUiwgTm9QdHJUYWcpOwog
fQogCiB2b2lkIEpJVDo6ZW1pdF9vcF9zd2l0Y2hfY2hhcihjb25zdCBJbnN0cnVjdGlvbiogY3Vy
cmVudEluc3RydWN0aW9uKQpAQCAtOTc0LDcgKzk3NCw3IEBAIHZvaWQgSklUOjplbWl0X29wX3N3
aXRjaF9jaGFyKGNvbnN0IEluc3RydWN0aW9uKiBjdXJyZW50SW5zdHJ1Y3Rpb24pCiAKICAgICBl
bWl0TG9hZChzY3J1dGluZWUsIHJlZ1QxLCByZWdUMCk7CiAgICAgY2FsbE9wZXJhdGlvbihvcGVy
YXRpb25Td2l0Y2hDaGFyV2l0aFVua25vd25LZXlUeXBlLCBKU1ZhbHVlUmVncyhyZWdUMSwgcmVn
VDApLCB0YWJsZUluZGV4KTsKLSAgICBqdW1wKHJldHVyblZhbHVlR1BSLCBOb1B0clRhZyk7Cisg
ICAgZmFySnVtcChyZXR1cm5WYWx1ZUdQUiwgTm9QdHJUYWcpOwogfQogCiB2b2lkIEpJVDo6ZW1p
dF9vcF9zd2l0Y2hfc3RyaW5nKGNvbnN0IEluc3RydWN0aW9uKiBjdXJyZW50SW5zdHJ1Y3Rpb24p
CkBAIC05OTAsNyArOTkwLDcgQEAgdm9pZCBKSVQ6OmVtaXRfb3Bfc3dpdGNoX3N0cmluZyhjb25z
dCBJbnN0cnVjdGlvbiogY3VycmVudEluc3RydWN0aW9uKQogCiAgICAgZW1pdExvYWQoc2NydXRp
bmVlLCByZWdUMSwgcmVnVDApOwogICAgIGNhbGxPcGVyYXRpb24ob3BlcmF0aW9uU3dpdGNoU3Ry
aW5nV2l0aFVua25vd25LZXlUeXBlLCBKU1ZhbHVlUmVncyhyZWdUMSwgcmVnVDApLCB0YWJsZUlu
ZGV4KTsKLSAgICBqdW1wKHJldHVyblZhbHVlR1BSLCBOb1B0clRhZyk7CisgICAgZmFySnVtcChy
ZXR1cm5WYWx1ZUdQUiwgTm9QdHJUYWcpOwogfQogCiB2b2lkIEpJVDo6ZW1pdF9vcF9kZWJ1Zyhj
b25zdCBJbnN0cnVjdGlvbiogY3VycmVudEluc3RydWN0aW9uKQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2ppdC9UaHVua0dlbmVyYXRvcnMuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9UaHVua0dlbmVyYXRvcnMuY3BwCmluZGV4IGNiOWJhYjQzYTAxNmNlOTBiYjdj
NjQyN2IyMmI1MzYyYmRhMGI1ZWEuLjk5MDUwMjM1MWVjZDBhNTYzYTU1NmFkZTlhZTZmNDAxNjQ1
MThiOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvVGh1bmtHZW5lcmF0
b3JzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1RodW5rR2VuZXJhdG9ycy5j
cHAKQEAgLTEyOCw3ICsxMjgsNyBAQCBzdGF0aWMgdm9pZCBzbG93UGF0aEZvcihDQ2FsbEhlbHBl
cnMmIGppdCwgVk0qIHZtLCBTcHJ0X0pJVE9wZXJhdGlvbl9FQ2xpIHNsb3dQYQogICAgIGppdC5w
cmVwYXJlRm9yVGFpbENhbGxTbG93KEdQUkluZm86OnJldHVyblZhbHVlR1BSKTsKIAogICAgIGRv
Tm90VHJhc2gubGluaygmaml0KTsKLSAgICBqaXQuanVtcChHUFJJbmZvOjpyZXR1cm5WYWx1ZUdQ
UiwgSlNFbnRyeVB0clRhZyk7CisgICAgaml0LmZhckp1bXAoR1BSSW5mbzo6cmV0dXJuVmFsdWVH
UFIsIEpTRW50cnlQdHJUYWcpOwogfQogCiBNYWNyb0Fzc2VtYmxlckNvZGVSZWY8SklUVGh1bmtQ
dHJUYWc+IGxpbmtDYWxsVGh1bmtHZW5lcmF0b3IoVk0qIHZtKQpAQCAtMjE3LDcgKzIxNyw3IEBA
IE1hY3JvQXNzZW1ibGVyQ29kZVJlZjxKSVRTdHViUm91dGluZVB0clRhZz4gdmlydHVhbFRodW5r
Rm9yKFZNKiB2bSwgQ2FsbExpbmtJbmZvCiAgICAgICAgIGppdC5wcmVzZXJ2ZVJldHVybkFkZHJl
c3NBZnRlckNhbGwoR1BSSW5mbzo6cmVnVDApOwogICAgICAgICBqaXQucHJlcGFyZUZvclRhaWxD
YWxsU2xvdyhHUFJJbmZvOjpyZWdUNCk7CiAgICAgfQotICAgIGppdC5qdW1wKEdQUkluZm86OnJl
Z1Q0LCBKU0VudHJ5UHRyVGFnKTsKKyAgICBqaXQuZmFySnVtcChHUFJJbmZvOjpyZWdUNCwgSlNF
bnRyeVB0clRhZyk7CiAKICAgICBub3RKU0Z1bmN0aW9uLmxpbmsoJmppdCk7CiAgICAgc2xvd0Nh
c2UuYXBwZW5kKGppdC5icmFuY2hJZk5vdFR5cGUoR1BSSW5mbzo6cmVnVDAsIEludGVybmFsRnVu
Y3Rpb25UeXBlKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJ
bnRUaHVua3MuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50VGh1bmtzLmNw
cAppbmRleCAxMmU2NGZjYzVmNWFkNDQ1MTM5MDg0MDY3ZDYxYjlhYjE4NWQzYjMwLi5jNzNhZjYy
ZmE2OTliOTFjNzFjZWMyZDUwOTQ2NjY5YTE2MTA5OThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvbGxpbnQvTExJbnRUaHVua3MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9sbGludC9MTEludFRodW5rcy5jcHAKQEAgLTYxLDcgKzYxLDcgQEAgc3RhdGljIE1hY3Jv
QXNzZW1ibGVyQ29kZVJlZjxKSVRUaHVua1B0clRhZz4gZ2VuZXJhdGVUaHVua1dpdGhKdW1wVG8o
T3Bjb2RlSUQgb3AKICAgICBhc3NlcnRJc1RhZ2dlZFdpdGgodGFyZ2V0LCBKU0VudHJ5UHRyVGFn
KTsKIAogICAgIGppdC5tb3ZlKEpTSW50ZXJmYWNlSklUOjpUcnVzdGVkSW1tUHRyKHRhcmdldCks
IEpTSW50ZXJmYWNlSklUOjpyZWdUMCk7Ci0gICAgaml0Lmp1bXAoSlNJbnRlcmZhY2VKSVQ6OnJl
Z1QwLCBKU0VudHJ5UHRyVGFnKTsKKyAgICBqaXQuZmFySnVtcChKU0ludGVyZmFjZUpJVDo6cmVn
VDAsIEpTRW50cnlQdHJUYWcpOwogCiAgICAgTGlua0J1ZmZlciBwYXRjaEJ1ZmZlcihqaXQsIEdM
T0JBTF9USFVOS19JRCk7CiAgICAgcmV0dXJuIEZJTkFMSVpFX0NPREUocGF0Y2hCdWZmZXIsIEpJ
VFRodW5rUHRyVGFnLCAiTExJbnQgJXMgcHJvbG9ndWUgdGh1bmsiLCB0aHVua0tpbmQpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUJpbmRpbmcuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUJpbmRpbmcuY3BwCmluZGV4IDIzYzk2NDc0ZjRi
NzU1N2UxOWFlMTgyYTYwY2U5MDc3ZjczNmFiYmQuLmNlNjEwNzZkMWFjYjc5YWVhNGM1ZThiNzUy
YjE3OTQ4NWNhZjA4ZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dh
c21CaW5kaW5nLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtQmluZGlu
Zy5jcHAKQEAgLTc2LDcgKzc2LDcgQEAgRXhwZWN0ZWQ8TWFjcm9Bc3NlbWJsZXJDb2RlUmVmPFdh
c21FbnRyeVB0clRhZz4sIEJpbmRpbmdGYWlsdXJlPiB3YXNtVG9XYXNtKHVuc2kKIAogICAgIC8v
IFRhaWwgY2FsbCBpbnRvIHRoZSBjYWxsZWUgV2ViQXNzZW1ibHkgZnVuY3Rpb24uCiAgICAgaml0
LmxvYWRQdHIoc2NyYXRjaCwgc2NyYXRjaCk7Ci0gICAgaml0Lmp1bXAoc2NyYXRjaCwgV2FzbUVu
dHJ5UHRyVGFnKTsKKyAgICBqaXQuZmFySnVtcChzY3JhdGNoLCBXYXNtRW50cnlQdHJUYWcpOwog
CiAgICAgTGlua0J1ZmZlciBwYXRjaEJ1ZmZlcihqaXQsIEdMT0JBTF9USFVOS19JRCwgSklUQ29t
cGlsYXRpb25DYW5GYWlsKTsKICAgICBpZiAoVU5MSUtFTFkocGF0Y2hCdWZmZXIuZGlkRmFpbFRv
QWxsb2NhdGUoKSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNt
VGh1bmtzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21UaHVua3MuY3BwCmlu
ZGV4IGQ0OWJlOWU5NmRkNWM5ZjYzMmY2M2M3MGJlMTI1OTM1ZDBjMzgxODEuLjM3ODlhMWYxYTMw
NTg5ZDMyMDM1NzA3NjFiZjUwYjY1ZGNjNTc3MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL1dhc21UaHVua3MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL1dhc21UaHVua3MuY3BwCkBAIC01Myw3ICs1Myw3IEBAIE1hY3JvQXNzZW1ibGVyQ29kZVJl
ZjxKSVRUaHVua1B0clRhZz4gdGhyb3dFeGNlcHRpb25Gcm9tV2FzbVRodW5rR2VuZXJhdG9yKGNv
bnN0CiAgICAgaml0Lm1vdmUoR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIsIEdQUkluZm86OmFy
Z3VtZW50R1BSMCk7CiAKICAgICBDQ2FsbEhlbHBlcnM6OkNhbGwgY2FsbCA9IGppdC5jYWxsKE9w
ZXJhdGlvblB0clRhZyk7Ci0gICAgaml0Lmp1bXAoR1BSSW5mbzo6cmV0dXJuVmFsdWVHUFIsIEV4
Y2VwdGlvbkhhbmRsZXJQdHJUYWcpOworICAgIGppdC5mYXJKdW1wKEdQUkluZm86OnJldHVyblZh
bHVlR1BSLCBFeGNlcHRpb25IYW5kbGVyUHRyVGFnKTsKICAgICBqaXQuYnJlYWtwb2ludCgpOyAv
LyBXZSBzaG91bGQgbm90IHJlYWNoIHRoaXMuCiAKICAgICBUaHJvd1dhc21FeGNlcHRpb24gdGhy
b3dXYXNtRXhjZXB0aW9uID0gVGh1bmtzOjpzaW5nbGV0b24oKS50aHJvd1dhc21FeGNlcHRpb24o
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dhc21Ub0pTLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dhc21Ub0pTLmNwcAppbmRleCA5MjJj
NTFhODUwMjNlNGU0OWRjODQyYmFkYjNmYjY2NzU0MTI2ZmFlLi4zNTUwOTRlYzE5YzEzZTFhMzEx
MjllZWUyYzE0OTI3OWNmNDQ4MDg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XYXNtVG9KUy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2FzbVRvSlMuY3BwCkBAIC03MTIsNyArNzEyLDcgQEAgdm9pZCBlbWl0VGhyb3dXYXNtVG9KU0V4
Y2VwdGlvbihDQ2FsbEhlbHBlcnMmIGppdCwgR1BSUmVnIHdhc21JbnN0YW5jZSwgV2FzbTo6RXgK
IAogICAgIENDYWxsSGVscGVyczo6Q2FsbCBjYWxsID0gaml0LmNhbGwoT3BlcmF0aW9uUHRyVGFn
KTsKIAotICAgIGppdC5qdW1wKEdQUkluZm86OnJldHVyblZhbHVlR1BSLCBFeGNlcHRpb25IYW5k
bGVyUHRyVGFnKTsKKyAgICBqaXQuZmFySnVtcChHUFJJbmZvOjpyZXR1cm5WYWx1ZUdQUiwgRXhj
ZXB0aW9uSGFuZGxlclB0clRhZyk7CiAgICAgaml0LmJyZWFrcG9pbnQoKTsgLy8gV2Ugc2hvdWxk
IG5vdCByZWFjaCB0aGlzLgogCiAgICAgaml0LmFkZExpbmtUYXNrKFs9XSAoTGlua0J1ZmZlciYg
bGlua0J1ZmZlcikgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFy
ckpJVC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJySklULmNwcAppbmRleCA3
YTdjMjA2YzdlNDM1OTdjZmU0YzRkNGRjYThhMDdhYzVhYzFmNjYwLi40MTJjNmU0YTZjYmVhYzg5
MzIxYjBhZTc4MGZkZDc2YTA2MTliZTJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUveWFyci9ZYXJySklULmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJy
SklULmNwcApAQCAtNjM5LDcgKzYzOSw3IEBAIGNsYXNzIFlhcnJHZW5lcmF0b3IgOiBwdWJsaWMg
WWFyckpJVEluZm8sIHByaXZhdGUgTWFjcm9Bc3NlbWJsZXIgewogCiAgICAgdm9pZCBsb2FkRnJv
bUZyYW1lQW5kSnVtcCh1bnNpZ25lZCBmcmFtZUxvY2F0aW9uKQogICAgIHsKLSAgICAgICAganVt
cChBZGRyZXNzKHN0YWNrUG9pbnRlclJlZ2lzdGVyLCBmcmFtZUxvY2F0aW9uICogc2l6ZW9mKHZv
aWQqKSksIFlhcnJCYWNrdHJhY2tQdHJUYWcpOworICAgICAgICBmYXJKdW1wKEFkZHJlc3Moc3Rh
Y2tQb2ludGVyUmVnaXN0ZXIsIGZyYW1lTG9jYXRpb24gKiBzaXplb2Yodm9pZCopKSwgWWFyckJh
Y2t0cmFja1B0clRhZyk7CiAgICAgfQogCiAgICAgdW5zaWduZWQgYWxpZ25DYWxsRnJhbWVTaXpl
SW5CeXRlcyh1bnNpZ25lZCBjYWxsRnJhbWVTaXplKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>