<?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>219542</bug_id>
          
          <creation_ts>2020-12-04 07:45:12 -0800</creation_ts>
          <short_desc>Add support for RTCRtpSender::setStreams</short_desc>
          <delta_ts>2020-12-06 11:22:19 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebRTC</component>
          <version>WebKit Local 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="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>cdumez</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>tommyw</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1712023</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-12-04 07:45:12 -0800</bug_when>
    <thetext>Add support for RTCRtpSender::setStreams</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712032</commentid>
    <comment_count>1</comment_count>
      <attachid>415418</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-12-04 08:19:23 -0800</bug_when>
    <thetext>Created attachment 415418
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712054</commentid>
    <comment_count>2</comment_count>
      <attachid>415427</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-12-04 10:30:28 -0800</bug_when>
    <thetext>Created attachment 415427
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712339</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-12-06 11:21:45 -0800</bug_when>
    <thetext>Committed r270486: &lt;https://trac.webkit.org/changeset/270486&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 415427.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712340</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-12-06 11:22:19 -0800</bug_when>
    <thetext>&lt;rdar://problem/72025118&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>415418</attachid>
            <date>2020-12-04 08:19:23 -0800</date>
            <delta_ts>2020-12-04 10:30:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219542-20201204171921.patch</filename>
            <type>text/plain</type>
            <size>21869</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMzQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2U4NGY2ZjEwNGQ5YmEz
