<?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>217942</bug_id>
          
          <creation_ts>2020-10-19 21:32:26 -0700</creation_ts>
          <short_desc>[JSC] Rename item() to at() and move it behind a flag</short_desc>
          <delta_ts>2020-10-20 14:24:17 -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="Ross Kirsling">ross.kirsling</reporter>
          <assigned_to name="Ross Kirsling">ross.kirsling</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1699607</commentid>
    <comment_count>0</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2020-10-19 21:32:26 -0700</bug_when>
    <thetext>[JSC] Rename item() to at() and move it behind a flag</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699609</commentid>
    <comment_count>1</comment_count>
      <attachid>411837</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2020-10-19 21:40:26 -0700</bug_when>
    <thetext>Created attachment 411837
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699610</commentid>
    <comment_count>2</comment_count>
      <attachid>411837</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2020-10-19 22:46:41 -0700</bug_when>
    <thetext>Comment on attachment 411837
Patch

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

&gt; Source/JavaScriptCore/runtime/ArrayPrototype.cpp:126
&gt;      const Identifier* const unscopableNames[] = {
&gt; +        &amp;vm.propertyNames-&gt;builtinNames().atPublicName(),
&gt;          &amp;vm.propertyNames-&gt;builtinNames().copyWithinPublicName(),

Hmm, I&apos;m not exactly sure how I should guard this...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699611</commentid>
    <comment_count>3</comment_count>
      <attachid>411838</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2020-10-19 22:51:40 -0700</bug_when>
    <thetext>Created attachment 411838
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699620</commentid>
    <comment_count>4</comment_count>
      <attachid>411842</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2020-10-19 23:45:31 -0700</bug_when>
    <thetext>Created attachment 411842
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699861</commentid>
    <comment_count>5</comment_count>
      <attachid>411894</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2020-10-20 11:46:54 -0700</bug_when>
    <thetext>Created attachment 411894
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699865</commentid>
    <comment_count>6</comment_count>
      <attachid>411894</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-10-20 11:52:57 -0700</bug_when>
    <thetext>Comment on attachment 411894
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699921</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-20 14:23:58 -0700</bug_when>
    <thetext>Committed r268760: &lt;https://trac.webkit.org/changeset/268760&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 411894.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699922</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-20 14:24:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/70501632&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411837</attachid>
            <date>2020-10-19 21:40:26 -0700</date>
            <delta_ts>2020-10-19 22:51:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217942-20201019214025.patch</filename>
            <type>text/plain</type>
            <size>20148</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4Njg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
ZTM4NTMwOWQxODc4YjQ1MTU5M2MxMmM2ZjMxY2MzMmRmZGUwMDE3Li40NjdkYWIxNjkwZTEzOGNk
ZWU2MmU4MWYwZDM3NWE3OTY4MTViMzc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAyMC0xMC0xOSAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgW0pTQ10gUmVuYW1lIGl0ZW0oKSB0byBhdCgpIGFuZCBtb3ZlIGl0
IGJlaGluZCBhIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxNzk0MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIHtBcnJheSwgJVR5cGVkQXJyYXklfS5wcm90b3R5cGUuaXRlbSBpcyBvZmZpY2lhbCB3
ZWItaW5jb21wYXRpYmxlLAorICAgICAgICBidXQgaXQgaXMgZXhwZWN0ZWQgdG8gYmUgcmVuYW1l
ZCB0byBgYXRgIGluc3RlYWQgb2YgYmVpbmcgc2NyYXBwZWQgZW50aXJlbHk6CisgICAgICAgIGh0
dHBzOi8vZ2l0aHViLmNvbS90YzM5L3Byb3Bvc2FsLWl0ZW0tbWV0aG9kL2lzc3Vlcy8zNAorCisg
ICAgICAgIFRoaXMgcGF0Y2ggcGVyZm9ybXMgdGhlIHJlbmFtaW5nLCBidXQgZG9lcyBzbyBiZWhp
bmQgYSBydW50aW1lIGZsYWcgc2luY2UgdGhpcyBoYXMgeWV0IHRvIGFjaGlldmUgY29uc2Vuc3Vz
LgorCisgICAgICAgICogYnVpbHRpbnMvQXJyYXlQcm90b3R5cGUuanM6CisgICAgICAgIChhdCk6
IEFkZGVkLgorICAgICAgICAoaXRlbSk6IERlbGV0ZWQuCisgICAgICAgICogYnVpbHRpbnMvVHlw
ZWRBcnJheVByb3RvdHlwZS5qczoKKyAgICAgICAgKGF0KTogQWRkZWQuCisgICAgICAgIChpdGVt
KTogRGVsZXRlZC4KKyAgICAgICAgKiBydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKEpTQzo6QXJyYXlQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBydW50
aW1lL0pTVHlwZWRBcnJheVZpZXdQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpKU1R5cGVk
QXJyYXlWaWV3UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgICogcnVudGltZS9P
cHRpb25zTGlzdC5oOgorCiAyMDIwLTEwLTE5ICBNYXJrIENvaGVuICA8bUBtcGMuc2g+CiAKICAg
ICAgICAgdGVzdDI2MjogdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jb25kaXRpb25hbC9pbi1i
cmFuY2gtMS5qcwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL0Fy
cmF5UHJvdG90eXBlLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL0FycmF5UHJv
dG90eXBlLmpzCmluZGV4IDE4NDE5ZDNiZWYxMGI0Yjk5ODAxNjc1ODQ1ZGRmOGEwNTNjNWI4N2Qu
LmQ5NTVlNTIyZWU4ZjgxMzJiMDY1ZWJmN2VkNzIyYWU4NjY0ODUxNzYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9BcnJheVByb3RvdHlwZS5qcworKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnVpbHRpbnMvQXJyYXlQcm90b3R5cGUuanMKQEAgLTY5NiwxMSAr
Njk2LDExIEBAIGZ1bmN0aW9uIGZsYXRNYXAoY2FsbGJhY2spCiAgICAgcmV0dXJuIEBmbGF0SW50
b0FycmF5V2l0aENhbGxiYWNrKHJlc3VsdCwgYXJyYXksIGxlbmd0aCwgMCwgY2FsbGJhY2ssIHRo
aXNBcmcpOwogfQogCi1mdW5jdGlvbiBpdGVtKGluZGV4KQorZnVuY3Rpb24gYXQoaW5kZXgpCiB7
CiAgICAgInVzZSBzdHJpY3QiOwogCi0gICAgdmFyIGFycmF5ID0gQHRvT2JqZWN0KHRoaXMsICJB
cnJheS5wcm90b3R5cGUuaXRlbSByZXF1aXJlcyB0aGF0IHx0aGlzfCBub3QgYmUgbnVsbCBvciB1
bmRlZmluZWQiKTsKKyAgICB2YXIgYXJyYXkgPSBAdG9PYmplY3QodGhpcywgIkFycmF5LnByb3Rv
dHlwZS5hdCByZXF1aXJlcyB0aGF0IHx0aGlzfCBub3QgYmUgbnVsbCBvciB1bmRlZmluZWQiKTsK
ICAgICB2YXIgbGVuZ3RoID0gQHRvTGVuZ3RoKGFycmF5Lmxlbmd0aCk7CiAKICAgICB2YXIgayA9
IEB0b0ludGVnZXIoaW5kZXgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1
aWx0aW5zL1R5cGVkQXJyYXlQcm90b3R5cGUuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnVp
bHRpbnMvVHlwZWRBcnJheVByb3RvdHlwZS5qcwppbmRleCA3NjIxM2MyNzk5MDU3ODUyOTc3OGVm
ZWQwZjA0YzAyNThiMjljMDBlLi43MGQ3YTcyOGNjZThkOTc1ZDg3Njk2OTVhOTQ2NGQ2MjE1NmU1
YmNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnVpbHRpbnMvVHlwZWRBcnJh
eVByb3RvdHlwZS5qcworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnVpbHRpbnMvVHlwZWRB
cnJheVByb3RvdHlwZS5qcwpAQCAtMzgzLDcgKzM4Myw3IEBAIGZ1bmN0aW9uIHRvTG9jYWxlU3Ry
aW5nKC8qIGxvY2FsZSwgb3B0aW9ucyAqLykKICAgICByZXR1cm4gc3RyaW5nOwogfQogCi1mdW5j
dGlvbiBpdGVtKGluZGV4KQorZnVuY3Rpb24gYXQoaW5kZXgpCiB7CiAgICAgInVzZSBzdHJpY3Qi
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheVByb3Rv
dHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheVByb3RvdHlwZS5j
cHAKaW5kZXggY2QxMDJhODZjOTcxMGFmNjMyMWQ5ZTE4ZjQxMTUxYzAyZWM2YTYxMi4uNmJjYmQ0
NjUzYmExNTNlNjQ3MmViM2E5OWQ2MWIxNWM5YTFkNmRlMSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcApAQCAtMTEwLDcgKzExMCw5IEBA
IHZvaWQgQXJyYXlQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCkKICAgICBKU0NfQlVJTFRJTl9GVU5DVElPTl9XSVRIT1VUX1RSQU5T
SVRJT04odm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZmluZEluZGV4UHVibGljTmFt
ZSgpLCBhcnJheVByb3RvdHlwZUZpbmRJbmRleENvZGVHZW5lcmF0b3IsIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pKTsKICAgICBKU0NfQlVJTFRJTl9G
VU5DVElPTl9XSVRIT1VUX1RSQU5TSVRJT04odm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVz
KCkuaW5jbHVkZXNQdWJsaWNOYW1lKCksIGFycmF5UHJvdG90eXBlSW5jbHVkZXNDb2RlR2VuZXJh
dG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7
CiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZtLnByb3BlcnR5
TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmNvcHlXaXRoaW5QdWJsaWNOYW1lKCksIGFycmF5UHJvdG90
eXBlQ29weVdpdGhpbkNvZGVHZW5lcmF0b3IsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0
eUF0dHJpYnV0ZTo6RG9udEVudW0pKTsKLSAgICBKU0NfQlVJTFRJTl9GVU5DVElPTl9XSVRIT1VU
X1RSQU5TSVRJT04odm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuaXRlbVB1YmxpY05h
bWUoKSwgYXJyYXlQcm90b3R5cGVJdGVtQ29kZUdlbmVyYXRvciwgc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOworCisgICAgaWYgKE9wdGlvbnM6OnVz
ZUF0TWV0aG9kKCkpCisgICAgICAgIEpTQ19CVUlMVElOX0ZVTkNUSU9OX1dJVEhPVVRfVFJBTlNJ
VElPTih2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5hdFB1YmxpY05hbWUoKSwgYXJy
YXlQcm90b3R5cGVBdENvZGVHZW5lcmF0b3IsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0
eUF0dHJpYnV0ZTo6RG9udEVudW0pKTsKIAogICAgIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9u
KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5lbnRyaWVzUHJpdmF0ZU5hbWUo
KSwgZ2V0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5lbnRyaWVz
UHVibGljTmFtZSgpKSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpS
ZWFkT25seSkpOwogICAgIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0
eU5hbWVzLT5idWlsdGluTmFtZXMoKS5mb3JFYWNoUHJpdmF0ZU5hbWUoKSwgZ2V0RGlyZWN0KHZt
LCB2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5mb3JFYWNoUHVibGljTmFtZSgpKSwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpSZWFkT25seSkpOwpAQCAt
MTIwLDYgKzEyMiw3IEBAIHZvaWQgQXJyYXlQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKICAgICBKU09iamVjdCogdW5zY29wYWJs
ZXMgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdCh2bSwgZ2xvYmFsT2JqZWN0LT5udWxsUHJvdG90eXBl
T2JqZWN0U3RydWN0dXJlKCkpOwogICAgIHVuc2NvcGFibGVzLT5jb252ZXJ0VG9EaWN0aW9uYXJ5
KHZtKTsKICAgICBjb25zdCBJZGVudGlmaWVyKiBjb25zdCB1bnNjb3BhYmxlTmFtZXNbXSA9IHsK
KyAgICAgICAgJnZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmF0UHVibGljTmFtZSgp
LAogICAgICAgICAmdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuY29weVdpdGhpblB1
YmxpY05hbWUoKSwKICAgICAgICAgJnZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmVu
dHJpZXNQdWJsaWNOYW1lKCksCiAgICAgICAgICZ2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFt
ZXMoKS5maWxsUHVibGljTmFtZSgpLApAQCAtMTI4LDcgKzEzMSw2IEBAIHZvaWQgQXJyYXlQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCkKICAgICAgICAgJnZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmZsYXRQdWJsaWNO
YW1lKCksCiAgICAgICAgICZ2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5mbGF0TWFw
UHVibGljTmFtZSgpLAogICAgICAgICAmdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCku
aW5jbHVkZXNQdWJsaWNOYW1lKCksCi0gICAgICAgICZ2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGlu
TmFtZXMoKS5pdGVtUHVibGljTmFtZSgpLAogICAgICAgICAmdm0ucHJvcGVydHlOYW1lcy0+YnVp
bHRpbk5hbWVzKCkua2V5c1B1YmxpY05hbWUoKSwKICAgICAgICAgJnZtLnByb3BlcnR5TmFtZXMt
PmJ1aWx0aW5OYW1lcygpLnZhbHVlc1B1YmxpY05hbWUoKQogICAgIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVZpZXdQcm90b3R5
cGUuY3BwCmluZGV4IDA3ZGIyYTM3ZmMyOTUzNTYyMmY4MGE4YjU1ZGJkMTFlNmUwOTdjMjkuLjhk
ZmE0NWJkZDYxNWIyMWZkYWFmODhlODQxNWZlYmY1YTVmODczNjIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVZpZXdQcm90b3R5cGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVZpZXdQcm90b3R5
cGUuY3BwCkBAIC0zNzUsNyArMzc1LDkgQEAgdm9pZCBKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmoKICAgICBK
U0NfQlVJTFRJTl9GVU5DVElPTl9XSVRIT1VUX1RSQU5TSVRJT04oInNvbWUiLCB0eXBlZEFycmF5
UHJvdG90eXBlU29tZUNvZGVHZW5lcmF0b3IsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0
eUF0dHJpYnV0ZTo6RG9udEVudW0pKTsKICAgICBKU0NfQlVJTFRJTl9GVU5DVElPTl9XSVRIT1VU
X1RSQU5TSVRJT04odm0ucHJvcGVydHlOYW1lcy0+c3ViYXJyYXksIHR5cGVkQXJyYXlQcm90b3R5
cGVTdWJhcnJheUNvZGVHZW5lcmF0b3IsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0
dHJpYnV0ZTo6RG9udEVudW0pKTsKICAgICBKU0NfQlVJTFRJTl9GVU5DVElPTl9XSVRIT1VUX1RS
QU5TSVRJT04odm0ucHJvcGVydHlOYW1lcy0+dG9Mb2NhbGVTdHJpbmcsIHR5cGVkQXJyYXlQcm90
b3R5cGVUb0xvY2FsZVN0cmluZ0NvZGVHZW5lcmF0b3IsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihQ
cm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pKTsKLSAgICBKU0NfQlVJTFRJTl9GVU5DVElPTl9X
SVRIT1VUX1RSQU5TSVRJT04odm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuaXRlbVB1
YmxpY05hbWUoKSwgdHlwZWRBcnJheVByb3RvdHlwZUl0ZW1Db2RlR2VuZXJhdG9yLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7CisKKyAgICBpZiAo
T3B0aW9uczo6dXNlQXRNZXRob2QoKSkKKyAgICAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lU
SE9VVF9UUkFOU0lUSU9OKHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmF0UHVibGlj
TmFtZSgpLCB0eXBlZEFycmF5UHJvdG90eXBlQXRDb2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7CiAKICAgICBKU0Z1bmN0aW9u
KiB0b1N0cmluZ1RhZ0Z1bmN0aW9uID0gSlNGdW5jdGlvbjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmpl
Y3QsIDAsICJnZXQgW1N5bWJvbC50b1N0cmluZ1RhZ10iX3MsIHR5cGVkQXJyYXlWaWV3UHJvdG9H
ZXR0ZXJGdW5jVG9TdHJpbmdUYWcsIE5vSW50cmluc2ljKTsKICAgICBHZXR0ZXJTZXR0ZXIqIHRv
U3RyaW5nVGFnQWNjZXNzb3IgPSBHZXR0ZXJTZXR0ZXI6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCB0b1N0cmluZ1RhZ0Z1bmN0aW9uLCBudWxscHRyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9PcHRpb25zTGlzdC5oCmluZGV4IDJlMTliMDhkZjk2ZjdlMDI3MWUyZWM3MDNkMTRl
MzQ1MDIxMDM3MjYuLjgyZDNiMTk0ZTMwMDBmNDUxMDU3MTZiNDEyMzAyZTMwMjg1ZWQ1MDUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaApAQCAtNDkxLDYg
KzQ5MSw3IEBAIGNvbnN0ZXhwciBib29sIGVuYWJsZVdlYkFzc2VtYmx5U3RyZWFtaW5nQXBpID0g
ZmFsc2U7CiAgICAgdihCb29sLCB1c2VXZWJBc3NlbWJseU11bHRpVmFsdWVzLCB0cnVlLCBOb3Jt
YWwsICJBbGxvdyB0eXBlcyBmcm9tIHRoZSB3YXNtIG11bGl0LXZhbHVlcyBzcGVjLiIpIFwKICAg
ICB2KEJvb2wsIHVzZVdlYWtSZWZzLCB0cnVlLCBOb3JtYWwsICJFeHBvc2UgdGhlIFdlYWtSZWYg
Y29uc3RydWN0b3IuIikgXAogICAgIHYoQm9vbCwgdXNlSW50bERhdGVUaW1lRm9ybWF0RGF5UGVy
aW9kLCB0cnVlLCBOb3JtYWwsICJFeHBvc2UgdGhlIEludGwuRGF0ZVRpbWVGb3JtYXQgZGF5UGVy
aW9kIGZlYXR1cmUuIikgXAorICAgIHYoQm9vbCwgdXNlQXRNZXRob2QsIGZhbHNlLCBOb3JtYWws
ICJFeHBvc2UgdGhlIGF0KCkgbWV0aG9kIG9uIEFycmF5IGFuZCAlVHlwZWRBcnJheSUuIikgXAog
ICAgIHYoQm9vbCwgdXNlQXJyYXlBbGxvY2F0aW9uUHJvZmlsaW5nLCB0cnVlLCBOb3JtYWwsICJJ
ZiB0cnVlLCB3ZSB3aWxsIHVzZSBvdXIgbm9ybWFsIGFycmF5IGFsbG9jYXRpb24gcHJvZmlsaW5n
LiBJZiBmYWxzZSwgdGhlIGFsbG9jYXRpb24gcHJvZmlsZSB3aWxsIGFsd2F5cyBjbGFpbSB0byBi
ZSB1bmRlY2lkZWQuIikgXAogICAgIHYoQm9vbCwgZm9yY2VQb2x5UHJvdG8sIGZhbHNlLCBOb3Jt
YWwsICJJZiB0cnVlLCBjcmVhdGVfdGhpcyB3aWxsIGFsd2F5cyBjcmVhdGUgYW4gb2JqZWN0IHdp
dGggYSBwb2x5IHByb3RvIHN0cnVjdHVyZS4iKSBcCiAgICAgdihCb29sLCBmb3JjZU1pbmlWTU1v
ZGUsIGZhbHNlLCBOb3JtYWwsICJJZiB0cnVlLCBpdCB3aWxsIGZvcmNlIG1pbmkgVk0gbW9kZSBv
bi4iKSBcCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggM2Q1Y2ZjODkwOWYyZmZlZGEwYWMxYmNiZTBmMzQ2M2VlMjE5Y2ZiYS4u
ZTdkNjg3NDU3MDBjN2E5MTBlNjFjYmIzZDIyMDVkMjEwNmFjNDY3MyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE0IEBACisyMDIwLTEwLTE5ICBSb3NzIEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNv
bT4KKworICAgICAgICBbSlNDXSBSZW5hbWUgaXRlbSgpIHRvIGF0KCkgYW5kIG1vdmUgaXQgYmVo
aW5kIGEgZmxhZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjE3OTQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBpbnNwZWN0b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJvcGVydGllcy1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICoganMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9PYmplY3QtZ2V0T3duUHJvcGVydHlOYW1l
cy5qczoKKwogMjAyMC0xMC0xOSAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAK
ICAgICAgICAgVXBkYXRlIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy8KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9yZW1vdGUtb2Jq
ZWN0LWdldC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9t
b2RlbC9yZW1vdGUtb2JqZWN0LWdldC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dAppbmRleCBkZTdj
OTFhMGUyMGZjMGNkZmFlMjljYzQ1MTczNWY1NmNhZDg3MDY5Li5iOTAyNjQzOGJkZTQxNzM3OTk2
Y2NhODc1YmMyZTEyYjI0MWFhMjFlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
bW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJvcGVydGllcy1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3JlbW90ZS1vYmplY3QtZ2V0LXByb3BlcnRpZXMtZXhw
ZWN0ZWQudHh0CkBAIC04NSw3ICs4NSw2IEBAIEFMTCBQUk9QRVJUSUVTOgogICAgIGZpbmRJbmRl
eAogICAgIGluY2x1ZGVzCiAgICAgY29weVdpdGhpbgotICAgIGl0ZW0KICAgICBjb25zdHJ1Y3Rv
cgogICAgIFN5bWJvbChTeW1ib2wuaXRlcmF0b3IpCiAgICAgU3ltYm9sKFN5bWJvbC51bnNjb3Bh
YmxlcykKQEAgLTEzOSw3ICsxMzgsNiBAQCBPV04gUFJPUEVSVElFUzoKICAgICBmaW5kSW5kZXgK
ICAgICBpbmNsdWRlcwogICAgIGNvcHlXaXRoaW4KLSAgICBpdGVtCiAgICAgY29uc3RydWN0b3IK
ICAgICBTeW1ib2woU3ltYm9sLml0ZXJhdG9yKQogICAgIFN5bWJvbChTeW1ib2wudW5zY29wYWJs
ZXMpCkBAIC0xNzgsNyArMTc2LDYgQEAgRElTUExBWUFCTEUgUFJPUEVSVElFUzoKICAgICBmaW5k
SW5kZXgKICAgICBpbmNsdWRlcwogICAgIGNvcHlXaXRoaW4KLSAgICBpdGVtCiAgICAgY29uc3Ry
dWN0b3IKICAgICBTeW1ib2woU3ltYm9sLml0ZXJhdG9yKQogICAgIFN5bWJvbChTeW1ib2wudW5z
Y29wYWJsZXMpCkBAIC0yMTcsNyArMjE0LDYgQEAgQUxMIFBST1BFUlRJRVM6CiAgICAgZmluZElu
ZGV4CiAgICAgaW5jbHVkZXMKICAgICBjb3B5V2l0aGluCi0gICAgaXRlbQogICAgIGNvbnN0cnVj
dG9yCiAgICAgU3ltYm9sKFN5bWJvbC5pdGVyYXRvcikKICAgICBTeW1ib2woU3ltYm9sLnVuc2Nv
cGFibGVzKQpAQCAtNTIyLDcgKzUxOCw2IEBAIEFMTCBQUk9QRVJUSUVTOgogICAgIHNlbGVjdGVk
SW5kZXgKICAgICBhZGQKICAgICByZW1vdmUKLSAgICBpdGVtCiAgICAgbmFtZWRJdGVtCiAgICAg
U3ltYm9sKFN5bWJvbC5pdGVyYXRvcikKICAgICBTeW1ib2woU3ltYm9sLnRvU3RyaW5nVGFnKQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvanMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMtZXhw
ZWN0ZWQudHh0CmluZGV4IDUzYmFlMjRmMjBmNThhYWEzMzgyOGU4MWUwZDZiYzYxODM3OGNlZTMu
LjIyMTI0MWE3ZDIyODA4MTU2YzA5ZjY5MmIzYjY0MjcxMDI4NGZjM2MgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2pzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9qcy9PYmplY3QtZ2V0T3duUHJvcGVydHlOYW1lcy1leHBlY3RlZC50eHQK
QEAgLTQ3LDcgKzQ3LDcgQEAgUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5hbWVzKE9iamVjdC5w
cm90b3R5cGUpIGlzIFsnX19kZWZpbmVHZXR0ZXJfXycsICdfX2RlZmkKIFBBU1MgZ2V0U29ydGVk
T3duUHJvcGVydHlOYW1lcyhGdW5jdGlvbikgaXMgWydsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5
cGUnXQogUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5hbWVzKEZ1bmN0aW9uLnByb3RvdHlwZSkg
aXMgWydhcHBseScsICdhcmd1bWVudHMnLCAnYmluZCcsICdjYWxsJywgJ2NhbGxlcicsICdjb25z
dHJ1Y3RvcicsICdsZW5ndGgnLCAnbmFtZScsICd0b1N0cmluZyddCiBQQVNTIGdldFNvcnRlZE93
blByb3BlcnR5TmFtZXMoQXJyYXkpIGlzIFsnZnJvbScsICdpc0FycmF5JywgJ2xlbmd0aCcsICdu
YW1lJywgJ29mJywgJ3Byb3RvdHlwZSddCi1QQVNTIGdldFNvcnRlZE93blByb3BlcnR5TmFtZXMo
QXJyYXkucHJvdG90eXBlKSBpcyBbJ2NvbmNhdCcsICdjb25zdHJ1Y3RvcicsICdjb3B5V2l0aGlu
JywgJ2VudHJpZXMnLCAnZXZlcnknLCAnZmlsbCcsICdmaWx0ZXInLCAnZmluZCcsICdmaW5kSW5k
ZXgnLCAnZmxhdCcsICdmbGF0TWFwJywgJ2ZvckVhY2gnLCAnaW5jbHVkZXMnLCAnaW5kZXhPZics
ICdpdGVtJywgJ2pvaW4nLCAna2V5cycsICdsYXN0SW5kZXhPZicsICdsZW5ndGgnLCAnbWFwJywg
J3BvcCcsICdwdXNoJywgJ3JlZHVjZScsICdyZWR1Y2VSaWdodCcsICdyZXZlcnNlJywgJ3NoaWZ0
JywgJ3NsaWNlJywgJ3NvbWUnLCAnc29ydCcsICdzcGxpY2UnLCAndG9Mb2NhbGVTdHJpbmcnLCAn
dG9TdHJpbmcnLCAndW5zaGlmdCcsICd2YWx1ZXMnXQorUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0
eU5hbWVzKEFycmF5LnByb3RvdHlwZSkgaXMgWydjb25jYXQnLCAnY29uc3RydWN0b3InLCAnY29w
eVdpdGhpbicsICdlbnRyaWVzJywgJ2V2ZXJ5JywgJ2ZpbGwnLCAnZmlsdGVyJywgJ2ZpbmQnLCAn
ZmluZEluZGV4JywgJ2ZsYXQnLCAnZmxhdE1hcCcsICdmb3JFYWNoJywgJ2luY2x1ZGVzJywgJ2lu
ZGV4T2YnLCAnam9pbicsICdrZXlzJywgJ2xhc3RJbmRleE9mJywgJ2xlbmd0aCcsICdtYXAnLCAn
cG9wJywgJ3B1c2gnLCAncmVkdWNlJywgJ3JlZHVjZVJpZ2h0JywgJ3JldmVyc2UnLCAnc2hpZnQn
LCAnc2xpY2UnLCAnc29tZScsICdzb3J0JywgJ3NwbGljZScsICd0b0xvY2FsZVN0cmluZycsICd0
b1N0cmluZycsICd1bnNoaWZ0JywgJ3ZhbHVlcyddCiBQQVNTIGdldFNvcnRlZE93blByb3BlcnR5
TmFtZXMoU3RyaW5nKSBpcyBbJ2Zyb21DaGFyQ29kZScsICdmcm9tQ29kZVBvaW50JywgJ2xlbmd0
aCcsICduYW1lJywgJ3Byb3RvdHlwZScsICdyYXcnXQogUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0
eU5hbWVzKFN0cmluZy5wcm90b3R5cGUpIGlzIFsnYW5jaG9yJywgJ2JpZycsICdibGluaycsICdi
b2xkJywgJ2NoYXJBdCcsICdjaGFyQ29kZUF0JywgJ2NvZGVQb2ludEF0JywgJ2NvbmNhdCcsICdj
b25zdHJ1Y3RvcicsICdlbmRzV2l0aCcsICdmaXhlZCcsICdmb250Y29sb3InLCAnZm9udHNpemUn
LCAnaW5jbHVkZXMnLCAnaW5kZXhPZicsICdpdGFsaWNzJywgJ2xhc3RJbmRleE9mJywgJ2xlbmd0
aCcsICdsaW5rJywgJ2xvY2FsZUNvbXBhcmUnLCAnbWF0Y2gnLCAnbWF0Y2hBbGwnLCAnbm9ybWFs
aXplJywgJ3BhZEVuZCcsICdwYWRTdGFydCcsICdyZXBlYXQnLCAncmVwbGFjZScsICdyZXBsYWNl
QWxsJywgJ3NlYXJjaCcsICdzbGljZScsICdzbWFsbCcsICdzcGxpdCcsICdzdGFydHNXaXRoJywg
J3N0cmlrZScsICdzdWInLCAnc3Vic3RyJywgJ3N1YnN0cmluZycsICdzdXAnLCAndG9Mb2NhbGVM
b3dlckNhc2UnLCAndG9Mb2NhbGVVcHBlckNhc2UnLCAndG9Mb3dlckNhc2UnLCAndG9TdHJpbmcn
LCAndG9VcHBlckNhc2UnLCAndHJpbScsICd0cmltRW5kJywgJ3RyaW1MZWZ0JywgJ3RyaW1SaWdo
dCcsICd0cmltU3RhcnQnLCAndmFsdWVPZiddCiBQQVNTIGdldFNvcnRlZE93blByb3BlcnR5TmFt
ZXMoQm9vbGVhbikgaXMgWydsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5cGUnXQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVz
LmpzIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5h
bWVzLmpzCmluZGV4IGZmMGY5ZDNjNDAzNjUwOTEwZGQ1NjMwNGMwN2QxMTEwZjg5MGE5YTQuLmNi
MDEzNDk1MmI4MDI3ZGVjMWJmYmE4ZWE2MjQxMmI5NDU2OGYxM2IgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9PYmplY3QtZ2V0T3duUHJvcGVydHlOYW1lcy5qcworKysg
Yi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMu
anMKQEAgLTU2LDcgKzU2LDcgQEAgdmFyIGV4cGVjdGVkUHJvcGVydHlOYW1lc1NldCA9IHsKICAg
ICAiRnVuY3Rpb24iOiAiWydsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5cGUnXSIsCiAgICAgIkZ1
bmN0aW9uLnByb3RvdHlwZSI6ICJbJ2FwcGx5JywgJ2FyZ3VtZW50cycsICdiaW5kJywgJ2NhbGwn
LCAnY2FsbGVyJywgJ2NvbnN0cnVjdG9yJywgJ2xlbmd0aCcsICduYW1lJywgJ3RvU3RyaW5nJ10i
LAogICAgICJBcnJheSI6ICJbJ2Zyb20nLCAnaXNBcnJheScsICdsZW5ndGgnLCAnbmFtZScsICdv
ZicsICdwcm90b3R5cGUnXSIsCi0gICAgIkFycmF5LnByb3RvdHlwZSI6ICJbJ2NvbmNhdCcsICdj
b25zdHJ1Y3RvcicsICdjb3B5V2l0aGluJywgJ2VudHJpZXMnLCAnZXZlcnknLCAnZmlsbCcsICdm
aWx0ZXInLCAnZmluZCcsICdmaW5kSW5kZXgnLCAnZmxhdCcsICdmbGF0TWFwJywgJ2ZvckVhY2gn
LCAnaW5jbHVkZXMnLCAnaW5kZXhPZicsICdpdGVtJywgJ2pvaW4nLCAna2V5cycsICdsYXN0SW5k
ZXhPZicsICdsZW5ndGgnLCAnbWFwJywgJ3BvcCcsICdwdXNoJywgJ3JlZHVjZScsICdyZWR1Y2VS
aWdodCcsICdyZXZlcnNlJywgJ3NoaWZ0JywgJ3NsaWNlJywgJ3NvbWUnLCAnc29ydCcsICdzcGxp
Y2UnLCAndG9Mb2NhbGVTdHJpbmcnLCAndG9TdHJpbmcnLCAndW5zaGlmdCcsICd2YWx1ZXMnXSIs
CisgICAgIkFycmF5LnByb3RvdHlwZSI6ICJbJ2NvbmNhdCcsICdjb25zdHJ1Y3RvcicsICdjb3B5
V2l0aGluJywgJ2VudHJpZXMnLCAnZXZlcnknLCAnZmlsbCcsICdmaWx0ZXInLCAnZmluZCcsICdm
aW5kSW5kZXgnLCAnZmxhdCcsICdmbGF0TWFwJywgJ2ZvckVhY2gnLCAnaW5jbHVkZXMnLCAnaW5k
ZXhPZicsICdqb2luJywgJ2tleXMnLCAnbGFzdEluZGV4T2YnLCAnbGVuZ3RoJywgJ21hcCcsICdw
b3AnLCAncHVzaCcsICdyZWR1Y2UnLCAncmVkdWNlUmlnaHQnLCAncmV2ZXJzZScsICdzaGlmdCcs
ICdzbGljZScsICdzb21lJywgJ3NvcnQnLCAnc3BsaWNlJywgJ3RvTG9jYWxlU3RyaW5nJywgJ3Rv
U3RyaW5nJywgJ3Vuc2hpZnQnLCAndmFsdWVzJ10iLAogICAgICJTdHJpbmciOiAiWydmcm9tQ2hh
ckNvZGUnLCAnZnJvbUNvZGVQb2ludCcsICdsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5cGUnLCAn
cmF3J10iLAogICAgICJTdHJpbmcucHJvdG90eXBlIjogIlsnYW5jaG9yJywgJ2JpZycsICdibGlu
aycsICdib2xkJywgJ2NoYXJBdCcsICdjaGFyQ29kZUF0JywgJ2NvZGVQb2ludEF0JywgJ2NvbmNh
dCcsICdjb25zdHJ1Y3RvcicsICdlbmRzV2l0aCcsICdmaXhlZCcsICdmb250Y29sb3InLCAnZm9u
dHNpemUnLCAnaW5jbHVkZXMnLCAnaW5kZXhPZicsICdpdGFsaWNzJywgJ2xhc3RJbmRleE9mJywg
J2xlbmd0aCcsICdsaW5rJywgJ2xvY2FsZUNvbXBhcmUnLCAnbWF0Y2gnLCAnbWF0Y2hBbGwnLCAn
bm9ybWFsaXplJywgJ3BhZEVuZCcsICdwYWRTdGFydCcsICdyZXBlYXQnLCAncmVwbGFjZScsICdy
ZXBsYWNlQWxsJywgJ3NlYXJjaCcsICdzbGljZScsICdzbWFsbCcsICdzcGxpdCcsICdzdGFydHNX
aXRoJywgJ3N0cmlrZScsICdzdWInLCAnc3Vic3RyJywgJ3N1YnN0cmluZycsICdzdXAnLCAndG9M
b2NhbGVMb3dlckNhc2UnLCAndG9Mb2NhbGVVcHBlckNhc2UnLCAndG9Mb3dlckNhc2UnLCAndG9T
dHJpbmcnLCAndG9VcHBlckNhc2UnLCAndHJpbScsICd0cmltRW5kJywgJ3RyaW1MZWZ0JywgJ3Ry
aW1SaWdodCcsICd0cmltU3RhcnQnLCAndmFsdWVPZiddIiwKICAgICAiQm9vbGVhbiI6ICJbJ2xl
bmd0aCcsICduYW1lJywgJ3Byb3RvdHlwZSddIiwKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdl
TG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNTZiMjAwZDRmNDA5ODUyYmU0Y2U4ZjIxN2Q4
Y2ZiZWU0YzhmZDUxZS4uMjM1NzFmMGU4ZTdjNzc4YmFmNGFhMDE5MzkxYTVmMjYyODNhYTBhMyAx
MDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxMyBAQAorMjAyMC0xMC0xOSAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdA
c29ueS5jb20+CisKKyAgICAgICAgW0pTQ10gUmVuYW1lIGl0ZW0oKSB0byBhdCgpIGFuZCBtb3Zl
IGl0IGJlaGluZCBhIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNzk0MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogc3RyZXNzL2F0LW1ldGhvZC5qczogUmVuYW1lZCBmcm9tIEpTVGVzdHMvc3Ry
ZXNzL2l0ZW0tbWV0aG9kLmpzLgorICAgICAgICAqIHRlc3QyNjIvY29uZmlnLnlhbWw6IEFkZCBz
a2lwcyB1bnRpbCB0aGUgZmVhdHVyZSBpcyByZW5hbWVkLgorCiAyMDIwLTEwLTE5ICBNYXJrIENv
aGVuICA8bUBtcGMuc2g+CiAKICAgICAgICAgdGVzdDI2MjogdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9jb25kaXRpb25hbC9pbi1icmFuY2gtMS5qcwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJl
c3MvYXQtbWV0aG9kLmpzIGIvSlNUZXN0cy9zdHJlc3MvYXQtbWV0aG9kLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjkxZTYyN2IzOTM5OGM1M2QyMGI4ZmVjYzM2Yjk1Y2Y0OGNkOGIwNTQKLS0tIC9kZXYvbnVsbAor
KysgYi9KU1Rlc3RzL3N0cmVzcy9hdC1tZXRob2QuanMKQEAgLTAsMCArMSw1MSBAQAorLy9AIHJl
cXVpcmVPcHRpb25zKCItLXVzZUF0TWV0aG9kPTEiKQorCitmdW5jdGlvbiBzaG91bGRCZShhY3R1
YWwsIGV4cGVjdGVkKSB7CisgICAgaWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCisgICAgICAgIHRo
cm93IG5ldyBFcnJvcihgZXhwZWN0ZWQgJHtleHBlY3RlZH0gYnV0IGdvdCAke2FjdHVhbH1gKTsK
K30KKworZnVuY3Rpb24gc2hvdWxkVGhyb3dUeXBlRXJyb3IoZnVuYykgeworICAgIGxldCBlcnJv
cjsKKyAgICB0cnkgeworICAgICAgICBmdW5jKCk7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAg
ICBlcnJvciA9IGU7CisgICAgfQorCisgICAgaWYgKCEoZXJyb3IgaW5zdGFuY2VvZiBUeXBlRXJy
b3IpKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0V4cGVjdGVkIFR5cGVFcnJvciEnKTsKK30K
Kworc2hvdWxkQmUoQXJyYXkucHJvdG90eXBlLmF0Lmxlbmd0aCwgMSk7CitzaG91bGRUaHJvd1R5
cGVFcnJvcigoKSA9PiBBcnJheS5wcm90b3R5cGUuYXQuY2FsbCh1bmRlZmluZWQpKTsKK3Nob3Vs
ZFRocm93VHlwZUVycm9yKCgpID0+IEFycmF5LnByb3RvdHlwZS5hdC5jYWxsKG51bGwpKTsKKwor
Y29uc3QgYXJyYXkgPSBbNDIsICdiJywgdHJ1ZV07CisvLyBpbnRlbnRpb25hbGx5IGdvIG9uZSB0
b28gZmFyIHRvIGVuc3VyZSB0aGF0IHdlIGdldCB1bmRlZmluZWQgaW5zdGVhZCBvZiB3cmFwcGlu
ZworZm9yIChsZXQgaSA9IDA7IGkgPD0gYXJyYXkubGVuZ3RoOyBpKyspIHsKKyAgc2hvdWxkQmUo
YXJyYXkuYXQoaSksIGFycmF5W2ldKTsKKyAgc2hvdWxkQmUoYXJyYXkuYXQoLWkgLSAxKSwgYXJy
YXlbYXJyYXkubGVuZ3RoIC0gaSAtIDFdKTsKK30KK3Nob3VsZEJlKGFycmF5LmF0KCksIGFycmF5
WzBdKTsKK3Nob3VsZEJlKGFycmF5LmF0KG51bGwpLCBhcnJheVswXSk7CitzaG91bGRCZShhcnJh
eS5hdCh7IHZhbHVlT2Y6ICgpID0+IC0xIH0pLCBhcnJheVthcnJheS5sZW5ndGggLSAxXSk7CisK
K2NvbnN0IHdlaXJkQXJyYXlMaWtlID0geyBsZW5ndGg6IDEsIGdldCAnMCcoKSB7IHJldHVybiAz
OyB9LCBnZXQgJzEnKCkgeyB0aHJvdyAnb29wcyc7IH0gfTsKK3Nob3VsZEJlKEFycmF5LnByb3Rv
dHlwZS5hdC5jYWxsKHdlaXJkQXJyYXlMaWtlLCAwKSwgMyk7CitzaG91bGRCZShBcnJheS5wcm90
b3R5cGUuYXQuY2FsbCh3ZWlyZEFycmF5TGlrZSwgMSksIHVuZGVmaW5lZCk7CisKK2ZvciAoY29u
c3QgVEEgb2YgW0ludDhBcnJheSwgVWludDhBcnJheSwgVWludDhDbGFtcGVkQXJyYXksIEludDE2
QXJyYXksIFVpbnQxNkFycmF5LCBJbnQzMkFycmF5LCBVaW50MzJBcnJheSwgRmxvYXQzMkFycmF5
LCBGbG9hdDY0QXJyYXldKSB7CisgIHNob3VsZEJlKFRBLnByb3RvdHlwZS5hdC5sZW5ndGgsIDEp
OworICBzaG91bGRUaHJvd1R5cGVFcnJvcigoKSA9PiBUQS5wcm90b3R5cGUuYXQuY2FsbChbXSkp
OworCisgIGNvbnN0IHRhID0gWzEsIDIsIDNdOworICAvLyBpbnRlbnRpb25hbGx5IGdvIG9uZSB0
b28gZmFyIHRvIGVuc3VyZSB0aGF0IHdlIGdldCB1bmRlZmluZWQgaW5zdGVhZCBvZiB3cmFwcGlu
ZworICBmb3IgKGxldCBpID0gMDsgaSA8PSB0YS5sZW5ndGg7IGkrKykgeworICAgIHNob3VsZEJl
KHRhLmF0KGkpLCB0YVtpXSk7CisgICAgc2hvdWxkQmUodGEuYXQoLWkgLSAxKSwgdGFbdGEubGVu
Z3RoIC0gaSAtIDFdKTsKKyAgfQorICBzaG91bGRCZSh0YS5hdCgpLCB0YVswXSk7CisgIHNob3Vs
ZEJlKHRhLmF0KG51bGwpLCB0YVswXSk7CisgIHNob3VsZEJlKHRhLmF0KHsgdmFsdWVPZjogKCkg
PT4gLTEgfSksIHRhW3RhLmxlbmd0aCAtIDFdKTsKK30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3Ry
ZXNzL2l0ZW0tbWV0aG9kLmpzIGIvSlNUZXN0cy9zdHJlc3MvaXRlbS1tZXRob2QuanMKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZhNmE2NzdjYjkxNmFkNDc4NmI4NWEzNDQyYTY1ODMy
ZDdjMzc2ZGQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
SlNUZXN0cy9zdHJlc3MvaXRlbS1tZXRob2QuanMKKysrIC9kZXYvbnVsbApAQCAtMSw0OSArMCww
IEBACi1mdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKSB7Ci0gICAgaWYgKGFjdHVh
bCAhPT0gZXhwZWN0ZWQpCi0gICAgICAgIHRocm93IG5ldyBFcnJvcihgZXhwZWN0ZWQgJHtleHBl
Y3RlZH0gYnV0IGdvdCAke2FjdHVhbH1gKTsKLX0KLQotZnVuY3Rpb24gc2hvdWxkVGhyb3dUeXBl
RXJyb3IoZnVuYykgewotICAgIGxldCBlcnJvcjsKLSAgICB0cnkgewotICAgICAgICBmdW5jKCk7
Ci0gICAgfSBjYXRjaCAoZSkgewotICAgICAgICBlcnJvciA9IGU7Ci0gICAgfQotCi0gICAgaWYg
KCEoZXJyb3IgaW5zdGFuY2VvZiBUeXBlRXJyb3IpKQotICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
J0V4cGVjdGVkIFR5cGVFcnJvciEnKTsKLX0KLQotc2hvdWxkQmUoQXJyYXkucHJvdG90eXBlLml0
ZW0ubGVuZ3RoLCAxKTsKLXNob3VsZFRocm93VHlwZUVycm9yKCgpID0+IEFycmF5LnByb3RvdHlw
ZS5pdGVtLmNhbGwodW5kZWZpbmVkKSk7Ci1zaG91bGRUaHJvd1R5cGVFcnJvcigoKSA9PiBBcnJh
eS5wcm90b3R5cGUuaXRlbS5jYWxsKG51bGwpKTsKLQotY29uc3QgYXJyYXkgPSBbNDIsICdiJywg
dHJ1ZV07Ci0vLyBpbnRlbnRpb25hbGx5IGdvIG9uZSB0b28gZmFyIHRvIGVuc3VyZSB0aGF0IHdl
IGdldCB1bmRlZmluZWQgaW5zdGVhZCBvZiB3cmFwcGluZwotZm9yIChsZXQgaSA9IDA7IGkgPD0g
YXJyYXkubGVuZ3RoOyBpKyspIHsKLSAgc2hvdWxkQmUoYXJyYXkuaXRlbShpKSwgYXJyYXlbaV0p
OwotICBzaG91bGRCZShhcnJheS5pdGVtKC1pIC0gMSksIGFycmF5W2FycmF5Lmxlbmd0aCAtIGkg
LSAxXSk7Ci19Ci1zaG91bGRCZShhcnJheS5pdGVtKCksIGFycmF5WzBdKTsKLXNob3VsZEJlKGFy
cmF5Lml0ZW0obnVsbCksIGFycmF5WzBdKTsKLXNob3VsZEJlKGFycmF5Lml0ZW0oeyB2YWx1ZU9m
OiAoKSA9PiAtMSB9KSwgYXJyYXlbYXJyYXkubGVuZ3RoIC0gMV0pOwotCi1jb25zdCB3ZWlyZEFy
cmF5TGlrZSA9IHsgbGVuZ3RoOiAxLCBnZXQgJzAnKCkgeyByZXR1cm4gMzsgfSwgZ2V0ICcxJygp
IHsgdGhyb3cgJ29vcHMnOyB9IH07Ci1zaG91bGRCZShBcnJheS5wcm90b3R5cGUuaXRlbS5jYWxs
KHdlaXJkQXJyYXlMaWtlLCAwKSwgMyk7Ci1zaG91bGRCZShBcnJheS5wcm90b3R5cGUuaXRlbS5j
YWxsKHdlaXJkQXJyYXlMaWtlLCAxKSwgdW5kZWZpbmVkKTsKLQotZm9yIChjb25zdCBUQSBvZiBb
SW50OEFycmF5LCBVaW50OEFycmF5LCBVaW50OENsYW1wZWRBcnJheSwgSW50MTZBcnJheSwgVWlu
dDE2QXJyYXksIEludDMyQXJyYXksIFVpbnQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0NjRB
cnJheV0pIHsKLSAgc2hvdWxkQmUoVEEucHJvdG90eXBlLml0ZW0ubGVuZ3RoLCAxKTsKLSAgc2hv
dWxkVGhyb3dUeXBlRXJyb3IoKCkgPT4gVEEucHJvdG90eXBlLml0ZW0uY2FsbChbXSkpOwotCi0g
IGNvbnN0IHRhID0gWzEsIDIsIDNdOwotICAvLyBpbnRlbnRpb25hbGx5IGdvIG9uZSB0b28gZmFy
IHRvIGVuc3VyZSB0aGF0IHdlIGdldCB1bmRlZmluZWQgaW5zdGVhZCBvZiB3cmFwcGluZwotICBm
b3IgKGxldCBpID0gMDsgaSA8PSB0YS5sZW5ndGg7IGkrKykgewotICAgIHNob3VsZEJlKHRhLml0
ZW0oaSksIHRhW2ldKTsKLSAgICBzaG91bGRCZSh0YS5pdGVtKC1pIC0gMSksIHRhW3RhLmxlbmd0
aCAtIGkgLSAxXSk7Ci0gIH0KLSAgc2hvdWxkQmUodGEuaXRlbSgpLCB0YVswXSk7Ci0gIHNob3Vs
ZEJlKHRhLml0ZW0obnVsbCksIHRhWzBdKTsKLSAgc2hvdWxkQmUodGEuaXRlbSh7IHZhbHVlT2Y6
ICgpID0+IC0xIH0pLCB0YVt0YS5sZW5ndGggLSAxXSk7Ci19CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvY29uZmlnLnlhbWwgYi9KU1Rlc3RzL3Rlc3QyNjIvY29uZmlnLnlhbWwKaW5kZXgg
MzFkODhlY2Q5OThkMTIzMDJiMDE0YmFiM2I2Zjg0ODIzNjE1NzZlYi4uYjkxNDk2N2JkYjcwNTA0
MmI4OGZiOWY1ODBiYmRhZDlkZDhjZTNiMSAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL2Nv
bmZpZy55YW1sCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi9jb25maWcueWFtbApAQCAtMjcsNiArMjcs
MTAgQEAgc2tpcDoKICAgICAtIHRvcC1sZXZlbC1hd2FpdAogICAgIC0gSW50bC5MaXN0Rm9ybWF0
CiAKKyAgICAjIHJlbW92ZSBvbmNlIGl0J3MgYmVlbiByZW5hbWVkIGluIHRlc3QyNjIKKyAgICAt
IEFycmF5LnByb3RvdHlwZS5pdGVtCisgICAgLSBUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtCisK
ICAgICAjIHJlbW92ZSBvbmNlIGl0J3Mgbm8gbG9uZ2VyIGluIHRlc3QyNjIKICAgICAtIFN0cmlu
Zy5wcm90b3R5cGUuaXRlbQogICBwYXRoczoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411838</attachid>
            <date>2020-10-19 22:51:40 -0700</date>
            <delta_ts>2020-10-19 23:45:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217942-20201019225139.patch</filename>
            <type>text/plain</type>
            <size>20810</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4Njg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
ZTM4NTMwOWQxODc4YjQ1MTU5M2MxMmM2ZjMxY2MzMmRmZGUwMDE3Li42YWUxZjgxYmYyNjI5MDQy
MzgxOGI0NDljNDkxZDkyNGFlMmY4Yzg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAyMC0xMC0xOSAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgW0pTQ10gUmVuYW1lIGl0ZW0oKSB0byBhdCgpIGFuZCBtb3ZlIGl0
IGJlaGluZCBhIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxNzk0MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIHtBcnJheSwgJVR5cGVkQXJyYXklfS5wcm90b3R5cGUuaXRlbSBpcyBvZmZpY2lhbCB3
ZWItaW5jb21wYXRpYmxlLAorICAgICAgICBidXQgaXQgaXMgZXhwZWN0ZWQgdG8gYmUgcmVuYW1l
ZCB0byBgYXRgIGluc3RlYWQgb2YgYmVpbmcgc2NyYXBwZWQgZW50aXJlbHk6CisgICAgICAgIGh0
dHBzOi8vZ2l0aHViLmNvbS90YzM5L3Byb3Bvc2FsLWl0ZW0tbWV0aG9kL2lzc3Vlcy8zNAorCisg
ICAgICAgIFRoaXMgcGF0Y2ggcGVyZm9ybXMgdGhlIHJlbmFtaW5nLCBidXQgZG9lcyBzbyBiZWhp
bmQgYSBydW50aW1lIGZsYWcgc2luY2UgdGhpcyBoYXMgeWV0IHRvIGFjaGlldmUgY29uc2Vuc3Vz
LgorCisgICAgICAgICogYnVpbHRpbnMvQXJyYXlQcm90b3R5cGUuanM6CisgICAgICAgIChhdCk6
CisgICAgICAgIChpdGVtKTogRGVsZXRlZC4KKyAgICAgICAgKiBidWlsdGlucy9UeXBlZEFycmF5
UHJvdG90eXBlLmpzOgorICAgICAgICAoYXQpOgorICAgICAgICAoaXRlbSk6IERlbGV0ZWQuCisg
ICAgICAgICogcnVudGltZS9BcnJheVByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6OkFycmF5
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJy
YXlWaWV3UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNUeXBlZEFycmF5Vmlld1Byb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvT3B0aW9uc0xpc3QuaDoK
KwogMjAyMC0xMC0xOSAgTWFyayBDb2hlbiAgPG1AbXBjLnNoPgogCiAgICAgICAgIHRlc3QyNjI6
IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY29uZGl0aW9uYWwvaW4tYnJhbmNoLTEuanMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9BcnJheVByb3RvdHlwZS5q
cyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9BcnJheVByb3RvdHlwZS5qcwppbmRl
eCAxODQxOWQzYmVmMTBiNGI5OTgwMTY3NTg0NWRkZjhhMDUzYzViODdkLi5kOTU1ZTUyMmVlOGY4
MTMyYjA2NWViZjdlZDcyMmFlODY2NDg1MTc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnVpbHRpbnMvQXJyYXlQcm90b3R5cGUuanMKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2J1aWx0aW5zL0FycmF5UHJvdG90eXBlLmpzCkBAIC02OTYsMTEgKzY5NiwxMSBAQCBmdW5j
dGlvbiBmbGF0TWFwKGNhbGxiYWNrKQogICAgIHJldHVybiBAZmxhdEludG9BcnJheVdpdGhDYWxs
YmFjayhyZXN1bHQsIGFycmF5LCBsZW5ndGgsIDAsIGNhbGxiYWNrLCB0aGlzQXJnKTsKIH0KIAot
ZnVuY3Rpb24gaXRlbShpbmRleCkKK2Z1bmN0aW9uIGF0KGluZGV4KQogewogICAgICJ1c2Ugc3Ry
aWN0IjsKIAotICAgIHZhciBhcnJheSA9IEB0b09iamVjdCh0aGlzLCAiQXJyYXkucHJvdG90eXBl
Lml0ZW0gcmVxdWlyZXMgdGhhdCB8dGhpc3wgbm90IGJlIG51bGwgb3IgdW5kZWZpbmVkIik7Cisg
ICAgdmFyIGFycmF5ID0gQHRvT2JqZWN0KHRoaXMsICJBcnJheS5wcm90b3R5cGUuYXQgcmVxdWly
ZXMgdGhhdCB8dGhpc3wgbm90IGJlIG51bGwgb3IgdW5kZWZpbmVkIik7CiAgICAgdmFyIGxlbmd0
aCA9IEB0b0xlbmd0aChhcnJheS5sZW5ndGgpOwogCiAgICAgdmFyIGsgPSBAdG9JbnRlZ2VyKGlu
ZGV4KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9UeXBlZEFy
cmF5UHJvdG90eXBlLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1R5cGVkQXJy
YXlQcm90b3R5cGUuanMKaW5kZXggNzYyMTNjMjc5OTA1Nzg1Mjk3NzhlZmVkMGYwNGMwMjU4YjI5
YzAwZS4uNzBkN2E3MjhjY2U4ZDk3NWQ4NzY5Njk1YTk0NjRkNjIxNTZlNWJjYyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1R5cGVkQXJyYXlQcm90b3R5cGUuanMK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1R5cGVkQXJyYXlQcm90b3R5cGUu
anMKQEAgLTM4Myw3ICszODMsNyBAQCBmdW5jdGlvbiB0b0xvY2FsZVN0cmluZygvKiBsb2NhbGUs
IG9wdGlvbnMgKi8pCiAgICAgcmV0dXJuIHN0cmluZzsKIH0KIAotZnVuY3Rpb24gaXRlbShpbmRl
eCkKK2Z1bmN0aW9uIGF0KGluZGV4KQogewogICAgICJ1c2Ugc3RyaWN0IjsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlQcm90b3R5cGUuY3BwCmluZGV4IGNkMTAy
YTg2Yzk3MTBhZjYzMjFkOWUxOGY0MTE1MWMwMmVjNmE2MTIuLjZiY2JkNDY1M2JhMTUzZTY0NzJl
YjNhOTlkNjFiMTVjOWExZDZkZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9BcnJheVByb3RvdHlwZS5jcHAKQEAgLTExMCw3ICsxMTAsOSBAQCB2b2lkIEFycmF5UHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QpCiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZtLnByb3Bl
cnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmZpbmRJbmRleFB1YmxpY05hbWUoKSwgYXJyYXlQcm90
b3R5cGVGaW5kSW5kZXhDb2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVy
dHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7CiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9V
VF9UUkFOU0lUSU9OKHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmluY2x1ZGVzUHVi
bGljTmFtZSgpLCBhcnJheVByb3RvdHlwZUluY2x1ZGVzQ29kZUdlbmVyYXRvciwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOwogICAgIEpTQ19CVUlM
VElOX0ZVTkNUSU9OX1dJVEhPVVRfVFJBTlNJVElPTih2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGlu
TmFtZXMoKS5jb3B5V2l0aGluUHVibGljTmFtZSgpLCBhcnJheVByb3RvdHlwZUNvcHlXaXRoaW5D
b2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSk7Ci0gICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZt
LnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLml0ZW1QdWJsaWNOYW1lKCksIGFycmF5UHJv
dG90eXBlSXRlbUNvZGVHZW5lcmF0b3IsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0
dHJpYnV0ZTo6RG9udEVudW0pKTsKKworICAgIGlmIChPcHRpb25zOjp1c2VBdE1ldGhvZCgpKQor
ICAgICAgICBKU0NfQlVJTFRJTl9GVU5DVElPTl9XSVRIT1VUX1RSQU5TSVRJT04odm0ucHJvcGVy
dHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuYXRQdWJsaWNOYW1lKCksIGFycmF5UHJvdG90eXBlQXRD
b2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSk7CiAKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZW50cmllc1ByaXZhdGVOYW1lKCksIGdldERpcmVjdCh2
bSwgdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZW50cmllc1B1YmxpY05hbWUoKSks
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkpKTsKICAg
ICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRp
bk5hbWVzKCkuZm9yRWFjaFByaXZhdGVOYW1lKCksIGdldERpcmVjdCh2bSwgdm0ucHJvcGVydHlO
YW1lcy0+YnVpbHRpbk5hbWVzKCkuZm9yRWFjaFB1YmxpY05hbWUoKSksIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkpKTsKQEAgLTEyMCw2ICsxMjIsNyBA
QCB2b2lkIEFycmF5UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QpCiAgICAgSlNPYmplY3QqIHVuc2NvcGFibGVzID0gY29uc3RydWN0
RW1wdHlPYmplY3Qodm0sIGdsb2JhbE9iamVjdC0+bnVsbFByb3RvdHlwZU9iamVjdFN0cnVjdHVy
ZSgpKTsKICAgICB1bnNjb3BhYmxlcy0+Y29udmVydFRvRGljdGlvbmFyeSh2bSk7CiAgICAgY29u
c3QgSWRlbnRpZmllciogY29uc3QgdW5zY29wYWJsZU5hbWVzW10gPSB7CisgICAgICAgICZ2bS5w
cm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5hdFB1YmxpY05hbWUoKSwKICAgICAgICAgJnZt
LnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmNvcHlXaXRoaW5QdWJsaWNOYW1lKCksCiAg
ICAgICAgICZ2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5lbnRyaWVzUHVibGljTmFt
ZSgpLAogICAgICAgICAmdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZmlsbFB1Ymxp
Y05hbWUoKSwKQEAgLTEyOCw3ICsxMzEsNiBAQCB2b2lkIEFycmF5UHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAgICAgICZ2
bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5mbGF0UHVibGljTmFtZSgpLAogICAgICAg
ICAmdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZmxhdE1hcFB1YmxpY05hbWUoKSwK
ICAgICAgICAgJnZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmluY2x1ZGVzUHVibGlj
TmFtZSgpLAotICAgICAgICAmdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuaXRlbVB1
YmxpY05hbWUoKSwKICAgICAgICAgJnZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmtl
eXNQdWJsaWNOYW1lKCksCiAgICAgICAgICZ2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMo
KS52YWx1ZXNQdWJsaWNOYW1lKCkKICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcAppbmRleCAw
N2RiMmEzN2ZjMjk1MzU2MjJmODBhOGI1NWRiZDExZTZlMDk3YzI5Li44ZGZhNDViZGQ2MTViMjFm
ZGFhZjg4ZTg0MTVmZWJmNWE1Zjg3MzYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcApAQCAtMzc1
LDcgKzM3NSw5IEBAIHZvaWQgSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqCiAgICAgSlNDX0JVSUxUSU5fRlVO
Q1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKCJzb21lIiwgdHlwZWRBcnJheVByb3RvdHlwZVNvbWVD
b2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSk7CiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZt
LnByb3BlcnR5TmFtZXMtPnN1YmFycmF5LCB0eXBlZEFycmF5UHJvdG90eXBlU3ViYXJyYXlDb2Rl
R2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRF
bnVtKSk7CiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZtLnBy
b3BlcnR5TmFtZXMtPnRvTG9jYWxlU3RyaW5nLCB0eXBlZEFycmF5UHJvdG90eXBlVG9Mb2NhbGVT
dHJpbmdDb2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1
dGU6OkRvbnRFbnVtKSk7Ci0gICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lU
SU9OKHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLml0ZW1QdWJsaWNOYW1lKCksIHR5
cGVkQXJyYXlQcm90b3R5cGVJdGVtQ29kZUdlbmVyYXRvciwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOworCisgICAgaWYgKE9wdGlvbnM6OnVzZUF0
TWV0aG9kKCkpCisgICAgICAgIEpTQ19CVUlMVElOX0ZVTkNUSU9OX1dJVEhPVVRfVFJBTlNJVElP
Tih2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5hdFB1YmxpY05hbWUoKSwgdHlwZWRB
cnJheVByb3RvdHlwZUF0Q29kZUdlbmVyYXRvciwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFByb3Bl
cnR5QXR0cmlidXRlOjpEb250RW51bSkpOwogCiAgICAgSlNGdW5jdGlvbiogdG9TdHJpbmdUYWdG
dW5jdGlvbiA9IEpTRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCAwLCAiZ2V0IFtT
eW1ib2wudG9TdHJpbmdUYWddIl9zLCB0eXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY1RvU3Ry
aW5nVGFnLCBOb0ludHJpbnNpYyk7CiAgICAgR2V0dGVyU2V0dGVyKiB0b1N0cmluZ1RhZ0FjY2Vz
c29yID0gR2V0dGVyU2V0dGVyOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgdG9TdHJpbmdUYWdG
dW5jdGlvbiwgbnVsbHB0cik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9PcHRpb25zTGlzdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9u
c0xpc3QuaAppbmRleCAyZTE5YjA4ZGY5NmY3ZTAyNzFlMmVjNzAzZDE0ZTM0NTAyMTAzNzI2Li44
MmQzYjE5NGUzMDAwZjQ1MTA1NzE2YjQxMjMwMmUzMDI4NWVkNTA1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5oCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKQEAgLTQ5MSw2ICs0OTEsNyBAQCBjb25z
dGV4cHIgYm9vbCBlbmFibGVXZWJBc3NlbWJseVN0cmVhbWluZ0FwaSA9IGZhbHNlOwogICAgIHYo
Qm9vbCwgdXNlV2ViQXNzZW1ibHlNdWx0aVZhbHVlcywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdHlw
ZXMgZnJvbSB0aGUgd2FzbSBtdWxpdC12YWx1ZXMgc3BlYy4iKSBcCiAgICAgdihCb29sLCB1c2VX
ZWFrUmVmcywgdHJ1ZSwgTm9ybWFsLCAiRXhwb3NlIHRoZSBXZWFrUmVmIGNvbnN0cnVjdG9yLiIp
IFwKICAgICB2KEJvb2wsIHVzZUludGxEYXRlVGltZUZvcm1hdERheVBlcmlvZCwgdHJ1ZSwgTm9y
bWFsLCAiRXhwb3NlIHRoZSBJbnRsLkRhdGVUaW1lRm9ybWF0IGRheVBlcmlvZCBmZWF0dXJlLiIp
IFwKKyAgICB2KEJvb2wsIHVzZUF0TWV0aG9kLCBmYWxzZSwgTm9ybWFsLCAiRXhwb3NlIHRoZSBh
dCgpIG1ldGhvZCBvbiBBcnJheSBhbmQgJVR5cGVkQXJyYXklLiIpIFwKICAgICB2KEJvb2wsIHVz
ZUFycmF5QWxsb2NhdGlvblByb2ZpbGluZywgdHJ1ZSwgTm9ybWFsLCAiSWYgdHJ1ZSwgd2Ugd2ls
bCB1c2Ugb3VyIG5vcm1hbCBhcnJheSBhbGxvY2F0aW9uIHByb2ZpbGluZy4gSWYgZmFsc2UsIHRo
ZSBhbGxvY2F0aW9uIHByb2ZpbGUgd2lsbCBhbHdheXMgY2xhaW0gdG8gYmUgdW5kZWNpZGVkLiIp
IFwKICAgICB2KEJvb2wsIGZvcmNlUG9seVByb3RvLCBmYWxzZSwgTm9ybWFsLCAiSWYgdHJ1ZSwg
Y3JlYXRlX3RoaXMgd2lsbCBhbHdheXMgY3JlYXRlIGFuIG9iamVjdCB3aXRoIGEgcG9seSBwcm90
byBzdHJ1Y3R1cmUuIikgXAogICAgIHYoQm9vbCwgZm9yY2VNaW5pVk1Nb2RlLCBmYWxzZSwgTm9y
bWFsLCAiSWYgdHJ1ZSwgaXQgd2lsbCBmb3JjZSBtaW5pIFZNIG1vZGUgb24uIikgXApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IDNkNWNmYzg5MDlmMmZmZWRhMGFjMWJjYmUwZjM0NjNlZTIxOWNmYmEuLjczZmZkZDRjMDhmMGY3
ZTE2MzQ5NmRlNTU2ODc2MjcyYTMxZmE0NjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0x
MC0xOSAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29ueS5jb20+CisKKyAgICAgICAg
W0pTQ10gUmVuYW1lIGl0ZW0oKSB0byBhdCgpIGFuZCBtb3ZlIGl0IGJlaGluZCBhIGZsYWcKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzk0MgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9y
L21vZGVsL3JlbW90ZS1vYmplY3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIGpzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBqcy9zY3JpcHQtdGVzdHMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMuanM6CisgICAgICAg
ICoganMvc2NyaXB0LXRlc3RzL2FycmF5LXVuc2NvcGFibGVzLXByb3BlcnRpZXMuanM6CisKIDIw
MjAtMTAtMTkgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFVw
ZGF0ZSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJv
cGVydGllcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvcmVtb3Rl
LW9iamVjdC1nZXQtcHJvcGVydGllcy1leHBlY3RlZC50eHQKaW5kZXggZGU3YzkxYTBlMjBmYzBj
ZGZhZTI5Y2M0NTE3MzVmNTZjYWQ4NzA2OS4uZjVhZTNmNmEwYjFkYmUyNGQ3N2NmNDg5ZWYxODgw
N2U5NjRkY2JiMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3JlbW90
ZS1vYmplY3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9tb2RlbC9yZW1vdGUtb2JqZWN0LWdldC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dApA
QCAtODUsNyArODUsNiBAQCBBTEwgUFJPUEVSVElFUzoKICAgICBmaW5kSW5kZXgKICAgICBpbmNs
dWRlcwogICAgIGNvcHlXaXRoaW4KLSAgICBpdGVtCiAgICAgY29uc3RydWN0b3IKICAgICBTeW1i
b2woU3ltYm9sLml0ZXJhdG9yKQogICAgIFN5bWJvbChTeW1ib2wudW5zY29wYWJsZXMpCkBAIC0x
MzksNyArMTM4LDYgQEAgT1dOIFBST1BFUlRJRVM6CiAgICAgZmluZEluZGV4CiAgICAgaW5jbHVk
ZXMKICAgICBjb3B5V2l0aGluCi0gICAgaXRlbQogICAgIGNvbnN0cnVjdG9yCiAgICAgU3ltYm9s
KFN5bWJvbC5pdGVyYXRvcikKICAgICBTeW1ib2woU3ltYm9sLnVuc2NvcGFibGVzKQpAQCAtMTc4
LDcgKzE3Niw2IEBAIERJU1BMQVlBQkxFIFBST1BFUlRJRVM6CiAgICAgZmluZEluZGV4CiAgICAg
aW5jbHVkZXMKICAgICBjb3B5V2l0aGluCi0gICAgaXRlbQogICAgIGNvbnN0cnVjdG9yCiAgICAg
U3ltYm9sKFN5bWJvbC5pdGVyYXRvcikKICAgICBTeW1ib2woU3ltYm9sLnVuc2NvcGFibGVzKQpA
QCAtMjE3LDcgKzIxNCw2IEBAIEFMTCBQUk9QRVJUSUVTOgogICAgIGZpbmRJbmRleAogICAgIGlu
Y2x1ZGVzCiAgICAgY29weVdpdGhpbgotICAgIGl0ZW0KICAgICBjb25zdHJ1Y3RvcgogICAgIFN5
bWJvbChTeW1ib2wuaXRlcmF0b3IpCiAgICAgU3ltYm9sKFN5bWJvbC51bnNjb3BhYmxlcykKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2pzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLWV4cGVj
dGVkLnR4dAppbmRleCA1M2JhZTI0ZjIwZjU4YWFhMzM4MjhlODFlMGQ2YmM2MTgzNzhjZWUzLi4y
MjEyNDFhN2QyMjgwODE1NmMwOWY2OTJiM2I2NDI3MTAyODRmYzNjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9qcy9PYmplY3QtZ2V0T3duUHJvcGVydHlOYW1lcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvanMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMtZXhwZWN0ZWQudHh0CkBA
IC00Nyw3ICs0Nyw3IEBAIFBBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlOYW1lcyhPYmplY3QucHJv
dG90eXBlKSBpcyBbJ19fZGVmaW5lR2V0dGVyX18nLCAnX19kZWZpCiBQQVNTIGdldFNvcnRlZE93
blByb3BlcnR5TmFtZXMoRnVuY3Rpb24pIGlzIFsnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBl
J10KIFBBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlOYW1lcyhGdW5jdGlvbi5wcm90b3R5cGUpIGlz
IFsnYXBwbHknLCAnYXJndW1lbnRzJywgJ2JpbmQnLCAnY2FsbCcsICdjYWxsZXInLCAnY29uc3Ry
dWN0b3InLCAnbGVuZ3RoJywgJ25hbWUnLCAndG9TdHJpbmcnXQogUEFTUyBnZXRTb3J0ZWRPd25Q
cm9wZXJ0eU5hbWVzKEFycmF5KSBpcyBbJ2Zyb20nLCAnaXNBcnJheScsICdsZW5ndGgnLCAnbmFt
ZScsICdvZicsICdwcm90b3R5cGUnXQotUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5hbWVzKEFy
cmF5LnByb3RvdHlwZSkgaXMgWydjb25jYXQnLCAnY29uc3RydWN0b3InLCAnY29weVdpdGhpbics
ICdlbnRyaWVzJywgJ2V2ZXJ5JywgJ2ZpbGwnLCAnZmlsdGVyJywgJ2ZpbmQnLCAnZmluZEluZGV4
JywgJ2ZsYXQnLCAnZmxhdE1hcCcsICdmb3JFYWNoJywgJ2luY2x1ZGVzJywgJ2luZGV4T2YnLCAn
aXRlbScsICdqb2luJywgJ2tleXMnLCAnbGFzdEluZGV4T2YnLCAnbGVuZ3RoJywgJ21hcCcsICdw
b3AnLCAncHVzaCcsICdyZWR1Y2UnLCAncmVkdWNlUmlnaHQnLCAncmV2ZXJzZScsICdzaGlmdCcs
ICdzbGljZScsICdzb21lJywgJ3NvcnQnLCAnc3BsaWNlJywgJ3RvTG9jYWxlU3RyaW5nJywgJ3Rv
U3RyaW5nJywgJ3Vuc2hpZnQnLCAndmFsdWVzJ10KK1BBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlO
YW1lcyhBcnJheS5wcm90b3R5cGUpIGlzIFsnY29uY2F0JywgJ2NvbnN0cnVjdG9yJywgJ2NvcHlX
aXRoaW4nLCAnZW50cmllcycsICdldmVyeScsICdmaWxsJywgJ2ZpbHRlcicsICdmaW5kJywgJ2Zp
bmRJbmRleCcsICdmbGF0JywgJ2ZsYXRNYXAnLCAnZm9yRWFjaCcsICdpbmNsdWRlcycsICdpbmRl
eE9mJywgJ2pvaW4nLCAna2V5cycsICdsYXN0SW5kZXhPZicsICdsZW5ndGgnLCAnbWFwJywgJ3Bv
cCcsICdwdXNoJywgJ3JlZHVjZScsICdyZWR1Y2VSaWdodCcsICdyZXZlcnNlJywgJ3NoaWZ0Jywg
J3NsaWNlJywgJ3NvbWUnLCAnc29ydCcsICdzcGxpY2UnLCAndG9Mb2NhbGVTdHJpbmcnLCAndG9T
dHJpbmcnLCAndW5zaGlmdCcsICd2YWx1ZXMnXQogUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5h
bWVzKFN0cmluZykgaXMgWydmcm9tQ2hhckNvZGUnLCAnZnJvbUNvZGVQb2ludCcsICdsZW5ndGgn
LCAnbmFtZScsICdwcm90b3R5cGUnLCAncmF3J10KIFBBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlO
YW1lcyhTdHJpbmcucHJvdG90eXBlKSBpcyBbJ2FuY2hvcicsICdiaWcnLCAnYmxpbmsnLCAnYm9s
ZCcsICdjaGFyQXQnLCAnY2hhckNvZGVBdCcsICdjb2RlUG9pbnRBdCcsICdjb25jYXQnLCAnY29u
c3RydWN0b3InLCAnZW5kc1dpdGgnLCAnZml4ZWQnLCAnZm9udGNvbG9yJywgJ2ZvbnRzaXplJywg
J2luY2x1ZGVzJywgJ2luZGV4T2YnLCAnaXRhbGljcycsICdsYXN0SW5kZXhPZicsICdsZW5ndGgn
LCAnbGluaycsICdsb2NhbGVDb21wYXJlJywgJ21hdGNoJywgJ21hdGNoQWxsJywgJ25vcm1hbGl6
ZScsICdwYWRFbmQnLCAncGFkU3RhcnQnLCAncmVwZWF0JywgJ3JlcGxhY2UnLCAncmVwbGFjZUFs
bCcsICdzZWFyY2gnLCAnc2xpY2UnLCAnc21hbGwnLCAnc3BsaXQnLCAnc3RhcnRzV2l0aCcsICdz
dHJpa2UnLCAnc3ViJywgJ3N1YnN0cicsICdzdWJzdHJpbmcnLCAnc3VwJywgJ3RvTG9jYWxlTG93
ZXJDYXNlJywgJ3RvTG9jYWxlVXBwZXJDYXNlJywgJ3RvTG93ZXJDYXNlJywgJ3RvU3RyaW5nJywg
J3RvVXBwZXJDYXNlJywgJ3RyaW0nLCAndHJpbUVuZCcsICd0cmltTGVmdCcsICd0cmltUmlnaHQn
LCAndHJpbVN0YXJ0JywgJ3ZhbHVlT2YnXQogUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5hbWVz
KEJvb2xlYW4pIGlzIFsnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJ10KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9PYmplY3QtZ2V0T3duUHJvcGVydHlOYW1lcy5q
cyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9PYmplY3QtZ2V0T3duUHJvcGVydHlOYW1l
cy5qcwppbmRleCBmZjBmOWQzYzQwMzY1MDkxMGRkNTYzMDRjMDdkMTExMGY4OTBhOWE0Li5jYjAx
MzQ5NTJiODAyN2RlYzFiZmJhOGVhNjI0MTJiOTQ1NjhmMTNiIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9qcy9zY3JpcHQtdGVzdHMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMuanMKKysrIGIv
TGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLmpz
CkBAIC01Niw3ICs1Niw3IEBAIHZhciBleHBlY3RlZFByb3BlcnR5TmFtZXNTZXQgPSB7CiAgICAg
IkZ1bmN0aW9uIjogIlsnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJ10iLAogICAgICJGdW5j
dGlvbi5wcm90b3R5cGUiOiAiWydhcHBseScsICdhcmd1bWVudHMnLCAnYmluZCcsICdjYWxsJywg
J2NhbGxlcicsICdjb25zdHJ1Y3RvcicsICdsZW5ndGgnLCAnbmFtZScsICd0b1N0cmluZyddIiwK
ICAgICAiQXJyYXkiOiAiWydmcm9tJywgJ2lzQXJyYXknLCAnbGVuZ3RoJywgJ25hbWUnLCAnb2Yn
LCAncHJvdG90eXBlJ10iLAotICAgICJBcnJheS5wcm90b3R5cGUiOiAiWydjb25jYXQnLCAnY29u
c3RydWN0b3InLCAnY29weVdpdGhpbicsICdlbnRyaWVzJywgJ2V2ZXJ5JywgJ2ZpbGwnLCAnZmls
dGVyJywgJ2ZpbmQnLCAnZmluZEluZGV4JywgJ2ZsYXQnLCAnZmxhdE1hcCcsICdmb3JFYWNoJywg
J2luY2x1ZGVzJywgJ2luZGV4T2YnLCAnaXRlbScsICdqb2luJywgJ2tleXMnLCAnbGFzdEluZGV4
T2YnLCAnbGVuZ3RoJywgJ21hcCcsICdwb3AnLCAncHVzaCcsICdyZWR1Y2UnLCAncmVkdWNlUmln
aHQnLCAncmV2ZXJzZScsICdzaGlmdCcsICdzbGljZScsICdzb21lJywgJ3NvcnQnLCAnc3BsaWNl
JywgJ3RvTG9jYWxlU3RyaW5nJywgJ3RvU3RyaW5nJywgJ3Vuc2hpZnQnLCAndmFsdWVzJ10iLAor
ICAgICJBcnJheS5wcm90b3R5cGUiOiAiWydjb25jYXQnLCAnY29uc3RydWN0b3InLCAnY29weVdp
dGhpbicsICdlbnRyaWVzJywgJ2V2ZXJ5JywgJ2ZpbGwnLCAnZmlsdGVyJywgJ2ZpbmQnLCAnZmlu
ZEluZGV4JywgJ2ZsYXQnLCAnZmxhdE1hcCcsICdmb3JFYWNoJywgJ2luY2x1ZGVzJywgJ2luZGV4
T2YnLCAnam9pbicsICdrZXlzJywgJ2xhc3RJbmRleE9mJywgJ2xlbmd0aCcsICdtYXAnLCAncG9w
JywgJ3B1c2gnLCAncmVkdWNlJywgJ3JlZHVjZVJpZ2h0JywgJ3JldmVyc2UnLCAnc2hpZnQnLCAn
c2xpY2UnLCAnc29tZScsICdzb3J0JywgJ3NwbGljZScsICd0b0xvY2FsZVN0cmluZycsICd0b1N0
cmluZycsICd1bnNoaWZ0JywgJ3ZhbHVlcyddIiwKICAgICAiU3RyaW5nIjogIlsnZnJvbUNoYXJD
b2RlJywgJ2Zyb21Db2RlUG9pbnQnLCAnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJywgJ3Jh
dyddIiwKICAgICAiU3RyaW5nLnByb3RvdHlwZSI6ICJbJ2FuY2hvcicsICdiaWcnLCAnYmxpbmsn
LCAnYm9sZCcsICdjaGFyQXQnLCAnY2hhckNvZGVBdCcsICdjb2RlUG9pbnRBdCcsICdjb25jYXQn
LCAnY29uc3RydWN0b3InLCAnZW5kc1dpdGgnLCAnZml4ZWQnLCAnZm9udGNvbG9yJywgJ2ZvbnRz
aXplJywgJ2luY2x1ZGVzJywgJ2luZGV4T2YnLCAnaXRhbGljcycsICdsYXN0SW5kZXhPZicsICds
ZW5ndGgnLCAnbGluaycsICdsb2NhbGVDb21wYXJlJywgJ21hdGNoJywgJ21hdGNoQWxsJywgJ25v
cm1hbGl6ZScsICdwYWRFbmQnLCAncGFkU3RhcnQnLCAncmVwZWF0JywgJ3JlcGxhY2UnLCAncmVw
bGFjZUFsbCcsICdzZWFyY2gnLCAnc2xpY2UnLCAnc21hbGwnLCAnc3BsaXQnLCAnc3RhcnRzV2l0
aCcsICdzdHJpa2UnLCAnc3ViJywgJ3N1YnN0cicsICdzdWJzdHJpbmcnLCAnc3VwJywgJ3RvTG9j
YWxlTG93ZXJDYXNlJywgJ3RvTG9jYWxlVXBwZXJDYXNlJywgJ3RvTG93ZXJDYXNlJywgJ3RvU3Ry
aW5nJywgJ3RvVXBwZXJDYXNlJywgJ3RyaW0nLCAndHJpbUVuZCcsICd0cmltTGVmdCcsICd0cmlt
UmlnaHQnLCAndHJpbVN0YXJ0JywgJ3ZhbHVlT2YnXSIsCiAgICAgIkJvb2xlYW4iOiAiWydsZW5n
dGgnLCAnbmFtZScsICdwcm90b3R5cGUnXSIsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9z
Y3JpcHQtdGVzdHMvYXJyYXktdW5zY29wYWJsZXMtcHJvcGVydGllcy5qcyBiL0xheW91dFRlc3Rz
L2pzL3NjcmlwdC10ZXN0cy9hcnJheS11bnNjb3BhYmxlcy1wcm9wZXJ0aWVzLmpzCmluZGV4IDIy
NGRiOTVhOWJjYjUzMzI5NGUzYzAzYWZmNDEyMWM3NWIyZjYyMzkuLjE1MjA3NGQ3Zjc3Y2JkMjY3
NjMwNTE4ZWM1MjJlNmVlNTVlZWI2YzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL3Njcmlw
dC10ZXN0cy9hcnJheS11bnNjb3BhYmxlcy1wcm9wZXJ0aWVzLmpzCisrKyBiL0xheW91dFRlc3Rz
L2pzL3NjcmlwdC10ZXN0cy9hcnJheS11bnNjb3BhYmxlcy1wcm9wZXJ0aWVzLmpzCkBAIC03LDYg
KzcsNyBAQCBzaG91bGRCZUZhbHNlKCJPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFy
cmF5LnByb3RvdHlwZSwgU3ltYm9sLnVuc2NvcGFibAogc2hvdWxkQmVUcnVlKCJPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKEFycmF5LnByb3RvdHlwZSwgU3ltYm9sLnVuc2NvcGFibGVz
KS5jb25maWd1cmFibGUiKTsKIAogbGV0IGV4cGVjdGVkRW50cmllcyA9IFsKKyAgICAiYXQiLAog
ICAgICJjb3B5V2l0aGluIiwKICAgICAiZW50cmllcyIsCiAgICAgImZpbGwiLApAQCAtMTUsNyAr
MTYsNiBAQCBsZXQgZXhwZWN0ZWRFbnRyaWVzID0gWwogICAgICJmbGF0IiwKICAgICAiZmxhdE1h
cCIsCiAgICAgImluY2x1ZGVzIiwKLSAgICAiaXRlbSIsCiAgICAgImtleXMiLAogICAgICJ2YWx1
ZXMiCiBdOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9DaGFuZ2VMb2cgYi9KU1Rlc3RzL0NoYW5nZUxv
ZwppbmRleCA1NmIyMDBkNGY0MDk4NTJiZTRjZThmMjE3ZDhjZmJlZTRjOGZkNTFlLi4yMzU3MWYw
ZThlN2M3NzhiYWY0YWEwMTkzOTFhNWYyNjI4M2FhMGEzIDEwMDY0NAotLS0gYS9KU1Rlc3RzL0No
YW5nZUxvZworKysgYi9KU1Rlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIwLTEw
LTE5ICBSb3NzIEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNvbT4KKworICAgICAgICBb
SlNDXSBSZW5hbWUgaXRlbSgpIHRvIGF0KCkgYW5kIG1vdmUgaXQgYmVoaW5kIGEgZmxhZworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3OTQyCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvYXQt
bWV0aG9kLmpzOiBSZW5hbWVkIGZyb20gSlNUZXN0cy9zdHJlc3MvaXRlbS1tZXRob2QuanMuCisg
ICAgICAgICogdGVzdDI2Mi9jb25maWcueWFtbDogQWRkIHNraXBzIHVudGlsIHRoZSBmZWF0dXJl
IGlzIHJlbmFtZWQuCisKIDIwMjAtMTAtMTkgIE1hcmsgQ29oZW4gIDxtQG1wYy5zaD4KIAogICAg
ICAgICB0ZXN0MjYyOiB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NvbmRpdGlvbmFsL2luLWJy
YW5jaC0xLmpzCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9hdC1tZXRob2QuanMgYi9KU1Rl
c3RzL3N0cmVzcy9hdC1tZXRob2QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTFlNjI3YjM5Mzk4YzUzZDIwYjhm
ZWNjMzZiOTVjZjQ4Y2Q4YjA1NAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL2F0
LW1ldGhvZC5qcwpAQCAtMCwwICsxLDUxIEBACisvL0AgcmVxdWlyZU9wdGlvbnMoIi0tdXNlQXRN
ZXRob2Q9MSIpCisKK2Z1bmN0aW9uIHNob3VsZEJlKGFjdHVhbCwgZXhwZWN0ZWQpIHsKKyAgICBp
ZiAoYWN0dWFsICE9PSBleHBlY3RlZCkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBleHBlY3Rl
ZCAke2V4cGVjdGVkfSBidXQgZ290ICR7YWN0dWFsfWApOworfQorCitmdW5jdGlvbiBzaG91bGRU
aHJvd1R5cGVFcnJvcihmdW5jKSB7CisgICAgbGV0IGVycm9yOworICAgIHRyeSB7CisgICAgICAg
IGZ1bmMoKTsKKyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIGVycm9yID0gZTsKKyAgICB9CisK
KyAgICBpZiAoIShlcnJvciBpbnN0YW5jZW9mIFR5cGVFcnJvcikpCisgICAgICAgIHRocm93IG5l
dyBFcnJvcignRXhwZWN0ZWQgVHlwZUVycm9yIScpOworfQorCitzaG91bGRCZShBcnJheS5wcm90
b3R5cGUuYXQubGVuZ3RoLCAxKTsKK3Nob3VsZFRocm93VHlwZUVycm9yKCgpID0+IEFycmF5LnBy
b3RvdHlwZS5hdC5jYWxsKHVuZGVmaW5lZCkpOworc2hvdWxkVGhyb3dUeXBlRXJyb3IoKCkgPT4g
QXJyYXkucHJvdG90eXBlLmF0LmNhbGwobnVsbCkpOworCitjb25zdCBhcnJheSA9IFs0MiwgJ2In
LCB0cnVlXTsKKy8vIGludGVudGlvbmFsbHkgZ28gb25lIHRvbyBmYXIgdG8gZW5zdXJlIHRoYXQg
d2UgZ2V0IHVuZGVmaW5lZCBpbnN0ZWFkIG9mIHdyYXBwaW5nCitmb3IgKGxldCBpID0gMDsgaSA8
PSBhcnJheS5sZW5ndGg7IGkrKykgeworICBzaG91bGRCZShhcnJheS5hdChpKSwgYXJyYXlbaV0p
OworICBzaG91bGRCZShhcnJheS5hdCgtaSAtIDEpLCBhcnJheVthcnJheS5sZW5ndGggLSBpIC0g
MV0pOworfQorc2hvdWxkQmUoYXJyYXkuYXQoKSwgYXJyYXlbMF0pOworc2hvdWxkQmUoYXJyYXku
YXQobnVsbCksIGFycmF5WzBdKTsKK3Nob3VsZEJlKGFycmF5LmF0KHsgdmFsdWVPZjogKCkgPT4g
LTEgfSksIGFycmF5W2FycmF5Lmxlbmd0aCAtIDFdKTsKKworY29uc3Qgd2VpcmRBcnJheUxpa2Ug
PSB7IGxlbmd0aDogMSwgZ2V0ICcwJygpIHsgcmV0dXJuIDM7IH0sIGdldCAnMScoKSB7IHRocm93
ICdvb3BzJzsgfSB9Oworc2hvdWxkQmUoQXJyYXkucHJvdG90eXBlLmF0LmNhbGwod2VpcmRBcnJh
eUxpa2UsIDApLCAzKTsKK3Nob3VsZEJlKEFycmF5LnByb3RvdHlwZS5hdC5jYWxsKHdlaXJkQXJy
YXlMaWtlLCAxKSwgdW5kZWZpbmVkKTsKKworZm9yIChjb25zdCBUQSBvZiBbSW50OEFycmF5LCBV
aW50OEFycmF5LCBVaW50OENsYW1wZWRBcnJheSwgSW50MTZBcnJheSwgVWludDE2QXJyYXksIElu
dDMyQXJyYXksIFVpbnQzMkFycmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0NjRBcnJheV0pIHsKKyAg
c2hvdWxkQmUoVEEucHJvdG90eXBlLmF0Lmxlbmd0aCwgMSk7CisgIHNob3VsZFRocm93VHlwZUVy
cm9yKCgpID0+IFRBLnByb3RvdHlwZS5hdC5jYWxsKFtdKSk7CisKKyAgY29uc3QgdGEgPSBbMSwg
MiwgM107CisgIC8vIGludGVudGlvbmFsbHkgZ28gb25lIHRvbyBmYXIgdG8gZW5zdXJlIHRoYXQg
d2UgZ2V0IHVuZGVmaW5lZCBpbnN0ZWFkIG9mIHdyYXBwaW5nCisgIGZvciAobGV0IGkgPSAwOyBp
IDw9IHRhLmxlbmd0aDsgaSsrKSB7CisgICAgc2hvdWxkQmUodGEuYXQoaSksIHRhW2ldKTsKKyAg
ICBzaG91bGRCZSh0YS5hdCgtaSAtIDEpLCB0YVt0YS5sZW5ndGggLSBpIC0gMV0pOworICB9Cisg
IHNob3VsZEJlKHRhLmF0KCksIHRhWzBdKTsKKyAgc2hvdWxkQmUodGEuYXQobnVsbCksIHRhWzBd
KTsKKyAgc2hvdWxkQmUodGEuYXQoeyB2YWx1ZU9mOiAoKSA9PiAtMSB9KSwgdGFbdGEubGVuZ3Ro
IC0gMV0pOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJlc3MvaXRlbS1tZXRob2QuanMgYi9K
U1Rlc3RzL3N0cmVzcy9pdGVtLW1ldGhvZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggZmE2YTY3N2NiOTE2YWQ0Nzg2Yjg1YTM0NDJhNjU4MzJkN2MzNzZkZC4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3N0cmVzcy9pdGVtLW1l
dGhvZC5qcworKysgL2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLWZ1bmN0aW9uIHNob3VsZEJl
KGFjdHVhbCwgZXhwZWN0ZWQpIHsKLSAgICBpZiAoYWN0dWFsICE9PSBleHBlY3RlZCkKLSAgICAg
ICAgdGhyb3cgbmV3IEVycm9yKGBleHBlY3RlZCAke2V4cGVjdGVkfSBidXQgZ290ICR7YWN0dWFs
fWApOwotfQotCi1mdW5jdGlvbiBzaG91bGRUaHJvd1R5cGVFcnJvcihmdW5jKSB7Ci0gICAgbGV0
IGVycm9yOwotICAgIHRyeSB7Ci0gICAgICAgIGZ1bmMoKTsKLSAgICB9IGNhdGNoIChlKSB7Ci0g
ICAgICAgIGVycm9yID0gZTsKLSAgICB9Ci0KLSAgICBpZiAoIShlcnJvciBpbnN0YW5jZW9mIFR5
cGVFcnJvcikpCi0gICAgICAgIHRocm93IG5ldyBFcnJvcignRXhwZWN0ZWQgVHlwZUVycm9yIScp
OwotfQotCi1zaG91bGRCZShBcnJheS5wcm90b3R5cGUuaXRlbS5sZW5ndGgsIDEpOwotc2hvdWxk
VGhyb3dUeXBlRXJyb3IoKCkgPT4gQXJyYXkucHJvdG90eXBlLml0ZW0uY2FsbCh1bmRlZmluZWQp
KTsKLXNob3VsZFRocm93VHlwZUVycm9yKCgpID0+IEFycmF5LnByb3RvdHlwZS5pdGVtLmNhbGwo
bnVsbCkpOwotCi1jb25zdCBhcnJheSA9IFs0MiwgJ2InLCB0cnVlXTsKLS8vIGludGVudGlvbmFs
bHkgZ28gb25lIHRvbyBmYXIgdG8gZW5zdXJlIHRoYXQgd2UgZ2V0IHVuZGVmaW5lZCBpbnN0ZWFk
IG9mIHdyYXBwaW5nCi1mb3IgKGxldCBpID0gMDsgaSA8PSBhcnJheS5sZW5ndGg7IGkrKykgewot
ICBzaG91bGRCZShhcnJheS5pdGVtKGkpLCBhcnJheVtpXSk7Ci0gIHNob3VsZEJlKGFycmF5Lml0
ZW0oLWkgLSAxKSwgYXJyYXlbYXJyYXkubGVuZ3RoIC0gaSAtIDFdKTsKLX0KLXNob3VsZEJlKGFy
cmF5Lml0ZW0oKSwgYXJyYXlbMF0pOwotc2hvdWxkQmUoYXJyYXkuaXRlbShudWxsKSwgYXJyYXlb
MF0pOwotc2hvdWxkQmUoYXJyYXkuaXRlbSh7IHZhbHVlT2Y6ICgpID0+IC0xIH0pLCBhcnJheVth
cnJheS5sZW5ndGggLSAxXSk7Ci0KLWNvbnN0IHdlaXJkQXJyYXlMaWtlID0geyBsZW5ndGg6IDEs
IGdldCAnMCcoKSB7IHJldHVybiAzOyB9LCBnZXQgJzEnKCkgeyB0aHJvdyAnb29wcyc7IH0gfTsK
LXNob3VsZEJlKEFycmF5LnByb3RvdHlwZS5pdGVtLmNhbGwod2VpcmRBcnJheUxpa2UsIDApLCAz
KTsKLXNob3VsZEJlKEFycmF5LnByb3RvdHlwZS5pdGVtLmNhbGwod2VpcmRBcnJheUxpa2UsIDEp
LCB1bmRlZmluZWQpOwotCi1mb3IgKGNvbnN0IFRBIG9mIFtJbnQ4QXJyYXksIFVpbnQ4QXJyYXks
IFVpbnQ4Q2xhbXBlZEFycmF5LCBJbnQxNkFycmF5LCBVaW50MTZBcnJheSwgSW50MzJBcnJheSwg
VWludDMyQXJyYXksIEZsb2F0MzJBcnJheSwgRmxvYXQ2NEFycmF5XSkgewotICBzaG91bGRCZShU
QS5wcm90b3R5cGUuaXRlbS5sZW5ndGgsIDEpOwotICBzaG91bGRUaHJvd1R5cGVFcnJvcigoKSA9
PiBUQS5wcm90b3R5cGUuaXRlbS5jYWxsKFtdKSk7Ci0KLSAgY29uc3QgdGEgPSBbMSwgMiwgM107
Ci0gIC8vIGludGVudGlvbmFsbHkgZ28gb25lIHRvbyBmYXIgdG8gZW5zdXJlIHRoYXQgd2UgZ2V0
IHVuZGVmaW5lZCBpbnN0ZWFkIG9mIHdyYXBwaW5nCi0gIGZvciAobGV0IGkgPSAwOyBpIDw9IHRh
Lmxlbmd0aDsgaSsrKSB7Ci0gICAgc2hvdWxkQmUodGEuaXRlbShpKSwgdGFbaV0pOwotICAgIHNo
b3VsZEJlKHRhLml0ZW0oLWkgLSAxKSwgdGFbdGEubGVuZ3RoIC0gaSAtIDFdKTsKLSAgfQotICBz
aG91bGRCZSh0YS5pdGVtKCksIHRhWzBdKTsKLSAgc2hvdWxkQmUodGEuaXRlbShudWxsKSwgdGFb
MF0pOwotICBzaG91bGRCZSh0YS5pdGVtKHsgdmFsdWVPZjogKCkgPT4gLTEgfSksIHRhW3RhLmxl
bmd0aCAtIDFdKTsKLX0KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi9jb25maWcueWFtbCBi
L0pTVGVzdHMvdGVzdDI2Mi9jb25maWcueWFtbAppbmRleCAzMWQ4OGVjZDk5OGQxMjMwMmIwMTRi
YWIzYjZmODQ4MjM2MTU3NmViLi5iOTE0OTY3YmRiNzA1MDQyYjg4ZmI5ZjU4MGJiZGFkOWRkOGNl
M2IxIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvY29uZmlnLnlhbWwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL2NvbmZpZy55YW1sCkBAIC0yNyw2ICsyNywxMCBAQCBza2lwOgogICAgIC0gdG9w
LWxldmVsLWF3YWl0CiAgICAgLSBJbnRsLkxpc3RGb3JtYXQKIAorICAgICMgcmVtb3ZlIG9uY2Ug
aXQncyBiZWVuIHJlbmFtZWQgaW4gdGVzdDI2MgorICAgIC0gQXJyYXkucHJvdG90eXBlLml0ZW0K
KyAgICAtIFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW0KKwogICAgICMgcmVtb3ZlIG9uY2UgaXQn
cyBubyBsb25nZXIgaW4gdGVzdDI2MgogICAgIC0gU3RyaW5nLnByb3RvdHlwZS5pdGVtCiAgIHBh
dGhzOgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411842</attachid>
            <date>2020-10-19 23:45:31 -0700</date>
            <delta_ts>2020-10-20 11:46:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217942-20201019234531.patch</filename>
            <type>text/plain</type>
            <size>23237</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4Njg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
ZTM4NTMwOWQxODc4YjQ1MTU5M2MxMmM2ZjMxY2MzMmRmZGUwMDE3Li42YWUxZjgxYmYyNjI5MDQy
MzgxOGI0NDljNDkxZDkyNGFlMmY4Yzg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAyMC0xMC0xOSAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgW0pTQ10gUmVuYW1lIGl0ZW0oKSB0byBhdCgpIGFuZCBtb3ZlIGl0
IGJlaGluZCBhIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxNzk0MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIHtBcnJheSwgJVR5cGVkQXJyYXklfS5wcm90b3R5cGUuaXRlbSBpcyBvZmZpY2lhbCB3
ZWItaW5jb21wYXRpYmxlLAorICAgICAgICBidXQgaXQgaXMgZXhwZWN0ZWQgdG8gYmUgcmVuYW1l
ZCB0byBgYXRgIGluc3RlYWQgb2YgYmVpbmcgc2NyYXBwZWQgZW50aXJlbHk6CisgICAgICAgIGh0
dHBzOi8vZ2l0aHViLmNvbS90YzM5L3Byb3Bvc2FsLWl0ZW0tbWV0aG9kL2lzc3Vlcy8zNAorCisg
ICAgICAgIFRoaXMgcGF0Y2ggcGVyZm9ybXMgdGhlIHJlbmFtaW5nLCBidXQgZG9lcyBzbyBiZWhp
bmQgYSBydW50aW1lIGZsYWcgc2luY2UgdGhpcyBoYXMgeWV0IHRvIGFjaGlldmUgY29uc2Vuc3Vz
LgorCisgICAgICAgICogYnVpbHRpbnMvQXJyYXlQcm90b3R5cGUuanM6CisgICAgICAgIChhdCk6
CisgICAgICAgIChpdGVtKTogRGVsZXRlZC4KKyAgICAgICAgKiBidWlsdGlucy9UeXBlZEFycmF5
UHJvdG90eXBlLmpzOgorICAgICAgICAoYXQpOgorICAgICAgICAoaXRlbSk6IERlbGV0ZWQuCisg
ICAgICAgICogcnVudGltZS9BcnJheVByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6OkFycmF5
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJy
YXlWaWV3UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNUeXBlZEFycmF5Vmlld1Byb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvT3B0aW9uc0xpc3QuaDoK
KwogMjAyMC0xMC0xOSAgTWFyayBDb2hlbiAgPG1AbXBjLnNoPgogCiAgICAgICAgIHRlc3QyNjI6
IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY29uZGl0aW9uYWwvaW4tYnJhbmNoLTEuanMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9BcnJheVByb3RvdHlwZS5q
cyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9BcnJheVByb3RvdHlwZS5qcwppbmRl
eCAxODQxOWQzYmVmMTBiNGI5OTgwMTY3NTg0NWRkZjhhMDUzYzViODdkLi5kOTU1ZTUyMmVlOGY4
MTMyYjA2NWViZjdlZDcyMmFlODY2NDg1MTc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnVpbHRpbnMvQXJyYXlQcm90b3R5cGUuanMKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2J1aWx0aW5zL0FycmF5UHJvdG90eXBlLmpzCkBAIC02OTYsMTEgKzY5NiwxMSBAQCBmdW5j
dGlvbiBmbGF0TWFwKGNhbGxiYWNrKQogICAgIHJldHVybiBAZmxhdEludG9BcnJheVdpdGhDYWxs
YmFjayhyZXN1bHQsIGFycmF5LCBsZW5ndGgsIDAsIGNhbGxiYWNrLCB0aGlzQXJnKTsKIH0KIAot
ZnVuY3Rpb24gaXRlbShpbmRleCkKK2Z1bmN0aW9uIGF0KGluZGV4KQogewogICAgICJ1c2Ugc3Ry
aWN0IjsKIAotICAgIHZhciBhcnJheSA9IEB0b09iamVjdCh0aGlzLCAiQXJyYXkucHJvdG90eXBl
Lml0ZW0gcmVxdWlyZXMgdGhhdCB8dGhpc3wgbm90IGJlIG51bGwgb3IgdW5kZWZpbmVkIik7Cisg
ICAgdmFyIGFycmF5ID0gQHRvT2JqZWN0KHRoaXMsICJBcnJheS5wcm90b3R5cGUuYXQgcmVxdWly
ZXMgdGhhdCB8dGhpc3wgbm90IGJlIG51bGwgb3IgdW5kZWZpbmVkIik7CiAgICAgdmFyIGxlbmd0
aCA9IEB0b0xlbmd0aChhcnJheS5sZW5ndGgpOwogCiAgICAgdmFyIGsgPSBAdG9JbnRlZ2VyKGlu
ZGV4KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9UeXBlZEFy
cmF5UHJvdG90eXBlLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1R5cGVkQXJy
YXlQcm90b3R5cGUuanMKaW5kZXggNzYyMTNjMjc5OTA1Nzg1Mjk3NzhlZmVkMGYwNGMwMjU4YjI5
YzAwZS4uNzBkN2E3MjhjY2U4ZDk3NWQ4NzY5Njk1YTk0NjRkNjIxNTZlNWJjYyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1R5cGVkQXJyYXlQcm90b3R5cGUuanMK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1R5cGVkQXJyYXlQcm90b3R5cGUu
anMKQEAgLTM4Myw3ICszODMsNyBAQCBmdW5jdGlvbiB0b0xvY2FsZVN0cmluZygvKiBsb2NhbGUs
IG9wdGlvbnMgKi8pCiAgICAgcmV0dXJuIHN0cmluZzsKIH0KIAotZnVuY3Rpb24gaXRlbShpbmRl
eCkKK2Z1bmN0aW9uIGF0KGluZGV4KQogewogICAgICJ1c2Ugc3RyaWN0IjsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlQcm90b3R5cGUuY3BwCmluZGV4IGNkMTAy
YTg2Yzk3MTBhZjYzMjFkOWUxOGY0MTE1MWMwMmVjNmE2MTIuLjZiY2JkNDY1M2JhMTUzZTY0NzJl
YjNhOTlkNjFiMTVjOWExZDZkZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9BcnJheVByb3RvdHlwZS5jcHAKQEAgLTExMCw3ICsxMTAsOSBAQCB2b2lkIEFycmF5UHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QpCiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZtLnByb3Bl
cnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmZpbmRJbmRleFB1YmxpY05hbWUoKSwgYXJyYXlQcm90
b3R5cGVGaW5kSW5kZXhDb2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVy
dHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7CiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9V
VF9UUkFOU0lUSU9OKHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmluY2x1ZGVzUHVi
bGljTmFtZSgpLCBhcnJheVByb3RvdHlwZUluY2x1ZGVzQ29kZUdlbmVyYXRvciwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOwogICAgIEpTQ19CVUlM
VElOX0ZVTkNUSU9OX1dJVEhPVVRfVFJBTlNJVElPTih2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGlu
TmFtZXMoKS5jb3B5V2l0aGluUHVibGljTmFtZSgpLCBhcnJheVByb3RvdHlwZUNvcHlXaXRoaW5D
b2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSk7Ci0gICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZt
LnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLml0ZW1QdWJsaWNOYW1lKCksIGFycmF5UHJv
dG90eXBlSXRlbUNvZGVHZW5lcmF0b3IsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0
dHJpYnV0ZTo6RG9udEVudW0pKTsKKworICAgIGlmIChPcHRpb25zOjp1c2VBdE1ldGhvZCgpKQor
ICAgICAgICBKU0NfQlVJTFRJTl9GVU5DVElPTl9XSVRIT1VUX1RSQU5TSVRJT04odm0ucHJvcGVy
dHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuYXRQdWJsaWNOYW1lKCksIGFycmF5UHJvdG90eXBlQXRD
b2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSk7CiAKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZW50cmllc1ByaXZhdGVOYW1lKCksIGdldERpcmVjdCh2
bSwgdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZW50cmllc1B1YmxpY05hbWUoKSks
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkpKTsKICAg
ICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRp
bk5hbWVzKCkuZm9yRWFjaFByaXZhdGVOYW1lKCksIGdldERpcmVjdCh2bSwgdm0ucHJvcGVydHlO
YW1lcy0+YnVpbHRpbk5hbWVzKCkuZm9yRWFjaFB1YmxpY05hbWUoKSksIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkpKTsKQEAgLTEyMCw2ICsxMjIsNyBA
QCB2b2lkIEFycmF5UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QpCiAgICAgSlNPYmplY3QqIHVuc2NvcGFibGVzID0gY29uc3RydWN0
RW1wdHlPYmplY3Qodm0sIGdsb2JhbE9iamVjdC0+bnVsbFByb3RvdHlwZU9iamVjdFN0cnVjdHVy
ZSgpKTsKICAgICB1bnNjb3BhYmxlcy0+Y29udmVydFRvRGljdGlvbmFyeSh2bSk7CiAgICAgY29u
c3QgSWRlbnRpZmllciogY29uc3QgdW5zY29wYWJsZU5hbWVzW10gPSB7CisgICAgICAgICZ2bS5w
cm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5hdFB1YmxpY05hbWUoKSwKICAgICAgICAgJnZt
LnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmNvcHlXaXRoaW5QdWJsaWNOYW1lKCksCiAg
ICAgICAgICZ2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5lbnRyaWVzUHVibGljTmFt
ZSgpLAogICAgICAgICAmdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZmlsbFB1Ymxp
Y05hbWUoKSwKQEAgLTEyOCw3ICsxMzEsNiBAQCB2b2lkIEFycmF5UHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAgICAgICZ2
bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5mbGF0UHVibGljTmFtZSgpLAogICAgICAg
ICAmdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZmxhdE1hcFB1YmxpY05hbWUoKSwK
ICAgICAgICAgJnZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmluY2x1ZGVzUHVibGlj
TmFtZSgpLAotICAgICAgICAmdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuaXRlbVB1
YmxpY05hbWUoKSwKICAgICAgICAgJnZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmtl
eXNQdWJsaWNOYW1lKCksCiAgICAgICAgICZ2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMo
KS52YWx1ZXNQdWJsaWNOYW1lKCkKICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcAppbmRleCAw
N2RiMmEzN2ZjMjk1MzU2MjJmODBhOGI1NWRiZDExZTZlMDk3YzI5Li44ZGZhNDViZGQ2MTViMjFm
ZGFhZjg4ZTg0MTVmZWJmNWE1Zjg3MzYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcApAQCAtMzc1
LDcgKzM3NSw5IEBAIHZvaWQgSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqCiAgICAgSlNDX0JVSUxUSU5fRlVO
Q1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKCJzb21lIiwgdHlwZWRBcnJheVByb3RvdHlwZVNvbWVD
b2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSk7CiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZt
LnByb3BlcnR5TmFtZXMtPnN1YmFycmF5LCB0eXBlZEFycmF5UHJvdG90eXBlU3ViYXJyYXlDb2Rl
R2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRF
bnVtKSk7CiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZtLnBy
b3BlcnR5TmFtZXMtPnRvTG9jYWxlU3RyaW5nLCB0eXBlZEFycmF5UHJvdG90eXBlVG9Mb2NhbGVT
dHJpbmdDb2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1
dGU6OkRvbnRFbnVtKSk7Ci0gICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lU
SU9OKHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLml0ZW1QdWJsaWNOYW1lKCksIHR5
cGVkQXJyYXlQcm90b3R5cGVJdGVtQ29kZUdlbmVyYXRvciwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOworCisgICAgaWYgKE9wdGlvbnM6OnVzZUF0
TWV0aG9kKCkpCisgICAgICAgIEpTQ19CVUlMVElOX0ZVTkNUSU9OX1dJVEhPVVRfVFJBTlNJVElP
Tih2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5hdFB1YmxpY05hbWUoKSwgdHlwZWRB
cnJheVByb3RvdHlwZUF0Q29kZUdlbmVyYXRvciwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFByb3Bl
cnR5QXR0cmlidXRlOjpEb250RW51bSkpOwogCiAgICAgSlNGdW5jdGlvbiogdG9TdHJpbmdUYWdG
dW5jdGlvbiA9IEpTRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCAwLCAiZ2V0IFtT
eW1ib2wudG9TdHJpbmdUYWddIl9zLCB0eXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY1RvU3Ry
aW5nVGFnLCBOb0ludHJpbnNpYyk7CiAgICAgR2V0dGVyU2V0dGVyKiB0b1N0cmluZ1RhZ0FjY2Vz
c29yID0gR2V0dGVyU2V0dGVyOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgdG9TdHJpbmdUYWdG
dW5jdGlvbiwgbnVsbHB0cik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9PcHRpb25zTGlzdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9u
c0xpc3QuaAppbmRleCAyZTE5YjA4ZGY5NmY3ZTAyNzFlMmVjNzAzZDE0ZTM0NTAyMTAzNzI2Li44
MmQzYjE5NGUzMDAwZjQ1MTA1NzE2YjQxMjMwMmUzMDI4NWVkNTA1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5oCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKQEAgLTQ5MSw2ICs0OTEsNyBAQCBjb25z
dGV4cHIgYm9vbCBlbmFibGVXZWJBc3NlbWJseVN0cmVhbWluZ0FwaSA9IGZhbHNlOwogICAgIHYo
Qm9vbCwgdXNlV2ViQXNzZW1ibHlNdWx0aVZhbHVlcywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdHlw
ZXMgZnJvbSB0aGUgd2FzbSBtdWxpdC12YWx1ZXMgc3BlYy4iKSBcCiAgICAgdihCb29sLCB1c2VX
ZWFrUmVmcywgdHJ1ZSwgTm9ybWFsLCAiRXhwb3NlIHRoZSBXZWFrUmVmIGNvbnN0cnVjdG9yLiIp
IFwKICAgICB2KEJvb2wsIHVzZUludGxEYXRlVGltZUZvcm1hdERheVBlcmlvZCwgdHJ1ZSwgTm9y
bWFsLCAiRXhwb3NlIHRoZSBJbnRsLkRhdGVUaW1lRm9ybWF0IGRheVBlcmlvZCBmZWF0dXJlLiIp
IFwKKyAgICB2KEJvb2wsIHVzZUF0TWV0aG9kLCBmYWxzZSwgTm9ybWFsLCAiRXhwb3NlIHRoZSBh
dCgpIG1ldGhvZCBvbiBBcnJheSBhbmQgJVR5cGVkQXJyYXklLiIpIFwKICAgICB2KEJvb2wsIHVz
ZUFycmF5QWxsb2NhdGlvblByb2ZpbGluZywgdHJ1ZSwgTm9ybWFsLCAiSWYgdHJ1ZSwgd2Ugd2ls
bCB1c2Ugb3VyIG5vcm1hbCBhcnJheSBhbGxvY2F0aW9uIHByb2ZpbGluZy4gSWYgZmFsc2UsIHRo
ZSBhbGxvY2F0aW9uIHByb2ZpbGUgd2lsbCBhbHdheXMgY2xhaW0gdG8gYmUgdW5kZWNpZGVkLiIp
IFwKICAgICB2KEJvb2wsIGZvcmNlUG9seVByb3RvLCBmYWxzZSwgTm9ybWFsLCAiSWYgdHJ1ZSwg
Y3JlYXRlX3RoaXMgd2lsbCBhbHdheXMgY3JlYXRlIGFuIG9iamVjdCB3aXRoIGEgcG9seSBwcm90
byBzdHJ1Y3R1cmUuIikgXAogICAgIHYoQm9vbCwgZm9yY2VNaW5pVk1Nb2RlLCBmYWxzZSwgTm9y
bWFsLCAiSWYgdHJ1ZSwgaXQgd2lsbCBmb3JjZSBtaW5pIFZNIG1vZGUgb24uIikgXApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IDNkNWNmYzg5MDlmMmZmZWRhMGFjMWJjYmUwZjM0NjNlZTIxOWNmYmEuLjVkMDJkMDc1YmU5Zjgz
NWIyYWQ0YzhmZjIyN2ZiNTcxYWFiMjhkODQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMC0x
MC0xOSAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29ueS5jb20+CisKKyAgICAgICAg
W0pTQ10gUmVuYW1lIGl0ZW0oKSB0byBhdCgpIGFuZCBtb3ZlIGl0IGJlaGluZCBhIGZsYWcKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzk0MgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9y
L21vZGVsL3JlbW90ZS1vYmplY3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIGpzL2FycmF5LXVuc2NvcGFibGVzLXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIGpzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBqcy9zY3JpcHQtdGVzdHMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMuanM6CisgICAgICAg
ICoganMvc2NyaXB0LXRlc3RzL2FycmF5LXVuc2NvcGFibGVzLXByb3BlcnRpZXMuanM6CisKIDIw
MjAtMTAtMTkgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFVw
ZGF0ZSBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJv
cGVydGllcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvcmVtb3Rl
LW9iamVjdC1nZXQtcHJvcGVydGllcy1leHBlY3RlZC50eHQKaW5kZXggZGU3YzkxYTBlMjBmYzBj
ZGZhZTI5Y2M0NTE3MzVmNTZjYWQ4NzA2OS4uZjVhZTNmNmEwYjFkYmUyNGQ3N2NmNDg5ZWYxODgw
N2U5NjRkY2JiMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3JlbW90
ZS1vYmplY3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9tb2RlbC9yZW1vdGUtb2JqZWN0LWdldC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dApA
QCAtODUsNyArODUsNiBAQCBBTEwgUFJPUEVSVElFUzoKICAgICBmaW5kSW5kZXgKICAgICBpbmNs
dWRlcwogICAgIGNvcHlXaXRoaW4KLSAgICBpdGVtCiAgICAgY29uc3RydWN0b3IKICAgICBTeW1i
b2woU3ltYm9sLml0ZXJhdG9yKQogICAgIFN5bWJvbChTeW1ib2wudW5zY29wYWJsZXMpCkBAIC0x
MzksNyArMTM4LDYgQEAgT1dOIFBST1BFUlRJRVM6CiAgICAgZmluZEluZGV4CiAgICAgaW5jbHVk
ZXMKICAgICBjb3B5V2l0aGluCi0gICAgaXRlbQogICAgIGNvbnN0cnVjdG9yCiAgICAgU3ltYm9s
KFN5bWJvbC5pdGVyYXRvcikKICAgICBTeW1ib2woU3ltYm9sLnVuc2NvcGFibGVzKQpAQCAtMTc4
LDcgKzE3Niw2IEBAIERJU1BMQVlBQkxFIFBST1BFUlRJRVM6CiAgICAgZmluZEluZGV4CiAgICAg
aW5jbHVkZXMKICAgICBjb3B5V2l0aGluCi0gICAgaXRlbQogICAgIGNvbnN0cnVjdG9yCiAgICAg
U3ltYm9sKFN5bWJvbC5pdGVyYXRvcikKICAgICBTeW1ib2woU3ltYm9sLnVuc2NvcGFibGVzKQpA
QCAtMjE3LDcgKzIxNCw2IEBAIEFMTCBQUk9QRVJUSUVTOgogICAgIGZpbmRJbmRleAogICAgIGlu
Y2x1ZGVzCiAgICAgY29weVdpdGhpbgotICAgIGl0ZW0KICAgICBjb25zdHJ1Y3RvcgogICAgIFN5
bWJvbChTeW1ib2wuaXRlcmF0b3IpCiAgICAgU3ltYm9sKFN5bWJvbC51bnNjb3BhYmxlcykKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2pzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLWV4cGVj
dGVkLnR4dAppbmRleCA1M2JhZTI0ZjIwZjU4YWFhMzM4MjhlODFlMGQ2YmM2MTgzNzhjZWUzLi4y
MjEyNDFhN2QyMjgwODE1NmMwOWY2OTJiM2I2NDI3MTAyODRmYzNjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9qcy9PYmplY3QtZ2V0T3duUHJvcGVydHlOYW1lcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvanMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMtZXhwZWN0ZWQudHh0CkBA
IC00Nyw3ICs0Nyw3IEBAIFBBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlOYW1lcyhPYmplY3QucHJv
dG90eXBlKSBpcyBbJ19fZGVmaW5lR2V0dGVyX18nLCAnX19kZWZpCiBQQVNTIGdldFNvcnRlZE93
blByb3BlcnR5TmFtZXMoRnVuY3Rpb24pIGlzIFsnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBl
J10KIFBBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlOYW1lcyhGdW5jdGlvbi5wcm90b3R5cGUpIGlz
IFsnYXBwbHknLCAnYXJndW1lbnRzJywgJ2JpbmQnLCAnY2FsbCcsICdjYWxsZXInLCAnY29uc3Ry
dWN0b3InLCAnbGVuZ3RoJywgJ25hbWUnLCAndG9TdHJpbmcnXQogUEFTUyBnZXRTb3J0ZWRPd25Q
cm9wZXJ0eU5hbWVzKEFycmF5KSBpcyBbJ2Zyb20nLCAnaXNBcnJheScsICdsZW5ndGgnLCAnbmFt
ZScsICdvZicsICdwcm90b3R5cGUnXQotUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5hbWVzKEFy
cmF5LnByb3RvdHlwZSkgaXMgWydjb25jYXQnLCAnY29uc3RydWN0b3InLCAnY29weVdpdGhpbics
ICdlbnRyaWVzJywgJ2V2ZXJ5JywgJ2ZpbGwnLCAnZmlsdGVyJywgJ2ZpbmQnLCAnZmluZEluZGV4
JywgJ2ZsYXQnLCAnZmxhdE1hcCcsICdmb3JFYWNoJywgJ2luY2x1ZGVzJywgJ2luZGV4T2YnLCAn
aXRlbScsICdqb2luJywgJ2tleXMnLCAnbGFzdEluZGV4T2YnLCAnbGVuZ3RoJywgJ21hcCcsICdw
b3AnLCAncHVzaCcsICdyZWR1Y2UnLCAncmVkdWNlUmlnaHQnLCAncmV2ZXJzZScsICdzaGlmdCcs
ICdzbGljZScsICdzb21lJywgJ3NvcnQnLCAnc3BsaWNlJywgJ3RvTG9jYWxlU3RyaW5nJywgJ3Rv
U3RyaW5nJywgJ3Vuc2hpZnQnLCAndmFsdWVzJ10KK1BBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlO
YW1lcyhBcnJheS5wcm90b3R5cGUpIGlzIFsnY29uY2F0JywgJ2NvbnN0cnVjdG9yJywgJ2NvcHlX
aXRoaW4nLCAnZW50cmllcycsICdldmVyeScsICdmaWxsJywgJ2ZpbHRlcicsICdmaW5kJywgJ2Zp
bmRJbmRleCcsICdmbGF0JywgJ2ZsYXRNYXAnLCAnZm9yRWFjaCcsICdpbmNsdWRlcycsICdpbmRl
eE9mJywgJ2pvaW4nLCAna2V5cycsICdsYXN0SW5kZXhPZicsICdsZW5ndGgnLCAnbWFwJywgJ3Bv
cCcsICdwdXNoJywgJ3JlZHVjZScsICdyZWR1Y2VSaWdodCcsICdyZXZlcnNlJywgJ3NoaWZ0Jywg
J3NsaWNlJywgJ3NvbWUnLCAnc29ydCcsICdzcGxpY2UnLCAndG9Mb2NhbGVTdHJpbmcnLCAndG9T
dHJpbmcnLCAndW5zaGlmdCcsICd2YWx1ZXMnXQogUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5h
bWVzKFN0cmluZykgaXMgWydmcm9tQ2hhckNvZGUnLCAnZnJvbUNvZGVQb2ludCcsICdsZW5ndGgn
LCAnbmFtZScsICdwcm90b3R5cGUnLCAncmF3J10KIFBBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlO
YW1lcyhTdHJpbmcucHJvdG90eXBlKSBpcyBbJ2FuY2hvcicsICdiaWcnLCAnYmxpbmsnLCAnYm9s
ZCcsICdjaGFyQXQnLCAnY2hhckNvZGVBdCcsICdjb2RlUG9pbnRBdCcsICdjb25jYXQnLCAnY29u
c3RydWN0b3InLCAnZW5kc1dpdGgnLCAnZml4ZWQnLCAnZm9udGNvbG9yJywgJ2ZvbnRzaXplJywg
J2luY2x1ZGVzJywgJ2luZGV4T2YnLCAnaXRhbGljcycsICdsYXN0SW5kZXhPZicsICdsZW5ndGgn
LCAnbGluaycsICdsb2NhbGVDb21wYXJlJywgJ21hdGNoJywgJ21hdGNoQWxsJywgJ25vcm1hbGl6
ZScsICdwYWRFbmQnLCAncGFkU3RhcnQnLCAncmVwZWF0JywgJ3JlcGxhY2UnLCAncmVwbGFjZUFs
bCcsICdzZWFyY2gnLCAnc2xpY2UnLCAnc21hbGwnLCAnc3BsaXQnLCAnc3RhcnRzV2l0aCcsICdz
dHJpa2UnLCAnc3ViJywgJ3N1YnN0cicsICdzdWJzdHJpbmcnLCAnc3VwJywgJ3RvTG9jYWxlTG93
ZXJDYXNlJywgJ3RvTG9jYWxlVXBwZXJDYXNlJywgJ3RvTG93ZXJDYXNlJywgJ3RvU3RyaW5nJywg
J3RvVXBwZXJDYXNlJywgJ3RyaW0nLCAndHJpbUVuZCcsICd0cmltTGVmdCcsICd0cmltUmlnaHQn
LCAndHJpbVN0YXJ0JywgJ3ZhbHVlT2YnXQogUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5hbWVz
KEJvb2xlYW4pIGlzIFsnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJ10KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2pzL2FycmF5LXVuc2NvcGFibGVzLXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvanMvYXJyYXktdW5zY29wYWJsZXMtcHJvcGVydGllcy1leHBlY3RlZC50
eHQKaW5kZXggYzQwNmI4NmI0MmY3NTgwNDg1ZWUxOTI2YzRhOTFhOTk5ODQxYjVhMC4uMzQyMmEw
ZjU5YWQwNDVkZDUyNGYzZGUzOWUyZGQxMmE3Y2VjNzFjOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvanMvYXJyYXktdW5zY29wYWJsZXMtcHJvcGVydGllcy1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvanMvYXJyYXktdW5zY29wYWJsZXMtcHJvcGVydGllcy1leHBlY3RlZC50eHQKQEAg
LTEwLDYgKzEwLDEwIEBAIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBcnJh
eS5wcm90b3R5cGUsIFN5bWJvbC51bnNjb3BhYmxlcykuZW51bWVyCiBQQVNTIE9iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3IoQXJyYXkucHJvdG90eXBlLCBTeW1ib2wudW5zY29wYWJsZXMp
LmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKEFy
cmF5LnByb3RvdHlwZVtTeW1ib2wudW5zY29wYWJsZXNdKSBpcyBleHBlY3RlZEVudHJpZXMKIFBB
U1MgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhBcnJheS5wcm90b3R5cGVbU3ltYm9sLnVu
c2NvcGFibGVzXSkgaXMgW10KK1BBU1MgQXJyYXkucHJvdG90eXBlW1N5bWJvbC51bnNjb3BhYmxl
c11bImF0Il0gaXMgdHJ1ZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFy
cmF5LnByb3RvdHlwZVtTeW1ib2wudW5zY29wYWJsZXNdLCAiYXQiKS53cml0YWJsZSBpcyB0cnVl
CitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQXJyYXkucHJvdG90eXBlW1N5
bWJvbC51bnNjb3BhYmxlc10sICJhdCIpLmVudW1lcmFibGUgaXMgdHJ1ZQorUEFTUyBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFycmF5LnByb3RvdHlwZVtTeW1ib2wudW5zY29wYWJs
ZXNdLCAiYXQiKS5jb25maWd1cmFibGUgaXMgdHJ1ZQogUEFTUyBBcnJheS5wcm90b3R5cGVbU3lt
Ym9sLnVuc2NvcGFibGVzXVsiY29weVdpdGhpbiJdIGlzIHRydWUKIFBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihBcnJheS5wcm90b3R5cGVbU3ltYm9sLnVuc2NvcGFibGVzXSwg
ImNvcHlXaXRoaW4iKS53cml0YWJsZSBpcyB0cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoQXJyYXkucHJvdG90eXBlW1N5bWJvbC51bnNjb3BhYmxlc10sICJjb3B5V2l0
aGluIikuZW51bWVyYWJsZSBpcyB0cnVlCkBAIC00MiwxMCArNDYsNiBAQCBQQVNTIEFycmF5LnBy
b3RvdHlwZVtTeW1ib2wudW5zY29wYWJsZXNdWyJpbmNsdWRlcyJdIGlzIHRydWUKIFBBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBcnJheS5wcm90b3R5cGVbU3ltYm9sLnVuc2Nv
cGFibGVzXSwgImluY2x1ZGVzIikud3JpdGFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKEFycmF5LnByb3RvdHlwZVtTeW1ib2wudW5zY29wYWJsZXNdLCAi
aW5jbHVkZXMiKS5lbnVtZXJhYmxlIGlzIHRydWUKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihBcnJheS5wcm90b3R5cGVbU3ltYm9sLnVuc2NvcGFibGVzXSwgImluY2x1ZGVz
IikuY29uZmlndXJhYmxlIGlzIHRydWUKLVBBU1MgQXJyYXkucHJvdG90eXBlW1N5bWJvbC51bnNj
b3BhYmxlc11bIml0ZW0iXSBpcyB0cnVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoQXJyYXkucHJvdG90eXBlW1N5bWJvbC51bnNjb3BhYmxlc10sICJpdGVtIikud3JpdGFi
bGUgaXMgdHJ1ZQotUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFycmF5LnBy
b3RvdHlwZVtTeW1ib2wudW5zY29wYWJsZXNdLCAiaXRlbSIpLmVudW1lcmFibGUgaXMgdHJ1ZQot
UEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFycmF5LnByb3RvdHlwZVtTeW1i
b2wudW5zY29wYWJsZXNdLCAiaXRlbSIpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCiBQQVNTIEFycmF5
LnByb3RvdHlwZVtTeW1ib2wudW5zY29wYWJsZXNdWyJrZXlzIl0gaXMgdHJ1ZQogUEFTUyBPYmpl
Y3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFycmF5LnByb3RvdHlwZVtTeW1ib2wudW5zY29w
YWJsZXNdLCAia2V5cyIpLndyaXRhYmxlIGlzIHRydWUKIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcihBcnJheS5wcm90b3R5cGVbU3ltYm9sLnVuc2NvcGFibGVzXSwgImtleXMi
KS5lbnVtZXJhYmxlIGlzIHRydWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10
ZXN0cy9PYmplY3QtZ2V0T3duUHJvcGVydHlOYW1lcy5qcyBiL0xheW91dFRlc3RzL2pzL3Njcmlw
dC10ZXN0cy9PYmplY3QtZ2V0T3duUHJvcGVydHlOYW1lcy5qcwppbmRleCBmZjBmOWQzYzQwMzY1
MDkxMGRkNTYzMDRjMDdkMTExMGY4OTBhOWE0Li5jYjAxMzQ5NTJiODAyN2RlYzFiZmJhOGVhNjI0
MTJiOTQ1NjhmMTNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvT2Jq
ZWN0LWdldE93blByb3BlcnR5TmFtZXMuanMKKysrIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRl
c3RzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLmpzCkBAIC01Niw3ICs1Niw3IEBAIHZhciBl
eHBlY3RlZFByb3BlcnR5TmFtZXNTZXQgPSB7CiAgICAgIkZ1bmN0aW9uIjogIlsnbGVuZ3RoJywg
J25hbWUnLCAncHJvdG90eXBlJ10iLAogICAgICJGdW5jdGlvbi5wcm90b3R5cGUiOiAiWydhcHBs
eScsICdhcmd1bWVudHMnLCAnYmluZCcsICdjYWxsJywgJ2NhbGxlcicsICdjb25zdHJ1Y3Rvcics
ICdsZW5ndGgnLCAnbmFtZScsICd0b1N0cmluZyddIiwKICAgICAiQXJyYXkiOiAiWydmcm9tJywg
J2lzQXJyYXknLCAnbGVuZ3RoJywgJ25hbWUnLCAnb2YnLCAncHJvdG90eXBlJ10iLAotICAgICJB
cnJheS5wcm90b3R5cGUiOiAiWydjb25jYXQnLCAnY29uc3RydWN0b3InLCAnY29weVdpdGhpbics
ICdlbnRyaWVzJywgJ2V2ZXJ5JywgJ2ZpbGwnLCAnZmlsdGVyJywgJ2ZpbmQnLCAnZmluZEluZGV4
JywgJ2ZsYXQnLCAnZmxhdE1hcCcsICdmb3JFYWNoJywgJ2luY2x1ZGVzJywgJ2luZGV4T2YnLCAn
aXRlbScsICdqb2luJywgJ2tleXMnLCAnbGFzdEluZGV4T2YnLCAnbGVuZ3RoJywgJ21hcCcsICdw
b3AnLCAncHVzaCcsICdyZWR1Y2UnLCAncmVkdWNlUmlnaHQnLCAncmV2ZXJzZScsICdzaGlmdCcs
ICdzbGljZScsICdzb21lJywgJ3NvcnQnLCAnc3BsaWNlJywgJ3RvTG9jYWxlU3RyaW5nJywgJ3Rv
U3RyaW5nJywgJ3Vuc2hpZnQnLCAndmFsdWVzJ10iLAorICAgICJBcnJheS5wcm90b3R5cGUiOiAi
Wydjb25jYXQnLCAnY29uc3RydWN0b3InLCAnY29weVdpdGhpbicsICdlbnRyaWVzJywgJ2V2ZXJ5
JywgJ2ZpbGwnLCAnZmlsdGVyJywgJ2ZpbmQnLCAnZmluZEluZGV4JywgJ2ZsYXQnLCAnZmxhdE1h
cCcsICdmb3JFYWNoJywgJ2luY2x1ZGVzJywgJ2luZGV4T2YnLCAnam9pbicsICdrZXlzJywgJ2xh
c3RJbmRleE9mJywgJ2xlbmd0aCcsICdtYXAnLCAncG9wJywgJ3B1c2gnLCAncmVkdWNlJywgJ3Jl
ZHVjZVJpZ2h0JywgJ3JldmVyc2UnLCAnc2hpZnQnLCAnc2xpY2UnLCAnc29tZScsICdzb3J0Jywg
J3NwbGljZScsICd0b0xvY2FsZVN0cmluZycsICd0b1N0cmluZycsICd1bnNoaWZ0JywgJ3ZhbHVl
cyddIiwKICAgICAiU3RyaW5nIjogIlsnZnJvbUNoYXJDb2RlJywgJ2Zyb21Db2RlUG9pbnQnLCAn
bGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJywgJ3JhdyddIiwKICAgICAiU3RyaW5nLnByb3Rv
dHlwZSI6ICJbJ2FuY2hvcicsICdiaWcnLCAnYmxpbmsnLCAnYm9sZCcsICdjaGFyQXQnLCAnY2hh
ckNvZGVBdCcsICdjb2RlUG9pbnRBdCcsICdjb25jYXQnLCAnY29uc3RydWN0b3InLCAnZW5kc1dp
dGgnLCAnZml4ZWQnLCAnZm9udGNvbG9yJywgJ2ZvbnRzaXplJywgJ2luY2x1ZGVzJywgJ2luZGV4
T2YnLCAnaXRhbGljcycsICdsYXN0SW5kZXhPZicsICdsZW5ndGgnLCAnbGluaycsICdsb2NhbGVD
b21wYXJlJywgJ21hdGNoJywgJ21hdGNoQWxsJywgJ25vcm1hbGl6ZScsICdwYWRFbmQnLCAncGFk
U3RhcnQnLCAncmVwZWF0JywgJ3JlcGxhY2UnLCAncmVwbGFjZUFsbCcsICdzZWFyY2gnLCAnc2xp
Y2UnLCAnc21hbGwnLCAnc3BsaXQnLCAnc3RhcnRzV2l0aCcsICdzdHJpa2UnLCAnc3ViJywgJ3N1
YnN0cicsICdzdWJzdHJpbmcnLCAnc3VwJywgJ3RvTG9jYWxlTG93ZXJDYXNlJywgJ3RvTG9jYWxl
VXBwZXJDYXNlJywgJ3RvTG93ZXJDYXNlJywgJ3RvU3RyaW5nJywgJ3RvVXBwZXJDYXNlJywgJ3Ry
aW0nLCAndHJpbUVuZCcsICd0cmltTGVmdCcsICd0cmltUmlnaHQnLCAndHJpbVN0YXJ0JywgJ3Zh
bHVlT2YnXSIsCiAgICAgIkJvb2xlYW4iOiAiWydsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5cGUn
XSIsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvYXJyYXktdW5zY29w
YWJsZXMtcHJvcGVydGllcy5qcyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9hcnJheS11
bnNjb3BhYmxlcy1wcm9wZXJ0aWVzLmpzCmluZGV4IDIyNGRiOTVhOWJjYjUzMzI5NGUzYzAzYWZm
NDEyMWM3NWIyZjYyMzkuLjE1MjA3NGQ3Zjc3Y2JkMjY3NjMwNTE4ZWM1MjJlNmVlNTVlZWI2YzAg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9hcnJheS11bnNjb3BhYmxl
cy1wcm9wZXJ0aWVzLmpzCisrKyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9hcnJheS11
bnNjb3BhYmxlcy1wcm9wZXJ0aWVzLmpzCkBAIC03LDYgKzcsNyBAQCBzaG91bGRCZUZhbHNlKCJP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFycmF5LnByb3RvdHlwZSwgU3ltYm9sLnVu
c2NvcGFibAogc2hvdWxkQmVUcnVlKCJPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFy
cmF5LnByb3RvdHlwZSwgU3ltYm9sLnVuc2NvcGFibGVzKS5jb25maWd1cmFibGUiKTsKIAogbGV0
IGV4cGVjdGVkRW50cmllcyA9IFsKKyAgICAiYXQiLAogICAgICJjb3B5V2l0aGluIiwKICAgICAi
ZW50cmllcyIsCiAgICAgImZpbGwiLApAQCAtMTUsNyArMTYsNiBAQCBsZXQgZXhwZWN0ZWRFbnRy
aWVzID0gWwogICAgICJmbGF0IiwKICAgICAiZmxhdE1hcCIsCiAgICAgImluY2x1ZGVzIiwKLSAg
ICAiaXRlbSIsCiAgICAgImtleXMiLAogICAgICJ2YWx1ZXMiCiBdOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy9DaGFuZ2VMb2cgYi9KU1Rlc3RzL0NoYW5nZUxvZwppbmRleCA1NmIyMDBkNGY0MDk4NTJi
ZTRjZThmMjE3ZDhjZmJlZTRjOGZkNTFlLi4yMzU3MWYwZThlN2M3NzhiYWY0YWEwMTkzOTFhNWYy
NjI4M2FhMGEzIDEwMDY0NAotLS0gYS9KU1Rlc3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIwLTEwLTE5ICBSb3NzIEtpcnNsaW5nICA8cm9z
cy5raXJzbGluZ0Bzb255LmNvbT4KKworICAgICAgICBbSlNDXSBSZW5hbWUgaXRlbSgpIHRvIGF0
KCkgYW5kIG1vdmUgaXQgYmVoaW5kIGEgZmxhZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3OTQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvYXQtbWV0aG9kLmpzOiBSZW5hbWVkIGZyb20g
SlNUZXN0cy9zdHJlc3MvaXRlbS1tZXRob2QuanMuCisgICAgICAgICogdGVzdDI2Mi9jb25maWcu
eWFtbDogQWRkIHNraXBzIHVudGlsIHRoZSBmZWF0dXJlIGlzIHJlbmFtZWQuCisKIDIwMjAtMTAt
MTkgIE1hcmsgQ29oZW4gIDxtQG1wYy5zaD4KIAogICAgICAgICB0ZXN0MjYyOiB0ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2NvbmRpdGlvbmFsL2luLWJyYW5jaC0xLmpzCmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3N0cmVzcy9hdC1tZXRob2QuanMgYi9KU1Rlc3RzL3N0cmVzcy9hdC1tZXRob2QuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOTFlNjI3YjM5Mzk4YzUzZDIwYjhmZWNjMzZiOTVjZjQ4Y2Q4YjA1NAotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL2F0LW1ldGhvZC5qcwpAQCAtMCwwICsxLDUx
IEBACisvL0AgcmVxdWlyZU9wdGlvbnMoIi0tdXNlQXRNZXRob2Q9MSIpCisKK2Z1bmN0aW9uIHNo
b3VsZEJlKGFjdHVhbCwgZXhwZWN0ZWQpIHsKKyAgICBpZiAoYWN0dWFsICE9PSBleHBlY3RlZCkK
KyAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBleHBlY3RlZCAke2V4cGVjdGVkfSBidXQgZ290ICR7
YWN0dWFsfWApOworfQorCitmdW5jdGlvbiBzaG91bGRUaHJvd1R5cGVFcnJvcihmdW5jKSB7Cisg
ICAgbGV0IGVycm9yOworICAgIHRyeSB7CisgICAgICAgIGZ1bmMoKTsKKyAgICB9IGNhdGNoIChl
KSB7CisgICAgICAgIGVycm9yID0gZTsKKyAgICB9CisKKyAgICBpZiAoIShlcnJvciBpbnN0YW5j
ZW9mIFR5cGVFcnJvcikpCisgICAgICAgIHRocm93IG5ldyBFcnJvcignRXhwZWN0ZWQgVHlwZUVy
cm9yIScpOworfQorCitzaG91bGRCZShBcnJheS5wcm90b3R5cGUuYXQubGVuZ3RoLCAxKTsKK3No
b3VsZFRocm93VHlwZUVycm9yKCgpID0+IEFycmF5LnByb3RvdHlwZS5hdC5jYWxsKHVuZGVmaW5l
ZCkpOworc2hvdWxkVGhyb3dUeXBlRXJyb3IoKCkgPT4gQXJyYXkucHJvdG90eXBlLmF0LmNhbGwo
bnVsbCkpOworCitjb25zdCBhcnJheSA9IFs0MiwgJ2InLCB0cnVlXTsKKy8vIGludGVudGlvbmFs
bHkgZ28gb25lIHRvbyBmYXIgdG8gZW5zdXJlIHRoYXQgd2UgZ2V0IHVuZGVmaW5lZCBpbnN0ZWFk
IG9mIHdyYXBwaW5nCitmb3IgKGxldCBpID0gMDsgaSA8PSBhcnJheS5sZW5ndGg7IGkrKykgewor
ICBzaG91bGRCZShhcnJheS5hdChpKSwgYXJyYXlbaV0pOworICBzaG91bGRCZShhcnJheS5hdCgt
aSAtIDEpLCBhcnJheVthcnJheS5sZW5ndGggLSBpIC0gMV0pOworfQorc2hvdWxkQmUoYXJyYXku
YXQoKSwgYXJyYXlbMF0pOworc2hvdWxkQmUoYXJyYXkuYXQobnVsbCksIGFycmF5WzBdKTsKK3No
b3VsZEJlKGFycmF5LmF0KHsgdmFsdWVPZjogKCkgPT4gLTEgfSksIGFycmF5W2FycmF5Lmxlbmd0
aCAtIDFdKTsKKworY29uc3Qgd2VpcmRBcnJheUxpa2UgPSB7IGxlbmd0aDogMSwgZ2V0ICcwJygp
IHsgcmV0dXJuIDM7IH0sIGdldCAnMScoKSB7IHRocm93ICdvb3BzJzsgfSB9Oworc2hvdWxkQmUo
QXJyYXkucHJvdG90eXBlLmF0LmNhbGwod2VpcmRBcnJheUxpa2UsIDApLCAzKTsKK3Nob3VsZEJl
KEFycmF5LnByb3RvdHlwZS5hdC5jYWxsKHdlaXJkQXJyYXlMaWtlLCAxKSwgdW5kZWZpbmVkKTsK
KworZm9yIChjb25zdCBUQSBvZiBbSW50OEFycmF5LCBVaW50OEFycmF5LCBVaW50OENsYW1wZWRB
cnJheSwgSW50MTZBcnJheSwgVWludDE2QXJyYXksIEludDMyQXJyYXksIFVpbnQzMkFycmF5LCBG
bG9hdDMyQXJyYXksIEZsb2F0NjRBcnJheV0pIHsKKyAgc2hvdWxkQmUoVEEucHJvdG90eXBlLmF0
Lmxlbmd0aCwgMSk7CisgIHNob3VsZFRocm93VHlwZUVycm9yKCgpID0+IFRBLnByb3RvdHlwZS5h
dC5jYWxsKFtdKSk7CisKKyAgY29uc3QgdGEgPSBbMSwgMiwgM107CisgIC8vIGludGVudGlvbmFs
bHkgZ28gb25lIHRvbyBmYXIgdG8gZW5zdXJlIHRoYXQgd2UgZ2V0IHVuZGVmaW5lZCBpbnN0ZWFk
IG9mIHdyYXBwaW5nCisgIGZvciAobGV0IGkgPSAwOyBpIDw9IHRhLmxlbmd0aDsgaSsrKSB7Cisg
ICAgc2hvdWxkQmUodGEuYXQoaSksIHRhW2ldKTsKKyAgICBzaG91bGRCZSh0YS5hdCgtaSAtIDEp
LCB0YVt0YS5sZW5ndGggLSBpIC0gMV0pOworICB9CisgIHNob3VsZEJlKHRhLmF0KCksIHRhWzBd
KTsKKyAgc2hvdWxkQmUodGEuYXQobnVsbCksIHRhWzBdKTsKKyAgc2hvdWxkQmUodGEuYXQoeyB2
YWx1ZU9mOiAoKSA9PiAtMSB9KSwgdGFbdGEubGVuZ3RoIC0gMV0pOworfQpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy9zdHJlc3MvaXRlbS1tZXRob2QuanMgYi9KU1Rlc3RzL3N0cmVzcy9pdGVtLW1ldGhv
ZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmE2YTY3N2NiOTE2YWQ0Nzg2Yjg1
YTM0NDJhNjU4MzJkN2MzNzZkZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9KU1Rlc3RzL3N0cmVzcy9pdGVtLW1ldGhvZC5qcworKysgL2Rldi9udWxsCkBA
IC0xLDQ5ICswLDAgQEAKLWZ1bmN0aW9uIHNob3VsZEJlKGFjdHVhbCwgZXhwZWN0ZWQpIHsKLSAg
ICBpZiAoYWN0dWFsICE9PSBleHBlY3RlZCkKLSAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBleHBl
Y3RlZCAke2V4cGVjdGVkfSBidXQgZ290ICR7YWN0dWFsfWApOwotfQotCi1mdW5jdGlvbiBzaG91
bGRUaHJvd1R5cGVFcnJvcihmdW5jKSB7Ci0gICAgbGV0IGVycm9yOwotICAgIHRyeSB7Ci0gICAg
ICAgIGZ1bmMoKTsKLSAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIGVycm9yID0gZTsKLSAgICB9
Ci0KLSAgICBpZiAoIShlcnJvciBpbnN0YW5jZW9mIFR5cGVFcnJvcikpCi0gICAgICAgIHRocm93
IG5ldyBFcnJvcignRXhwZWN0ZWQgVHlwZUVycm9yIScpOwotfQotCi1zaG91bGRCZShBcnJheS5w
cm90b3R5cGUuaXRlbS5sZW5ndGgsIDEpOwotc2hvdWxkVGhyb3dUeXBlRXJyb3IoKCkgPT4gQXJy
YXkucHJvdG90eXBlLml0ZW0uY2FsbCh1bmRlZmluZWQpKTsKLXNob3VsZFRocm93VHlwZUVycm9y
KCgpID0+IEFycmF5LnByb3RvdHlwZS5pdGVtLmNhbGwobnVsbCkpOwotCi1jb25zdCBhcnJheSA9
IFs0MiwgJ2InLCB0cnVlXTsKLS8vIGludGVudGlvbmFsbHkgZ28gb25lIHRvbyBmYXIgdG8gZW5z
dXJlIHRoYXQgd2UgZ2V0IHVuZGVmaW5lZCBpbnN0ZWFkIG9mIHdyYXBwaW5nCi1mb3IgKGxldCBp
ID0gMDsgaSA8PSBhcnJheS5sZW5ndGg7IGkrKykgewotICBzaG91bGRCZShhcnJheS5pdGVtKGkp
LCBhcnJheVtpXSk7Ci0gIHNob3VsZEJlKGFycmF5Lml0ZW0oLWkgLSAxKSwgYXJyYXlbYXJyYXku
bGVuZ3RoIC0gaSAtIDFdKTsKLX0KLXNob3VsZEJlKGFycmF5Lml0ZW0oKSwgYXJyYXlbMF0pOwot
c2hvdWxkQmUoYXJyYXkuaXRlbShudWxsKSwgYXJyYXlbMF0pOwotc2hvdWxkQmUoYXJyYXkuaXRl
bSh7IHZhbHVlT2Y6ICgpID0+IC0xIH0pLCBhcnJheVthcnJheS5sZW5ndGggLSAxXSk7Ci0KLWNv
bnN0IHdlaXJkQXJyYXlMaWtlID0geyBsZW5ndGg6IDEsIGdldCAnMCcoKSB7IHJldHVybiAzOyB9
LCBnZXQgJzEnKCkgeyB0aHJvdyAnb29wcyc7IH0gfTsKLXNob3VsZEJlKEFycmF5LnByb3RvdHlw
ZS5pdGVtLmNhbGwod2VpcmRBcnJheUxpa2UsIDApLCAzKTsKLXNob3VsZEJlKEFycmF5LnByb3Rv
dHlwZS5pdGVtLmNhbGwod2VpcmRBcnJheUxpa2UsIDEpLCB1bmRlZmluZWQpOwotCi1mb3IgKGNv
bnN0IFRBIG9mIFtJbnQ4QXJyYXksIFVpbnQ4QXJyYXksIFVpbnQ4Q2xhbXBlZEFycmF5LCBJbnQx
NkFycmF5LCBVaW50MTZBcnJheSwgSW50MzJBcnJheSwgVWludDMyQXJyYXksIEZsb2F0MzJBcnJh
eSwgRmxvYXQ2NEFycmF5XSkgewotICBzaG91bGRCZShUQS5wcm90b3R5cGUuaXRlbS5sZW5ndGgs
IDEpOwotICBzaG91bGRUaHJvd1R5cGVFcnJvcigoKSA9PiBUQS5wcm90b3R5cGUuaXRlbS5jYWxs
KFtdKSk7Ci0KLSAgY29uc3QgdGEgPSBbMSwgMiwgM107Ci0gIC8vIGludGVudGlvbmFsbHkgZ28g
b25lIHRvbyBmYXIgdG8gZW5zdXJlIHRoYXQgd2UgZ2V0IHVuZGVmaW5lZCBpbnN0ZWFkIG9mIHdy
YXBwaW5nCi0gIGZvciAobGV0IGkgPSAwOyBpIDw9IHRhLmxlbmd0aDsgaSsrKSB7Ci0gICAgc2hv
dWxkQmUodGEuaXRlbShpKSwgdGFbaV0pOwotICAgIHNob3VsZEJlKHRhLml0ZW0oLWkgLSAxKSwg
dGFbdGEubGVuZ3RoIC0gaSAtIDFdKTsKLSAgfQotICBzaG91bGRCZSh0YS5pdGVtKCksIHRhWzBd
KTsKLSAgc2hvdWxkQmUodGEuaXRlbShudWxsKSwgdGFbMF0pOwotICBzaG91bGRCZSh0YS5pdGVt
KHsgdmFsdWVPZjogKCkgPT4gLTEgfSksIHRhW3RhLmxlbmd0aCAtIDFdKTsKLX0KZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi9jb25maWcueWFtbCBiL0pTVGVzdHMvdGVzdDI2Mi9jb25maWcu
eWFtbAppbmRleCAzMWQ4OGVjZDk5OGQxMjMwMmIwMTRiYWIzYjZmODQ4MjM2MTU3NmViLi5iOTE0
OTY3YmRiNzA1MDQyYjg4ZmI5ZjU4MGJiZGFkOWRkOGNlM2IxIDEwMDY0NAotLS0gYS9KU1Rlc3Rz
L3Rlc3QyNjIvY29uZmlnLnlhbWwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL2NvbmZpZy55YW1sCkBA
IC0yNyw2ICsyNywxMCBAQCBza2lwOgogICAgIC0gdG9wLWxldmVsLWF3YWl0CiAgICAgLSBJbnRs
Lkxpc3RGb3JtYXQKIAorICAgICMgcmVtb3ZlIG9uY2UgaXQncyBiZWVuIHJlbmFtZWQgaW4gdGVz
dDI2MgorICAgIC0gQXJyYXkucHJvdG90eXBlLml0ZW0KKyAgICAtIFR5cGVkQXJyYXkucHJvdG90
eXBlLml0ZW0KKwogICAgICMgcmVtb3ZlIG9uY2UgaXQncyBubyBsb25nZXIgaW4gdGVzdDI2Mgog
ICAgIC0gU3RyaW5nLnByb3RvdHlwZS5pdGVtCiAgIHBhdGhzOgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411894</attachid>
            <date>2020-10-20 11:46:54 -0700</date>
            <delta_ts>2020-10-20 14:23:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217942-20201020114653.patch</filename>
            <type>text/plain</type>
            <size>22671</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4Njg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
ZTM4NTMwOWQxODc4YjQ1MTU5M2MxMmM2ZjMxY2MzMmRmZGUwMDE3Li5jYjNkNjZkMDkzOGUwNDU3
NDE1NjM3OTUwNDIzN2MzZGM3Y2U4MThmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAyMC0xMC0yMCAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgW0pTQ10gUmVuYW1lIGl0ZW0oKSB0byBhdCgpIGFuZCBtb3ZlIGl0
IGJlaGluZCBhIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxNzk0MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIHtBcnJheSwgJVR5cGVkQXJyYXklfS5wcm90b3R5cGUuaXRlbSBpcyBvZmZpY2lhbCB3
ZWItaW5jb21wYXRpYmxlLAorICAgICAgICBidXQgaXQgaXMgZXhwZWN0ZWQgdG8gYmUgcmVuYW1l
ZCB0byBgYXRgIGluc3RlYWQgb2YgYmVpbmcgc2NyYXBwZWQgZW50aXJlbHk6CisgICAgICAgIGh0
dHBzOi8vZ2l0aHViLmNvbS90YzM5L3Byb3Bvc2FsLWl0ZW0tbWV0aG9kL2lzc3Vlcy8zNAorCisg
ICAgICAgIFRoaXMgcGF0Y2ggcGVyZm9ybXMgdGhlIHJlbmFtaW5nLCBidXQgZG9lcyBzbyBiZWhp
bmQgYSBydW50aW1lIGZsYWcgc2luY2UgdGhpcyBoYXMgeWV0IHRvIGFjaGlldmUgY29uc2Vuc3Vz
LgorCisgICAgICAgICogYnVpbHRpbnMvQXJyYXlQcm90b3R5cGUuanM6CisgICAgICAgIChhdCk6
CisgICAgICAgIChpdGVtKTogRGVsZXRlZC4KKyAgICAgICAgKiBidWlsdGlucy9UeXBlZEFycmF5
UHJvdG90eXBlLmpzOgorICAgICAgICAoYXQpOgorICAgICAgICAoaXRlbSk6IERlbGV0ZWQuCisg
ICAgICAgICogcnVudGltZS9BcnJheVByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6OkFycmF5
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJy
YXlWaWV3UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNUeXBlZEFycmF5Vmlld1Byb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvT3B0aW9uc0xpc3QuaDoK
KwogMjAyMC0xMC0xOSAgTWFyayBDb2hlbiAgPG1AbXBjLnNoPgogCiAgICAgICAgIHRlc3QyNjI6
IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY29uZGl0aW9uYWwvaW4tYnJhbmNoLTEuanMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9BcnJheVByb3RvdHlwZS5q
cyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9BcnJheVByb3RvdHlwZS5qcwppbmRl
eCAxODQxOWQzYmVmMTBiNGI5OTgwMTY3NTg0NWRkZjhhMDUzYzViODdkLi5kOTU1ZTUyMmVlOGY4
MTMyYjA2NWViZjdlZDcyMmFlODY2NDg1MTc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnVpbHRpbnMvQXJyYXlQcm90b3R5cGUuanMKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2J1aWx0aW5zL0FycmF5UHJvdG90eXBlLmpzCkBAIC02OTYsMTEgKzY5NiwxMSBAQCBmdW5j
dGlvbiBmbGF0TWFwKGNhbGxiYWNrKQogICAgIHJldHVybiBAZmxhdEludG9BcnJheVdpdGhDYWxs
YmFjayhyZXN1bHQsIGFycmF5LCBsZW5ndGgsIDAsIGNhbGxiYWNrLCB0aGlzQXJnKTsKIH0KIAot
ZnVuY3Rpb24gaXRlbShpbmRleCkKK2Z1bmN0aW9uIGF0KGluZGV4KQogewogICAgICJ1c2Ugc3Ry
aWN0IjsKIAotICAgIHZhciBhcnJheSA9IEB0b09iamVjdCh0aGlzLCAiQXJyYXkucHJvdG90eXBl
Lml0ZW0gcmVxdWlyZXMgdGhhdCB8dGhpc3wgbm90IGJlIG51bGwgb3IgdW5kZWZpbmVkIik7Cisg
ICAgdmFyIGFycmF5ID0gQHRvT2JqZWN0KHRoaXMsICJBcnJheS5wcm90b3R5cGUuYXQgcmVxdWly
ZXMgdGhhdCB8dGhpc3wgbm90IGJlIG51bGwgb3IgdW5kZWZpbmVkIik7CiAgICAgdmFyIGxlbmd0
aCA9IEB0b0xlbmd0aChhcnJheS5sZW5ndGgpOwogCiAgICAgdmFyIGsgPSBAdG9JbnRlZ2VyKGlu
ZGV4KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9UeXBlZEFy
cmF5UHJvdG90eXBlLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1R5cGVkQXJy
YXlQcm90b3R5cGUuanMKaW5kZXggNzYyMTNjMjc5OTA1Nzg1Mjk3NzhlZmVkMGYwNGMwMjU4YjI5
YzAwZS4uNzBkN2E3MjhjY2U4ZDk3NWQ4NzY5Njk1YTk0NjRkNjIxNTZlNWJjYyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1R5cGVkQXJyYXlQcm90b3R5cGUuanMK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1R5cGVkQXJyYXlQcm90b3R5cGUu
anMKQEAgLTM4Myw3ICszODMsNyBAQCBmdW5jdGlvbiB0b0xvY2FsZVN0cmluZygvKiBsb2NhbGUs
IG9wdGlvbnMgKi8pCiAgICAgcmV0dXJuIHN0cmluZzsKIH0KIAotZnVuY3Rpb24gaXRlbShpbmRl
eCkKK2Z1bmN0aW9uIGF0KGluZGV4KQogewogICAgICJ1c2Ugc3RyaWN0IjsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlQcm90b3R5cGUuY3BwCmluZGV4IGNkMTAy
YTg2Yzk3MTBhZjYzMjFkOWUxOGY0MTE1MWMwMmVjNmE2MTIuLmI3YmQxMWUwZjQ2NjJjMTQwNjgy
OTFiMTZmZmVjYTdlNjkzMDQ3NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9BcnJheVByb3RvdHlwZS5jcHAKQEAgLTExMCw3ICsxMTAsOSBAQCB2b2lkIEFycmF5UHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QpCiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZtLnByb3Bl
cnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmZpbmRJbmRleFB1YmxpY05hbWUoKSwgYXJyYXlQcm90
b3R5cGVGaW5kSW5kZXhDb2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVy
dHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7CiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9V
VF9UUkFOU0lUSU9OKHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmluY2x1ZGVzUHVi
bGljTmFtZSgpLCBhcnJheVByb3RvdHlwZUluY2x1ZGVzQ29kZUdlbmVyYXRvciwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOwogICAgIEpTQ19CVUlM
VElOX0ZVTkNUSU9OX1dJVEhPVVRfVFJBTlNJVElPTih2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGlu
TmFtZXMoKS5jb3B5V2l0aGluUHVibGljTmFtZSgpLCBhcnJheVByb3RvdHlwZUNvcHlXaXRoaW5D
b2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSk7Ci0gICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZt
LnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLml0ZW1QdWJsaWNOYW1lKCksIGFycmF5UHJv
dG90eXBlSXRlbUNvZGVHZW5lcmF0b3IsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0
dHJpYnV0ZTo6RG9udEVudW0pKTsKKworICAgIGlmIChPcHRpb25zOjp1c2VBdE1ldGhvZCgpKQor
ICAgICAgICBKU0NfQlVJTFRJTl9GVU5DVElPTl9XSVRIT1VUX1RSQU5TSVRJT04odm0ucHJvcGVy
dHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuYXRQdWJsaWNOYW1lKCksIGFycmF5UHJvdG90eXBlQXRD
b2RlR2VuZXJhdG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSk7CiAKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVy
dHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZW50cmllc1ByaXZhdGVOYW1lKCksIGdldERpcmVjdCh2
bSwgdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZW50cmllc1B1YmxpY05hbWUoKSks
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkpKTsKICAg
ICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+YnVpbHRp
bk5hbWVzKCkuZm9yRWFjaFByaXZhdGVOYW1lKCksIGdldERpcmVjdCh2bSwgdm0ucHJvcGVydHlO
YW1lcy0+YnVpbHRpbk5hbWVzKCkuZm9yRWFjaFB1YmxpY05hbWUoKSksIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkpKTsKQEAgLTEyOCwxMCArMTMwLDEx
IEBAIHZvaWQgQXJyYXlQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCkKICAgICAgICAgJnZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5O
YW1lcygpLmZsYXRQdWJsaWNOYW1lKCksCiAgICAgICAgICZ2bS5wcm9wZXJ0eU5hbWVzLT5idWls
dGluTmFtZXMoKS5mbGF0TWFwUHVibGljTmFtZSgpLAogICAgICAgICAmdm0ucHJvcGVydHlOYW1l
cy0+YnVpbHRpbk5hbWVzKCkuaW5jbHVkZXNQdWJsaWNOYW1lKCksCi0gICAgICAgICZ2bS5wcm9w
ZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5pdGVtUHVibGljTmFtZSgpLAogICAgICAgICAmdm0u
cHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkua2V5c1B1YmxpY05hbWUoKSwKICAgICAgICAg
JnZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLnZhbHVlc1B1YmxpY05hbWUoKQogICAg
IH07CisgICAgaWYgKE9wdGlvbnM6OnVzZUF0TWV0aG9kKCkpCisgICAgICAgIHVuc2NvcGFibGVz
LT5wdXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmF0UHVibGlj
TmFtZSgpLCBqc0Jvb2xlYW4odHJ1ZSkpOwogICAgIGZvciAoY29uc3QgYXV0byogdW5zY29wYWJs
ZU5hbWUgOiB1bnNjb3BhYmxlTmFtZXMpCiAgICAgICAgIHVuc2NvcGFibGVzLT5wdXREaXJlY3Qo
dm0sICp1bnNjb3BhYmxlTmFtZSwganNCb29sZWFuKHRydWUpKTsKICAgICBwdXREaXJlY3RXaXRo
b3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+dW5zY29wYWJsZXNTeW1ib2wsIHVu
c2NvcGFibGVzLCBQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0gfCBQcm9wZXJ0eUF0dHJpYnV0
ZTo6UmVhZE9ubHkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcAppbmRleCAwN2RiMmEzN2ZjMjk1MzU2
MjJmODBhOGI1NWRiZDExZTZlMDk3YzI5Li44ZGZhNDViZGQ2MTViMjFmZGFhZjg4ZTg0MTVmZWJm
NWE1Zjg3MzYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5
cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcApAQCAtMzc1LDcgKzM3NSw5IEBAIHZv
aWQgSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqCiAgICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9U
UkFOU0lUSU9OKCJzb21lIiwgdHlwZWRBcnJheVByb3RvdHlwZVNvbWVDb2RlR2VuZXJhdG9yLCBz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7CiAgICAg
SlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZtLnByb3BlcnR5TmFtZXMt
PnN1YmFycmF5LCB0eXBlZEFycmF5UHJvdG90eXBlU3ViYXJyYXlDb2RlR2VuZXJhdG9yLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7CiAgICAgSlND
X0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZtLnByb3BlcnR5TmFtZXMtPnRv
TG9jYWxlU3RyaW5nLCB0eXBlZEFycmF5UHJvdG90eXBlVG9Mb2NhbGVTdHJpbmdDb2RlR2VuZXJh
dG9yLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7
Ci0gICAgSlNDX0JVSUxUSU5fRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKHZtLnByb3BlcnR5
TmFtZXMtPmJ1aWx0aW5OYW1lcygpLml0ZW1QdWJsaWNOYW1lKCksIHR5cGVkQXJyYXlQcm90b3R5
cGVJdGVtQ29kZUdlbmVyYXRvciwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmli
dXRlOjpEb250RW51bSkpOworCisgICAgaWYgKE9wdGlvbnM6OnVzZUF0TWV0aG9kKCkpCisgICAg
ICAgIEpTQ19CVUlMVElOX0ZVTkNUSU9OX1dJVEhPVVRfVFJBTlNJVElPTih2bS5wcm9wZXJ0eU5h
bWVzLT5idWlsdGluTmFtZXMoKS5hdFB1YmxpY05hbWUoKSwgdHlwZWRBcnJheVByb3RvdHlwZUF0
Q29kZUdlbmVyYXRvciwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpE
b250RW51bSkpOwogCiAgICAgSlNGdW5jdGlvbiogdG9TdHJpbmdUYWdGdW5jdGlvbiA9IEpTRnVu
Y3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCAwLCAiZ2V0IFtTeW1ib2wudG9TdHJpbmdU
YWddIl9zLCB0eXBlZEFycmF5Vmlld1Byb3RvR2V0dGVyRnVuY1RvU3RyaW5nVGFnLCBOb0ludHJp
bnNpYyk7CiAgICAgR2V0dGVyU2V0dGVyKiB0b1N0cmluZ1RhZ0FjY2Vzc29yID0gR2V0dGVyU2V0
dGVyOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgdG9TdHJpbmdUYWdGdW5jdGlvbiwgbnVsbHB0
cik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlz
dC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaAppbmRleCAy
ZTE5YjA4ZGY5NmY3ZTAyNzFlMmVjNzAzZDE0ZTM0NTAyMTAzNzI2Li44MmQzYjE5NGUzMDAwZjQ1
MTA1NzE2YjQxMjMwMmUzMDI4NWVkNTA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9PcHRpb25zTGlzdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL09wdGlvbnNMaXN0LmgKQEAgLTQ5MSw2ICs0OTEsNyBAQCBjb25zdGV4cHIgYm9vbCBlbmFi
bGVXZWJBc3NlbWJseVN0cmVhbWluZ0FwaSA9IGZhbHNlOwogICAgIHYoQm9vbCwgdXNlV2ViQXNz
ZW1ibHlNdWx0aVZhbHVlcywgdHJ1ZSwgTm9ybWFsLCAiQWxsb3cgdHlwZXMgZnJvbSB0aGUgd2Fz
bSBtdWxpdC12YWx1ZXMgc3BlYy4iKSBcCiAgICAgdihCb29sLCB1c2VXZWFrUmVmcywgdHJ1ZSwg
Tm9ybWFsLCAiRXhwb3NlIHRoZSBXZWFrUmVmIGNvbnN0cnVjdG9yLiIpIFwKICAgICB2KEJvb2ws
IHVzZUludGxEYXRlVGltZUZvcm1hdERheVBlcmlvZCwgdHJ1ZSwgTm9ybWFsLCAiRXhwb3NlIHRo
ZSBJbnRsLkRhdGVUaW1lRm9ybWF0IGRheVBlcmlvZCBmZWF0dXJlLiIpIFwKKyAgICB2KEJvb2ws
IHVzZUF0TWV0aG9kLCBmYWxzZSwgTm9ybWFsLCAiRXhwb3NlIHRoZSBhdCgpIG1ldGhvZCBvbiBB
cnJheSBhbmQgJVR5cGVkQXJyYXklLiIpIFwKICAgICB2KEJvb2wsIHVzZUFycmF5QWxsb2NhdGlv
blByb2ZpbGluZywgdHJ1ZSwgTm9ybWFsLCAiSWYgdHJ1ZSwgd2Ugd2lsbCB1c2Ugb3VyIG5vcm1h
bCBhcnJheSBhbGxvY2F0aW9uIHByb2ZpbGluZy4gSWYgZmFsc2UsIHRoZSBhbGxvY2F0aW9uIHBy
b2ZpbGUgd2lsbCBhbHdheXMgY2xhaW0gdG8gYmUgdW5kZWNpZGVkLiIpIFwKICAgICB2KEJvb2ws
IGZvcmNlUG9seVByb3RvLCBmYWxzZSwgTm9ybWFsLCAiSWYgdHJ1ZSwgY3JlYXRlX3RoaXMgd2ls
bCBhbHdheXMgY3JlYXRlIGFuIG9iamVjdCB3aXRoIGEgcG9seSBwcm90byBzdHJ1Y3R1cmUuIikg
XAogICAgIHYoQm9vbCwgZm9yY2VNaW5pVk1Nb2RlLCBmYWxzZSwgTm9ybWFsLCAiSWYgdHJ1ZSwg
aXQgd2lsbCBmb3JjZSBtaW5pIFZNIG1vZGUgb24uIikgXApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDNkNWNmYzg5MDlmMmZm
ZWRhMGFjMWJjYmUwZjM0NjNlZTIxOWNmYmEuLjk3OTE3NWEyYmU1ZDhhMjBmOTcyZTYzNmVjNGE1
MzQ2ZmRjMWNmNzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMC0xMC0yMCAgUm9zcyBLaXJz
bGluZyAgPHJvc3Mua2lyc2xpbmdAc29ueS5jb20+CisKKyAgICAgICAgW0pTQ10gUmVuYW1lIGl0
ZW0oKSB0byBhdCgpIGFuZCBtb3ZlIGl0IGJlaGluZCBhIGZsYWcKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzk0MgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9yL21vZGVsL3JlbW90ZS1v
YmplY3QtZ2V0LXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGpzL2FycmF5LXVu
c2NvcGFibGVzLXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGpzL09iamVjdC1n
ZXRPd25Qcm9wZXJ0eU5hbWVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBqcy9zY3JpcHQtdGVz
dHMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMuanM6CisgICAgICAgICoganMvc2NyaXB0LXRl
c3RzL2FycmF5LXVuc2NvcGFibGVzLXByb3BlcnRpZXMuanM6CisKIDIwMjAtMTAtMTkgIEFudHRp
IEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFVwZGF0ZSBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJvcGVydGllcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvcmVtb3RlLW9iamVjdC1nZXQtcHJv
cGVydGllcy1leHBlY3RlZC50eHQKaW5kZXggZGU3YzkxYTBlMjBmYzBjZGZhZTI5Y2M0NTE3MzVm
NTZjYWQ4NzA2OS4uZjVhZTNmNmEwYjFkYmUyNGQ3N2NmNDg5ZWYxODgwN2U5NjRkY2JiMyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3JlbW90ZS1vYmplY3QtZ2V0LXBy
b3BlcnRpZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9y
ZW1vdGUtb2JqZWN0LWdldC1wcm9wZXJ0aWVzLWV4cGVjdGVkLnR4dApAQCAtODUsNyArODUsNiBA
QCBBTEwgUFJPUEVSVElFUzoKICAgICBmaW5kSW5kZXgKICAgICBpbmNsdWRlcwogICAgIGNvcHlX
aXRoaW4KLSAgICBpdGVtCiAgICAgY29uc3RydWN0b3IKICAgICBTeW1ib2woU3ltYm9sLml0ZXJh
dG9yKQogICAgIFN5bWJvbChTeW1ib2wudW5zY29wYWJsZXMpCkBAIC0xMzksNyArMTM4LDYgQEAg
T1dOIFBST1BFUlRJRVM6CiAgICAgZmluZEluZGV4CiAgICAgaW5jbHVkZXMKICAgICBjb3B5V2l0
aGluCi0gICAgaXRlbQogICAgIGNvbnN0cnVjdG9yCiAgICAgU3ltYm9sKFN5bWJvbC5pdGVyYXRv
cikKICAgICBTeW1ib2woU3ltYm9sLnVuc2NvcGFibGVzKQpAQCAtMTc4LDcgKzE3Niw2IEBAIERJ
U1BMQVlBQkxFIFBST1BFUlRJRVM6CiAgICAgZmluZEluZGV4CiAgICAgaW5jbHVkZXMKICAgICBj
b3B5V2l0aGluCi0gICAgaXRlbQogICAgIGNvbnN0cnVjdG9yCiAgICAgU3ltYm9sKFN5bWJvbC5p
dGVyYXRvcikKICAgICBTeW1ib2woU3ltYm9sLnVuc2NvcGFibGVzKQpAQCAtMjE3LDcgKzIxNCw2
IEBAIEFMTCBQUk9QRVJUSUVTOgogICAgIGZpbmRJbmRleAogICAgIGluY2x1ZGVzCiAgICAgY29w
eVdpdGhpbgotICAgIGl0ZW0KICAgICBjb25zdHJ1Y3RvcgogICAgIFN5bWJvbChTeW1ib2wuaXRl
cmF0b3IpCiAgICAgU3ltYm9sKFN5bWJvbC51bnNjb3BhYmxlcykKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2pzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2pzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLWV4cGVjdGVkLnR4dAppbmRleCA1
M2JhZTI0ZjIwZjU4YWFhMzM4MjhlODFlMGQ2YmM2MTgzNzhjZWUzLi4yMjEyNDFhN2QyMjgwODE1
NmMwOWY2OTJiM2I2NDI3MTAyODRmYzNjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9PYmpl
Y3QtZ2V0T3duUHJvcGVydHlOYW1lcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvanMv
T2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMtZXhwZWN0ZWQudHh0CkBAIC00Nyw3ICs0Nyw3IEBA
IFBBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlOYW1lcyhPYmplY3QucHJvdG90eXBlKSBpcyBbJ19f
ZGVmaW5lR2V0dGVyX18nLCAnX19kZWZpCiBQQVNTIGdldFNvcnRlZE93blByb3BlcnR5TmFtZXMo
RnVuY3Rpb24pIGlzIFsnbGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJ10KIFBBU1MgZ2V0U29y
dGVkT3duUHJvcGVydHlOYW1lcyhGdW5jdGlvbi5wcm90b3R5cGUpIGlzIFsnYXBwbHknLCAnYXJn
dW1lbnRzJywgJ2JpbmQnLCAnY2FsbCcsICdjYWxsZXInLCAnY29uc3RydWN0b3InLCAnbGVuZ3Ro
JywgJ25hbWUnLCAndG9TdHJpbmcnXQogUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5hbWVzKEFy
cmF5KSBpcyBbJ2Zyb20nLCAnaXNBcnJheScsICdsZW5ndGgnLCAnbmFtZScsICdvZicsICdwcm90
b3R5cGUnXQotUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5hbWVzKEFycmF5LnByb3RvdHlwZSkg
aXMgWydjb25jYXQnLCAnY29uc3RydWN0b3InLCAnY29weVdpdGhpbicsICdlbnRyaWVzJywgJ2V2
ZXJ5JywgJ2ZpbGwnLCAnZmlsdGVyJywgJ2ZpbmQnLCAnZmluZEluZGV4JywgJ2ZsYXQnLCAnZmxh
dE1hcCcsICdmb3JFYWNoJywgJ2luY2x1ZGVzJywgJ2luZGV4T2YnLCAnaXRlbScsICdqb2luJywg
J2tleXMnLCAnbGFzdEluZGV4T2YnLCAnbGVuZ3RoJywgJ21hcCcsICdwb3AnLCAncHVzaCcsICdy
ZWR1Y2UnLCAncmVkdWNlUmlnaHQnLCAncmV2ZXJzZScsICdzaGlmdCcsICdzbGljZScsICdzb21l
JywgJ3NvcnQnLCAnc3BsaWNlJywgJ3RvTG9jYWxlU3RyaW5nJywgJ3RvU3RyaW5nJywgJ3Vuc2hp
ZnQnLCAndmFsdWVzJ10KK1BBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlOYW1lcyhBcnJheS5wcm90
b3R5cGUpIGlzIFsnY29uY2F0JywgJ2NvbnN0cnVjdG9yJywgJ2NvcHlXaXRoaW4nLCAnZW50cmll
cycsICdldmVyeScsICdmaWxsJywgJ2ZpbHRlcicsICdmaW5kJywgJ2ZpbmRJbmRleCcsICdmbGF0
JywgJ2ZsYXRNYXAnLCAnZm9yRWFjaCcsICdpbmNsdWRlcycsICdpbmRleE9mJywgJ2pvaW4nLCAn
a2V5cycsICdsYXN0SW5kZXhPZicsICdsZW5ndGgnLCAnbWFwJywgJ3BvcCcsICdwdXNoJywgJ3Jl
ZHVjZScsICdyZWR1Y2VSaWdodCcsICdyZXZlcnNlJywgJ3NoaWZ0JywgJ3NsaWNlJywgJ3NvbWUn
LCAnc29ydCcsICdzcGxpY2UnLCAndG9Mb2NhbGVTdHJpbmcnLCAndG9TdHJpbmcnLCAndW5zaGlm
dCcsICd2YWx1ZXMnXQogUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5hbWVzKFN0cmluZykgaXMg
Wydmcm9tQ2hhckNvZGUnLCAnZnJvbUNvZGVQb2ludCcsICdsZW5ndGgnLCAnbmFtZScsICdwcm90
b3R5cGUnLCAncmF3J10KIFBBU1MgZ2V0U29ydGVkT3duUHJvcGVydHlOYW1lcyhTdHJpbmcucHJv
dG90eXBlKSBpcyBbJ2FuY2hvcicsICdiaWcnLCAnYmxpbmsnLCAnYm9sZCcsICdjaGFyQXQnLCAn
Y2hhckNvZGVBdCcsICdjb2RlUG9pbnRBdCcsICdjb25jYXQnLCAnY29uc3RydWN0b3InLCAnZW5k
c1dpdGgnLCAnZml4ZWQnLCAnZm9udGNvbG9yJywgJ2ZvbnRzaXplJywgJ2luY2x1ZGVzJywgJ2lu
ZGV4T2YnLCAnaXRhbGljcycsICdsYXN0SW5kZXhPZicsICdsZW5ndGgnLCAnbGluaycsICdsb2Nh
bGVDb21wYXJlJywgJ21hdGNoJywgJ21hdGNoQWxsJywgJ25vcm1hbGl6ZScsICdwYWRFbmQnLCAn
cGFkU3RhcnQnLCAncmVwZWF0JywgJ3JlcGxhY2UnLCAncmVwbGFjZUFsbCcsICdzZWFyY2gnLCAn
c2xpY2UnLCAnc21hbGwnLCAnc3BsaXQnLCAnc3RhcnRzV2l0aCcsICdzdHJpa2UnLCAnc3ViJywg
J3N1YnN0cicsICdzdWJzdHJpbmcnLCAnc3VwJywgJ3RvTG9jYWxlTG93ZXJDYXNlJywgJ3RvTG9j
YWxlVXBwZXJDYXNlJywgJ3RvTG93ZXJDYXNlJywgJ3RvU3RyaW5nJywgJ3RvVXBwZXJDYXNlJywg
J3RyaW0nLCAndHJpbUVuZCcsICd0cmltTGVmdCcsICd0cmltUmlnaHQnLCAndHJpbVN0YXJ0Jywg
J3ZhbHVlT2YnXQogUEFTUyBnZXRTb3J0ZWRPd25Qcm9wZXJ0eU5hbWVzKEJvb2xlYW4pIGlzIFsn
bGVuZ3RoJywgJ25hbWUnLCAncHJvdG90eXBlJ10KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pz
L2FycmF5LXVuc2NvcGFibGVzLXByb3BlcnRpZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
anMvYXJyYXktdW5zY29wYWJsZXMtcHJvcGVydGllcy1leHBlY3RlZC50eHQKaW5kZXggYzQwNmI4
NmI0MmY3NTgwNDg1ZWUxOTI2YzRhOTFhOTk5ODQxYjVhMC4uZmZhNmJiMTdlMmM0ZmI5ZDgzYTU2
Y2Y5YWEwZTI5MmEwMDIyZTAwMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvYXJyYXktdW5z
Y29wYWJsZXMtcHJvcGVydGllcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvanMvYXJy
YXktdW5zY29wYWJsZXMtcHJvcGVydGllcy1leHBlY3RlZC50eHQKQEAgLTQyLDEwICs0Miw2IEBA
IFBBU1MgQXJyYXkucHJvdG90eXBlW1N5bWJvbC51bnNjb3BhYmxlc11bImluY2x1ZGVzIl0gaXMg
dHJ1ZQogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFycmF5LnByb3RvdHlw
ZVtTeW1ib2wudW5zY29wYWJsZXNdLCAiaW5jbHVkZXMiKS53cml0YWJsZSBpcyB0cnVlCiBQQVNT
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQXJyYXkucHJvdG90eXBlW1N5bWJvbC51
bnNjb3BhYmxlc10sICJpbmNsdWRlcyIpLmVudW1lcmFibGUgaXMgdHJ1ZQogUEFTUyBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFycmF5LnByb3RvdHlwZVtTeW1ib2wudW5zY29wYWJs
ZXNdLCAiaW5jbHVkZXMiKS5jb25maWd1cmFibGUgaXMgdHJ1ZQotUEFTUyBBcnJheS5wcm90b3R5
cGVbU3ltYm9sLnVuc2NvcGFibGVzXVsiaXRlbSJdIGlzIHRydWUKLVBBU1MgT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihBcnJheS5wcm90b3R5cGVbU3ltYm9sLnVuc2NvcGFibGVzXSwg
Iml0ZW0iKS53cml0YWJsZSBpcyB0cnVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoQXJyYXkucHJvdG90eXBlW1N5bWJvbC51bnNjb3BhYmxlc10sICJpdGVtIikuZW51bWVy
YWJsZSBpcyB0cnVlCi1QQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQXJyYXku
cHJvdG90eXBlW1N5bWJvbC51bnNjb3BhYmxlc10sICJpdGVtIikuY29uZmlndXJhYmxlIGlzIHRy
dWUKIFBBU1MgQXJyYXkucHJvdG90eXBlW1N5bWJvbC51bnNjb3BhYmxlc11bImtleXMiXSBpcyB0
cnVlCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQXJyYXkucHJvdG90eXBl
W1N5bWJvbC51bnNjb3BhYmxlc10sICJrZXlzIikud3JpdGFibGUgaXMgdHJ1ZQogUEFTUyBPYmpl
Y3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFycmF5LnByb3RvdHlwZVtTeW1ib2wudW5zY29w
YWJsZXNdLCAia2V5cyIpLmVudW1lcmFibGUgaXMgdHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvanMvc2NyaXB0LXRlc3RzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLmpzIGIvTGF5b3V0
VGVzdHMvanMvc2NyaXB0LXRlc3RzL09iamVjdC1nZXRPd25Qcm9wZXJ0eU5hbWVzLmpzCmluZGV4
IGZmMGY5ZDNjNDAzNjUwOTEwZGQ1NjMwNGMwN2QxMTEwZjg5MGE5YTQuLmNiMDEzNDk1MmI4MDI3
ZGVjMWJmYmE4ZWE2MjQxMmI5NDU2OGYxM2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL3Nj
cmlwdC10ZXN0cy9PYmplY3QtZ2V0T3duUHJvcGVydHlOYW1lcy5qcworKysgYi9MYXlvdXRUZXN0
cy9qcy9zY3JpcHQtdGVzdHMvT2JqZWN0LWdldE93blByb3BlcnR5TmFtZXMuanMKQEAgLTU2LDcg
KzU2LDcgQEAgdmFyIGV4cGVjdGVkUHJvcGVydHlOYW1lc1NldCA9IHsKICAgICAiRnVuY3Rpb24i
OiAiWydsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5cGUnXSIsCiAgICAgIkZ1bmN0aW9uLnByb3Rv
dHlwZSI6ICJbJ2FwcGx5JywgJ2FyZ3VtZW50cycsICdiaW5kJywgJ2NhbGwnLCAnY2FsbGVyJywg
J2NvbnN0cnVjdG9yJywgJ2xlbmd0aCcsICduYW1lJywgJ3RvU3RyaW5nJ10iLAogICAgICJBcnJh
eSI6ICJbJ2Zyb20nLCAnaXNBcnJheScsICdsZW5ndGgnLCAnbmFtZScsICdvZicsICdwcm90b3R5
cGUnXSIsCi0gICAgIkFycmF5LnByb3RvdHlwZSI6ICJbJ2NvbmNhdCcsICdjb25zdHJ1Y3Rvcics
ICdjb3B5V2l0aGluJywgJ2VudHJpZXMnLCAnZXZlcnknLCAnZmlsbCcsICdmaWx0ZXInLCAnZmlu
ZCcsICdmaW5kSW5kZXgnLCAnZmxhdCcsICdmbGF0TWFwJywgJ2ZvckVhY2gnLCAnaW5jbHVkZXMn
LCAnaW5kZXhPZicsICdpdGVtJywgJ2pvaW4nLCAna2V5cycsICdsYXN0SW5kZXhPZicsICdsZW5n
dGgnLCAnbWFwJywgJ3BvcCcsICdwdXNoJywgJ3JlZHVjZScsICdyZWR1Y2VSaWdodCcsICdyZXZl
cnNlJywgJ3NoaWZ0JywgJ3NsaWNlJywgJ3NvbWUnLCAnc29ydCcsICdzcGxpY2UnLCAndG9Mb2Nh
bGVTdHJpbmcnLCAndG9TdHJpbmcnLCAndW5zaGlmdCcsICd2YWx1ZXMnXSIsCisgICAgIkFycmF5
LnByb3RvdHlwZSI6ICJbJ2NvbmNhdCcsICdjb25zdHJ1Y3RvcicsICdjb3B5V2l0aGluJywgJ2Vu
dHJpZXMnLCAnZXZlcnknLCAnZmlsbCcsICdmaWx0ZXInLCAnZmluZCcsICdmaW5kSW5kZXgnLCAn
ZmxhdCcsICdmbGF0TWFwJywgJ2ZvckVhY2gnLCAnaW5jbHVkZXMnLCAnaW5kZXhPZicsICdqb2lu
JywgJ2tleXMnLCAnbGFzdEluZGV4T2YnLCAnbGVuZ3RoJywgJ21hcCcsICdwb3AnLCAncHVzaCcs
ICdyZWR1Y2UnLCAncmVkdWNlUmlnaHQnLCAncmV2ZXJzZScsICdzaGlmdCcsICdzbGljZScsICdz
b21lJywgJ3NvcnQnLCAnc3BsaWNlJywgJ3RvTG9jYWxlU3RyaW5nJywgJ3RvU3RyaW5nJywgJ3Vu
c2hpZnQnLCAndmFsdWVzJ10iLAogICAgICJTdHJpbmciOiAiWydmcm9tQ2hhckNvZGUnLCAnZnJv
bUNvZGVQb2ludCcsICdsZW5ndGgnLCAnbmFtZScsICdwcm90b3R5cGUnLCAncmF3J10iLAogICAg
ICJTdHJpbmcucHJvdG90eXBlIjogIlsnYW5jaG9yJywgJ2JpZycsICdibGluaycsICdib2xkJywg
J2NoYXJBdCcsICdjaGFyQ29kZUF0JywgJ2NvZGVQb2ludEF0JywgJ2NvbmNhdCcsICdjb25zdHJ1
Y3RvcicsICdlbmRzV2l0aCcsICdmaXhlZCcsICdmb250Y29sb3InLCAnZm9udHNpemUnLCAnaW5j
bHVkZXMnLCAnaW5kZXhPZicsICdpdGFsaWNzJywgJ2xhc3RJbmRleE9mJywgJ2xlbmd0aCcsICds
aW5rJywgJ2xvY2FsZUNvbXBhcmUnLCAnbWF0Y2gnLCAnbWF0Y2hBbGwnLCAnbm9ybWFsaXplJywg
J3BhZEVuZCcsICdwYWRTdGFydCcsICdyZXBlYXQnLCAncmVwbGFjZScsICdyZXBsYWNlQWxsJywg
J3NlYXJjaCcsICdzbGljZScsICdzbWFsbCcsICdzcGxpdCcsICdzdGFydHNXaXRoJywgJ3N0cmlr
ZScsICdzdWInLCAnc3Vic3RyJywgJ3N1YnN0cmluZycsICdzdXAnLCAndG9Mb2NhbGVMb3dlckNh
c2UnLCAndG9Mb2NhbGVVcHBlckNhc2UnLCAndG9Mb3dlckNhc2UnLCAndG9TdHJpbmcnLCAndG9V
cHBlckNhc2UnLCAndHJpbScsICd0cmltRW5kJywgJ3RyaW1MZWZ0JywgJ3RyaW1SaWdodCcsICd0
cmltU3RhcnQnLCAndmFsdWVPZiddIiwKICAgICAiQm9vbGVhbiI6ICJbJ2xlbmd0aCcsICduYW1l
JywgJ3Byb3RvdHlwZSddIiwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0
cy9hcnJheS11bnNjb3BhYmxlcy1wcm9wZXJ0aWVzLmpzIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0
LXRlc3RzL2FycmF5LXVuc2NvcGFibGVzLXByb3BlcnRpZXMuanMKaW5kZXggMjI0ZGI5NWE5YmNi
NTMzMjk0ZTNjMDNhZmY0MTIxYzc1YjJmNjIzOS4uZWE2MGIzOGFjNWY2OWZhN2M3MDhmNTE1ZWQy
YzgyNjQ4MzBmYzljNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2Fy
cmF5LXVuc2NvcGFibGVzLXByb3BlcnRpZXMuanMKKysrIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0
LXRlc3RzL2FycmF5LXVuc2NvcGFibGVzLXByb3BlcnRpZXMuanMKQEAgLTE1LDcgKzE1LDYgQEAg
bGV0IGV4cGVjdGVkRW50cmllcyA9IFsKICAgICAiZmxhdCIsCiAgICAgImZsYXRNYXAiLAogICAg
ICJpbmNsdWRlcyIsCi0gICAgIml0ZW0iLAogICAgICJrZXlzIiwKICAgICAidmFsdWVzIgogXTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
NTZiMjAwZDRmNDA5ODUyYmU0Y2U4ZjIxN2Q4Y2ZiZWU0YzhmZDUxZS4uYjIzNTJmZmJmZGU1ZTU5
NDdlYzY3M2IzZTZjYmY2YjMyNWJjOGRkYyAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cK
KysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0xMC0yMCAgUm9z
cyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29ueS5jb20+CisKKyAgICAgICAgW0pTQ10gUmVu
YW1lIGl0ZW0oKSB0byBhdCgpIGFuZCBtb3ZlIGl0IGJlaGluZCBhIGZsYWcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzk0MgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3RyZXNzL2F0LW1ldGhvZC5q
czogUmVuYW1lZCBmcm9tIEpTVGVzdHMvc3RyZXNzL2l0ZW0tbWV0aG9kLmpzLgorICAgICAgICAq
IHRlc3QyNjIvY29uZmlnLnlhbWw6IEFkZCBza2lwcyB1bnRpbCB0aGUgZmVhdHVyZSBpcyByZW5h
bWVkLgorCiAyMDIwLTEwLTE5ICBNYXJrIENvaGVuICA8bUBtcGMuc2g+CiAKICAgICAgICAgdGVz
dDI2MjogdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jb25kaXRpb25hbC9pbi1icmFuY2gtMS5q
cwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJlc3MvYXQtbWV0aG9kLmpzIGIvSlNUZXN0cy9zdHJl
c3MvYXQtbWV0aG9kLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkxZTYyN2IzOTM5OGM1M2QyMGI4ZmVjYzM2Yjk1
Y2Y0OGNkOGIwNTQKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3N0cmVzcy9hdC1tZXRob2Qu
anMKQEAgLTAsMCArMSw1MSBAQAorLy9AIHJlcXVpcmVPcHRpb25zKCItLXVzZUF0TWV0aG9kPTEi
KQorCitmdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKSB7CisgICAgaWYgKGFjdHVh
bCAhPT0gZXhwZWN0ZWQpCisgICAgICAgIHRocm93IG5ldyBFcnJvcihgZXhwZWN0ZWQgJHtleHBl
Y3RlZH0gYnV0IGdvdCAke2FjdHVhbH1gKTsKK30KKworZnVuY3Rpb24gc2hvdWxkVGhyb3dUeXBl
RXJyb3IoZnVuYykgeworICAgIGxldCBlcnJvcjsKKyAgICB0cnkgeworICAgICAgICBmdW5jKCk7
CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBlcnJvciA9IGU7CisgICAgfQorCisgICAgaWYg
KCEoZXJyb3IgaW5zdGFuY2VvZiBUeXBlRXJyb3IpKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
J0V4cGVjdGVkIFR5cGVFcnJvciEnKTsKK30KKworc2hvdWxkQmUoQXJyYXkucHJvdG90eXBlLmF0
Lmxlbmd0aCwgMSk7CitzaG91bGRUaHJvd1R5cGVFcnJvcigoKSA9PiBBcnJheS5wcm90b3R5cGUu
YXQuY2FsbCh1bmRlZmluZWQpKTsKK3Nob3VsZFRocm93VHlwZUVycm9yKCgpID0+IEFycmF5LnBy
b3RvdHlwZS5hdC5jYWxsKG51bGwpKTsKKworY29uc3QgYXJyYXkgPSBbNDIsICdiJywgdHJ1ZV07
CisvLyBpbnRlbnRpb25hbGx5IGdvIG9uZSB0b28gZmFyIHRvIGVuc3VyZSB0aGF0IHdlIGdldCB1
bmRlZmluZWQgaW5zdGVhZCBvZiB3cmFwcGluZworZm9yIChsZXQgaSA9IDA7IGkgPD0gYXJyYXku
bGVuZ3RoOyBpKyspIHsKKyAgc2hvdWxkQmUoYXJyYXkuYXQoaSksIGFycmF5W2ldKTsKKyAgc2hv
dWxkQmUoYXJyYXkuYXQoLWkgLSAxKSwgYXJyYXlbYXJyYXkubGVuZ3RoIC0gaSAtIDFdKTsKK30K
K3Nob3VsZEJlKGFycmF5LmF0KCksIGFycmF5WzBdKTsKK3Nob3VsZEJlKGFycmF5LmF0KG51bGwp
LCBhcnJheVswXSk7CitzaG91bGRCZShhcnJheS5hdCh7IHZhbHVlT2Y6ICgpID0+IC0xIH0pLCBh
cnJheVthcnJheS5sZW5ndGggLSAxXSk7CisKK2NvbnN0IHdlaXJkQXJyYXlMaWtlID0geyBsZW5n
dGg6IDEsIGdldCAnMCcoKSB7IHJldHVybiAzOyB9LCBnZXQgJzEnKCkgeyB0aHJvdyAnb29wcyc7
IH0gfTsKK3Nob3VsZEJlKEFycmF5LnByb3RvdHlwZS5hdC5jYWxsKHdlaXJkQXJyYXlMaWtlLCAw
KSwgMyk7CitzaG91bGRCZShBcnJheS5wcm90b3R5cGUuYXQuY2FsbCh3ZWlyZEFycmF5TGlrZSwg
MSksIHVuZGVmaW5lZCk7CisKK2ZvciAoY29uc3QgVEEgb2YgW0ludDhBcnJheSwgVWludDhBcnJh
eSwgVWludDhDbGFtcGVkQXJyYXksIEludDE2QXJyYXksIFVpbnQxNkFycmF5LCBJbnQzMkFycmF5
LCBVaW50MzJBcnJheSwgRmxvYXQzMkFycmF5LCBGbG9hdDY0QXJyYXldKSB7CisgIHNob3VsZEJl
KFRBLnByb3RvdHlwZS5hdC5sZW5ndGgsIDEpOworICBzaG91bGRUaHJvd1R5cGVFcnJvcigoKSA9
PiBUQS5wcm90b3R5cGUuYXQuY2FsbChbXSkpOworCisgIGNvbnN0IHRhID0gWzEsIDIsIDNdOwor
ICAvLyBpbnRlbnRpb25hbGx5IGdvIG9uZSB0b28gZmFyIHRvIGVuc3VyZSB0aGF0IHdlIGdldCB1
bmRlZmluZWQgaW5zdGVhZCBvZiB3cmFwcGluZworICBmb3IgKGxldCBpID0gMDsgaSA8PSB0YS5s
ZW5ndGg7IGkrKykgeworICAgIHNob3VsZEJlKHRhLmF0KGkpLCB0YVtpXSk7CisgICAgc2hvdWxk
QmUodGEuYXQoLWkgLSAxKSwgdGFbdGEubGVuZ3RoIC0gaSAtIDFdKTsKKyAgfQorICBzaG91bGRC
ZSh0YS5hdCgpLCB0YVswXSk7CisgIHNob3VsZEJlKHRhLmF0KG51bGwpLCB0YVswXSk7CisgIHNo
b3VsZEJlKHRhLmF0KHsgdmFsdWVPZjogKCkgPT4gLTEgfSksIHRhW3RhLmxlbmd0aCAtIDFdKTsK
K30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL2l0ZW0tbWV0aG9kLmpzIGIvSlNUZXN0cy9z
dHJlc3MvaXRlbS1tZXRob2QuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZhNmE2
NzdjYjkxNmFkNDc4NmI4NWEzNDQyYTY1ODMyZDdjMzc2ZGQuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy9zdHJlc3MvaXRlbS1tZXRob2QuanMK
KysrIC9kZXYvbnVsbApAQCAtMSw0OSArMCwwIEBACi1mdW5jdGlvbiBzaG91bGRCZShhY3R1YWws
IGV4cGVjdGVkKSB7Ci0gICAgaWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCi0gICAgICAgIHRocm93
IG5ldyBFcnJvcihgZXhwZWN0ZWQgJHtleHBlY3RlZH0gYnV0IGdvdCAke2FjdHVhbH1gKTsKLX0K
LQotZnVuY3Rpb24gc2hvdWxkVGhyb3dUeXBlRXJyb3IoZnVuYykgewotICAgIGxldCBlcnJvcjsK
LSAgICB0cnkgewotICAgICAgICBmdW5jKCk7Ci0gICAgfSBjYXRjaCAoZSkgewotICAgICAgICBl
cnJvciA9IGU7Ci0gICAgfQotCi0gICAgaWYgKCEoZXJyb3IgaW5zdGFuY2VvZiBUeXBlRXJyb3Ip
KQotICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0V4cGVjdGVkIFR5cGVFcnJvciEnKTsKLX0KLQot
c2hvdWxkQmUoQXJyYXkucHJvdG90eXBlLml0ZW0ubGVuZ3RoLCAxKTsKLXNob3VsZFRocm93VHlw
ZUVycm9yKCgpID0+IEFycmF5LnByb3RvdHlwZS5pdGVtLmNhbGwodW5kZWZpbmVkKSk7Ci1zaG91
bGRUaHJvd1R5cGVFcnJvcigoKSA9PiBBcnJheS5wcm90b3R5cGUuaXRlbS5jYWxsKG51bGwpKTsK
LQotY29uc3QgYXJyYXkgPSBbNDIsICdiJywgdHJ1ZV07Ci0vLyBpbnRlbnRpb25hbGx5IGdvIG9u
ZSB0b28gZmFyIHRvIGVuc3VyZSB0aGF0IHdlIGdldCB1bmRlZmluZWQgaW5zdGVhZCBvZiB3cmFw
cGluZwotZm9yIChsZXQgaSA9IDA7IGkgPD0gYXJyYXkubGVuZ3RoOyBpKyspIHsKLSAgc2hvdWxk
QmUoYXJyYXkuaXRlbShpKSwgYXJyYXlbaV0pOwotICBzaG91bGRCZShhcnJheS5pdGVtKC1pIC0g
MSksIGFycmF5W2FycmF5Lmxlbmd0aCAtIGkgLSAxXSk7Ci19Ci1zaG91bGRCZShhcnJheS5pdGVt
KCksIGFycmF5WzBdKTsKLXNob3VsZEJlKGFycmF5Lml0ZW0obnVsbCksIGFycmF5WzBdKTsKLXNo
b3VsZEJlKGFycmF5Lml0ZW0oeyB2YWx1ZU9mOiAoKSA9PiAtMSB9KSwgYXJyYXlbYXJyYXkubGVu
Z3RoIC0gMV0pOwotCi1jb25zdCB3ZWlyZEFycmF5TGlrZSA9IHsgbGVuZ3RoOiAxLCBnZXQgJzAn
KCkgeyByZXR1cm4gMzsgfSwgZ2V0ICcxJygpIHsgdGhyb3cgJ29vcHMnOyB9IH07Ci1zaG91bGRC
ZShBcnJheS5wcm90b3R5cGUuaXRlbS5jYWxsKHdlaXJkQXJyYXlMaWtlLCAwKSwgMyk7Ci1zaG91
bGRCZShBcnJheS5wcm90b3R5cGUuaXRlbS5jYWxsKHdlaXJkQXJyYXlMaWtlLCAxKSwgdW5kZWZp
bmVkKTsKLQotZm9yIChjb25zdCBUQSBvZiBbSW50OEFycmF5LCBVaW50OEFycmF5LCBVaW50OENs
YW1wZWRBcnJheSwgSW50MTZBcnJheSwgVWludDE2QXJyYXksIEludDMyQXJyYXksIFVpbnQzMkFy
cmF5LCBGbG9hdDMyQXJyYXksIEZsb2F0NjRBcnJheV0pIHsKLSAgc2hvdWxkQmUoVEEucHJvdG90
eXBlLml0ZW0ubGVuZ3RoLCAxKTsKLSAgc2hvdWxkVGhyb3dUeXBlRXJyb3IoKCkgPT4gVEEucHJv
dG90eXBlLml0ZW0uY2FsbChbXSkpOwotCi0gIGNvbnN0IHRhID0gWzEsIDIsIDNdOwotICAvLyBp
bnRlbnRpb25hbGx5IGdvIG9uZSB0b28gZmFyIHRvIGVuc3VyZSB0aGF0IHdlIGdldCB1bmRlZmlu
ZWQgaW5zdGVhZCBvZiB3cmFwcGluZwotICBmb3IgKGxldCBpID0gMDsgaSA8PSB0YS5sZW5ndGg7
IGkrKykgewotICAgIHNob3VsZEJlKHRhLml0ZW0oaSksIHRhW2ldKTsKLSAgICBzaG91bGRCZSh0
YS5pdGVtKC1pIC0gMSksIHRhW3RhLmxlbmd0aCAtIGkgLSAxXSk7Ci0gIH0KLSAgc2hvdWxkQmUo
dGEuaXRlbSgpLCB0YVswXSk7Ci0gIHNob3VsZEJlKHRhLml0ZW0obnVsbCksIHRhWzBdKTsKLSAg
c2hvdWxkQmUodGEuaXRlbSh7IHZhbHVlT2Y6ICgpID0+IC0xIH0pLCB0YVt0YS5sZW5ndGggLSAx
XSk7Ci19CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy91bnNjb3BhYmxlcy5qcyBiL0pTVGVz
dHMvc3RyZXNzL3Vuc2NvcGFibGVzLmpzCmluZGV4IGFhMDFjZDcyMjI5YjBhZDMwOWYxYjY5YTRj
Y2Y5M2JkZGVjNTIzNTkuLjI2YjdmZWZhZDQwMzlmNTI3M2U0ZWM1MjkyNDY5MTc3NTIwODMxNjIg
MTAwNjQ0Ci0tLSBhL0pTVGVzdHMvc3RyZXNzL3Vuc2NvcGFibGVzLmpzCisrKyBiL0pTVGVzdHMv
c3RyZXNzL3Vuc2NvcGFibGVzLmpzCkBAIC0xLDMgKzEsNSBAQAorLy9AIHJlcXVpcmVPcHRpb25z
KCItLXVzZUF0TWV0aG9kPTEiKQorCiBmdW5jdGlvbiB0ZXN0KGFjdHVhbCwgZXhwZWN0ZWQpIHsK
ICAgICBpZiAoYWN0dWFsICE9PSBleHBlY3RlZCkKICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdi
YWQgdmFsdWU6ICcgKyBhY3R1YWwpOwpAQCAtOSw3ICsxMSw3IEBAIGZ1bmN0aW9uIHRlc3QoYWN0
dWFsLCBleHBlY3RlZCkgewogCiAgICAgdGVzdCh0eXBlb2YgdW5zY29wYWJsZXMsICJvYmplY3Qi
KTsKICAgICB0ZXN0KHVuc2NvcGFibGVzLl9fcHJvdG9fXywgdW5kZWZpbmVkKTsKLSAgICB0ZXN0
KFN0cmluZyhPYmplY3Qua2V5cyh1bnNjb3BhYmxlcykuc29ydCgpKSwgImNvcHlXaXRoaW4sZW50
cmllcyxmaWxsLGZpbmQsZmluZEluZGV4LGZsYXQsZmxhdE1hcCxpbmNsdWRlcyxpdGVtLGtleXMs
dmFsdWVzIik7CisgICAgdGVzdChTdHJpbmcoT2JqZWN0LmtleXModW5zY29wYWJsZXMpLnNvcnQo
KSksICJhdCxjb3B5V2l0aGluLGVudHJpZXMsZmlsbCxmaW5kLGZpbmRJbmRleCxmbGF0LGZsYXRN
YXAsaW5jbHVkZXMsa2V5cyx2YWx1ZXMiKTsKIH0oKSk7CiAKIChmdW5jdGlvbiAoKSB7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvY29uZmlnLnlhbWwgYi9KU1Rlc3RzL3Rlc3QyNjIvY29u
ZmlnLnlhbWwKaW5kZXggMzFkODhlY2Q5OThkMTIzMDJiMDE0YmFiM2I2Zjg0ODIzNjE1NzZlYi4u
YjkxNDk2N2JkYjcwNTA0MmI4OGZiOWY1ODBiYmRhZDlkZDhjZTNiMSAxMDA2NDQKLS0tIGEvSlNU
ZXN0cy90ZXN0MjYyL2NvbmZpZy55YW1sCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi9jb25maWcueWFt
bApAQCAtMjcsNiArMjcsMTAgQEAgc2tpcDoKICAgICAtIHRvcC1sZXZlbC1hd2FpdAogICAgIC0g
SW50bC5MaXN0Rm9ybWF0CiAKKyAgICAjIHJlbW92ZSBvbmNlIGl0J3MgYmVlbiByZW5hbWVkIGlu
IHRlc3QyNjIKKyAgICAtIEFycmF5LnByb3RvdHlwZS5pdGVtCisgICAgLSBUeXBlZEFycmF5LnBy
b3RvdHlwZS5pdGVtCisKICAgICAjIHJlbW92ZSBvbmNlIGl0J3Mgbm8gbG9uZ2VyIGluIHRlc3Qy
NjIKICAgICAtIFN0cmluZy5wcm90b3R5cGUuaXRlbQogICBwYXRoczoK
</data>

          </attachment>
      

    </bug>

</bugzilla>