OGQ5YjkwMTZjNWYwYjE0ZjhmNzNjYzliMi4uZjAyZWFkNTk3NjM5ZTM0MTVjZmI2MDVjYmQ5Njhh
ZDE1YjcxYjM2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIwLTEyLTA0ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3Ig
UlRDUnRwU2VuZGVyOjpzZXRTdHJlYW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTk1NDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBQaXBlIHN0cmVhbSBJRHMgZnJvbSBXZWJDb3JlIHNlbmRlciB0byBs
aWJxZWJydGMgYmFja2VuZCBzZW5kZXIuCisgICAgICAgIEEgZm9sbG93LXVwIHBhdGNoIHNob3Vs
ZCBoYW5kbGUgY3JlYXRpb24gb2YgcmVtb3RlIHN0cmVhbXMgaW4gY2FzZSBvZiByZW5lZ290aWF0
aW9uLgorICAgICAgICBDb3ZlcmVkIGJ5IHVwZGF0ZWQgYW5kIHJlYmFzZWQgdGVzdHMuCisKKyAg
ICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1J0cFNlbmRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSVENSdHBTZW5kZXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpSVENSdHBT
ZW5kZXI6OlJUQ1J0cFNlbmRlcik6CisgICAgICAgIChXZWJDb3JlOjpSVENSdHBTZW5kZXI6OnNl
dFN0cmVhbXMpOgorICAgICAgICAoV2ViQ29yZTo6UlRDUnRwU2VuZGVyOjpzZXRNZWRpYVN0cmVh
bUlkcyk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5kZXIuaDoKKyAg
ICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1J0cFNlbmRlci5pZGw6CisgICAgICAgICog
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5kZXJCYWNrZW5kLmg6CisgICAgICAgICogTW9k
dWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5k
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6
YWRkVHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNr
ZW5kOjphZGRUcmFuc2NlaXZlckZyb21UcmFja09yS2luZCk6CisgICAgICAgIChXZWJDb3JlOjpM
aWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6Om5ld1JlbW90ZVRyYW5zY2VpdmVyKToKKyAg
ICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJC
YWNrZW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxpYldlYlJUQ1J0cFNlbmRlckJhY2tlbmQ6
OnNldE1lZGlhU3RyZWFtSWRzKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL2xpYndl
YnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmg6CisKIDIwMjAtMTItMDQgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhIFNGcmFtZSBIMjY0IGV4
cGVyaW1lbnRhbCBjb21wYXRpYmlsaXR5IG1vZGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUnRwU2VuZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDUnRwU2VuZGVyLmNwcAppbmRleCAzZTAzMmI2NTkzYTc2NDNi
NDYyZDNkZmE4ZTIyZmIyYjA5NDQ2ZTFiLi45MTkzYWMxNzVhYWU4YzJhZmYwNWE2Nzc0M2ZmMTVm
NzljMGIyNTMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1JUQ1J0cFNlbmRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENSdHBTZW5kZXIuY3BwCkBAIC00NSwyMSArNDUsMjAgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoUlRDUnRwU2VuZGVyKTsKIAotUmVmPFJU
Q1J0cFNlbmRlcj4gUlRDUnRwU2VuZGVyOjpjcmVhdGUoUlRDUGVlckNvbm5lY3Rpb24mIGNvbm5l
Y3Rpb24sIFJlZjxNZWRpYVN0cmVhbVRyYWNrPiYmIHRyYWNrLCBWZWN0b3I8U3RyaW5nPiYmIG1l
ZGlhU3RyZWFtSWRzLCBzdGQ6OnVuaXF1ZV9wdHI8UlRDUnRwU2VuZGVyQmFja2VuZD4mJiBiYWNr
ZW5kKQorUmVmPFJUQ1J0cFNlbmRlcj4gUlRDUnRwU2VuZGVyOjpjcmVhdGUoUlRDUGVlckNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb24sIFJlZjxNZWRpYVN0cmVhbVRyYWNrPiYmIHRyYWNrLCBzdGQ6OnVu
aXF1ZV9wdHI8UlRDUnRwU2VuZGVyQmFja2VuZD4mJiBiYWNrZW5kKQogewotICAgIGF1dG8gc2Vu
ZGVyID0gYWRvcHRSZWYoKm5ldyBSVENSdHBTZW5kZXIoY29ubmVjdGlvbiwgU3RyaW5nKHRyYWNr
LT5raW5kKCkpLCBXVEZNb3ZlKG1lZGlhU3RyZWFtSWRzKSwgV1RGTW92ZShiYWNrZW5kKSkpOwor
ICAgIGF1dG8gc2VuZGVyID0gYWRvcHRSZWYoKm5ldyBSVENSdHBTZW5kZXIoY29ubmVjdGlvbiwg
U3RyaW5nKHRyYWNrLT5raW5kKCkpLCBXVEZNb3ZlKGJhY2tlbmQpKSk7CiAgICAgc2VuZGVyLT5z
ZXRUcmFjayhXVEZNb3ZlKHRyYWNrKSk7CiAgICAgcmV0dXJuIHNlbmRlcjsKIH0KIAotUmVmPFJU
Q1J0cFNlbmRlcj4gUlRDUnRwU2VuZGVyOjpjcmVhdGUoUlRDUGVlckNvbm5lY3Rpb24mIGNvbm5l
Y3Rpb24sIFN0cmluZyYmIHRyYWNrS2luZCwgVmVjdG9yPFN0cmluZz4mJiBtZWRpYVN0cmVhbUlk
cywgc3RkOjp1bmlxdWVfcHRyPFJUQ1J0cFNlbmRlckJhY2tlbmQ+JiYgYmFja2VuZCkKK1JlZjxS
VENSdHBTZW5kZXI+IFJUQ1J0cFNlbmRlcjo6Y3JlYXRlKFJUQ1BlZXJDb25uZWN0aW9uJiBjb25u
ZWN0aW9uLCBTdHJpbmcmJiB0cmFja0tpbmQsIHN0ZDo6dW5pcXVlX3B0cjxSVENSdHBTZW5kZXJC
YWNrZW5kPiYmIGJhY2tlbmQpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUlRDUnRwU2Vu
ZGVyKGNvbm5lY3Rpb24sIFdURk1vdmUodHJhY2tLaW5kKSwgV1RGTW92ZShtZWRpYVN0cmVhbUlk
cyksIFdURk1vdmUoYmFja2VuZCkpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBSVENSdHBT
ZW5kZXIoY29ubmVjdGlvbiwgV1RGTW92ZSh0cmFja0tpbmQpLCBXVEZNb3ZlKGJhY2tlbmQpKSk7
CiB9CiAKLVJUQ1J0cFNlbmRlcjo6UlRDUnRwU2VuZGVyKFJUQ1BlZXJDb25uZWN0aW9uJiBjb25u
ZWN0aW9uLCBTdHJpbmcmJiB0cmFja0tpbmQsIFZlY3RvcjxTdHJpbmc+JiYgbWVkaWFTdHJlYW1J
ZHMsIHN0ZDo6dW5pcXVlX3B0cjxSVENSdHBTZW5kZXJCYWNrZW5kPiYmIGJhY2tlbmQpCitSVENS
dHBTZW5kZXI6OlJUQ1J0cFNlbmRlcihSVENQZWVyQ29ubmVjdGlvbiYgY29ubmVjdGlvbiwgU3Ry
aW5nJiYgdHJhY2tLaW5kLCBzdGQ6OnVuaXF1ZV9wdHI8UlRDUnRwU2VuZGVyQmFja2VuZD4mJiBi
YWNrZW5kKQogICAgIDogbV90cmFja0tpbmQoV1RGTW92ZSh0cmFja0tpbmQpKQotICAgICwgbV9t
ZWRpYVN0cmVhbUlkcyhXVEZNb3ZlKG1lZGlhU3RyZWFtSWRzKSkKICAgICAsIG1fYmFja2VuZChX
VEZNb3ZlKGJhY2tlbmQpKQogICAgICwgbV9jb25uZWN0aW9uKG1ha2VXZWFrUHRyKGNvbm5lY3Rp
b24pKQogewpAQCAtMTQ3LDYgKzE0NiwyMSBAQCB2b2lkIFJUQ1J0cFNlbmRlcjo6c2V0UGFyYW1l
dGVycyhjb25zdCBSVENSdHBTZW5kUGFyYW1ldGVycyYgcGFyYW1ldGVycywgRE9NUHJvbQogICAg
IHJldHVybiBtX2JhY2tlbmQtPnNldFBhcmFtZXRlcnMocGFyYW1ldGVycywgV1RGTW92ZShwcm9t
aXNlKSk7CiB9CiAKK0V4Y2VwdGlvbk9yPHZvaWQ+IFJUQ1J0cFNlbmRlcjo6c2V0U3RyZWFtcyhj
b25zdCBWZWN0b3I8c3RkOjpyZWZlcmVuY2Vfd3JhcHBlcjxNZWRpYVN0cmVhbT4+JiBzdHJlYW1z
KQoreworICAgIHJldHVybiBzZXRNZWRpYVN0cmVhbUlkcyhXVEY6Om1hcChzdHJlYW1zLCBbXShh
dXRvJiBzdHJlYW0pIC0+IFN0cmluZyB7CisgICAgICAgIHJldHVybiBzdHJlYW0uZ2V0KCkuaWQo
KTsKKyAgICB9KSk7Cit9CisKK0V4Y2VwdGlvbk9yPHZvaWQ+IFJUQ1J0cFNlbmRlcjo6c2V0TWVk
aWFTdHJlYW1JZHMoY29uc3QgVmVjdG9yPFN0cmluZz4mIHN0cmVhbUlkcykKK3sKKyAgICBpZiAo
IW1fY29ubmVjdGlvbiB8fCBtX2Nvbm5lY3Rpb24tPmlzQ2xvc2VkKCkgfHwgIW1fYmFja2VuZCkK
KyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiY29ubmVjdGlv
biBpcyBjbG9zZWQiX3MgfTsKKyAgICBtX2JhY2tlbmQtPnNldE1lZGlhU3RyZWFtSWRzKHN0cmVh
bUlkcyk7CisgICAgcmV0dXJuIHsgfTsKK30KKwogdm9pZCBSVENSdHBTZW5kZXI6OmdldFN0YXRz
KFJlZjxEZWZlcnJlZFByb21pc2U+JiYgcHJvbWlzZSkKIHsKICAgICBpZiAoIW1fY29ubmVjdGlv
bikgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENS
dHBTZW5kZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUnRwU2Vu
ZGVyLmgKaW5kZXggZWRlNGQ5ZGEwYjg1MGE4Y2E5Zjg5YWEyNGMxY2FhNTc4N2I5ZjQyOC4uNjg0
NDgwOTQ4YTFhMDNhMTY5ZTEyNmE2MWE5ZTY0NWM1YjAyNDhkOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5kZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1J0cFNlbmRlci5oCkBAIC00Miw2ICs0Miw3
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgTWVkaWFTdHJlYW07CiBjbGFzcyBS
VENEVE1GU2VuZGVyOwogY2xhc3MgUlRDUGVlckNvbm5lY3Rpb247CiBzdHJ1Y3QgUlRDUnRwQ2Fw
YWJpbGl0aWVzOwpAQCAtNDksOCArNTAsOCBAQCBzdHJ1Y3QgUlRDUnRwQ2FwYWJpbGl0aWVzOwog
Y2xhc3MgUlRDUnRwU2VuZGVyIGZpbmFsIDogcHVibGljIFJlZkNvdW50ZWQ8UlRDUnRwU2VuZGVy
PiwgcHVibGljIFNjcmlwdFdyYXBwYWJsZSwgcHVibGljIENhbk1ha2VXZWFrUHRyPFJUQ1J0cFNl
bmRlcj4gewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoUlRDUnRwU2VuZGVyKTsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUmVmPFJUQ1J0cFNlbmRlcj4gY3JlYXRlKFJUQ1BlZXJDb25uZWN0aW9u
JiwgUmVmPE1lZGlhU3RyZWFtVHJhY2s+JiYsIFZlY3RvcjxTdHJpbmc+JiYgbWVkaWFTdHJlYW1J
ZHMsIHN0ZDo6dW5pcXVlX3B0cjxSVENSdHBTZW5kZXJCYWNrZW5kPiYmKTsKLSAgICBzdGF0aWMg
UmVmPFJUQ1J0cFNlbmRlcj4gY3JlYXRlKFJUQ1BlZXJDb25uZWN0aW9uJiwgU3RyaW5nJiYgdHJh
Y2tLaW5kLCBWZWN0b3I8U3RyaW5nPiYmIG1lZGlhU3RyZWFtSWRzLCBzdGQ6OnVuaXF1ZV9wdHI8
UlRDUnRwU2VuZGVyQmFja2VuZD4mJik7CisgICAgc3RhdGljIFJlZjxSVENSdHBTZW5kZXI+IGNy
ZWF0ZShSVENQZWVyQ29ubmVjdGlvbiYsIFJlZjxNZWRpYVN0cmVhbVRyYWNrPiYmLCBzdGQ6OnVu
aXF1ZV9wdHI8UlRDUnRwU2VuZGVyQmFja2VuZD4mJik7CisgICAgc3RhdGljIFJlZjxSVENSdHBT
ZW5kZXI+IGNyZWF0ZShSVENQZWVyQ29ubmVjdGlvbiYsIFN0cmluZyYmIHRyYWNrS2luZCwgc3Rk
Ojp1bmlxdWVfcHRyPFJUQ1J0cFNlbmRlckJhY2tlbmQ+JiYpOwogICAgIH5SVENSdHBTZW5kZXIo
KTsKIAogICAgIHN0YXRpYyBPcHRpb25hbDxSVENSdHBDYXBhYmlsaXRpZXM+IGdldENhcGFiaWxp
dGllcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgY29uc3QgU3RyaW5nJiBraW5kKTsKQEAgLTYw
LDggKzYxLDggQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgdHJhY2tJZCgpIGNvbnN0IHsg
cmV0dXJuIG1fdHJhY2tJZDsgfQogICAgIGNvbnN0IFN0cmluZyYgdHJhY2tLaW5kKCkgY29uc3Qg
eyByZXR1cm4gbV90cmFja0tpbmQ7IH0KIAotICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBtZWRp
YVN0cmVhbUlkcygpIGNvbnN0IHsgcmV0dXJuIG1fbWVkaWFTdHJlYW1JZHM7IH0KLSAgICB2b2lk
IHNldE1lZGlhU3RyZWFtSWRzKFZlY3RvcjxTdHJpbmc+JiYgbWVkaWFTdHJlYW1JZHMpIHsgbV9t
ZWRpYVN0cmVhbUlkcyA9IFdURk1vdmUobWVkaWFTdHJlYW1JZHMpOyB9CisgICAgRXhjZXB0aW9u
T3I8dm9pZD4gc2V0TWVkaWFTdHJlYW1JZHMoY29uc3QgVmVjdG9yPFN0cmluZz4mKTsKKyAgICBF
eGNlcHRpb25Pcjx2b2lkPiBzZXRTdHJlYW1zKGNvbnN0IFZlY3RvcjxzdGQ6OnJlZmVyZW5jZV93
cmFwcGVyPE1lZGlhU3RyZWFtPj4mKTsKIAogICAgIGJvb2wgaXNTdG9wcGVkKCkgY29uc3QgeyBy
ZXR1cm4gIW1fYmFja2VuZDsgfQogICAgIHZvaWQgc3RvcCgpOwpAQCAtODYsMTIgKzg3LDExIEBA
IHB1YmxpYzoKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRUcmFuc2Zvcm0oT3B0aW9uYWw8UlRD
UnRwVHJhbnNmb3JtPiYmKTsKIAogcHJpdmF0ZToKLSAgICBSVENSdHBTZW5kZXIoUlRDUGVlckNv
bm5lY3Rpb24mLCBTdHJpbmcmJiB0cmFja0tpbmQsIFZlY3RvcjxTdHJpbmc+JiYgbWVkaWFTdHJl
YW1JZHMsIHN0ZDo6dW5pcXVlX3B0cjxSVENSdHBTZW5kZXJCYWNrZW5kPiYmKTsKKyAgICBSVENS
dHBTZW5kZXIoUlRDUGVlckNvbm5lY3Rpb24mLCBTdHJpbmcmJiB0cmFja0tpbmQsIHN0ZDo6dW5p
cXVlX3B0cjxSVENSdHBTZW5kZXJCYWNrZW5kPiYmKTsKIAogICAgIFJlZlB0cjxNZWRpYVN0cmVh
bVRyYWNrPiBtX3RyYWNrOwogICAgIFN0cmluZyBtX3RyYWNrSWQ7CiAgICAgU3RyaW5nIG1fdHJh
Y2tLaW5kOwotICAgIFZlY3RvcjxTdHJpbmc+IG1fbWVkaWFTdHJlYW1JZHM7CiAgICAgc3RkOjp1
bmlxdWVfcHRyPFJUQ1J0cFNlbmRlckJhY2tlbmQ+IG1fYmFja2VuZDsKICAgICBXZWFrUHRyPFJU
Q1BlZXJDb25uZWN0aW9uPiBtX2Nvbm5lY3Rpb247CiAgICAgUmVmUHRyPFJUQ0RUTUZTZW5kZXI+
IG1fZHRtZlNlbmRlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vUlRDUnRwU2VuZGVyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDUnRwU2VuZGVyLmlkbAppbmRleCAxYmUyNTkwOTY2MjUwNzQyZWU5ZjMyNjhkNjU1ZDg1
YjliM2U0M2I2Li41OTE3NmE3NGEzZTVkNzAwNGZiOTY5ODIzMTg4YjIxNzMwYzNkZDJkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1J0cFNlbmRlci5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5kZXIu
aWRsCkBAIC0zNiwxMyArMzYsMTIgQEAKICAgICBFeHBvc2VkPVdpbmRvdwogXSBpbnRlcmZhY2Ug
UlRDUnRwU2VuZGVyIHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgTWVkaWFTdHJlYW1UcmFjaz8g
dHJhY2s7Ci0gICAgLy8gRklYTUUgMTY5NjYyOiBtaXNzaW5nIHRyYW5zcG9ydAotICAgIC8vIEZJ
WE1FIDE2OTY2MjogbWlzc2luZyBydGNwVHJhbnNwb3J0Ci0gICAgLy8gRklYTUUgMTY5NjYyOiBt
aXNzaW5nIHNldFN0cmVhbXMKKyAgICAvLyBGSVhNRSAxNjk2NjI6IHJlYWRvbmx5IGF0dHJpYnV0
ZSBSVENEdGxzVHJhbnNwb3J0PyB0cmFuc3BvcnQ7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1
dGlvbkNvbnRleHRdIHN0YXRpYyBSVENSdHBDYXBhYmlsaXRpZXM/IGdldENhcGFiaWxpdGllcyhE
T01TdHJpbmcga2luZCk7CiAgICAgUlRDUnRwU2VuZFBhcmFtZXRlcnMgZ2V0UGFyYW1ldGVycygp
OwogICAgIFByb21pc2U8dW5kZWZpbmVkPiBzZXRQYXJhbWV0ZXJzKFJUQ1J0cFNlbmRQYXJhbWV0
ZXJzIHBhcmFtZXRlcnMpOwogICAgIFByb21pc2U8dW5kZWZpbmVkPiByZXBsYWNlVHJhY2soTWVk
aWFTdHJlYW1UcmFjaz8gd2l0aFRyYWNrKTsKKyAgICBbTWF5VGhyb3dFeGNlcHRpb25dIHVuZGVm
aW5lZCBzZXRTdHJlYW1zKE1lZGlhU3RyZWFtLi4uIHN0cmVhbXMpOwogICAgIFByb21pc2U8UlRD
U3RhdHNSZXBvcnQ+IGdldFN0YXRzKCk7CiAKICAgICBbQ29uZGl0aW9uYWw9V0VCX1JUQywgRW5h
YmxlZEF0UnVudGltZT1XZWJSVENEVE1GXSByZWFkb25seSBhdHRyaWJ1dGUgUlRDRFRNRlNlbmRl
cj8gZHRtZjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDUnRwU2VuZGVyQmFja2VuZC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENSdHBTZW5kZXJCYWNrZW5kLmgKaW5kZXggMzA4OTdjMjRlYTdmNzFkZDQwNjJiMjBlYzJi
NTM4ZmNiYTFjODBiNi4uNDUyY2M3NmNkMGY2NjJkYTFhZTFmYTkyZmY3MGRmNmQ3NTY4ODZkNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5k
ZXJCYWNrZW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENS
dHBTZW5kZXJCYWNrZW5kLmgKQEAgLTI2LDYgKzI2LDkgQEAKIAogI2lmIEVOQUJMRShXRUJfUlRD
KQogCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgTWVkaWFTdHJlYW1UcmFjazsKQEAgLTQ3LDYg
KzUwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRQYXJhbWV0ZXJzKGNvbnN0IFJU
Q1J0cFNlbmRQYXJhbWV0ZXJzJiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYpID0gMDsKICAg
ICB2aXJ0dWFsIHN0ZDo6dW5pcXVlX3B0cjxSVENEVE1GU2VuZGVyQmFja2VuZD4gY3JlYXRlRFRN
RkJhY2tlbmQoKSA9IDA7CiAgICAgdmlydHVhbCBSZWY8UlRDUnRwVHJhbnNmb3JtQmFja2VuZD4g
Y3JlYXRlUlRDUnRwVHJhbnNmb3JtQmFja2VuZCgpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0
TWVkaWFTdHJlYW1JZHMoY29uc3QgVmVjdG9yPFN0cmluZz4mKSA9IDA7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQuY3BwIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNv
bm5lY3Rpb25CYWNrZW5kLmNwcAppbmRleCBkM2I5YjE0YmQ1OGRkMGY2NDYwN2RlYTI3MTBhOTcx
ZTk4MTY1MzUxLi5iMDdlZWJkNGI5YzQyNjlmMWM3ZDMyMmQ5NGFjMTg1YTBiMzIzOTczIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJX
ZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZC5j
cHAKQEAgLTM3MCwxMyArMzcwLDE0IEBAIEV4Y2VwdGlvbk9yPFJlZjxSVENSdHBTZW5kZXI+PiBM
aWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6OmFkZFRyYWNrKE1lZGlhU3RyCiAgICAgaWYg
KGF1dG8gc2VuZGVyID0gZmluZEV4aXN0aW5nU2VuZGVyKG1fcGVlckNvbm5lY3Rpb24uY3VycmVu
dFRyYW5zY2VpdmVycygpLCAqc2VuZGVyQmFja2VuZCkpIHsKICAgICAgICAgYmFja2VuZEZyb21S
VFBTZW5kZXIoKnNlbmRlcikudGFrZVNvdXJjZSgqc2VuZGVyQmFja2VuZCk7CiAgICAgICAgIHNl
bmRlci0+c2V0VHJhY2sobWFrZVJlZih0cmFjaykpOwotICAgICAgICBzZW5kZXItPnNldE1lZGlh
U3RyZWFtSWRzKFdURk1vdmUobWVkaWFTdHJlYW1JZHMpKTsKKyAgICAgICAgc2VuZGVyLT5zZXRN
ZWRpYVN0cmVhbUlkcyhtZWRpYVN0cmVhbUlkcyk7CiAgICAgICAgIHJldHVybiBzZW5kZXIucmVs
ZWFzZU5vbk51bGwoKTsKICAgICB9CiAKICAgICBhdXRvIHRyYW5zY2VpdmVyQmFja2VuZCA9IG1f
ZW5kcG9pbnQtPnRyYW5zY2VpdmVyQmFja2VuZEZyb21TZW5kZXIoKnNlbmRlckJhY2tlbmQpOwog
Ci0gICAgYXV0byBzZW5kZXIgPSBSVENSdHBTZW5kZXI6OmNyZWF0ZShtX3BlZXJDb25uZWN0aW9u
LCBtYWtlUmVmKHRyYWNrKSwgV1RGTW92ZShtZWRpYVN0cmVhbUlkcyksIFdURk1vdmUoc2VuZGVy
QmFja2VuZCkpOworICAgIGF1dG8gc2VuZGVyID0gUlRDUnRwU2VuZGVyOjpjcmVhdGUobV9wZWVy
Q29ubmVjdGlvbiwgbWFrZVJlZih0cmFjayksIFdURk1vdmUoc2VuZGVyQmFja2VuZCkpOworICAg
IHNlbmRlci0+c2V0TWVkaWFTdHJlYW1JZHMobWVkaWFTdHJlYW1JZHMpOwogICAgIGF1dG8gcmVj
ZWl2ZXIgPSBjcmVhdGVSZWNlaXZlcih0cmFuc2NlaXZlckJhY2tlbmQtPmNyZWF0ZVJlY2VpdmVy
QmFja2VuZCgpKTsKICAgICBhdXRvIHRyYW5zY2VpdmVyID0gUlRDUnRwVHJhbnNjZWl2ZXI6OmNy
ZWF0ZShzZW5kZXIuY29weVJlZigpLCBXVEZNb3ZlKHJlY2VpdmVyKSwgV1RGTW92ZSh0cmFuc2Nl
aXZlckJhY2tlbmQpKTsKICAgICBtX3BlZXJDb25uZWN0aW9uLmFkZEludGVybmFsVHJhbnNjZWl2
ZXIoV1RGTW92ZSh0cmFuc2NlaXZlcikpOwpAQCAtMzkwLDcgKzM5MSw3IEBAIEV4Y2VwdGlvbk9y
PFJlZjxSVENSdHBUcmFuc2NlaXZlcj4+IExpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6
YWRkVHJhbnNjZWl2CiAgICAgaWYgKCFiYWNrZW5kcykKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlv
biB7IEludmFsaWRBY2Nlc3NFcnJvciwgIlVuYWJsZSB0byBhZGQgdHJhbnNjZWl2ZXIiX3MgfTsK
IAotICAgIGF1dG8gc2VuZGVyID0gUlRDUnRwU2VuZGVyOjpjcmVhdGUobV9wZWVyQ29ubmVjdGlv
biwgV1RGTW92ZSh0cmFja09yS2luZCksIFZlY3RvcjxTdHJpbmc+IHsgfSwgV1RGTW92ZShiYWNr
ZW5kcy0+c2VuZGVyQmFja2VuZCkpOworICAgIGF1dG8gc2VuZGVyID0gUlRDUnRwU2VuZGVyOjpj
cmVhdGUobV9wZWVyQ29ubmVjdGlvbiwgV1RGTW92ZSh0cmFja09yS2luZCksIFdURk1vdmUoYmFj
a2VuZHMtPnNlbmRlckJhY2tlbmQpKTsKICAgICBhdXRvIHJlY2VpdmVyID0gY3JlYXRlUmVjZWl2
ZXIoV1RGTW92ZShiYWNrZW5kcy0+cmVjZWl2ZXJCYWNrZW5kKSk7CiAgICAgYXV0byB0cmFuc2Nl
aXZlciA9IFJUQ1J0cFRyYW5zY2VpdmVyOjpjcmVhdGUoV1RGTW92ZShzZW5kZXIpLCBXVEZNb3Zl
KHJlY2VpdmVyKSwgV1RGTW92ZShiYWNrZW5kcy0+dHJhbnNjZWl2ZXJCYWNrZW5kKSk7CiAgICAg
bV9wZWVyQ29ubmVjdGlvbi5hZGRJbnRlcm5hbFRyYW5zY2VpdmVyKHRyYW5zY2VpdmVyLmNvcHlS
ZWYoKSk7CkBAIC00MjgsNyArNDI5LDcgQEAgUlRDUnRwVHJhbnNjZWl2ZXIqIExpYldlYlJUQ1Bl
ZXJDb25uZWN0aW9uQmFja2VuZDo6ZXhpc3RpbmdUcmFuc2NlaXZlcihXVEY6OkZ1bmMKIAogUlRD
UnRwVHJhbnNjZWl2ZXImIExpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6bmV3UmVtb3Rl
VHJhbnNjZWl2ZXIoc3RkOjp1bmlxdWVfcHRyPExpYldlYlJUQ1J0cFRyYW5zY2VpdmVyQmFja2Vu
ZD4mJiB0cmFuc2NlaXZlckJhY2tlbmQsIFJlYWx0aW1lTWVkaWFTb3VyY2U6OlR5cGUgdHlwZSkK
IHsKLSAgICBhdXRvIHNlbmRlciA9IFJUQ1J0cFNlbmRlcjo6Y3JlYXRlKG1fcGVlckNvbm5lY3Rp
b24sIHR5cGUgPT0gUmVhbHRpbWVNZWRpYVNvdXJjZTo6VHlwZTo6QXVkaW8gPyAiYXVkaW8iX3Mg
OiAidmlkZW8iX3MsIFZlY3RvcjxTdHJpbmc+IHsgfSwgdHJhbnNjZWl2ZXJCYWNrZW5kLT5jcmVh
dGVTZW5kZXJCYWNrZW5kKCp0aGlzLCBudWxscHRyKSk7CisgICAgYXV0byBzZW5kZXIgPSBSVENS
dHBTZW5kZXI6OmNyZWF0ZShtX3BlZXJDb25uZWN0aW9uLCB0eXBlID09IFJlYWx0aW1lTWVkaWFT
b3VyY2U6OlR5cGU6OkF1ZGlvID8gImF1ZGlvIl9zIDogInZpZGVvIl9zLCB0cmFuc2NlaXZlckJh
Y2tlbmQtPmNyZWF0ZVNlbmRlckJhY2tlbmQoKnRoaXMsIG51bGxwdHIpKTsKICAgICBhdXRvIHJl
Y2VpdmVyID0gY3JlYXRlUmVjZWl2ZXIodHJhbnNjZWl2ZXJCYWNrZW5kLT5jcmVhdGVSZWNlaXZl
ckJhY2tlbmQoKSk7CiAgICAgYXV0byB0cmFuc2NlaXZlciA9IFJUQ1J0cFRyYW5zY2VpdmVyOjpj
cmVhdGUoV1RGTW92ZShzZW5kZXIpLCBXVEZNb3ZlKHJlY2VpdmVyKSwgV1RGTW92ZSh0cmFuc2Nl
aXZlckJhY2tlbmQpKTsKICAgICBtX3BlZXJDb25uZWN0aW9uLmFkZEludGVybmFsVHJhbnNjZWl2
ZXIodHJhbnNjZWl2ZXIuY29weVJlZigpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1J0cFNlbmRlckJhY2tlbmQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRD
UnRwU2VuZGVyQmFja2VuZC5jcHAKaW5kZXggOGU5NjFjOTcyZmIwZGU0OGQ3NWEwYzRhZTlmM2Ni
ZDFhOTIyYzljNS4uN2VjNjgzMGExMjljYTRiYzJjNDY4Y2ZlZTA3Y2U1YTBhOGNmZTYwMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGli
V2ViUlRDUnRwU2VuZGVyQmFja2VuZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5jcHAKQEAgLTE0
Myw2ICsxNDMsMTQgQEAgUmVmPFJUQ1J0cFRyYW5zZm9ybUJhY2tlbmQ+IExpYldlYlJUQ1J0cFNl
bmRlckJhY2tlbmQ6OmNyZWF0ZVJUQ1J0cFRyYW5zZm9ybUJhY2sKICAgICByZXR1cm4gTGliV2Vi
UlRDUnRwU2VuZGVyVHJhbnNmb3JtQmFja2VuZDo6Y3JlYXRlKG1fcnRjU2VuZGVyKTsKIH0KIAor
dm9pZCBMaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kOjpzZXRNZWRpYVN0cmVhbUlkcyhjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgc3RyZWFtSWRzKQoreworICAgIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5n
PiBpZHM7CisgICAgZm9yIChhdXRvJiBpZCA6IHN0cmVhbUlkcykKKyAgICAgICAgaWRzLnB1c2hf
YmFjayhpZC51dGY4KCkuZGF0YSgpKTsKKyAgICBtX3J0Y1NlbmRlci0+U2V0U3RyZWFtcyhpZHMp
OworfQorCiBSZWFsdGltZU91dGdvaW5nVmlkZW9Tb3VyY2UqIExpYldlYlJUQ1J0cFNlbmRlckJh
Y2tlbmQ6OnZpZGVvU291cmNlKCkKIHsKICAgICByZXR1cm4gc3dpdGNoT24obV9zb3VyY2UsCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9M
aWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmgKaW5kZXggZDU2YTA1
NmUzNjJiNGQ2MzQ5MTE2M2MxMmJiYzhkYmNjZjI5NDcwNy4uZTJiZjA2ODc1Yjg4MDViMGQ5MjEw
Yzk4YmQ1YTgzZGU2NWViYjM1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1J0cFNl
bmRlckJhY2tlbmQuaApAQCAtNzEsNiArNzEsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgc2V0UGFy
YW1ldGVycyhjb25zdCBSVENSdHBTZW5kUGFyYW1ldGVycyYsIERPTVByb21pc2VEZWZlcnJlZDx2
b2lkPiYmKSBmaW5hbDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UlRDRFRNRlNlbmRlckJhY2tlbmQ+
IGNyZWF0ZURUTUZCYWNrZW5kKCkgZmluYWw7CiAgICAgUmVmPFJUQ1J0cFRyYW5zZm9ybUJhY2tl
bmQ+IGNyZWF0ZVJUQ1J0cFRyYW5zZm9ybUJhY2tlbmQoKSBmaW5hbDsKKyAgICB2b2lkIHNldE1l
ZGlhU3RyZWFtSWRzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JikgZmluYWw7CiAKICAgICB2b2lkIHN0
YXJ0U291cmNlKCk7CiAgICAgdm9pZCBzdG9wU291cmNlKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDQwMzJmMjM2ZDM4
OTFlNjYyZmU4MjNmYjQzYzNlZGM5MDI4MGI0ZC4uZmZhZjJiZjQyMGZjYmIxMTY1OTdkNzNjNzBk
Yjk2OTFhMWQzZWY0ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDIwLTEyLTA0ICBZb3Vlbm4g
RmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgUlRD
UnRwU2VuZGVyOjpzZXRTdHJlYW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMTk1NDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHdlYnJ0Yy92aWRlby5odG1sOgorCiAyMDIwLTEyLTA0ICBZb3Vlbm4g
RmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgYSBTRnJhbWUgSDI2NCBl
eHBlcmltZW50YWwgY29tcGF0aWJpbGl0eSBtb2RlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxv
ZwppbmRleCBmMDlhYWMxYTJmZmRjNjAyOTA1MTliNzc5YzNiZjNmYjlkZjVhNzFkLi44YjI5ZmU4
NDg3ZjE1ZGNhZTA2ZGQ3NTQ4YzU2MDNmNTgyMTg4MDM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMi0wNCAgWW91ZW5uIEZhYmxldCAgPHlv
dWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIFJUQ1J0cFNlbmRlcjo6
c2V0U3RyZWFtcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjE5NTQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1BlZXJDb25uZWN0aW9uLXNldFJlbW90
ZURlc2NyaXB0aW9uLXJvbGxiYWNrLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvd2VicnRjL1JUQ1J0cFNlbmRlci1zZXRTdHJlYW1zLmh0dHBzLWV4cGVjdGVkLnR4
dDoKKwogMjAyMC0xMi0wMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAg
ICAgIFJFR1JFU1NJT046IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc3RyZWFtcy90
cmFuc2Zvcm0tc3RyZWFtcy90ZXJtaW5hdGUuYW55Lmh0bWwgaXMgYSBmbGFreSBmYWlsdXJlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YnJ0Yy9SVENQZWVyQ29ubmVjdGlvbi1zZXRSZW1vdGVEZXNjcmlwdGlvbi1yb2xsYmFjay1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YnJ0Yy9SVENQZWVyQ29ubmVjdGlvbi1zZXRSZW1vdGVEZXNjcmlwdGlvbi1yb2xsYmFjay1leHBl
Y3RlZC50eHQKaW5kZXggN2E4Y2JhZmQ5MjQ3MjlmNWUwN2Q4MDc3YzdiZmIzMWZlZjM2YWNkNi4u
MWQwZGRlNDc2N2QwMzg5M2VlYTI3MmFhN2JhZDE3ZjJkZGVmNzM4YiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUGVlckNv
bm5lY3Rpb24tc2V0UmVtb3RlRGVzY3JpcHRpb24tcm9sbGJhY2stZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1Bl
ZXJDb25uZWN0aW9uLXNldFJlbW90ZURlc2NyaXB0aW9uLXJvbGxiYWNrLWV4cGVjdGVkLnR4dApA
QCAtMTcsNyArMTcsNyBAQCBGQUlMIHJvbGxiYWNrIG9mIGEgbG9jYWwgb2ZmZXIgdG8gbmVnb3Rp
YXRlZCBzdGFibGUgc3RhdGUgc2hvdWxkIGVuYWJsZSBhcHBseWluZwogRkFJTCByb2xsYmFjayBh
IGxvY2FsIG9mZmVyIHdpdGggYXVkaW8gZGlyZWN0aW9uIGNoYW5nZSB0byBuZWdvdGlhdGVkIHN0
YWJsZSBzdGF0ZSBhbmQgdGhlbiBhZGQgdmlkZW8gcmVjZWl2ZXIgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiSW52YWxpZFN0YXRlRXJyb3I6IERl
c2NyaXB0aW9uIHR5cGUgaW5jb21wYXRpYmxlIHdpdGggY3VycmVudCBzaWduYWxpbmcgc3RhdGUi
CiBGQUlMIHR3byB0cmFuc2NlaXZlcnMgd2l0aCBzYW1lIG1pZHMgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiSW52YWxpZFN0YXRlRXJyb3I6IERl
c2NyaXB0aW9uIHR5cGUgaW5jb21wYXRpYmxlIHdpdGggY3VycmVudCBzaWduYWxpbmcgc3RhdGUi
CiBGQUlMIG9ucmVtb3ZldHJhY2sgZmlyZXMgZHVyaW5nIHJlbW90ZSByb2xsYmFjayBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJJbnZhbGlkU3Rh
dGVFcnJvcjogRGVzY3JpcHRpb24gdHlwZSBpbmNvbXBhdGlibGUgd2l0aCBjdXJyZW50IHNpZ25h
bGluZyBzdGF0ZSIKLUZBSUwgcm9sbGJhY2sgb2YgYSByZW1vdGUgb2ZmZXIgd2l0aCBzdHJlYW0g
Y2hhbmdlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHBjMS5nZXRUcmFuc2NlaXZlcnMoKVswXS5zZW5kZXIuc2V0U3RyZWFt
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdwYzEuZ2V0VHJhbnNjZWl2ZXJzKClbMF0uc2VuZGVy
LnNldFN0cmVhbXMoc3RyZWFtMiknLCAncGMxLmdldFRyYW5zY2VpdmVycygpWzBdLnNlbmRlci5z
ZXRTdHJlYW1zJyBpcyB1bmRlZmluZWQpIgorRkFJTCByb2xsYmFjayBvZiBhIHJlbW90ZSBvZmZl
ciB3aXRoIHN0cmVhbSBjaGFuZ2VzIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDIgYnV0IGdvdCAx
CiBQQVNTIHJlbW92ZVRyYWNrKCkgd2l0aCBhIHNlbmRlciBiZWluZyByb2xsZWQgYmFjayBkb2Vz
IG5vdCBjcmFzaCBvciB0aHJvdwogRkFJTCBJbXBsaWNpdCByb2xsYmFjayB3aXRoIG9ubHkgYSBk
YXRhY2hhbm5lbCB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJJbnZhbGlkU3RhdGVFcnJvcjogRGVzY3JpcHRpb24gdHlwZSBpbmNvbXBh
dGlibGUgd2l0aCBjdXJyZW50IHNpZ25hbGluZyBzdGF0ZSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRwU2VuZGVy
LXNldFN0cmVhbXMuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRwU2VuZGVyLXNldFN0cmVhbXMuaHR0cHMt
ZXhwZWN0ZWQudHh0CmluZGV4IDc3MGI1NWFhMjRkMTM0ZDg3NmJmNTc5ZDYzOWUyYmYzOWY0ZGVm
MzIuLjJhNDMyM2I3ZWI5ZGIyMDliNjg2ZTExNjIxMTM1ZDMzNDZmN2MyYmQgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1J0
cFNlbmRlci1zZXRTdHJlYW1zLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENSdHBTZW5kZXItc2V0U3Ry
ZWFtcy5odHRwcy1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw5IEBACiAKLUZBSUwgc2V0U3RyZWFt
cyBjYXVzZXMgc3RyZWFtcyB0byBiZSByZXBvcnRlZCB2aWEgb250cmFjayBvbiBjYWxsZWUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBzZW5kZXIuc2V0U3RyZWFtcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdzZW5kZXIuc2V0
U3RyZWFtcyhzdHJlYW0xLCBzdHJlYW0yKScsICdzZW5kZXIuc2V0U3RyZWFtcycgaXMgdW5kZWZp
bmVkKSIKLUZBSUwgc2V0U3RyZWFtcyBjYW4gYmUgdXNlZCB0byByZWNvbnN0cnVjdCBhIHN0cmVh
bSB3aXRoIGEgdHJhY2sgb24gdGhlIHJlbW90ZSBzaWRlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogc2VuZGVyLnNldFN0cmVh
bXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnc2VuZGVyLnNldFN0cmVhbXMoc3RyZWFtKScsICdz
ZW5kZXIuc2V0U3RyZWFtcycgaXMgdW5kZWZpbmVkKSIKLUZBSUwgQWRkaW5nIHN0cmVhbXMgYW5k
IGNoYW5naW5nIGRpcmVjdGlvbiBjYXVzZXMgbmV3IHN0cmVhbXMgdG8gYmUgcmVwb3J0ZWQgdmlh
IG9udHJhY2sgb24gY2FsbGVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAndHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMoc3Ry
ZWFtMSwgc3RyZWFtMiknLCAndHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMnIGlzIHVuZGVm
aW5lZCkiCi1GQUlMIEFkZGluZyBzdHJlYW1zIHRvIGFuIGFjdGl2ZSB0cmFuc2NlaXZlciBjYXVz
ZXMgbmV3IHN0cmVhbXMgdG8gYmUgcmVwb3J0ZWQgdmlhIG9udHJhY2sgb24gY2FsbGVlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogdHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
dHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMoc3RyZWFtMSwgc3RyZWFtMiknLCAndHJhbnNj
ZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMnIGlzIHVuZGVmaW5lZCkiCi1GQUlMIHNldFN0cmVhbXMo
KSBmaXJlcyBJbnZhbGlkU3RhdGVFcnJvciBvbiBhIGNsb3NlZCBwZWVyIGNvbm5lY3Rpb24uIGFz
c2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4gdHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0
cmVhbXMoc3RyZWFtMSwgc3RyZWFtMikiIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiB0cmFuc2Nl
aXZlci5zZW5kZXIuc2V0U3RyZWFtcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICd0cmFuc2NlaXZl
ci5zZW5kZXIuc2V0U3RyZWFtcyhzdHJlYW0xLCBzdHJlYW0yKScsICd0cmFuc2NlaXZlci5zZW5k
ZXIuc2V0U3RyZWFtcycgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24g
SW52YWxpZFN0YXRlRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQs
IGV4cGVjdGVkIDExCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKwor
UEFTUyBzZXRTdHJlYW1zIGNhdXNlcyBzdHJlYW1zIHRvIGJlIHJlcG9ydGVkIHZpYSBvbnRyYWNr
IG9uIGNhbGxlZQorUEFTUyBzZXRTdHJlYW1zIGNhbiBiZSB1c2VkIHRvIHJlY29uc3RydWN0IGEg
c3RyZWFtIHdpdGggYSB0cmFjayBvbiB0aGUgcmVtb3RlIHNpZGUKK1BBU1MgQWRkaW5nIHN0cmVh
bXMgYW5kIGNoYW5naW5nIGRpcmVjdGlvbiBjYXVzZXMgbmV3IHN0cmVhbXMgdG8gYmUgcmVwb3J0
ZWQgdmlhIG9udHJhY2sgb24gY2FsbGVlCitUSU1FT1VUIEFkZGluZyBzdHJlYW1zIHRvIGFuIGFj
dGl2ZSB0cmFuc2NlaXZlciBjYXVzZXMgbmV3IHN0cmVhbXMgdG8gYmUgcmVwb3J0ZWQgdmlhIG9u
dHJhY2sgb24gY2FsbGVlIFRlc3QgdGltZWQgb3V0CitQQVNTIHNldFN0cmVhbXMoKSBmaXJlcyBJ
bnZhbGlkU3RhdGVFcnJvciBvbiBhIGNsb3NlZCBwZWVyIGNvbm5lY3Rpb24uCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby5odG1sIGIvTGF5b3V0VGVzdHMvd2VicnRjL3Zp
ZGVvLmh0bWwKaW5kZXggYzdjZTg5MzZiOWM4ZTZjY2ZmMGIwNWM5MDJmOGFiYjBiZDcxZTVmMS4u
MThlMmFhY2MwZGEzZDVjN2NkYWNjZGU4MWRkNjE2MGZjM2QwYzJkNiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvd2VicnRjL3ZpZGVvLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2VicnRjL3ZpZGVv
Lmh0bWwKQEAgLTQ5LDEyICs0OSwxNCBAQCBwcm9taXNlX3Rlc3QoYXN5bmMgKHRlc3QpID0+IHsK
ICAgICAgICAgdGVzdFJ1bm5lci5zZXRVc2VyTWVkaWFQZXJtaXNzaW9uKHRydWUpOwogCiAgICAg
Y29uc3QgbG9jYWxTdHJlYW0gPSBhd2FpdCBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJN
ZWRpYSh7dmlkZW86IHthZHZhbmNlZDogW3t3aWR0aDp7bWluOjY0MH19LCB7aGVpZ2h0OnttaW46
NDgwfSB9IF19fSk7CisgICAgY29uc3QgbG9jYWxTdHJlYW0yID0gbmV3IE1lZGlhU3RyZWFtKFts
b2NhbFN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdXSk7IAogICAgIGlmICh3aW5kb3cuaW50ZXJu
YWxzKQogICAgICAgICBhc3NlcnRfdHJ1ZShpbnRlcm5hbHMucGFnZU1lZGlhU3RhdGUoKS5pbmNs
dWRlcygnSGFzQWN0aXZlVmlkZW9DYXB0dXJlRGV2aWNlJyksICJVbmV4cGVjdGVkIEhhc0FjdGl2
ZVZpZGVvQ2FwdHVyZURldmljZSIpOwogICAgIGNvbnN0IHN0cmVhbSA9IGF3YWl0IG5ldyBQcm9t
aXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKICAgICAgICAgY3JlYXRlQ29ubmVjdGlvbnMoKGZp
cnN0Q29ubmVjdGlvbikgPT4gewogICAgICAgICAgICAgcGMxID0gZmlyc3RDb25uZWN0aW9uOwot
ICAgICAgICAgICAgZmlyc3RDb25uZWN0aW9uLmFkZFRyYWNrKGxvY2FsU3RyZWFtLmdldFZpZGVv
VHJhY2tzKClbMF0sIGxvY2FsU3RyZWFtKTsKKyAgICAgICAgICAgIGNvbnN0IHNlbmRlciA9IGZp
cnN0Q29ubmVjdGlvbi5hZGRUcmFjayhsb2NhbFN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdKTsK
KyAgICAgICAgICAgIHNlbmRlci5zZXRTdHJlYW1zKGxvY2FsU3RyZWFtLCBsb2NhbFN0cmVhbTIp
OwogICAgICAgICB9LCAoc2Vjb25kQ29ubmVjdGlvbikgPT4gewogICAgICAgICAgICAgcGMyID0g
c2Vjb25kQ29ubmVjdGlvbjsKICAgICAgICAgICAgIHNlY29uZENvbm5lY3Rpb24ub250cmFjayA9
ICh0cmFja0V2ZW50KSA9PiB7CkBAIC02Miw2ICs2NCw5IEBAIHByb21pc2VfdGVzdChhc3luYyAo
dGVzdCkgPT4gewogICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRyYWNrRXZlbnQucmVjZWl2
ZXIgaW5zdGFuY2VvZiBSVENSdHBSZWNlaXZlcik7CiAgICAgICAgICAgICAgICAgYXNzZXJ0X3Ry
dWUoQXJyYXkuaXNBcnJheSh0cmFja0V2ZW50LnN0cmVhbXMpLCAiQXJyYXkuaXNBcnJheSgpIHNo
b3VsZCByZXR1cm4gdHJ1ZSIpOwogICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKE9iamVjdC5p
c0Zyb3plbih0cmFja0V2ZW50LnN0cmVhbXMpLCAiT2JqZWN0LmlzRnJvemVuKCkgc2hvdWxkIHJl
dHVybiB0cnVlIik7CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0cmFja0V2ZW50LnN0
cmVhbXMubGVuZ3RoLCAyKTsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRyYWNrRXZl
bnQuc3RyZWFtc1swXS5pZCwgbG9jYWxTdHJlYW0uaWQsICJmaXJzdCBzdHJlYW0gaWQiKTsKKyAg
ICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRyYWNrRXZlbnQuc3RyZWFtc1sxXS5pZCwgbG9j
YWxTdHJlYW0yLmlkLCAic2Vjb25kIHN0cmVhbSBpZCIpOwogICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHModHJhY2tFdmVudC50cmFjay5pZCwgbG9jYWxTdHJlYW0uZ2V0VmlkZW9UcmFja3Mo
KVswXS5pZCk7CiAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0cmFja0V2ZW50LnRyYWNr
LCB0cmFja0V2ZW50LnN0cmVhbXNbMF0uZ2V0VmlkZW9UcmFja3MoKVswXSk7CiAgICAgICAgICAg
ICAgICAgcmVzb2x2ZSh0cmFja0V2ZW50LnN0cmVhbXNbMF0pOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>415427</attachid>
            <date>2020-12-04 10:30:28 -0800</date>
            <delta_ts>2020-12-06 11:21:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219542-20201204193026.patch</filename>
            <type>text/plain</type>
            <size>24800</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMzQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2U4NGY2ZjEwNGQ5YmEz
OGQ5YjkwMTZjNWYwYjE0ZjhmNzNjYzliMi4uZjAyZWFkNTk3NjM5ZTM0MTVjZmI2MDVjYmQ5Njhh
ZDE1YjcxYjM2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIwLTEyLTA0ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3Ig
UlRDUnRwU2VuZGVyOjpzZXRTdHJlYW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTk1NDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBQaXBlIHN0cmVhbSBJRHMgZnJvbSBXZWJDb3JlIHNlbmRlciB0byBs
aWJxZWJydGMgYmFja2VuZCBzZW5kZXIuCisgICAgICAgIEEgZm9sbG93LXVwIHBhdGNoIHNob3Vs
ZCBoYW5kbGUgY3JlYXRpb24gb2YgcmVtb3RlIHN0cmVhbXMgaW4gY2FzZSBvZiByZW5lZ290aWF0
aW9uLgorICAgICAgICBDb3ZlcmVkIGJ5IHVwZGF0ZWQgYW5kIHJlYmFzZWQgdGVzdHMuCisKKyAg
ICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1J0cFNlbmRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSVENSdHBTZW5kZXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpSVENSdHBT
ZW5kZXI6OlJUQ1J0cFNlbmRlcik6CisgICAgICAgIChXZWJDb3JlOjpSVENSdHBTZW5kZXI6OnNl
dFN0cmVhbXMpOgorICAgICAgICAoV2ViQ29yZTo6UlRDUnRwU2VuZGVyOjpzZXRNZWRpYVN0cmVh
bUlkcyk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5kZXIuaDoKKyAg
ICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1J0cFNlbmRlci5pZGw6CisgICAgICAgICog
TW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5kZXJCYWNrZW5kLmg6CisgICAgICAgICogTW9k
dWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5k
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6
YWRkVHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6TGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNr
ZW5kOjphZGRUcmFuc2NlaXZlckZyb21UcmFja09yS2luZCk6CisgICAgICAgIChXZWJDb3JlOjpM
aWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6Om5ld1JlbW90ZVRyYW5zY2VpdmVyKToKKyAg
ICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJC
YWNrZW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxpYldlYlJUQ1J0cFNlbmRlckJhY2tlbmQ6
OnNldE1lZGlhU3RyZWFtSWRzKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL2xpYndl
YnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmg6CisKIDIwMjAtMTItMDQgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhIFNGcmFtZSBIMjY0IGV4
cGVyaW1lbnRhbCBjb21wYXRpYmlsaXR5IG1vZGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUnRwU2VuZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDUnRwU2VuZGVyLmNwcAppbmRleCAzZTAzMmI2NTkzYTc2NDNi
NDYyZDNkZmE4ZTIyZmIyYjA5NDQ2ZTFiLi45MTkzYWMxNzVhYWU4YzJhZmYwNWE2Nzc0M2ZmMTVm
NzljMGIyNTMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L1JUQ1J0cFNlbmRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENSdHBTZW5kZXIuY3BwCkBAIC00NSwyMSArNDUsMjAgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoUlRDUnRwU2VuZGVyKTsKIAotUmVmPFJU
Q1J0cFNlbmRlcj4gUlRDUnRwU2VuZGVyOjpjcmVhdGUoUlRDUGVlckNvbm5lY3Rpb24mIGNvbm5l
Y3Rpb24sIFJlZjxNZWRpYVN0cmVhbVRyYWNrPiYmIHRyYWNrLCBWZWN0b3I8U3RyaW5nPiYmIG1l
ZGlhU3RyZWFtSWRzLCBzdGQ6OnVuaXF1ZV9wdHI8UlRDUnRwU2VuZGVyQmFja2VuZD4mJiBiYWNr
ZW5kKQorUmVmPFJUQ1J0cFNlbmRlcj4gUlRDUnRwU2VuZGVyOjpjcmVhdGUoUlRDUGVlckNvbm5l
Y3Rpb24mIGNvbm5lY3Rpb24sIFJlZjxNZWRpYVN0cmVhbVRyYWNrPiYmIHRyYWNrLCBzdGQ6OnVu
aXF1ZV9wdHI8UlRDUnRwU2VuZGVyQmFja2VuZD4mJiBiYWNrZW5kKQogewotICAgIGF1dG8gc2Vu
ZGVyID0gYWRvcHRSZWYoKm5ldyBSVENSdHBTZW5kZXIoY29ubmVjdGlvbiwgU3RyaW5nKHRyYWNr
LT5raW5kKCkpLCBXVEZNb3ZlKG1lZGlhU3RyZWFtSWRzKSwgV1RGTW92ZShiYWNrZW5kKSkpOwor
ICAgIGF1dG8gc2VuZGVyID0gYWRvcHRSZWYoKm5ldyBSVENSdHBTZW5kZXIoY29ubmVjdGlvbiwg
U3RyaW5nKHRyYWNrLT5raW5kKCkpLCBXVEZNb3ZlKGJhY2tlbmQpKSk7CiAgICAgc2VuZGVyLT5z
ZXRUcmFjayhXVEZNb3ZlKHRyYWNrKSk7CiAgICAgcmV0dXJuIHNlbmRlcjsKIH0KIAotUmVmPFJU
Q1J0cFNlbmRlcj4gUlRDUnRwU2VuZGVyOjpjcmVhdGUoUlRDUGVlckNvbm5lY3Rpb24mIGNvbm5l
Y3Rpb24sIFN0cmluZyYmIHRyYWNrS2luZCwgVmVjdG9yPFN0cmluZz4mJiBtZWRpYVN0cmVhbUlk
cywgc3RkOjp1bmlxdWVfcHRyPFJUQ1J0cFNlbmRlckJhY2tlbmQ+JiYgYmFja2VuZCkKK1JlZjxS
VENSdHBTZW5kZXI+IFJUQ1J0cFNlbmRlcjo6Y3JlYXRlKFJUQ1BlZXJDb25uZWN0aW9uJiBjb25u
ZWN0aW9uLCBTdHJpbmcmJiB0cmFja0tpbmQsIHN0ZDo6dW5pcXVlX3B0cjxSVENSdHBTZW5kZXJC
YWNrZW5kPiYmIGJhY2tlbmQpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgUlRDUnRwU2Vu
ZGVyKGNvbm5lY3Rpb24sIFdURk1vdmUodHJhY2tLaW5kKSwgV1RGTW92ZShtZWRpYVN0cmVhbUlk
cyksIFdURk1vdmUoYmFja2VuZCkpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBSVENSdHBT
ZW5kZXIoY29ubmVjdGlvbiwgV1RGTW92ZSh0cmFja0tpbmQpLCBXVEZNb3ZlKGJhY2tlbmQpKSk7
CiB9CiAKLVJUQ1J0cFNlbmRlcjo6UlRDUnRwU2VuZGVyKFJUQ1BlZXJDb25uZWN0aW9uJiBjb25u
ZWN0aW9uLCBTdHJpbmcmJiB0cmFja0tpbmQsIFZlY3RvcjxTdHJpbmc+JiYgbWVkaWFTdHJlYW1J
ZHMsIHN0ZDo6dW5pcXVlX3B0cjxSVENSdHBTZW5kZXJCYWNrZW5kPiYmIGJhY2tlbmQpCitSVENS
dHBTZW5kZXI6OlJUQ1J0cFNlbmRlcihSVENQZWVyQ29ubmVjdGlvbiYgY29ubmVjdGlvbiwgU3Ry
aW5nJiYgdHJhY2tLaW5kLCBzdGQ6OnVuaXF1ZV9wdHI8UlRDUnRwU2VuZGVyQmFja2VuZD4mJiBi
YWNrZW5kKQogICAgIDogbV90cmFja0tpbmQoV1RGTW92ZSh0cmFja0tpbmQpKQotICAgICwgbV9t
ZWRpYVN0cmVhbUlkcyhXVEZNb3ZlKG1lZGlhU3RyZWFtSWRzKSkKICAgICAsIG1fYmFja2VuZChX
VEZNb3ZlKGJhY2tlbmQpKQogICAgICwgbV9jb25uZWN0aW9uKG1ha2VXZWFrUHRyKGNvbm5lY3Rp
b24pKQogewpAQCAtMTQ3LDYgKzE0NiwyMSBAQCB2b2lkIFJUQ1J0cFNlbmRlcjo6c2V0UGFyYW1l
dGVycyhjb25zdCBSVENSdHBTZW5kUGFyYW1ldGVycyYgcGFyYW1ldGVycywgRE9NUHJvbQogICAg
IHJldHVybiBtX2JhY2tlbmQtPnNldFBhcmFtZXRlcnMocGFyYW1ldGVycywgV1RGTW92ZShwcm9t
aXNlKSk7CiB9CiAKK0V4Y2VwdGlvbk9yPHZvaWQ+IFJUQ1J0cFNlbmRlcjo6c2V0U3RyZWFtcyhj
b25zdCBWZWN0b3I8c3RkOjpyZWZlcmVuY2Vfd3JhcHBlcjxNZWRpYVN0cmVhbT4+JiBzdHJlYW1z
KQoreworICAgIHJldHVybiBzZXRNZWRpYVN0cmVhbUlkcyhXVEY6Om1hcChzdHJlYW1zLCBbXShh
dXRvJiBzdHJlYW0pIC0+IFN0cmluZyB7CisgICAgICAgIHJldHVybiBzdHJlYW0uZ2V0KCkuaWQo
KTsKKyAgICB9KSk7Cit9CisKK0V4Y2VwdGlvbk9yPHZvaWQ+IFJUQ1J0cFNlbmRlcjo6c2V0TWVk
aWFTdHJlYW1JZHMoY29uc3QgVmVjdG9yPFN0cmluZz4mIHN0cmVhbUlkcykKK3sKKyAgICBpZiAo
IW1fY29ubmVjdGlvbiB8fCBtX2Nvbm5lY3Rpb24tPmlzQ2xvc2VkKCkgfHwgIW1fYmFja2VuZCkK
KyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiY29ubmVjdGlv
biBpcyBjbG9zZWQiX3MgfTsKKyAgICBtX2JhY2tlbmQtPnNldE1lZGlhU3RyZWFtSWRzKHN0cmVh
bUlkcyk7CisgICAgcmV0dXJuIHsgfTsKK30KKwogdm9pZCBSVENSdHBTZW5kZXI6OmdldFN0YXRz
KFJlZjxEZWZlcnJlZFByb21pc2U+JiYgcHJvbWlzZSkKIHsKICAgICBpZiAoIW1fY29ubmVjdGlv
bikgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENS
dHBTZW5kZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUnRwU2Vu
ZGVyLmgKaW5kZXggZWRlNGQ5ZGEwYjg1MGE4Y2E5Zjg5YWEyNGMxY2FhNTc4N2I5ZjQyOC4uNjg0
NDgwOTQ4YTFhMDNhMTY5ZTEyNmE2MWE5ZTY0NWM1YjAyNDhkOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5kZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1J0cFNlbmRlci5oCkBAIC00Miw2ICs0Miw3
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgTWVkaWFTdHJlYW07CiBjbGFzcyBS
VENEVE1GU2VuZGVyOwogY2xhc3MgUlRDUGVlckNvbm5lY3Rpb247CiBzdHJ1Y3QgUlRDUnRwQ2Fw
YWJpbGl0aWVzOwpAQCAtNDksOCArNTAsOCBAQCBzdHJ1Y3QgUlRDUnRwQ2FwYWJpbGl0aWVzOwog
Y2xhc3MgUlRDUnRwU2VuZGVyIGZpbmFsIDogcHVibGljIFJlZkNvdW50ZWQ8UlRDUnRwU2VuZGVy
PiwgcHVibGljIFNjcmlwdFdyYXBwYWJsZSwgcHVibGljIENhbk1ha2VXZWFrUHRyPFJUQ1J0cFNl
bmRlcj4gewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoUlRDUnRwU2VuZGVyKTsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUmVmPFJUQ1J0cFNlbmRlcj4gY3JlYXRlKFJUQ1BlZXJDb25uZWN0aW9u
JiwgUmVmPE1lZGlhU3RyZWFtVHJhY2s+JiYsIFZlY3RvcjxTdHJpbmc+JiYgbWVkaWFTdHJlYW1J
ZHMsIHN0ZDo6dW5pcXVlX3B0cjxSVENSdHBTZW5kZXJCYWNrZW5kPiYmKTsKLSAgICBzdGF0aWMg
UmVmPFJUQ1J0cFNlbmRlcj4gY3JlYXRlKFJUQ1BlZXJDb25uZWN0aW9uJiwgU3RyaW5nJiYgdHJh
Y2tLaW5kLCBWZWN0b3I8U3RyaW5nPiYmIG1lZGlhU3RyZWFtSWRzLCBzdGQ6OnVuaXF1ZV9wdHI8
UlRDUnRwU2VuZGVyQmFja2VuZD4mJik7CisgICAgc3RhdGljIFJlZjxSVENSdHBTZW5kZXI+IGNy
ZWF0ZShSVENQZWVyQ29ubmVjdGlvbiYsIFJlZjxNZWRpYVN0cmVhbVRyYWNrPiYmLCBzdGQ6OnVu
aXF1ZV9wdHI8UlRDUnRwU2VuZGVyQmFja2VuZD4mJik7CisgICAgc3RhdGljIFJlZjxSVENSdHBT
ZW5kZXI+IGNyZWF0ZShSVENQZWVyQ29ubmVjdGlvbiYsIFN0cmluZyYmIHRyYWNrS2luZCwgc3Rk
Ojp1bmlxdWVfcHRyPFJUQ1J0cFNlbmRlckJhY2tlbmQ+JiYpOwogICAgIH5SVENSdHBTZW5kZXIo
KTsKIAogICAgIHN0YXRpYyBPcHRpb25hbDxSVENSdHBDYXBhYmlsaXRpZXM+IGdldENhcGFiaWxp
dGllcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgY29uc3QgU3RyaW5nJiBraW5kKTsKQEAgLTYw
LDggKzYxLDggQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgdHJhY2tJZCgpIGNvbnN0IHsg
cmV0dXJuIG1fdHJhY2tJZDsgfQogICAgIGNvbnN0IFN0cmluZyYgdHJhY2tLaW5kKCkgY29uc3Qg
eyByZXR1cm4gbV90cmFja0tpbmQ7IH0KIAotICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBtZWRp
YVN0cmVhbUlkcygpIGNvbnN0IHsgcmV0dXJuIG1fbWVkaWFTdHJlYW1JZHM7IH0KLSAgICB2b2lk
IHNldE1lZGlhU3RyZWFtSWRzKFZlY3RvcjxTdHJpbmc+JiYgbWVkaWFTdHJlYW1JZHMpIHsgbV9t
ZWRpYVN0cmVhbUlkcyA9IFdURk1vdmUobWVkaWFTdHJlYW1JZHMpOyB9CisgICAgRXhjZXB0aW9u
T3I8dm9pZD4gc2V0TWVkaWFTdHJlYW1JZHMoY29uc3QgVmVjdG9yPFN0cmluZz4mKTsKKyAgICBF
eGNlcHRpb25Pcjx2b2lkPiBzZXRTdHJlYW1zKGNvbnN0IFZlY3RvcjxzdGQ6OnJlZmVyZW5jZV93
cmFwcGVyPE1lZGlhU3RyZWFtPj4mKTsKIAogICAgIGJvb2wgaXNTdG9wcGVkKCkgY29uc3QgeyBy
ZXR1cm4gIW1fYmFja2VuZDsgfQogICAgIHZvaWQgc3RvcCgpOwpAQCAtODYsMTIgKzg3LDExIEBA
IHB1YmxpYzoKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRUcmFuc2Zvcm0oT3B0aW9uYWw8UlRD
UnRwVHJhbnNmb3JtPiYmKTsKIAogcHJpdmF0ZToKLSAgICBSVENSdHBTZW5kZXIoUlRDUGVlckNv
bm5lY3Rpb24mLCBTdHJpbmcmJiB0cmFja0tpbmQsIFZlY3RvcjxTdHJpbmc+JiYgbWVkaWFTdHJl
YW1JZHMsIHN0ZDo6dW5pcXVlX3B0cjxSVENSdHBTZW5kZXJCYWNrZW5kPiYmKTsKKyAgICBSVENS
dHBTZW5kZXIoUlRDUGVlckNvbm5lY3Rpb24mLCBTdHJpbmcmJiB0cmFja0tpbmQsIHN0ZDo6dW5p
cXVlX3B0cjxSVENSdHBTZW5kZXJCYWNrZW5kPiYmKTsKIAogICAgIFJlZlB0cjxNZWRpYVN0cmVh
bVRyYWNrPiBtX3RyYWNrOwogICAgIFN0cmluZyBtX3RyYWNrSWQ7CiAgICAgU3RyaW5nIG1fdHJh
Y2tLaW5kOwotICAgIFZlY3RvcjxTdHJpbmc+IG1fbWVkaWFTdHJlYW1JZHM7CiAgICAgc3RkOjp1
bmlxdWVfcHRyPFJUQ1J0cFNlbmRlckJhY2tlbmQ+IG1fYmFja2VuZDsKICAgICBXZWFrUHRyPFJU
Q1BlZXJDb25uZWN0aW9uPiBtX2Nvbm5lY3Rpb247CiAgICAgUmVmUHRyPFJUQ0RUTUZTZW5kZXI+
IG1fZHRtZlNlbmRlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vUlRDUnRwU2VuZGVyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vUlRDUnRwU2VuZGVyLmlkbAppbmRleCAxYmUyNTkwOTY2MjUwNzQyZWU5ZjMyNjhkNjU1ZDg1
YjliM2U0M2I2Li41OTE3NmE3NGEzZTVkNzAwNGZiOTY5ODIzMTg4YjIxNzMwYzNkZDJkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1J0cFNlbmRlci5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5kZXIu
aWRsCkBAIC0zNiwxMyArMzYsMTIgQEAKICAgICBFeHBvc2VkPVdpbmRvdwogXSBpbnRlcmZhY2Ug
UlRDUnRwU2VuZGVyIHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgTWVkaWFTdHJlYW1UcmFjaz8g
dHJhY2s7Ci0gICAgLy8gRklYTUUgMTY5NjYyOiBtaXNzaW5nIHRyYW5zcG9ydAotICAgIC8vIEZJ
WE1FIDE2OTY2MjogbWlzc2luZyBydGNwVHJhbnNwb3J0Ci0gICAgLy8gRklYTUUgMTY5NjYyOiBt
aXNzaW5nIHNldFN0cmVhbXMKKyAgICAvLyBGSVhNRSAxNjk2NjI6IHJlYWRvbmx5IGF0dHJpYnV0
ZSBSVENEdGxzVHJhbnNwb3J0PyB0cmFuc3BvcnQ7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1
dGlvbkNvbnRleHRdIHN0YXRpYyBSVENSdHBDYXBhYmlsaXRpZXM/IGdldENhcGFiaWxpdGllcyhE
T01TdHJpbmcga2luZCk7CiAgICAgUlRDUnRwU2VuZFBhcmFtZXRlcnMgZ2V0UGFyYW1ldGVycygp
OwogICAgIFByb21pc2U8dW5kZWZpbmVkPiBzZXRQYXJhbWV0ZXJzKFJUQ1J0cFNlbmRQYXJhbWV0
ZXJzIHBhcmFtZXRlcnMpOwogICAgIFByb21pc2U8dW5kZWZpbmVkPiByZXBsYWNlVHJhY2soTWVk
aWFTdHJlYW1UcmFjaz8gd2l0aFRyYWNrKTsKKyAgICBbTWF5VGhyb3dFeGNlcHRpb25dIHVuZGVm
aW5lZCBzZXRTdHJlYW1zKE1lZGlhU3RyZWFtLi4uIHN0cmVhbXMpOwogICAgIFByb21pc2U8UlRD
U3RhdHNSZXBvcnQ+IGdldFN0YXRzKCk7CiAKICAgICBbQ29uZGl0aW9uYWw9V0VCX1JUQywgRW5h
YmxlZEF0UnVudGltZT1XZWJSVENEVE1GXSByZWFkb25seSBhdHRyaWJ1dGUgUlRDRFRNRlNlbmRl
cj8gZHRtZjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0v
UlRDUnRwU2VuZGVyQmFja2VuZC5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9SVENSdHBTZW5kZXJCYWNrZW5kLmgKaW5kZXggMzA4OTdjMjRlYTdmNzFkZDQwNjJiMjBlYzJi
NTM4ZmNiYTFjODBiNi4uNDUyY2M3NmNkMGY2NjJkYTFhZTFmYTkyZmY3MGRmNmQ3NTY4ODZkNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENSdHBTZW5k
ZXJCYWNrZW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9SVENS
dHBTZW5kZXJCYWNrZW5kLmgKQEAgLTI2LDYgKzI2LDkgQEAKIAogI2lmIEVOQUJMRShXRUJfUlRD
KQogCisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KKyNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgTWVkaWFTdHJlYW1UcmFjazsKQEAgLTQ3LDYg
KzUwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRQYXJhbWV0ZXJzKGNvbnN0IFJU
Q1J0cFNlbmRQYXJhbWV0ZXJzJiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYpID0gMDsKICAg
ICB2aXJ0dWFsIHN0ZDo6dW5pcXVlX3B0cjxSVENEVE1GU2VuZGVyQmFja2VuZD4gY3JlYXRlRFRN
RkJhY2tlbmQoKSA9IDA7CiAgICAgdmlydHVhbCBSZWY8UlRDUnRwVHJhbnNmb3JtQmFja2VuZD4g
Y3JlYXRlUlRDUnRwVHJhbnNmb3JtQmFja2VuZCgpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0
TWVkaWFTdHJlYW1JZHMoY29uc3QgVmVjdG9yPFN0cmluZz4mKSA9IDA7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQuY3BwIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUGVlckNv
bm5lY3Rpb25CYWNrZW5kLmNwcAppbmRleCBkM2I5YjE0YmQ1OGRkMGY2NDYwN2RlYTI3MTBhOTcx
ZTk4MTY1MzUxLi5iMDdlZWJkNGI5YzQyNjlmMWM3ZDMyMmQ5NGFjMTg1YTBiMzIzOTczIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9MaWJX
ZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZC5j
cHAKQEAgLTM3MCwxMyArMzcwLDE0IEBAIEV4Y2VwdGlvbk9yPFJlZjxSVENSdHBTZW5kZXI+PiBM
aWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQ6OmFkZFRyYWNrKE1lZGlhU3RyCiAgICAgaWYg
KGF1dG8gc2VuZGVyID0gZmluZEV4aXN0aW5nU2VuZGVyKG1fcGVlckNvbm5lY3Rpb24uY3VycmVu
dFRyYW5zY2VpdmVycygpLCAqc2VuZGVyQmFja2VuZCkpIHsKICAgICAgICAgYmFja2VuZEZyb21S
VFBTZW5kZXIoKnNlbmRlcikudGFrZVNvdXJjZSgqc2VuZGVyQmFja2VuZCk7CiAgICAgICAgIHNl
bmRlci0+c2V0VHJhY2sobWFrZVJlZih0cmFjaykpOwotICAgICAgICBzZW5kZXItPnNldE1lZGlh
U3RyZWFtSWRzKFdURk1vdmUobWVkaWFTdHJlYW1JZHMpKTsKKyAgICAgICAgc2VuZGVyLT5zZXRN
ZWRpYVN0cmVhbUlkcyhtZWRpYVN0cmVhbUlkcyk7CiAgICAgICAgIHJldHVybiBzZW5kZXIucmVs
ZWFzZU5vbk51bGwoKTsKICAgICB9CiAKICAgICBhdXRvIHRyYW5zY2VpdmVyQmFja2VuZCA9IG1f
ZW5kcG9pbnQtPnRyYW5zY2VpdmVyQmFja2VuZEZyb21TZW5kZXIoKnNlbmRlckJhY2tlbmQpOwog
Ci0gICAgYXV0byBzZW5kZXIgPSBSVENSdHBTZW5kZXI6OmNyZWF0ZShtX3BlZXJDb25uZWN0aW9u
LCBtYWtlUmVmKHRyYWNrKSwgV1RGTW92ZShtZWRpYVN0cmVhbUlkcyksIFdURk1vdmUoc2VuZGVy
QmFja2VuZCkpOworICAgIGF1dG8gc2VuZGVyID0gUlRDUnRwU2VuZGVyOjpjcmVhdGUobV9wZWVy
Q29ubmVjdGlvbiwgbWFrZVJlZih0cmFjayksIFdURk1vdmUoc2VuZGVyQmFja2VuZCkpOworICAg
IHNlbmRlci0+c2V0TWVkaWFTdHJlYW1JZHMobWVkaWFTdHJlYW1JZHMpOwogICAgIGF1dG8gcmVj
ZWl2ZXIgPSBjcmVhdGVSZWNlaXZlcih0cmFuc2NlaXZlckJhY2tlbmQtPmNyZWF0ZVJlY2VpdmVy
QmFja2VuZCgpKTsKICAgICBhdXRvIHRyYW5zY2VpdmVyID0gUlRDUnRwVHJhbnNjZWl2ZXI6OmNy
ZWF0ZShzZW5kZXIuY29weVJlZigpLCBXVEZNb3ZlKHJlY2VpdmVyKSwgV1RGTW92ZSh0cmFuc2Nl
aXZlckJhY2tlbmQpKTsKICAgICBtX3BlZXJDb25uZWN0aW9uLmFkZEludGVybmFsVHJhbnNjZWl2
ZXIoV1RGTW92ZSh0cmFuc2NlaXZlcikpOwpAQCAtMzkwLDcgKzM5MSw3IEBAIEV4Y2VwdGlvbk9y
PFJlZjxSVENSdHBUcmFuc2NlaXZlcj4+IExpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6
YWRkVHJhbnNjZWl2CiAgICAgaWYgKCFiYWNrZW5kcykKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlv
biB7IEludmFsaWRBY2Nlc3NFcnJvciwgIlVuYWJsZSB0byBhZGQgdHJhbnNjZWl2ZXIiX3MgfTsK
IAotICAgIGF1dG8gc2VuZGVyID0gUlRDUnRwU2VuZGVyOjpjcmVhdGUobV9wZWVyQ29ubmVjdGlv
biwgV1RGTW92ZSh0cmFja09yS2luZCksIFZlY3RvcjxTdHJpbmc+IHsgfSwgV1RGTW92ZShiYWNr
ZW5kcy0+c2VuZGVyQmFja2VuZCkpOworICAgIGF1dG8gc2VuZGVyID0gUlRDUnRwU2VuZGVyOjpj
cmVhdGUobV9wZWVyQ29ubmVjdGlvbiwgV1RGTW92ZSh0cmFja09yS2luZCksIFdURk1vdmUoYmFj
a2VuZHMtPnNlbmRlckJhY2tlbmQpKTsKICAgICBhdXRvIHJlY2VpdmVyID0gY3JlYXRlUmVjZWl2
ZXIoV1RGTW92ZShiYWNrZW5kcy0+cmVjZWl2ZXJCYWNrZW5kKSk7CiAgICAgYXV0byB0cmFuc2Nl
aXZlciA9IFJUQ1J0cFRyYW5zY2VpdmVyOjpjcmVhdGUoV1RGTW92ZShzZW5kZXIpLCBXVEZNb3Zl
KHJlY2VpdmVyKSwgV1RGTW92ZShiYWNrZW5kcy0+dHJhbnNjZWl2ZXJCYWNrZW5kKSk7CiAgICAg
bV9wZWVyQ29ubmVjdGlvbi5hZGRJbnRlcm5hbFRyYW5zY2VpdmVyKHRyYW5zY2VpdmVyLmNvcHlS
ZWYoKSk7CkBAIC00MjgsNyArNDI5LDcgQEAgUlRDUnRwVHJhbnNjZWl2ZXIqIExpYldlYlJUQ1Bl
ZXJDb25uZWN0aW9uQmFja2VuZDo6ZXhpc3RpbmdUcmFuc2NlaXZlcihXVEY6OkZ1bmMKIAogUlRD
UnRwVHJhbnNjZWl2ZXImIExpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZDo6bmV3UmVtb3Rl
VHJhbnNjZWl2ZXIoc3RkOjp1bmlxdWVfcHRyPExpYldlYlJUQ1J0cFRyYW5zY2VpdmVyQmFja2Vu
ZD4mJiB0cmFuc2NlaXZlckJhY2tlbmQsIFJlYWx0aW1lTWVkaWFTb3VyY2U6OlR5cGUgdHlwZSkK
IHsKLSAgICBhdXRvIHNlbmRlciA9IFJUQ1J0cFNlbmRlcjo6Y3JlYXRlKG1fcGVlckNvbm5lY3Rp
b24sIHR5cGUgPT0gUmVhbHRpbWVNZWRpYVNvdXJjZTo6VHlwZTo6QXVkaW8gPyAiYXVkaW8iX3Mg
OiAidmlkZW8iX3MsIFZlY3RvcjxTdHJpbmc+IHsgfSwgdHJhbnNjZWl2ZXJCYWNrZW5kLT5jcmVh
dGVTZW5kZXJCYWNrZW5kKCp0aGlzLCBudWxscHRyKSk7CisgICAgYXV0byBzZW5kZXIgPSBSVENS
dHBTZW5kZXI6OmNyZWF0ZShtX3BlZXJDb25uZWN0aW9uLCB0eXBlID09IFJlYWx0aW1lTWVkaWFT
b3VyY2U6OlR5cGU6OkF1ZGlvID8gImF1ZGlvIl9zIDogInZpZGVvIl9zLCB0cmFuc2NlaXZlckJh
Y2tlbmQtPmNyZWF0ZVNlbmRlckJhY2tlbmQoKnRoaXMsIG51bGxwdHIpKTsKICAgICBhdXRvIHJl
Y2VpdmVyID0gY3JlYXRlUmVjZWl2ZXIodHJhbnNjZWl2ZXJCYWNrZW5kLT5jcmVhdGVSZWNlaXZl
ckJhY2tlbmQoKSk7CiAgICAgYXV0byB0cmFuc2NlaXZlciA9IFJUQ1J0cFRyYW5zY2VpdmVyOjpj
cmVhdGUoV1RGTW92ZShzZW5kZXIpLCBXVEZNb3ZlKHJlY2VpdmVyKSwgV1RGTW92ZSh0cmFuc2Nl
aXZlckJhY2tlbmQpKTsKICAgICBtX3BlZXJDb25uZWN0aW9uLmFkZEludGVybmFsVHJhbnNjZWl2
ZXIodHJhbnNjZWl2ZXIuY29weVJlZigpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1J0cFNlbmRlckJhY2tlbmQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRD
UnRwU2VuZGVyQmFja2VuZC5jcHAKaW5kZXggOGU5NjFjOTcyZmIwZGU0OGQ3NWEwYzRhZTlmM2Ni
ZDFhOTIyYzljNS4uN2VjNjgzMGExMjljYTRiYzJjNDY4Y2ZlZTA3Y2U1YTBhOGNmZTYwMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGli
V2ViUlRDUnRwU2VuZGVyQmFja2VuZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5jcHAKQEAgLTE0
Myw2ICsxNDMsMTQgQEAgUmVmPFJUQ1J0cFRyYW5zZm9ybUJhY2tlbmQ+IExpYldlYlJUQ1J0cFNl
bmRlckJhY2tlbmQ6OmNyZWF0ZVJUQ1J0cFRyYW5zZm9ybUJhY2sKICAgICByZXR1cm4gTGliV2Vi
UlRDUnRwU2VuZGVyVHJhbnNmb3JtQmFja2VuZDo6Y3JlYXRlKG1fcnRjU2VuZGVyKTsKIH0KIAor
dm9pZCBMaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kOjpzZXRNZWRpYVN0cmVhbUlkcyhjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgc3RyZWFtSWRzKQoreworICAgIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5n
PiBpZHM7CisgICAgZm9yIChhdXRvJiBpZCA6IHN0cmVhbUlkcykKKyAgICAgICAgaWRzLnB1c2hf
YmFjayhpZC51dGY4KCkuZGF0YSgpKTsKKyAgICBtX3J0Y1NlbmRlci0+U2V0U3RyZWFtcyhpZHMp
OworfQorCiBSZWFsdGltZU91dGdvaW5nVmlkZW9Tb3VyY2UqIExpYldlYlJUQ1J0cFNlbmRlckJh
Y2tlbmQ6OnZpZGVvU291cmNlKCkKIHsKICAgICByZXR1cm4gc3dpdGNoT24obV9zb3VyY2UsCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL2xpYndlYnJ0Yy9M
aWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL2xpYndlYnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmgKaW5kZXggZDU2YTA1
NmUzNjJiNGQ2MzQ5MTE2M2MxMmJiYzhkYmNjZjI5NDcwNy4uZTJiZjA2ODc1Yjg4MDViMGQ5MjEw
Yzk4YmQ1YTgzZGU2NWViYjM1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9saWJ3ZWJydGMvTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vbGlid2VicnRjL0xpYldlYlJUQ1J0cFNl
bmRlckJhY2tlbmQuaApAQCAtNzEsNiArNzEsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgc2V0UGFy
YW1ldGVycyhjb25zdCBSVENSdHBTZW5kUGFyYW1ldGVycyYsIERPTVByb21pc2VEZWZlcnJlZDx2
b2lkPiYmKSBmaW5hbDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UlRDRFRNRlNlbmRlckJhY2tlbmQ+
IGNyZWF0ZURUTUZCYWNrZW5kKCkgZmluYWw7CiAgICAgUmVmPFJUQ1J0cFRyYW5zZm9ybUJhY2tl
bmQ+IGNyZWF0ZVJUQ1J0cFRyYW5zZm9ybUJhY2tlbmQoKSBmaW5hbDsKKyAgICB2b2lkIHNldE1l
ZGlhU3RyZWFtSWRzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JikgZmluYWw7CiAKICAgICB2b2lkIHN0
YXJ0U291cmNlKCk7CiAgICAgdm9pZCBzdG9wU291cmNlKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDQwMzJmMjM2ZDM4
OTFlNjYyZmU4MjNmYjQzYzNlZGM5MDI4MGI0ZC4uZmZhZjJiZjQyMGZjYmIxMTY1OTdkNzNjNzBk
Yjk2OTFhMWQzZWY0ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDIwLTEyLTA0ICBZb3Vlbm4g
RmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgUlRD
UnRwU2VuZGVyOjpzZXRTdHJlYW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMTk1NDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHdlYnJ0Yy92aWRlby5odG1sOgorCiAyMDIwLTEyLTA0ICBZb3Vlbm4g
RmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgYSBTRnJhbWUgSDI2NCBl
eHBlcmltZW50YWwgY29tcGF0aWJpbGl0eSBtb2RlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxv
ZwppbmRleCBmMDlhYWMxYTJmZmRjNjAyOTA1MTliNzc5YzNiZjNmYjlkZjVhNzFkLi44YjI5ZmU4
NDg3ZjE1ZGNhZTA2ZGQ3NTQ4YzU2MDNmNTgyMTg4MDM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMi0wNCAgWW91ZW5uIEZhYmxldCAgPHlv
dWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIFJUQ1J0cFNlbmRlcjo6
c2V0U3RyZWFtcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjE5NTQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1BlZXJDb25uZWN0aW9uLXNldFJlbW90
ZURlc2NyaXB0aW9uLXJvbGxiYWNrLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvd2VicnRjL1JUQ1J0cFNlbmRlci1zZXRTdHJlYW1zLmh0dHBzLWV4cGVjdGVkLnR4
dDoKKwogMjAyMC0xMi0wMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAg
ICAgIFJFR1JFU1NJT046IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc3RyZWFtcy90
cmFuc2Zvcm0tc3RyZWFtcy90ZXJtaW5hdGUuYW55Lmh0bWwgaXMgYSBmbGFreSBmYWlsdXJlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YnJ0Yy9SVENQZWVyQ29ubmVjdGlvbi1zZXRSZW1vdGVEZXNjcmlwdGlvbi1yb2xsYmFjay1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YnJ0Yy9SVENQZWVyQ29ubmVjdGlvbi1zZXRSZW1vdGVEZXNjcmlwdGlvbi1yb2xsYmFjay1leHBl
Y3RlZC50eHQKaW5kZXggN2E4Y2JhZmQ5MjQ3MjlmNWUwN2Q4MDc3YzdiZmIzMWZlZjM2YWNkNi4u
MWQwZGRlNDc2N2QwMzg5M2VlYTI3MmFhN2JhZDE3ZjJkZGVmNzM4YiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUGVlckNv
bm5lY3Rpb24tc2V0UmVtb3RlRGVzY3JpcHRpb24tcm9sbGJhY2stZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1Bl
ZXJDb25uZWN0aW9uLXNldFJlbW90ZURlc2NyaXB0aW9uLXJvbGxiYWNrLWV4cGVjdGVkLnR4dApA
QCAtMTcsNyArMTcsNyBAQCBGQUlMIHJvbGxiYWNrIG9mIGEgbG9jYWwgb2ZmZXIgdG8gbmVnb3Rp
YXRlZCBzdGFibGUgc3RhdGUgc2hvdWxkIGVuYWJsZSBhcHBseWluZwogRkFJTCByb2xsYmFjayBh
IGxvY2FsIG9mZmVyIHdpdGggYXVkaW8gZGlyZWN0aW9uIGNoYW5nZSB0byBuZWdvdGlhdGVkIHN0
YWJsZSBzdGF0ZSBhbmQgdGhlbiBhZGQgdmlkZW8gcmVjZWl2ZXIgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiSW52YWxpZFN0YXRlRXJyb3I6IERl
c2NyaXB0aW9uIHR5cGUgaW5jb21wYXRpYmxlIHdpdGggY3VycmVudCBzaWduYWxpbmcgc3RhdGUi
CiBGQUlMIHR3byB0cmFuc2NlaXZlcnMgd2l0aCBzYW1lIG1pZHMgcHJvbWlzZV90ZXN0OiBVbmhh
bmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiSW52YWxpZFN0YXRlRXJyb3I6IERl
c2NyaXB0aW9uIHR5cGUgaW5jb21wYXRpYmxlIHdpdGggY3VycmVudCBzaWduYWxpbmcgc3RhdGUi
CiBGQUlMIG9ucmVtb3ZldHJhY2sgZmlyZXMgZHVyaW5nIHJlbW90ZSByb2xsYmFjayBwcm9taXNl
X3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJJbnZhbGlkU3Rh
dGVFcnJvcjogRGVzY3JpcHRpb24gdHlwZSBpbmNvbXBhdGlibGUgd2l0aCBjdXJyZW50IHNpZ25h
bGluZyBzdGF0ZSIKLUZBSUwgcm9sbGJhY2sgb2YgYSByZW1vdGUgb2ZmZXIgd2l0aCBzdHJlYW0g
Y2hhbmdlcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2Jq
ZWN0ICJUeXBlRXJyb3I6IHBjMS5nZXRUcmFuc2NlaXZlcnMoKVswXS5zZW5kZXIuc2V0U3RyZWFt
cyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdwYzEuZ2V0VHJhbnNjZWl2ZXJzKClbMF0uc2VuZGVy
LnNldFN0cmVhbXMoc3RyZWFtMiknLCAncGMxLmdldFRyYW5zY2VpdmVycygpWzBdLnNlbmRlci5z
ZXRTdHJlYW1zJyBpcyB1bmRlZmluZWQpIgorRkFJTCByb2xsYmFjayBvZiBhIHJlbW90ZSBvZmZl
ciB3aXRoIHN0cmVhbSBjaGFuZ2VzIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDIgYnV0IGdvdCAx
CiBQQVNTIHJlbW92ZVRyYWNrKCkgd2l0aCBhIHNlbmRlciBiZWluZyByb2xsZWQgYmFjayBkb2Vz
IG5vdCBjcmFzaCBvciB0aHJvdwogRkFJTCBJbXBsaWNpdCByb2xsYmFjayB3aXRoIG9ubHkgYSBk
YXRhY2hhbm5lbCB3b3JrcyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2
YWx1ZTogb2JqZWN0ICJJbnZhbGlkU3RhdGVFcnJvcjogRGVzY3JpcHRpb24gdHlwZSBpbmNvbXBh
dGlibGUgd2l0aCBjdXJyZW50IHNpZ25hbGluZyBzdGF0ZSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRwU2VuZGVy
LXNldFN0cmVhbXMuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRwU2VuZGVyLXNldFN0cmVhbXMuaHR0cHMt
ZXhwZWN0ZWQudHh0CmluZGV4IDc3MGI1NWFhMjRkMTM0ZDg3NmJmNTc5ZDYzOWUyYmYzOWY0ZGVm
MzIuLjJhNDMyM2I3ZWI5ZGIyMDliNjg2ZTExNjIxMTM1ZDMzNDZmN2MyYmQgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1J0
cFNlbmRlci1zZXRTdHJlYW1zLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENSdHBTZW5kZXItc2V0U3Ry
ZWFtcy5odHRwcy1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw5IEBACiAKLUZBSUwgc2V0U3RyZWFt
cyBjYXVzZXMgc3RyZWFtcyB0byBiZSByZXBvcnRlZCB2aWEgb250cmFjayBvbiBjYWxsZWUgcHJv
bWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVy
cm9yOiBzZW5kZXIuc2V0U3RyZWFtcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICdzZW5kZXIuc2V0
U3RyZWFtcyhzdHJlYW0xLCBzdHJlYW0yKScsICdzZW5kZXIuc2V0U3RyZWFtcycgaXMgdW5kZWZp
bmVkKSIKLUZBSUwgc2V0U3RyZWFtcyBjYW4gYmUgdXNlZCB0byByZWNvbnN0cnVjdCBhIHN0cmVh
bSB3aXRoIGEgdHJhY2sgb24gdGhlIHJlbW90ZSBzaWRlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogc2VuZGVyLnNldFN0cmVh
bXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAnc2VuZGVyLnNldFN0cmVhbXMoc3RyZWFtKScsICdz
ZW5kZXIuc2V0U3RyZWFtcycgaXMgdW5kZWZpbmVkKSIKLUZBSUwgQWRkaW5nIHN0cmVhbXMgYW5k
IGNoYW5naW5nIGRpcmVjdGlvbiBjYXVzZXMgbmV3IHN0cmVhbXMgdG8gYmUgcmVwb3J0ZWQgdmlh
IG9udHJhY2sgb24gY2FsbGVlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRo
IHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMg
aXMgbm90IGEgZnVuY3Rpb24uIChJbiAndHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMoc3Ry
ZWFtMSwgc3RyZWFtMiknLCAndHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMnIGlzIHVuZGVm
aW5lZCkiCi1GQUlMIEFkZGluZyBzdHJlYW1zIHRvIGFuIGFjdGl2ZSB0cmFuc2NlaXZlciBjYXVz
ZXMgbmV3IHN0cmVhbXMgdG8gYmUgcmVwb3J0ZWQgdmlhIG9udHJhY2sgb24gY2FsbGVlIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJv
cjogdHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMgaXMgbm90IGEgZnVuY3Rpb24uIChJbiAn
dHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMoc3RyZWFtMSwgc3RyZWFtMiknLCAndHJhbnNj
ZWl2ZXIuc2VuZGVyLnNldFN0cmVhbXMnIGlzIHVuZGVmaW5lZCkiCi1GQUlMIHNldFN0cmVhbXMo
KSBmaXJlcyBJbnZhbGlkU3RhdGVFcnJvciBvbiBhIGNsb3NlZCBwZWVyIGNvbm5lY3Rpb24uIGFz
c2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4gdHJhbnNjZWl2ZXIuc2VuZGVyLnNldFN0
cmVhbXMoc3RyZWFtMSwgc3RyZWFtMikiIHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiB0cmFuc2Nl
aXZlci5zZW5kZXIuc2V0U3RyZWFtcyBpcyBub3QgYSBmdW5jdGlvbi4gKEluICd0cmFuc2NlaXZl
ci5zZW5kZXIuc2V0U3RyZWFtcyhzdHJlYW0xLCBzdHJlYW0yKScsICd0cmFuc2NlaXZlci5zZW5k
ZXIuc2V0U3RyZWFtcycgaXMgdW5kZWZpbmVkKSIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24g
SW52YWxpZFN0YXRlRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQs
IGV4cGVjdGVkIDExCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKKwor
UEFTUyBzZXRTdHJlYW1zIGNhdXNlcyBzdHJlYW1zIHRvIGJlIHJlcG9ydGVkIHZpYSBvbnRyYWNr
IG9uIGNhbGxlZQorUEFTUyBzZXRTdHJlYW1zIGNhbiBiZSB1c2VkIHRvIHJlY29uc3RydWN0IGEg
c3RyZWFtIHdpdGggYSB0cmFjayBvbiB0aGUgcmVtb3RlIHNpZGUKK1BBU1MgQWRkaW5nIHN0cmVh
bXMgYW5kIGNoYW5naW5nIGRpcmVjdGlvbiBjYXVzZXMgbmV3IHN0cmVhbXMgdG8gYmUgcmVwb3J0
ZWQgdmlhIG9udHJhY2sgb24gY2FsbGVlCitUSU1FT1VUIEFkZGluZyBzdHJlYW1zIHRvIGFuIGFj
dGl2ZSB0cmFuc2NlaXZlciBjYXVzZXMgbmV3IHN0cmVhbXMgdG8gYmUgcmVwb3J0ZWQgdmlhIG9u
dHJhY2sgb24gY2FsbGVlIFRlc3QgdGltZWQgb3V0CitQQVNTIHNldFN0cmVhbXMoKSBmaXJlcyBJ
bnZhbGlkU3RhdGVFcnJvciBvbiBhIGNsb3NlZCBwZWVyIGNvbm5lY3Rpb24uCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL2lk
bGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL2lkbGhhcm5lc3MuaHR0cHMud2luZG93LWV4
cGVjdGVkLnR4dAppbmRleCA3ZTlhOTRjNjBmMWQ2NjhhMmVkMGYzNDY4YzhjODYzODlmNzA1MGYy
Li40YjBjN2UzOWZjMzFhODhjNTZmM2FiOWY5ZTUyODBlMTQ5NDExMDYyIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9pZGxoYXJu
ZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0CkBAIC0yMzcsNyArMjM3LDcgQEAgUEFTUyBSVENSdHBTZW5kZXIgaW50ZXJmYWNl
OiBvcGVyYXRpb24gZ2V0Q2FwYWJpbGl0aWVzKERPTVN0cmluZykKIFBBU1MgUlRDUnRwU2VuZGVy
IGludGVyZmFjZTogb3BlcmF0aW9uIHNldFBhcmFtZXRlcnMoUlRDUnRwU2VuZFBhcmFtZXRlcnMp
CiBQQVNTIFJUQ1J0cFNlbmRlciBpbnRlcmZhY2U6IG9wZXJhdGlvbiBnZXRQYXJhbWV0ZXJzKCkK
IFBBU1MgUlRDUnRwU2VuZGVyIGludGVyZmFjZTogb3BlcmF0aW9uIHJlcGxhY2VUcmFjayhNZWRp
YVN0cmVhbVRyYWNrPykKLUZBSUwgUlRDUnRwU2VuZGVyIGludGVyZmFjZTogb3BlcmF0aW9uIHNl
dFN0cmVhbXMoTWVkaWFTdHJlYW0uLi4pIGFzc2VydF9vd25fcHJvcGVydHk6IGludGVyZmFjZSBw
cm90b3R5cGUgb2JqZWN0IG1pc3Npbmcgbm9uLXN0YXRpYyBvcGVyYXRpb24gZXhwZWN0ZWQgcHJv
cGVydHkgInNldFN0cmVhbXMiIG1pc3NpbmcKK1BBU1MgUlRDUnRwU2VuZGVyIGludGVyZmFjZTog
b3BlcmF0aW9uIHNldFN0cmVhbXMoTWVkaWFTdHJlYW0uLi4pCiBQQVNTIFJUQ1J0cFNlbmRlciBp
bnRlcmZhY2U6IG9wZXJhdGlvbiBnZXRTdGF0cygpCiBQQVNTIFJUQ1J0cFNlbmRlciBpbnRlcmZh
Y2U6IGF0dHJpYnV0ZSBkdG1mCiBQQVNTIFJUQ1J0cFNlbmRlciBtdXN0IGJlIHByaW1hcnkgaW50
ZXJmYWNlIG9mIG5ldyBSVENQZWVyQ29ubmVjdGlvbigpLmFkZFRyYW5zY2VpdmVyKCdhdWRpbycp
LnNlbmRlcgpAQCAtMjUxLDggKzI1MSw4IEBAIFBBU1MgUlRDUnRwU2VuZGVyIGludGVyZmFjZTog
Y2FsbGluZyBzZXRQYXJhbWV0ZXJzKFJUQ1J0cFNlbmRQYXJhbWV0ZXJzKSBvbiBuZXcKIFBBU1Mg
UlRDUnRwU2VuZGVyIGludGVyZmFjZTogbmV3IFJUQ1BlZXJDb25uZWN0aW9uKCkuYWRkVHJhbnNj
ZWl2ZXIoJ2F1ZGlvJykuc2VuZGVyIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZ2V0UGFyYW1ldGVy
cygpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZQogUEFTUyBSVENSdHBTZW5kZXIgaW50ZXJmYWNlOiBu
ZXcgUlRDUGVlckNvbm5lY3Rpb24oKS5hZGRUcmFuc2NlaXZlcignYXVkaW8nKS5zZW5kZXIgbXVz
dCBpbmhlcml0IHByb3BlcnR5ICJyZXBsYWNlVHJhY2soTWVkaWFTdHJlYW1UcmFjaz8pIiB3aXRo
IHRoZSBwcm9wZXIgdHlwZQogUEFTUyBSVENSdHBTZW5kZXIgaW50ZXJmYWNlOiBjYWxsaW5nIHJl
cGxhY2VUcmFjayhNZWRpYVN0cmVhbVRyYWNrPykgb24gbmV3IFJUQ1BlZXJDb25uZWN0aW9uKCku
YWRkVHJhbnNjZWl2ZXIoJ2F1ZGlvJykuc2VuZGVyIHdpdGggdG9vIGZldyBhcmd1bWVudHMgbXVz
dCB0aHJvdyBUeXBlRXJyb3IKLUZBSUwgUlRDUnRwU2VuZGVyIGludGVyZmFjZTogbmV3IFJUQ1Bl
ZXJDb25uZWN0aW9uKCkuYWRkVHJhbnNjZWl2ZXIoJ2F1ZGlvJykuc2VuZGVyIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAic2V0U3RyZWFtcyhNZWRpYVN0cmVhbS4uLikiIHdpdGggdGhlIHByb3BlciB0
eXBlIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgInNldFN0cmVhbXMiIG5vdCBmb3VuZCBpbiBw
cm90b3R5cGUgY2hhaW4KLUZBSUwgUlRDUnRwU2VuZGVyIGludGVyZmFjZTogY2FsbGluZyBzZXRT
dHJlYW1zKE1lZGlhU3RyZWFtLi4uKSBvbiBuZXcgUlRDUGVlckNvbm5lY3Rpb24oKS5hZGRUcmFu
c2NlaXZlcignYXVkaW8nKS5zZW5kZXIgd2l0aCB0b28gZmV3IGFyZ3VtZW50cyBtdXN0IHRocm93
IFR5cGVFcnJvciBhc3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5ICJzZXRTdHJlYW1zIiBub3QgZm91
bmQgaW4gcHJvdG90eXBlIGNoYWluCitQQVNTIFJUQ1J0cFNlbmRlciBpbnRlcmZhY2U6IG5ldyBS
VENQZWVyQ29ubmVjdGlvbigpLmFkZFRyYW5zY2VpdmVyKCdhdWRpbycpLnNlbmRlciBtdXN0IGlu
aGVyaXQgcHJvcGVydHkgInNldFN0cmVhbXMoTWVkaWFTdHJlYW0uLi4pIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZQorUEFTUyBSVENSdHBTZW5kZXIgaW50ZXJmYWNlOiBjYWxsaW5nIHNldFN0cmVhbXMo
TWVkaWFTdHJlYW0uLi4pIG9uIG5ldyBSVENQZWVyQ29ubmVjdGlvbigpLmFkZFRyYW5zY2VpdmVy
KCdhdWRpbycpLnNlbmRlciB3aXRoIHRvbyBmZXcgYXJndW1lbnRzIG11c3QgdGhyb3cgVHlwZUVy
cm9yCiBQQVNTIFJUQ1J0cFNlbmRlciBpbnRlcmZhY2U6IG5ldyBSVENQZWVyQ29ubmVjdGlvbigp
LmFkZFRyYW5zY2VpdmVyKCdhdWRpbycpLnNlbmRlciBtdXN0IGluaGVyaXQgcHJvcGVydHkgImdl
dFN0YXRzKCkiIHdpdGggdGhlIHByb3BlciB0eXBlCiBQQVNTIFJUQ1J0cFNlbmRlciBpbnRlcmZh
Y2U6IG5ldyBSVENQZWVyQ29ubmVjdGlvbigpLmFkZFRyYW5zY2VpdmVyKCdhdWRpbycpLnNlbmRl
ciBtdXN0IGluaGVyaXQgcHJvcGVydHkgImR0bWYiIHdpdGggdGhlIHByb3BlciB0eXBlCiBQQVNT
IFJUQ1J0cFJlY2VpdmVyIGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGlu
dGVyZmFjZSBvYmplY3QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYnJ0Yy92aWRlby5odG1s
IGIvTGF5b3V0VGVzdHMvd2VicnRjL3ZpZGVvLmh0bWwKaW5kZXggYzdjZTg5MzZiOWM4ZTZjY2Zm
MGIwNWM5MDJmOGFiYjBiZDcxZTVmMS4uMThlMmFhY2MwZGEzZDVjN2NkYWNjZGU4MWRkNjE2MGZj
M2QwYzJkNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2VicnRjL3ZpZGVvLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvd2VicnRjL3ZpZGVvLmh0bWwKQEAgLTQ5LDEyICs0OSwxNCBAQCBwcm9taXNl
X3Rlc3QoYXN5bmMgKHRlc3QpID0+IHsKICAgICAgICAgdGVzdFJ1bm5lci5zZXRVc2VyTWVkaWFQ
ZXJtaXNzaW9uKHRydWUpOwogCiAgICAgY29uc3QgbG9jYWxTdHJlYW0gPSBhd2FpdCBuYXZpZ2F0
b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7dmlkZW86IHthZHZhbmNlZDogW3t3aWR0aDp7
bWluOjY0MH19LCB7aGVpZ2h0OnttaW46NDgwfSB9IF19fSk7CisgICAgY29uc3QgbG9jYWxTdHJl
YW0yID0gbmV3IE1lZGlhU3RyZWFtKFtsb2NhbFN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdXSk7
IAogICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQogICAgICAgICBhc3NlcnRfdHJ1ZShpbnRlcm5h
bHMucGFnZU1lZGlhU3RhdGUoKS5pbmNsdWRlcygnSGFzQWN0aXZlVmlkZW9DYXB0dXJlRGV2aWNl
JyksICJVbmV4cGVjdGVkIEhhc0FjdGl2ZVZpZGVvQ2FwdHVyZURldmljZSIpOwogICAgIGNvbnN0
IHN0cmVhbSA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKICAgICAg
ICAgY3JlYXRlQ29ubmVjdGlvbnMoKGZpcnN0Q29ubmVjdGlvbikgPT4gewogICAgICAgICAgICAg
cGMxID0gZmlyc3RDb25uZWN0aW9uOwotICAgICAgICAgICAgZmlyc3RDb25uZWN0aW9uLmFkZFRy
YWNrKGxvY2FsU3RyZWFtLmdldFZpZGVvVHJhY2tzKClbMF0sIGxvY2FsU3RyZWFtKTsKKyAgICAg
ICAgICAgIGNvbnN0IHNlbmRlciA9IGZpcnN0Q29ubmVjdGlvbi5hZGRUcmFjayhsb2NhbFN0cmVh
bS5nZXRWaWRlb1RyYWNrcygpWzBdKTsKKyAgICAgICAgICAgIHNlbmRlci5zZXRTdHJlYW1zKGxv
Y2FsU3RyZWFtLCBsb2NhbFN0cmVhbTIpOwogICAgICAgICB9LCAoc2Vjb25kQ29ubmVjdGlvbikg
PT4gewogICAgICAgICAgICAgcGMyID0gc2Vjb25kQ29ubmVjdGlvbjsKICAgICAgICAgICAgIHNl
Y29uZENvbm5lY3Rpb24ub250cmFjayA9ICh0cmFja0V2ZW50KSA9PiB7CkBAIC02Miw2ICs2NCw5
IEBAIHByb21pc2VfdGVzdChhc3luYyAodGVzdCkgPT4gewogICAgICAgICAgICAgICAgIGFzc2Vy
dF90cnVlKHRyYWNrRXZlbnQucmVjZWl2ZXIgaW5zdGFuY2VvZiBSVENSdHBSZWNlaXZlcik7CiAg
ICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUoQXJyYXkuaXNBcnJheSh0cmFja0V2ZW50LnN0cmVh
bXMpLCAiQXJyYXkuaXNBcnJheSgpIHNob3VsZCByZXR1cm4gdHJ1ZSIpOwogICAgICAgICAgICAg
ICAgIGFzc2VydF90cnVlKE9iamVjdC5pc0Zyb3plbih0cmFja0V2ZW50LnN0cmVhbXMpLCAiT2Jq
ZWN0LmlzRnJvemVuKCkgc2hvdWxkIHJldHVybiB0cnVlIik7CisgICAgICAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyh0cmFja0V2ZW50LnN0cmVhbXMubGVuZ3RoLCAyKTsKKyAgICAgICAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKHRyYWNrRXZlbnQuc3RyZWFtc1swXS5pZCwgbG9jYWxTdHJlYW0uaWQs
ICJmaXJzdCBzdHJlYW0gaWQiKTsKKyAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRyYWNr
RXZlbnQuc3RyZWFtc1sxXS5pZCwgbG9jYWxTdHJlYW0yLmlkLCAic2Vjb25kIHN0cmVhbSBpZCIp
OwogICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHModHJhY2tFdmVudC50cmFjay5pZCwgbG9j
YWxTdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXS5pZCk7CiAgICAgICAgICAgICAgICAgYXNzZXJ0
X2VxdWFscyh0cmFja0V2ZW50LnRyYWNrLCB0cmFja0V2ZW50LnN0cmVhbXNbMF0uZ2V0VmlkZW9U
cmFja3MoKVswXSk7CiAgICAgICAgICAgICAgICAgcmVzb2x2ZSh0cmFja0V2ZW50LnN0cmVhbXNb
MF0pOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>