<?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>131759</bug_id>
          
          <creation_ts>2014-04-16 13:48:27 -0700</creation_ts>
          <short_desc>Add a way to cache never-changing IDL attributes in the wrapper.</short_desc>
          <delta_ts>2014-04-16 14:11:38 -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>Bindings</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>alecflett</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>jsbell</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kling</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>oliver</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1001313</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-04-16 13:48:27 -0700</bug_when>
    <thetext>Add a way to cache never-changing IDL attributes in the wrapper.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001315</commentid>
    <comment_count>1</comment_count>
      <attachid>229477</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-04-16 13:48:57 -0700</bug_when>
    <thetext>Created attachment 229477
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001324</commentid>
    <comment_count>2</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-04-16 14:11:38 -0700</bug_when>
    <thetext>Committed r167383: &lt;http://trac.webkit.org/changeset/167383&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229477</attachid>
            <date>2014-04-16 13:48:57 -0700</date>
            <delta_ts>2014-04-16 13:58:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-131759.diff</filename>
            <type>text/plain</type>
            <size>70672</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4NzRlMDM3Li41Mjg0YzU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTQtMDQtMTYgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAg
ICAgIEFkZCBhIHdheSB0byBjYWNoZSBuZXZlci1jaGFuZ2luZyBJREwgYXR0cmlidXRlcyBpbiB0
aGUgd3JhcHBlci4KKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzEzMTc1OT4KKworICAg
ICAgICBTb21lIElETCBhdHRyaWJ1dGVzIHdpbGwgYWx3YXlzIHJldHVybiB0aGUgc2FtZSB2YWx1
ZSB3aGVuIHF1ZXJpZWQKKyAgICAgICAgb24gYW4gb2JqZWN0LCBzbyBsZXQncyBoYXZlIGEgd2F5
IHRvIGF2b2lkIGNhbGxpbmcgaW50byBDKysgY29kZQorICAgICAgICBldmVyeSB0aW1lIHRoZXkg
YXJlIHF1ZXJpZWQuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEgY3VzdG9tIElETCB0aGlu
Z3kgY2FsbGVkICJSZXR1cm5zQ2FjaGVhYmxlVmFsdWUiCisgICAgICAgIHdoaWNoIGNhdXNlcyB0
aGUgY29kZSBnZW5lcmF0b3IgdG8gZW1pdCBjb2RlIHRvIGNhY2hlIHRoZSByZXR1cm5lZAorICAg
ICAgICB2YWx1ZSBkaXJlY3RseSBpbiB0aGUgSlMgd3JhcHBlciBvYmplY3QuCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L0lETEF0dHJpYnV0ZXMudHh0OgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtOgorICAgICAgICAoR2VuZXJhdGVJbXBsZW1lbnRhdGlvbik6CisKKyAgICAgICAg
ICAgIEFkZCBSZXR1cm5zQ2FjaGVhYmxlVmFsdWUgY3VzdG9tIGF0dHJpYnV0ZS4KKworICAgICAg
ICAqIGRvbS9FbGVtZW50LmlkbDoKKyAgICAgICAgKiBkb20vTm9kZS5pZGw6CisKKyAgICAgICAg
ICAgIEFubm90YXRlIHNvbWUgYXR0cmlidXRlcyB0aGF0IHJldHVybiBmdWxseSBjYWNoZWFibGUg
dmFsdWVzLgorCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0Lyo6CisKKyAgICAgICAg
ICAgIFJlYmFzZWxpbmUuCisKIDIwMTQtMDQtMTAgIFJvZ2VyIEZvbmcgIDxyb2dlcl9mb25nQGFw
cGxlLmNvbT4KIAogICAgICAgICBTbmFwc2hvdHRlZCBwbHVnaW5zIG1heSBuZWVkIHRvIGJlIHJl
c3RhcnRlZCBpZiBzdHlsZSBwcm9wZXJ0aWVzIGFyZSBjaGFuZ2VkIGFmdGVyIGluaXRpYWwgbG9h
ZCBvZiBwbHVnaW4uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvckpTLnBtCmluZGV4IGZiMTJhNGQuLmI4MmU1OTcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0yMTIxLDgg
KzIxMjEsOSBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgbXkgJGF0
dHJpYnV0ZUNvbmRpdGlvbmFsU3RyaW5nID0gJGNvZGVHZW5lcmF0b3ItPkdlbmVyYXRlQ29uZGl0
aW9uYWxTdHJpbmcoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlKTsKICAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAiI2lmICR7YXR0cmlidXRlQ29uZGl0aW9uYWxTdHJpbmd9XG4iKSBpZiAkYXR0
cmlidXRlQ29uZGl0aW9uYWxTdHJpbmc7CiAKLSAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAiRW5jb2RlZEpTVmFsdWUgJHtnZXRGdW5jdGlvbk5hbWV9KEV4ZWNTdGF0ZSogZXhlYywgSlNP
YmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSlc
biIpOworICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJFbmNvZGVkSlNWYWx1ZSAke2dl
dEZ1bmN0aW9uTmFtZX0oRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29k
ZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSlcbiIpOwogICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ7XG4iKTsKKyAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAiICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpO1xuIik7CiAKICAgICAg
ICAgICAgIGlmICghJGF0dHJpYnV0ZS0+aXNTdGF0aWMgfHwgJGF0dHJpYnV0ZS0+c2lnbmF0dXJl
LT50eXBlID1+IC9Db25zdHJ1Y3RvciQvKSB7CiAgICAgICAgICAgICAgICAgaWYgKCRpbnRlcmZh
Y2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21Qcm94eVRvSlNPYmplY3QifSkgewpAQCAt
MjI5OSw2ICsyMzAwLDExIEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAg
ICAgICAgfQogCiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgY2FzdGVk
VGhpcy0+bV8iIC4gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1lIC4gIi5zZXQoZXhlYy0+dm0o
KSwgY2FzdGVkVGhpcywgcmVzdWx0KTtcbiIpIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJDYWNoZWRBdHRyaWJ1dGUifSk7CisKKyAgICAgICAgICAgICAg
ICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmV0dXJu
c0NhY2hlYWJsZVZhbHVlIn0pIHsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICIgICAgY2FzdGVkVGhpcy0+cHV0RGlyZWN0KGV4ZWMtPnZtKCksIHByb3BlcnR5TmFtZSwg
cmVzdWx0LCBEb250RGVsZXRlIHwgUmVhZE9ubHkpO1xuIik7CisgICAgICAgICAgICAgICAgfQor
CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZShyZXN1bHQpO1xuIik7CiAKICAgICAgICAgICAgIH0gZWxzZSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0IGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dAppbmRleCBkMTNi
MzBlLi5hMGJiZTAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0lETEF0dHJpYnV0ZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
SURMQXR0cmlidXRlcy50eHQKQEAgLTEwMiw2ICsxMDIsNyBAQCBSZXBsYWNlYWJsZQogUmVwbGFj
ZWFibGVDb25zdHJ1Y3RvcgogUmVwb3J0RXh0cmFNZW1vcnlDb3N0CiBSZXR1cm5OZXdPYmplY3QK
K1JldHVybnNDYWNoZWFibGVWYWx1ZQogU2V0dGVyUmFpc2VzRXhjZXB0aW9uCiBTa2lwVlRhYmxl
VmFsaWRhdGlvbgogU3RyaWN0VHlwZUNoZWNraW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0QWN0aXZlRE9NT2JqZWN0LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RBY3RpdmVET01PYmpl
Y3QuY3BwCmluZGV4IDc3MzM0ZmIuLmJmOWIwY2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RBY3RpdmVET01PYmplY3QuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RBY3RpdmVET01P
YmplY3QuY3BwCkBAIC0xNDQsOCArMTQ0LDkgQEAgYm9vbCBKU1Rlc3RBY3RpdmVET01PYmplY3Q6
OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMKICAg
ICByZXR1cm4gZ2V0U3RhdGljVmFsdWVTbG90PEpTVGVzdEFjdGl2ZURPTU9iamVjdCwgQmFzZT4o
ZXhlYywgSlNUZXN0QWN0aXZlRE9NT2JqZWN0VGFibGUsIHRoaXNPYmplY3QsIHByb3BlcnR5TmFt
ZSwgc2xvdCk7CiB9CiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdEFjdGl2ZURPTU9iamVjdEV4Y2l0
aW5nQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFs
dWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RBY3RpdmVE
T01PYmplY3RFeGNpdGluZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2Us
IEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsK
KyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RBY3RpdmVET01PYmpl
Y3QqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdEFjdGl2ZURPTU9iamVjdCo+KEpT
VmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMp
KSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdEFjdGl2ZURPTU9iamVjdFByb3Rv
dHlwZSo+KHNsb3RCYXNlKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcAppbmRl
eCA5YWQ5ZWVmLi44OTRkYjQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3IuY3Bw
CkBAIC0xNzcsOCArMTc3LDkgQEAgYm9vbCBKU1Rlc3RFdmVudENvbnN0cnVjdG9yOjpnZXRPd25Q
cm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGUKICAgICByZXR1cm4g
QmFzZTo6Z2V0T3duUHJvcGVydHlTbG90KHRoaXNPYmplY3QsIGV4ZWMsIHByb3BlcnR5TmFtZSwg
c2xvdCk7CiB9CiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdEV2ZW50Q29uc3RydWN0b3JBdHRyMShF
eGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1Zh
bHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RFdmVudENvbnN0cnVjdG9y
QXR0cjEoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVl
IHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFS
QU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RFdmVudENvbnN0cnVjdG9yKiBjYXN0ZWRUaGlz
ID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RFdmVudENvbnN0cnVjdG9yKj4oSlNWYWx1ZTo6ZGVjb2Rl
KHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAg
aWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0RXZlbnRDb25zdHJ1Y3RvclByb3RvdHlwZSo+KHNsb3RC
YXNlKSkKQEAgLTE5MSw4ICsxOTIsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RFdmVudENvbnN0
cnVjdG9yQXR0cjEoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsCiB9CiAKIAot
RW5jb2RlZEpTVmFsdWUganNUZXN0RXZlbnRDb25zdHJ1Y3RvckF0dHIyKEV4ZWNTdGF0ZSogZXhl
YywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5
TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdEV2ZW50Q29uc3RydWN0b3JBdHRyMihFeGVjU3Rh
dGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQ
cm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5h
bWUpOwogICAgIEpTVGVzdEV2ZW50Q29uc3RydWN0b3IqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWND
YXN0PEpTVGVzdEV2ZW50Q29uc3RydWN0b3IqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7
CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWlj
Q2FzdDxKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2Vw
dGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
RXhjZXB0aW9uLmNwcAppbmRleCA1ZTNhNmViLi4yODdjMjIxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9u
LmNwcApAQCAtMTM2LDggKzEzNiw5IEBAIGJvb2wgSlNUZXN0RXhjZXB0aW9uOjpnZXRPd25Qcm9w
ZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wCiAgICAgcmV0
dXJuIGdldFN0YXRpY1ZhbHVlU2xvdDxKU1Rlc3RFeGNlcHRpb24sIEJhc2U+KGV4ZWMsIEpTVGVz
dEV4Y2VwdGlvblRhYmxlLCB0aGlzT2JqZWN0LCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCi1F
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RFeGNlcHRpb25OYW1lKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmpl
Y3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0Vu
Y29kZWRKU1ZhbHVlIGpzVGVzdEV4Y2VwdGlvbk5hbWUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVj
dCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3Bl
cnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RF
eGNlcHRpb24qIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdEV4Y2VwdGlvbio+KEpT
VmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMp
KSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdEV4Y2VwdGlvblByb3RvdHlwZSo+
KHNsb3RCYXNlKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKaW5kZXggZDZjMGZlZS4uNGI3YjNjMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKQEAgLTQxMiw4ICs0MTIsOSBAQCBib29sIEpTVGVzdElu
dGVyZmFjZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSog
ZXhlYywgUHJvcAogfQogCiAjaWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFCTEUoQ29uZGl0
aW9uMjMpCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RJbnRlcmZhY2VDb25zdHJ1Y3RvckltcGxlbWVu
dHNTdGF0aWNSZWFkT25seUF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2Us
IEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUg
anNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3JJbXBsZW1lbnRzU3RhdGljUmVhZE9ubHlBdHRyKEV4
ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFs
dWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3Bl
cnR5TmFtZSk7CiAgICAgVU5VU0VEX1BBUkFNKHRoaXNWYWx1ZSk7CiAgICAgVU5VU0VEX1BBUkFN
KHNsb3RCYXNlKTsKICAgICBKU1ZhbHVlIHJlc3VsdCA9IGpzTnVtYmVyKFRlc3RJbnRlcmZhY2U6
OmltcGxlbWVudHNTdGF0aWNSZWFkT25seUF0dHIoKSk7CkBAIC00MjMsOCArNDI0LDkgQEAgRW5j
b2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3JJbXBsZW1lbnRzU3RhdGljUmVh
ZE9ubHlBdHRyKEV4ZWNTdGF0ZSoKICNlbmRpZgogCiAjaWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8
fCBFTkFCTEUoQ29uZGl0aW9uMjMpCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RJbnRlcmZhY2VDb25z
dHJ1Y3RvckltcGxlbWVudHNTdGF0aWNBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNs
b3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRK
U1ZhbHVlIGpzVGVzdEludGVyZmFjZUNvbnN0cnVjdG9ySW1wbGVtZW50c1N0YXRpY0F0dHIoRXhl
Y1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1
ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVy
dHlOYW1lKTsKICAgICBVTlVTRURfUEFSQU0odGhpc1ZhbHVlKTsKICAgICBVTlVTRURfUEFSQU0o
c2xvdEJhc2UpOwogICAgIEpTVmFsdWUgcmVzdWx0ID0ganNTdHJpbmdXaXRoQ2FjaGUoZXhlYywg
VGVzdEludGVyZmFjZTo6aW1wbGVtZW50c1N0YXRpY0F0dHIoKSk7CkBAIC00MzQsOCArNDM2LDkg
QEAgRW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3JJbXBsZW1lbnRzU3Rh
dGljQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEoKICNlbmRpZgogCiAjaWYgRU5BQkxFKENvbmRpdGlv
bjIyKSB8fCBFTkFCTEUoQ29uZGl0aW9uMjMpCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RJbnRlcmZh
Y2VJbXBsZW1lbnRzU3RyMShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5j
b2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rl
c3RJbnRlcmZhY2VJbXBsZW1lbnRzU3RyMShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90
QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1l
KQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdEludGVyZmFj
ZSogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0SW50ZXJmYWNlKj4oSlNWYWx1ZTo6
ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAg
ICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlKj4oc2xvdEJh
c2UpKQpAQCAtNDUwLDggKzQ1Myw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUlt
cGxlbWVudHNTdHIxKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlCiAjZW5kaWYK
IAogI2lmIEVOQUJMRShDb25kaXRpb24yMikgfHwgRU5BQkxFKENvbmRpdGlvbjIzKQotRW5jb2Rl
ZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlSW1wbGVtZW50c1N0cjIoRXhlY1N0YXRlKiBleGVjLCBK
U09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1l
KQorRW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlSW1wbGVtZW50c1N0cjIoRXhlY1N0YXRl
KiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJv
cGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1l
KTsKICAgICBKU1Rlc3RJbnRlcmZhY2UqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVz
dEludGVyZmFjZSo+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtF
TFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdEludGVy
ZmFjZVByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTQ2Niw4ICs0NzAsOSBAQCBFbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RJbnRlcmZhY2VJbXBsZW1lbnRzU3RyMihFeGVjU3RhdGUqIGV4ZWMsIEpTT2Jq
ZWN0KiBzbG90QmFzZQogI2VuZGlmCiAKICNpZiBFTkFCTEUoQ29uZGl0aW9uMjIpIHx8IEVOQUJM
RShDb25kaXRpb24yMykKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUltcGxlbWVudHNT
dHIzKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0
aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUlt
cGxlbWVudHNTdHIzKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVk
SlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5V
U0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0SW50ZXJmYWNlKiBjYXN0ZWRUaGlz
ID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RJbnRlcmZhY2UqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1Zh
bHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNE
eW5hbWljQ2FzdDxKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC00ODAs
OCArNDg1LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlSW1wbGVtZW50c1N0cjMo
RXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UKICNlbmRpZgogCiAjaWYgRU5BQkxF
KENvbmRpdGlvbjIyKSB8fCBFTkFCTEUoQ29uZGl0aW9uMjMpCi1FbmNvZGVkSlNWYWx1ZSBqc1Rl
c3RJbnRlcmZhY2VJbXBsZW1lbnRzTm9kZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90
QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RJbnRlcmZhY2VJbXBsZW1lbnRzTm9kZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2Jq
ZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJv
cGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVz
dEludGVyZmFjZSogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0SW50ZXJmYWNlKj4o
SlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhp
cykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0SW50ZXJmYWNlUHJvdG90eXBl
Kj4oc2xvdEJhc2UpKQpAQCAtNDk2LDggKzUwMiw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdElu
dGVyZmFjZUltcGxlbWVudHNOb2RlKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNl
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShDb25kaXRpb24xMSkgfHwgRU5BQkxFKENvbmRpdGlvbjEy
KQotRW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3JTdXBwbGVtZW50YWxT
dGF0aWNSZWFkT25seUF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVu
Y29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNU
ZXN0SW50ZXJmYWNlQ29uc3RydWN0b3JTdXBwbGVtZW50YWxTdGF0aWNSZWFkT25seUF0dHIoRXhl
Y1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1
ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVy
dHlOYW1lKTsKICAgICBVTlVTRURfUEFSQU0odGhpc1ZhbHVlKTsKICAgICBVTlVTRURfUEFSQU0o
c2xvdEJhc2UpOwogICAgIEpTVmFsdWUgcmVzdWx0ID0ganNOdW1iZXIoVGVzdFN1cHBsZW1lbnRh
bDo6c3VwcGxlbWVudGFsU3RhdGljUmVhZE9ubHlBdHRyKCkpOwpAQCAtNTA3LDggKzUxNCw5IEBA
IEVuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUNvbnN0cnVjdG9yU3VwcGxlbWVudGFsU3Rh
dGljUmVhZE9ubHlBdHRyKEV4ZWNTdGF0CiAjZW5kaWYKIAogI2lmIEVOQUJMRShDb25kaXRpb24x
MSkgfHwgRU5BQkxFKENvbmRpdGlvbjEyKQotRW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNl
Q29uc3RydWN0b3JTdXBwbGVtZW50YWxTdGF0aWNBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmpl
Y3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0Vu
Y29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUNvbnN0cnVjdG9yU3VwcGxlbWVudGFsU3RhdGlj
QXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUg
dGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJB
TShwcm9wZXJ0eU5hbWUpOwogICAgIFVOVVNFRF9QQVJBTSh0aGlzVmFsdWUpOwogICAgIFVOVVNF
RF9QQVJBTShzbG90QmFzZSk7CiAgICAgSlNWYWx1ZSByZXN1bHQgPSBqc1N0cmluZ1dpdGhDYWNo
ZShleGVjLCBUZXN0U3VwcGxlbWVudGFsOjpzdXBwbGVtZW50YWxTdGF0aWNBdHRyKCkpOwpAQCAt
NTE4LDggKzUyNiw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUNvbnN0cnVjdG9y
U3VwcGxlbWVudGFsU3RhdGljQXR0cihFeGVjU3RhdGUqIGV4ZWMsCiAjZW5kaWYKIAogI2lmIEVO
QUJMRShDb25kaXRpb24xMSkgfHwgRU5BQkxFKENvbmRpdGlvbjEyKQotRW5jb2RlZEpTVmFsdWUg
anNUZXN0SW50ZXJmYWNlU3VwcGxlbWVudGFsU3RyMShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0
KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RJbnRlcmZhY2VTdXBwbGVtZW50YWxTdHIxKEV4ZWNTdGF0ZSogZXhl
YywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5
TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAg
ICAgSlNUZXN0SW50ZXJmYWNlKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RJbnRl
cmZhY2UqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFj
YXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RJbnRlcmZhY2VQ
cm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC01MzQsOCArNTQzLDkgQEAgRW5jb2RlZEpTVmFsdWUg
anNUZXN0SW50ZXJmYWNlU3VwcGxlbWVudGFsU3RyMShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0
KiBzbG90QmEKICNlbmRpZgogCiAjaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29u
ZGl0aW9uMTIpCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RJbnRlcmZhY2VTdXBwbGVtZW50YWxTdHIy
KEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlz
VmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZVN1cHBs
ZW1lbnRhbFN0cjIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRK
U1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVT
RURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RJbnRlcmZhY2UqIGNhc3RlZFRoaXMg
PSBqc0R5bmFtaWNDYXN0PEpTVGVzdEludGVyZmFjZSo+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFs
dWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5
bmFtaWNDYXN0PEpTVGVzdEludGVyZmFjZVByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTU1MCw4
ICs1NjAsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RJbnRlcmZhY2VTdXBwbGVtZW50YWxTdHIy
KEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYQogI2VuZGlmCiAKICNpZiBFTkFCTEUo
Q29uZGl0aW9uMTEpIHx8IEVOQUJMRShDb25kaXRpb24xMikKLUVuY29kZWRKU1ZhbHVlIGpzVGVz
dEludGVyZmFjZVN1cHBsZW1lbnRhbFN0cjMoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpT
VmFsdWUganNUZXN0SW50ZXJmYWNlU3VwcGxlbWVudGFsU3RyMyhFeGVjU3RhdGUqIGV4ZWMsIEpT
T2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUg
cHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpT
VGVzdEludGVyZmFjZSogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0SW50ZXJmYWNl
Kj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVk
VGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0SW50ZXJmYWNlUHJvdG90
eXBlKj4oc2xvdEJhc2UpKQpAQCAtNTY0LDggKzU3NSw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVz
dEludGVyZmFjZVN1cHBsZW1lbnRhbFN0cjMoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEJhCiAjZW5kaWYKIAogI2lmIEVOQUJMRShDb25kaXRpb24xMSkgfHwgRU5BQkxFKENvbmRpdGlv
bjEyKQotRW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlU3VwcGxlbWVudGFsTm9kZShFeGVj
U3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVl
LCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RJbnRlcmZhY2VTdXBwbGVtZW50
YWxOb2RlKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1
ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BB
UkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0SW50ZXJmYWNlKiBjYXN0ZWRUaGlzID0ganNE
eW5hbWljQ2FzdDxKU1Rlc3RJbnRlcmZhY2UqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7
CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWlj
Q2FzdDxKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGUqPihzbG90QmFzZSkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9uZGV0ZXJtaW5p
c3RpYy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Tm9uZGV0ZXJtaW5pc3RpYy5jcHAKaW5kZXggZWJiZmRhZC4uY2YxMDc0MSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vbmRldGVybWlu
aXN0aWMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROb25kZXRlcm1pbmlzdGljLmNwcApAQCAtMTUyLDggKzE1Miw5IEBAIGJvb2wgSlNUZXN0
Tm9uZGV0ZXJtaW5pc3RpYzo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4
ZWNTdGF0ZSogZXhlCiAgICAgcmV0dXJuIEJhc2U6OmdldE93blByb3BlcnR5U2xvdCh0aGlzT2Jq
ZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rl
c3ROb25kZXRlcm1pbmlzdGljTm9uZGV0ZXJtaW5pc3RpY1JlYWRvbmx5QXR0cihFeGVjU3RhdGUq
IGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9w
ZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3ROb25kZXRlcm1pbmlzdGljTm9uZGV0ZXJt
aW5pc3RpY1JlYWRvbmx5QXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwg
RW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewor
ICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE5vbmRldGVybWluaXN0
aWMqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE5vbmRldGVybWluaXN0aWMqPihK
U1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlz
KSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3ROb25kZXRlcm1pbmlzdGljUHJv
dG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTg2LDggKzE4Nyw5IEBAIEVuY29kZWRKU1ZhbHVlIGpz
VGVzdE5vbmRldGVybWluaXN0aWNOb25kZXRlcm1pbmlzdGljUmVhZG9ubHlBdHRyKEV4ZWNTdGF0
ZSogZXhlCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0Tm9uZGV0ZXJtaW5pc3RpY05vbmRl
dGVybWluaXN0aWNXcml0ZWFibGVBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RC
YXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1Zh
bHVlIGpzVGVzdE5vbmRldGVybWluaXN0aWNOb25kZXRlcm1pbmlzdGljV3JpdGVhYmxlQXR0cihF
eGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1Zh
bHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9w
ZXJ0eU5hbWUpOwogICAgIEpTVGVzdE5vbmRldGVybWluaXN0aWMqIGNhc3RlZFRoaXMgPSBqc0R5
bmFtaWNDYXN0PEpTVGVzdE5vbmRldGVybWluaXN0aWMqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1Zh
bHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNE
eW5hbWljQ2FzdDxKU1Rlc3ROb25kZXRlcm1pbmlzdGljUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpA
QCAtMjIwLDggKzIyMiw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE5vbmRldGVybWluaXN0aWNO
b25kZXRlcm1pbmlzdGljV3JpdGVhYmxlQXR0cihFeGVjU3RhdGUqIGV4CiB9CiAKIAotRW5jb2Rl
ZEpTVmFsdWUganNUZXN0Tm9uZGV0ZXJtaW5pc3RpY05vbmRldGVybWluaXN0aWNFeGNlcHRpb25B
dHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0
aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE5vbmRldGVybWlu
aXN0aWNOb25kZXRlcm1pbmlzdGljRXhjZXB0aW9uQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2Jq
ZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJv
cGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVz
dE5vbmRldGVybWluaXN0aWMqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE5vbmRl
dGVybWluaXN0aWMqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElL
RUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3ROb25k
ZXRlcm1pbmlzdGljUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMjU0LDggKzI1Nyw5IEBAIEVu
Y29kZWRKU1ZhbHVlIGpzVGVzdE5vbmRldGVybWluaXN0aWNOb25kZXRlcm1pbmlzdGljRXhjZXB0
aW9uQXR0cihFeGVjU3RhdGUqIGV4CiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0Tm9uZGV0
ZXJtaW5pc3RpY05vbmRldGVybWluaXN0aWNHZXR0ZXJFeGNlcHRpb25BdHRyKEV4ZWNTdGF0ZSog
ZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3Bl
cnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE5vbmRldGVybWluaXN0aWNOb25kZXRlcm1p
bmlzdGljR2V0dGVyRXhjZXB0aW9uQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90
QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1l
KQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE5vbmRldGVy
bWluaXN0aWMqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE5vbmRldGVybWluaXN0
aWMqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0
ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3ROb25kZXRlcm1pbmlz
dGljUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMjkyLDggKzI5Niw5IEBAIEVuY29kZWRKU1Zh
bHVlIGpzVGVzdE5vbmRldGVybWluaXN0aWNOb25kZXRlcm1pbmlzdGljR2V0dGVyRXhjZXB0aW9u
QXR0cihFeGVjU3RhCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0Tm9uZGV0ZXJtaW5pc3Rp
Y05vbmRldGVybWluaXN0aWNTZXR0ZXJFeGNlcHRpb25BdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNP
YmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkK
K0VuY29kZWRKU1ZhbHVlIGpzVGVzdE5vbmRldGVybWluaXN0aWNOb25kZXRlcm1pbmlzdGljU2V0
dGVyRXhjZXB0aW9uQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5j
b2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAg
IFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE5vbmRldGVybWluaXN0aWMq
IGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE5vbmRldGVybWluaXN0aWMqPihKU1Zh
bHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkg
ewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3ROb25kZXRlcm1pbmlzdGljUHJvdG90
eXBlKj4oc2xvdEJhc2UpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcAppbmRleCA4MWIzZDlmLi41YWZhMDRlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2Jq
LmNwcApAQCAtMTAwNiw4ICsxMDA2LDkgQEAgYm9vbCBKU1Rlc3RPYmo6OmdldE93blByb3BlcnR5
U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmEKICAgICBy
ZXR1cm4gZ2V0U3RhdGljVmFsdWVTbG90PEpTVGVzdE9iaiwgQmFzZT4oZXhlYywgSlNUZXN0T2Jq
VGFibGUsIHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKLUVuY29kZWRKU1Zh
bHVlIGpzVGVzdE9ialJlYWRPbmx5TG9uZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCog
c2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2Rl
ZEpTVmFsdWUganNUZXN0T2JqUmVhZE9ubHlMb25nQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2Jq
ZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJv
cGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVz
dE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVj
b2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAg
ICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAt
MTAyMCw4ICsxMDIxLDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVhZE9ubHlMb25nQXR0
cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW4KIH0KIAogCi1FbmNvZGVk
SlNWYWx1ZSBqc1Rlc3RPYmpSZWFkT25seVN0cmluZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09i
amVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQor
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVhZE9ubHlTdHJpbmdBdHRyKEV4ZWNTdGF0ZSogZXhl
YywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5
TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAg
ICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1Zh
bHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkg
ewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFz
ZSkpCkBAIC0xMDM0LDggKzEwMzYsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWFkT25s
eVN0cmluZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsCiB9CiAKIAot
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVhZE9ubHlUZXN0T2JqQXR0cihFeGVjU3RhdGUqIGV4
ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0
eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWFkT25seVRlc3RPYmpBdHRyKEV4ZWNT
dGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUs
IFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5
TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RP
YmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0
ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUq
PihzbG90QmFzZSkpCkBAIC0xMDQ4LDggKzEwNTEsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RP
YmpSZWFkT25seVRlc3RPYmpBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNl
LAogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNvbnN0cnVjdG9yU3RhdGljUmVhZE9u
bHlMb25nQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpT
VmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpD
b25zdHJ1Y3RvclN0YXRpY1JlYWRPbmx5TG9uZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVj
dCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3Bl
cnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBVTlVTRURf
UEFSQU0odGhpc1ZhbHVlKTsKICAgICBVTlVTRURfUEFSQU0oc2xvdEJhc2UpOwogICAgIEpTVmFs
dWUgcmVzdWx0ID0ganNOdW1iZXIoVGVzdE9iajo6c3RhdGljUmVhZE9ubHlMb25nQXR0cigpKTsK
QEAgLTEwNTcsOCArMTA2MSw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNvbnN0cnVjdG9y
U3RhdGljUmVhZE9ubHlMb25nQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqCiB9CiAKIAotRW5j
b2RlZEpTVmFsdWUganNUZXN0T2JqQ29uc3RydWN0b3JTdGF0aWNTdHJpbmdBdHRyKEV4ZWNTdGF0
ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFBy
b3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNvbnN0cnVjdG9yU3RhdGljU3Ry
aW5nQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFs
dWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9Q
QVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIFVOVVNFRF9QQVJBTSh0aGlzVmFsdWUpOwogICAgIFVO
VVNFRF9QQVJBTShzbG90QmFzZSk7CiAgICAgSlNWYWx1ZSByZXN1bHQgPSBqc1N0cmluZ1dpdGhD
YWNoZShleGVjLCBUZXN0T2JqOjpzdGF0aWNTdHJpbmdBdHRyKCkpOwpAQCAtMTA2Niw4ICsxMDcx
LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ29uc3RydWN0b3JTdGF0aWNTdHJpbmdBdHRy
KEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHMKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rl
c3RPYmpDb25zdHJ1Y3RvclRlc3RTdWJPYmooRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpT
VmFsdWUganNUZXN0T2JqQ29uc3RydWN0b3JUZXN0U3ViT2JqKEV4ZWNTdGF0ZSogZXhlYywgSlNP
YmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNU
ZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1ZhbHVlOjpk
ZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAg
ICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFzZSkpCkBA
IC0xMDc4LDggKzEwODQsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDb25zdHJ1Y3RvclRl
c3RTdWJPYmooRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhcwogfQogCiAKLUVuY29k
ZWRKU1ZhbHVlIGpzVGVzdE9ialRlc3RTdWJPYmpFbmFibGVkQnlTZXR0aW5nQ29uc3RydWN0b3Io
RXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNW
YWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqVGVzdFN1Yk9iakVu
YWJsZWRCeVNldHRpbmdDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90
QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1l
KQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2Fz
dGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNW
YWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpz
RHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTA5NSw4ICsx
MTAyLDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqVGVzdFN1Yk9iakVuYWJsZWRCeVNldHRp
bmdDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMsIEoKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBq
c1Rlc3RPYmpFbnVtQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5j
b2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rl
c3RPYmpFbnVtQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2Rl
ZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVO
VVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpz
RHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAg
IGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8
SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTEwOSw4ICsxMTE3LDkgQEAgRW5j
b2RlZEpTVmFsdWUganNUZXN0T2JqRW51bUF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCog
c2xvdEJhc2UsIEVuY29kZWRKU1YKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpCeXRl
QXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUg
dGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpCeXRlQXR0
cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhp
c1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShw
cm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8
SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VM
WSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJv
dG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTEyMyw4ICsxMTMyLDkgQEAgRW5jb2RlZEpTVmFsdWUg
anNUZXN0T2JqQnl0ZUF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVu
Y29kZWRKU1YKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpPY3RldEF0dHIoRXhlY1N0
YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwg
UHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqT2N0ZXRBdHRyKEV4ZWNTdGF0
ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFBy
b3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFt
ZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoq
PihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRU
aGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihz
bG90QmFzZSkpCkBAIC0xMTM3LDggKzExNDcsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpP
Y3RldEF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKUwog
fQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialNob3J0QXR0cihFeGVjU3RhdGUqIGV4ZWMs
IEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5h
bWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpTaG9ydEF0dHIoRXhlY1N0YXRlKiBleGVjLCBK
U09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1l
IHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBK
U1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6
OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAg
ICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkK
QEAgLTExNTEsOCArMTE2Miw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialNob3J0QXR0cihF
eGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTCiB9CiAKIAotRW5j
b2RlZEpTVmFsdWUganNUZXN0T2JqVW5zaWduZWRTaG9ydEF0dHIoRXhlY1N0YXRlKiBleGVjLCBK
U09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1l
KQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqVW5zaWduZWRTaG9ydEF0dHIoRXhlY1N0YXRlKiBl
eGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVy
dHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsK
ICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpT
VmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMp
KSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+KHNsb3RC
YXNlKSkKQEAgLTExNjUsOCArMTE3Nyw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialVuc2ln
bmVkU2hvcnRBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFCiB9CiAK
IAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTG9uZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09i
amVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQor
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTG9uZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVj
dCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3Bl
cnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RP
YmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29k
ZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAg
IGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTEx
NzksOCArMTE5Miw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakxvbmdBdHRyKEV4ZWNTdGF0
ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWCiB9CiAKIAotRW5jb2RlZEpT
VmFsdWUganNUZXN0T2JqTG9uZ0xvbmdBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNs
b3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRK
U1ZhbHVlIGpzVGVzdE9iakxvbmdMb25nQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBz
bG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlO
YW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiog
Y2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRo
aXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYg
KGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTE5Myw4
ICsxMjA3LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTG9uZ0xvbmdBdHRyKEV4ZWNTdGF0
ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGUKIH0KIAogCi1FbmNvZGVkSlNWYWx1
ZSBqc1Rlc3RPYmpVbnNpZ25lZExvbmdMb25nQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0
KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RPYmpVbnNpZ25lZExvbmdMb25nQXR0cihFeGVjU3RhdGUqIGV4ZWMs
IEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5h
bWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAg
IEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1
ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsK
ICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2Up
KQpAQCAtMTIwNyw4ICsxMjIyLDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqVW5zaWduZWRM
b25nTG9uZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UKIH0KIAogCi1F
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpTdHJpbmdBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmpl
Y3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0Vu
Y29kZWRKU1ZhbHVlIGpzVGVzdE9ialN0cmluZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVj
dCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3Bl
cnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RP
YmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29k
ZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAg
IGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTEy
MjEsOCArMTIzNyw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialN0cmluZ0F0dHIoRXhlY1N0
YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKCiB9CiAKIAotRW5jb2RlZEpT
VmFsdWUganNUZXN0T2JqVGVzdE9iakF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpT
VmFsdWUganNUZXN0T2JqVGVzdE9iakF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFt
ZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNh
c3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlz
VmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChq
c0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTEyMzUsOCAr
MTI1Miw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialRlc3RPYmpBdHRyKEV4ZWNTdGF0ZSog
ZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUg
anNUZXN0T2JqWE1MT2JqQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwg
RW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBq
c1Rlc3RPYmpYTUxPYmpBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBF
bmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7Cisg
ICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlz
ID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7
CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWlj
Q2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC0xMjQ5LDggKzEyNjcsOSBA
QCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpYTUxPYmpBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNP
YmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSgogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9i
akNyZWF0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFs
dWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDcmVh
dGUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRo
aXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0o
cHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0
PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtF
TFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialBy
b3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTEyNjMsOCArMTI4Miw5IEBAIEVuY29kZWRKU1ZhbHVl
IGpzVGVzdE9iakNyZWF0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5j
b2RlZEpTVmFsCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVmbGVjdGVkU3RyaW5n
QXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUg
dGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWZsZWN0
ZWRTdHJpbmdBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVk
SlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5V
U0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNE
eW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAg
aWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxK
U1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC0xMjc3LDggKzEyOTcsOSBAQCBFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWZsZWN0ZWRTdHJpbmdBdHRyKEV4ZWNTdGF0ZSogZXhlYywg
SlNPYmplY3QqIHNsb3RCYXNlLAogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialJlZmxl
Y3RlZEludGVncmFsQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5j
b2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rl
c3RPYmpSZWZsZWN0ZWRJbnRlZ3JhbEF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFt
ZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNh
c3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlz
VmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChq
c0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTEyOTEsOCAr
MTMxMiw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialJlZmxlY3RlZEludGVncmFsQXR0cihF
eGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUg
anNUZXN0T2JqUmVmbGVjdGVkVW5zaWduZWRJbnRlZ3JhbEF0dHIoRXhlY1N0YXRlKiBleGVjLCBK
U09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1l
KQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVmbGVjdGVkVW5zaWduZWRJbnRlZ3JhbEF0dHIo
RXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNW
YWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJv
cGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpT
VGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFko
IWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3Rv
dHlwZSo+KHNsb3RCYXNlKSkKQEAgLTEzMDUsOCArMTMyNyw5IEBAIEVuY29kZWRKU1ZhbHVlIGpz
VGVzdE9ialJlZmxlY3RlZFVuc2lnbmVkSW50ZWdyYWxBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNP
YmplY3QqCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVmbGVjdGVkQm9vbGVhbkF0
dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRo
aXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVmbGVjdGVk
Qm9vbGVhbkF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRK
U1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVT
RURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5
bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBp
ZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpT
VGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTEzMTksOCArMTM0Miw5IEBAIEVuY29k
ZWRKU1ZhbHVlIGpzVGVzdE9ialJlZmxlY3RlZEJvb2xlYW5BdHRyKEV4ZWNTdGF0ZSogZXhlYywg
SlNPYmplY3QqIHNsb3RCYXNlCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVmbGVj
dGVkVVJMQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpT
VmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpS
ZWZsZWN0ZWRVUkxBdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNv
ZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAg
VU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0g
anNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAg
ICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2Fz
dDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC0xMzMzLDggKzEzNTcsOSBAQCBF
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWZsZWN0ZWRVUkxBdHRyKEV4ZWNTdGF0ZSogZXhlYywg
SlNPYmplY3QqIHNsb3RCYXNlLCBFbgogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialJl
ZmxlY3RlZFN0cmluZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVu
Y29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNU
ZXN0T2JqUmVmbGVjdGVkU3RyaW5nQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90
QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1l
KQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2Fz
dGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNW
YWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpz
RHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTM0Nyw4ICsx
MzcyLDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVmbGVjdGVkU3RyaW5nQXR0cihFeGVj
U3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBq
c1Rlc3RPYmpSZWZsZWN0ZWRDdXN0b21JbnRlZ3JhbEF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09i
amVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQor
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVmbGVjdGVkQ3VzdG9tSW50ZWdyYWxBdHRyKEV4ZWNT
dGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUs
IFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5
TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RP
YmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0
ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUq
PihzbG90QmFzZSkpCkBAIC0xMzYxLDggKzEzODcsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RP
YmpSZWZsZWN0ZWRDdXN0b21JbnRlZ3JhbEF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCog
cwogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialJlZmxlY3RlZEN1c3RvbUJvb2xlYW5B
dHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0
aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialJlZmxlY3Rl
ZEN1c3RvbUJvb2xlYW5BdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBF
bmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7Cisg
ICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlz
ID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7
CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWlj
Q2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC0xMzc1LDggKzE0MDIsOSBA
QCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWZsZWN0ZWRDdXN0b21Cb29sZWFuQXR0cihFeGVj
U3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbAogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9i
alJlZmxlY3RlZEN1c3RvbVVSTEF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJh
c2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFs
dWUganNUZXN0T2JqUmVmbGVjdGVkQ3VzdG9tVVJMQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2Jq
ZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJv
cGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVz
dE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVj
b2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAg
ICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAt
MTM4OSw4ICsxNDE3LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVmbGVjdGVkQ3VzdG9t
VVJMQXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmEKIH0KIAogCi1FbmNvZGVk
SlNWYWx1ZSBqc1Rlc3RPYmpUeXBlZEFycmF5QXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0
KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RPYmpUeXBlZEFycmF5QXR0cihFeGVjU3RhdGUqIGV4ZWMsIEpTT2Jq
ZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJv
cGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVz
dE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVj
b2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAg
ICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAt
MTQwMyw4ICsxNDMyLDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqVHlwZWRBcnJheUF0dHIo
RXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY28KIH0KIAogCi1FbmNvZGVk
SlNWYWx1ZSBqc1Rlc3RPYmpBdHRyV2l0aEdldHRlckV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMs
IEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5h
bWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpBdHRyV2l0aEdldHRlckV4Y2VwdGlvbihFeGVj
U3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVl
LCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0
eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0
T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2Fz
dGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBl
Kj4oc2xvdEJhc2UpKQpAQCAtMTQxOSw4ICsxNDQ5LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0
T2JqQXR0cldpdGhHZXR0ZXJFeGNlcHRpb24oRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEIKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpBdHRyV2l0aFNldHRlckV4Y2VwdGlv
bihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhp
c1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpBdHRyV2l0aFNl
dHRlckV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2Rl
ZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVO
VVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpz
RHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAg
IGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8
SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTQzMyw4ICsxNDY0LDkgQEAgRW5j
b2RlZEpTVmFsdWUganNUZXN0T2JqQXR0cldpdGhTZXR0ZXJFeGNlcHRpb24oRXhlY1N0YXRlKiBl
eGVjLCBKU09iamVjdCogc2xvdEIKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpTdHJp
bmdBdHRyV2l0aEdldHRlckV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90
QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RPYmpTdHJpbmdBdHRyV2l0aEdldHRlckV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4
ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0
eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwog
ICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNW
YWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykp
IHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJh
c2UpKQpAQCAtMTQ0OSw4ICsxNDgxLDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqU3RyaW5n
QXR0cldpdGhHZXR0ZXJFeGNlcHRpb24oRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCoKIH0KIAog
Ci1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpTdHJpbmdBdHRyV2l0aFNldHRlckV4Y2VwdGlvbihF
eGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1Zh
bHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpTdHJpbmdBdHRyV2l0
aFNldHRlckV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5j
b2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAg
IFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9
IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwog
ICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nh
c3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTQ2Myw4ICsxNDk2LDkgQEAg
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqU3RyaW5nQXR0cldpdGhTZXR0ZXJFeGNlcHRpb24oRXhl
Y1N0YXRlKiBleGVjLCBKU09iamVjdCoKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpD
dXN0b21BdHRyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNW
YWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakN1
c3RvbUF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1Zh
bHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURf
UEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFt
aWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAo
VU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVz
dE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTE0NzUsOCArMTUwOSw5IEBAIEVuY29kZWRK
U1ZhbHVlIGpzVGVzdE9iakN1c3RvbUF0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEJhc2UsIEVuY29kZWRKCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqV2l0aFNjcmlw
dFN0YXRlQXR0cmlidXRlKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNv
ZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVz
dE9ialdpdGhTY3JpcHRTdGF0ZUF0dHJpYnV0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBz
bG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlO
YW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiog
Y2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRo
aXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYg
KGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTQ4OSw4
ICsxNTI0LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqV2l0aFNjcmlwdFN0YXRlQXR0cmli
dXRlKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3QKIH0KIAogCi1FbmNvZGVkSlNWYWx1
ZSBqc1Rlc3RPYmpXaXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEF0dHJpYnV0ZShFeGVjU3RhdGUq
IGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9w
ZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpXaXRoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dEF0dHJpYnV0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2Rl
ZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVO
VVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpz
RHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAg
IGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8
SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTUwNiw4ICsxNTQyLDkgQEAgRW5j
b2RlZEpTVmFsdWUganNUZXN0T2JqV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBdHRyaWJ1dGUo
RXhlY1N0YXRlKiBleGVjLCBKU08KIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpXaXRo
U2NyaXB0U3RhdGVBdHRyaWJ1dGVSYWlzZXMoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpT
VmFsdWUganNUZXN0T2JqV2l0aFNjcmlwdFN0YXRlQXR0cmlidXRlUmFpc2VzKEV4ZWNTdGF0ZSog
ZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3Bl
cnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7
CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihK
U1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlz
KSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90
QmFzZSkpCkBAIC0xNTIyLDggKzE1NTksOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpXaXRo
U2NyaXB0U3RhdGVBdHRyaWJ1dGVSYWlzZXMoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdAogfQog
CiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QXR0
cmlidXRlUmFpc2VzKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVk
SlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9i
aldpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QXR0cmlidXRlUmFpc2VzKEV4ZWNTdGF0ZSogZXhl
YywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5
TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAg
ICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1Zh
bHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkg
ewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFz
ZSkpCkBAIC0xNTQxLDggKzE1NzksOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpXaXRoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dEF0dHJpYnV0ZVJhaXNlcyhFeGVjU3RhdGUqIGV4ZQogfQogCiAK
LUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2Ny
aXB0U3RhdGVBdHRyaWJ1dGUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVu
Y29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNU
ZXN0T2JqV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZUF0dHJpYnV0ZShF
eGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1Zh
bHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9w
ZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNU
ZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSgh
Y2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90
eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTU1OCw4ICsxNTk3LDkgQEAgRW5jb2RlZEpTVmFsdWUganNU
ZXN0T2JqV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZUF0dHJpYnV0ZShF
eGVjU3QKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpXaXRoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dEFuZFNjcmlwdFN0YXRlQXR0cmlidXRlUmFpc2VzKEV4ZWNTdGF0ZSogZXhlYywgSlNP
YmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkK
K0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2Ny
aXB0U3RhdGVBdHRyaWJ1dGVSYWlzZXMoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJh
c2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkK
IHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3Rl
ZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFs
dWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5
bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTE1NzcsOCArMTYx
Nyw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0
QW5kU2NyaXB0U3RhdGVBdHRyaWJ1dGVSYWlzZXMoCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNU
ZXN0T2JqV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXNB
dHRyaWJ1dGUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1Zh
bHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqV2l0
aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXNBdHRyaWJ1dGUo
RXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNW
YWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJv
cGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpT
VGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFko
IWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3Rv
dHlwZSo+KHNsb3RCYXNlKSkKQEAgLTE1OTQsOCArMTYzNSw5IEBAIEVuY29kZWRKU1ZhbHVlIGpz
VGVzdE9ialdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVXaXRoU3BhY2Vz
QXR0cmliCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqV2l0aFNjcmlwdEFyZ3VtZW50
c0FuZENhbGxTdGFja0F0dHJpYnV0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFz
ZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1
ZSBqc1Rlc3RPYmpXaXRoU2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRlKEV4ZWNT
dGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUs
IFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5
TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RP
YmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0
ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUq
PihzbG90QmFzZSkpCkBAIC0xNjA5LDggKzE2NTEsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RP
YmpXaXRoU2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRlKEV4ZWNTdGF0ZSogZXhl
YwogCiAKICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNv
bmRpdGlvbmFsQXR0cjEoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29k
ZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0
T2JqQ29uZGl0aW9uYWxBdHRyMShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwg
RW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewor
ICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhp
cyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkp
OwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1p
Y0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTYyNSw4ICsxNjY4LDkg
QEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyMShFeGVjU3RhdGUqIGV4
ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW4KICNlbmRpZgogCiAjaWYgRU5BQkxFKENvbmRpdGlv
bjEpICYmIEVOQUJMRShDb25kaXRpb24yKQotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ29uZGl0
aW9uYWxBdHRyMihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpT
VmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpD
b25kaXRpb25hbEF0dHIyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNv
ZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAg
VU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0g
anNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAg
ICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2Fz
dDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC0xNjQxLDggKzE2ODUsOSBAQCBF
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDb25kaXRpb25hbEF0dHIyKEV4ZWNTdGF0ZSogZXhlYywg
SlNPYmplY3QqIHNsb3RCYXNlLCBFbgogI2VuZGlmCiAKICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkg
fHwgRU5BQkxFKENvbmRpdGlvbjIpCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDb25kaXRpb25h
bEF0dHIzKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1
ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNvbmRp
dGlvbmFsQXR0cjMoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRK
U1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVT
RURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5
bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBp
ZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpT
VGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTE2NTcsOCArMTcwMiw5IEBAIEVuY29k
ZWRKU1ZhbHVlIGpzVGVzdE9iakNvbmRpdGlvbmFsQXR0cjMoRXhlY1N0YXRlKiBleGVjLCBKU09i
amVjdCogc2xvdEJhc2UsIEVuCiAjZW5kaWYKIAogI2lmIEVOQUJMRShDb25kaXRpb24xKQotRW5j
b2RlZEpTVmFsdWUganNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyNENvbnN0cnVjdG9yKEV4ZWNTdGF0
ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFBy
b3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNvbmRpdGlvbmFsQXR0cjRDb25z
dHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFs
dWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9Q
QVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1p
Y0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChV
TkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0
T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTY3MSw4ICsxNzE3LDkgQEAgRW5jb2RlZEpT
VmFsdWUganNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyNENvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhl
YywgSlNPYmplY3QqIHMKICNlbmRpZgogCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpICYmIEVOQUJM
RShDb25kaXRpb24yKQotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyNUNv
bnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNW
YWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNv
bmRpdGlvbmFsQXR0cjVDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90
QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1l
KQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2Fz
dGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNW
YWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpz
RHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTY4NSw4ICsx
NzMyLDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyNUNvbnN0cnVj
dG9yKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHMKICNlbmRpZgogCiAjaWYgRU5BQkxFKENv
bmRpdGlvbjEpIHx8IEVOQUJMRShDb25kaXRpb24yKQotRW5jb2RlZEpTVmFsdWUganNUZXN0T2Jq
Q29uZGl0aW9uYWxBdHRyNkNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNs
b3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRK
U1ZhbHVlIGpzVGVzdE9iakNvbmRpdGlvbmFsQXR0cjZDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4
ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0
eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwog
ICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNW
YWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykp
IHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJh
c2UpKQpAQCAtMTY5OCw4ICsxNzQ2LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ29uZGl0
aW9uYWxBdHRyNkNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHMKIAogI2Vu
ZGlmCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNhY2hlZEF0dHJpYnV0ZTEoRXhlY1N0YXRl
KiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJv
cGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ2FjaGVkQXR0cmlidXRlMShFeGVj
U3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVl
LCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0
eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0
T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2Fz
dGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBl
Kj4oc2xvdEJhc2UpKQpAQCAtMTcxNSw4ICsxNzY0LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0
T2JqQ2FjaGVkQXR0cmlidXRlMShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwg
RW4KIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDYWNoZWRBdHRyaWJ1dGUyKEV4ZWNT
dGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUs
IFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNhY2hlZEF0dHJpYnV0ZTIo
RXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNW
YWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJv
cGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpT
VGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFko
IWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3Rv
dHlwZSo+KHNsb3RCYXNlKSkKQEAgLTE3MzIsOCArMTc4Miw5IEBAIEVuY29kZWRKU1ZhbHVlIGpz
VGVzdE9iakNhY2hlZEF0dHJpYnV0ZTIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJh
c2UsIEVuCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQW55QXR0cmlidXRlKEV4ZWNT
dGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUs
IFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakFueUF0dHJpYnV0ZShFeGVj
U3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVl
LCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0
eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0
T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2Fz
dGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBl
Kj4oc2xvdEJhc2UpKQpAQCAtMTc0Niw4ICsxNzk3LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0
T2JqQW55QXR0cmlidXRlKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNv
ZGUKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDb250ZW50RG9jdW1lbnQoRXhlY1N0
YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwg
UHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ29udGVudERvY3VtZW50KEV4
ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFs
dWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3Bl
cnR5TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rl
c3RPYmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFj
YXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5
cGUqPihzbG90QmFzZSkpCkBAIC0xNzU5LDggKzE4MTEsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rl
c3RPYmpDb250ZW50RG9jdW1lbnQoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2Us
IEVuYwogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iak11dGFibGVQb2ludChFeGVjU3Rh
dGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQ
cm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpNdXRhYmxlUG9pbnQoRXhlY1N0
YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwg
UHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlO
YW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9i
aio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3Rl
ZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+
KHNsb3RCYXNlKSkKQEAgLTE3NzMsOCArMTgyNiw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9i
ak11dGFibGVQb2ludChFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2Rl
CiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqSW1tdXRhYmxlUG9pbnQoRXhlY1N0YXRl
KiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJv
cGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqSW1tdXRhYmxlUG9pbnQoRXhlY1N0
YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwg
UHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlO
YW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9i
aio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3Rl
ZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+
KHNsb3RCYXNlKSkKQEAgLTE3ODcsOCArMTg0MSw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9i
akltbXV0YWJsZVBvaW50KEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNv
CiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqU3RyYXdiZXJyeShFeGVjU3RhdGUqIGV4
ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0
eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpTdHJhd2JlcnJ5KEV4ZWNTdGF0ZSogZXhl
YywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5
TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAg
ICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1Zh
bHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkg
ewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFz
ZSkpCkBAIC0xODAxLDggKzE4NTYsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpTdHJhd2Jl
cnJ5KEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSgogfQogCiAK
LUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialN0cmljdEZsb2F0KEV4ZWNTdGF0ZSogZXhlYywgSlNP
YmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkK
K0VuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialN0cmljdEZsb2F0KEV4ZWNTdGF0ZSogZXhlYywgSlNP
YmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNU
ZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1ZhbHVlOjpk
ZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAg
ICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFzZSkpCkBA
IC0xODE1LDggKzE4NzEsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpTdHJpY3RGbG9hdChF
eGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZAogfQogCiAKLUVuY29k
ZWRKU1ZhbHVlIGpzVGVzdE9iakRlc2NyaXB0aW9uKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3Qq
IHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29k
ZWRKU1ZhbHVlIGpzVGVzdE9iakRlc2NyaXB0aW9uKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3Qq
IHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0
eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0T2Jq
KiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1ZhbHVlOjpkZWNvZGUo
dGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBp
ZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC0xODI5
LDggKzE4ODYsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpEZXNjcmlwdGlvbihFeGVjU3Rh
dGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZAogfQogCiAKLUVuY29kZWRKU1Zh
bHVlIGpzVGVzdE9iaklkKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNv
ZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVz
dE9iaklkKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1
ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BB
UkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWlj
Q2FzdDxKU1Rlc3RPYmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVO
TElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RP
YmpQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC0xODQzLDggKzE5MDEsOSBAQCBFbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RPYmpJZChFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5j
b2RlZEpTVmFsdWUgdAogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakhhc2goRXhlY1N0
YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwg
UHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqSGFzaChFeGVjU3RhdGUqIGV4
ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0
eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwog
ICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNW
YWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykp
IHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJh
c2UpKQpAQCAtMTg1Nyw4ICsxOTE2LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqSGFzaChF
eGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUKIH0KIAog
Ci1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZXBsYWNlYWJsZUF0dHJpYnV0ZShFeGVjU3RhdGUq
IGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9w
ZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZXBsYWNlYWJsZUF0dHJpYnV0ZShF
eGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1Zh
bHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9w
ZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNU
ZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSgh
Y2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqUHJvdG90
eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTg3MSw4ICsxOTMxLDkgQEAgRW5jb2RlZEpTVmFsdWUganNU
ZXN0T2JqUmVwbGFjZWFibGVBdHRyaWJ1dGUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEJhc2UKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpOdWxsYWJsZURvdWJsZUF0dHJp
YnV0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUg
dGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpOdWxsYWJs
ZURvdWJsZUF0dHJpYnV0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5j
b2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAg
IFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdE9iaiogY2FzdGVkVGhpcyA9
IGpzRHluYW1pY0Nhc3Q8SlNUZXN0T2JqKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwog
ICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nh
c3Q8SlNUZXN0T2JqUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTg4OCw4ICsxOTQ5LDkgQEAg
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTnVsbGFibGVEb3VibGVBdHRyaWJ1dGUoRXhlY1N0YXRl
KiBleGVjLCBKU09iamVjdCogc2xvdEIKIH0KIAogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpO
dWxsYWJsZUxvbmdBdHRyaWJ1dGUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2Us
IEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUg
anNUZXN0T2JqTnVsbGFibGVMb25nQXR0cmlidXRlKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3Qq
IHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0
eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0T2Jq
KiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RPYmoqPihKU1ZhbHVlOjpkZWNvZGUo
dGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBp
ZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC0xOTA1
LDggKzE5NjcsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpOdWxsYWJsZUxvbmdBdHRyaWJ1
dGUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhcwogfQogCiAKLUVuY29kZWRKU1Zh
bHVlIGpzVGVzdE9iak51bGxhYmxlQm9vbGVhbkF0dHJpYnV0ZShFeGVjU3RhdGUqIGV4ZWMsIEpT
T2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUp
CitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpOdWxsYWJsZUJvb2xlYW5BdHRyaWJ1dGUoRXhlY1N0
YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwg
UHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlO
YW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9i
aio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3Rl
ZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+
KHNsb3RCYXNlKSkKQEAgLTE5MjIsOCArMTk4NSw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9i
ak51bGxhYmxlQm9vbGVhbkF0dHJpYnV0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90
CiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTnVsbGFibGVTdHJpbmdBdHRyaWJ1dGUo
RXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNW
YWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTnVsbGFibGVTdHJp
bmdBdHRyaWJ1dGUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRK
U1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVT
RURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5
bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBp
ZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpT
VGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTE5MzksOCArMjAwMyw5IEBAIEVuY29k
ZWRKU1ZhbHVlIGpzVGVzdE9iak51bGxhYmxlU3RyaW5nQXR0cmlidXRlKEV4ZWNTdGF0ZSogZXhl
YywgSlNPYmplY3QqIHNsb3RCCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTnVsbGFi
bGVMb25nU2V0dGFibGVBdHRyaWJ1dGUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJh
c2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFs
dWUganNUZXN0T2JqTnVsbGFibGVMb25nU2V0dGFibGVBdHRyaWJ1dGUoRXhlY1N0YXRlKiBleGVj
LCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlO
YW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAg
ICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFs
dWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7
CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNl
KSkKQEAgLTE5NTYsOCArMjAyMSw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iak51bGxhYmxl
TG9uZ1NldHRhYmxlQXR0cmlidXRlKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqCiB9CiAKIAot
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTnVsbGFibGVTdHJpbmdWYWx1ZShFeGVjU3RhdGUqIGV4
ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0
eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpOdWxsYWJsZVN0cmluZ1ZhbHVlKEV4ZWNT
dGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUs
IFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5
TmFtZSk7CiAgICAgSlNUZXN0T2JqKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RP
YmoqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0
ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RPYmpQcm90b3R5cGUq
PihzbG90QmFzZSkpCkBAIC0xOTc1LDggKzIwNDEsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RP
YmpOdWxsYWJsZVN0cmluZ1ZhbHVlKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNl
LAogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakF0dHJpYnV0ZShFeGVjU3RhdGUqIGV4
ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0
eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpBdHRyaWJ1dGUoRXhlY1N0YXRlKiBleGVj
LCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlO
YW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAg
ICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFs
dWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7
CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNl
KSkKQEAgLTE5ODksOCArMjA1Niw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakF0dHJpYnV0
ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTCiB9CiAKIAot
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQXR0cmlidXRlV2l0aFJlc2VydmVkRW51bVR5cGUoRXhl
Y1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1
ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQXR0cmlidXRlV2l0aFJl
c2VydmVkRW51bVR5cGUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29k
ZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBV
TlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RPYmoqIGNhc3RlZFRoaXMgPSBq
c0R5bmFtaWNDYXN0PEpTVGVzdE9iaio+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAg
ICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0
PEpTVGVzdE9ialByb3RvdHlwZSo+KHNsb3RCYXNlKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJ
bnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKaW5kZXggZmUzOTAyNC4uNWQ4
NzliNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZUludGVyZmFjZS5jcHAKQEAgLTE0Nyw4ICsxNDcsOSBAQCBib29sIEpTVGVzdFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZUludGVyZmFjZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3Qs
CiAgICAgcmV0dXJuIEJhc2U6OmdldE93blByb3BlcnR5U2xvdCh0aGlzT2JqZWN0LCBleGVjLCBw
cm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCi1FbmNvZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVk
U2NyaXB0VmFsdWVJbnRlcmZhY2VWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90
QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VWYWx1ZShFeGVjU3RhdGUq
IGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9w
ZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUp
OwogICAgIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSogY2FzdGVkVGhpcyA9
IGpzRHluYW1pY0Nhc3Q8SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlKj4oSlNW
YWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykp
IHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVl
SW50ZXJmYWNlUHJvdG90eXBlKj4oc2xvdEJhc2UpKQpAQCAtMTYxLDggKzE2Miw5IEBAIEVuY29k
ZWRKU1ZhbHVlIGpzVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVZhbHVlKEV4ZWNT
dGF0ZSogZXhlYywgSlNPYmplCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlSW50ZXJmYWNlUmVhZG9ubHlWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2Jq
ZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitF
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VSZWFkb25s
eVZhbHVlKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1
ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BB
UkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJm
YWNlKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFs
dWVJbnRlcmZhY2UqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElL
RUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RTZXJp
YWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC0xNzUs
OCArMTc3LDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50
ZXJmYWNlUmVhZG9ubHlWYWx1ZShFeGVjU3RhdGUqIGV4ZWMKIH0KIAogCi1FbmNvZGVkSlNWYWx1
ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VDYWNoZWRWYWx1ZShFeGVjU3Rh
dGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQ
cm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJ
bnRlcmZhY2VDYWNoZWRWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwg
RW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewor
ICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZUludGVyZmFjZSogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0U2VyaWFs
aXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwog
ICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nh
c3Q8SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBlKj4oc2xvdEJh
c2UpKQpAQCAtMTkyLDggKzE5NSw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZUludGVyZmFjZUNhY2hlZFZhbHVlKEV4ZWNTdGF0ZSogZXhlYywKIH0KIAogCi1F
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQb3J0cyhF
eGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1Zh
bHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0
VmFsdWVJbnRlcmZhY2VQb3J0cyhFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwg
RW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewor
ICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpTVGVzdFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZUludGVyZmFjZSogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0U2VyaWFs
aXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwog
ICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nh
c3Q8SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBlKj4oc2xvdEJh
c2UpKQpAQCAtMjA2LDggKzIxMCw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZUludGVyZmFjZVBvcnRzKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplCiB9CiAKIAot
RW5jb2RlZEpTVmFsdWUganNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlQ2FjaGVk
UmVhZG9ubHlWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2Rl
ZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RT
ZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VDYWNoZWRSZWFkb25seVZhbHVlKEV4ZWNTdGF0
ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFBy
b3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFt
ZSk7CiAgICAgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlKiBjYXN0ZWRUaGlz
ID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UqPihK
U1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlz
KSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFs
dWVJbnRlcmZhY2VQcm90b3R5cGUqPihzbG90QmFzZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRlZnMuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmNwcAppbmRl
eCA0ODU4MTFlLi4yOGEwZTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRlZnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBlZGVmcy5jcHAKQEAgLTI1MCw4ICsyNTAs
OSBAQCBib29sIEpTVGVzdFR5cGVkZWZzOjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9i
amVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZQogICAgIHJldHVybiBnZXRTdGF0aWNWYWx1ZVNs
b3Q8SlNUZXN0VHlwZWRlZnMsIEJhc2U+KGV4ZWMsIEpTVGVzdFR5cGVkZWZzVGFibGUsIHRoaXNP
YmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdFR5
cGVkZWZzVW5zaWduZWRMb25nTG9uZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xv
dEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpT
VmFsdWUganNUZXN0VHlwZWRlZnNVbnNpZ25lZExvbmdMb25nQXR0cihFeGVjU3RhdGUqIGV4ZWMs
IEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5h
bWUgcHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAg
IEpTVGVzdFR5cGVkZWZzKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RUeXBlZGVm
cyo+KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3Rl
ZFRoaXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdFR5cGVkZWZzUHJvdG90
eXBlKj4oc2xvdEJhc2UpKQpAQCAtMjY0LDggKzI2NSw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVz
dFR5cGVkZWZzVW5zaWduZWRMb25nTG9uZ0F0dHIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCog
c2xvCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0VHlwZWRlZnNJbW11dGFibGVTZXJpYWxp
emVkU2NyaXB0VmFsdWUoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29k
ZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0
VHlwZWRlZnNJbW11dGFibGVTZXJpYWxpemVkU2NyaXB0VmFsdWUoRXhlY1N0YXRlKiBleGVjLCBK
U09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1l
IHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0ocHJvcGVydHlOYW1lKTsKICAgICBK
U1Rlc3RUeXBlZGVmcyogY2FzdGVkVGhpcyA9IGpzRHluYW1pY0Nhc3Q8SlNUZXN0VHlwZWRlZnMq
PihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKFVOTElLRUxZKCFjYXN0ZWRU
aGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxKU1Rlc3RUeXBlZGVmc1Byb3RvdHlw
ZSo+KHNsb3RCYXNlKSkKQEAgLTI3OCw4ICsyODAsOSBAQCBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RU
eXBlZGVmc0ltbXV0YWJsZVNlcmlhbGl6ZWRTY3JpcHRWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIEpT
TwogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdFR5cGVkZWZzQ29uc3RydWN0b3JUZXN0U3Vi
T2JqKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0
aGlzVmFsdWUsIFByb3BlcnR5TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdFR5cGVkZWZzQ29u
c3RydWN0b3JUZXN0U3ViT2JqKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBF
bmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7Cisg
ICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0VHlwZWRlZnMqIGNhc3Rl
ZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdFR5cGVkZWZzKj4oSlNWYWx1ZTo6ZGVjb2RlKHRo
aXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYg
KGpzRHluYW1pY0Nhc3Q8SlNUZXN0VHlwZWRlZnNQcm90b3R5cGUqPihzbG90QmFzZSkpCkBAIC0y
OTAsOCArMjkzLDkgQEAgRW5jb2RlZEpTVmFsdWUganNUZXN0VHlwZWRlZnNDb25zdHJ1Y3RvclRl
c3RTdWJPYmooRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2wKIH0KIAogCi1FbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RUeXBlZGVmc0F0dHJXaXRoR2V0dGVyRXhjZXB0aW9uKEV4ZWNTdGF0ZSogZXhl
YywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5
TmFtZSkKK0VuY29kZWRKU1ZhbHVlIGpzVGVzdFR5cGVkZWZzQXR0cldpdGhHZXR0ZXJFeGNlcHRp
b24oRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29kZWRKU1ZhbHVlIHRo
aXNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKKyAgICBVTlVTRURfUEFSQU0o
cHJvcGVydHlOYW1lKTsKICAgICBKU1Rlc3RUeXBlZGVmcyogY2FzdGVkVGhpcyA9IGpzRHluYW1p
Y0Nhc3Q8SlNUZXN0VHlwZWRlZnMqPihKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAg
aWYgKFVOTElLRUxZKCFjYXN0ZWRUaGlzKSkgewogICAgICAgICBpZiAoanNEeW5hbWljQ2FzdDxK
U1Rlc3RUeXBlZGVmc1Byb3RvdHlwZSo+KHNsb3RCYXNlKSkKQEAgLTMwNiw4ICszMTAsOSBAQCBF
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RUeXBlZGVmc0F0dHJXaXRoR2V0dGVyRXhjZXB0aW9uKEV4ZWNT
dGF0ZSogZXhlYywgSlNPYmplY3QqCiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0VHlwZWRl
ZnNBdHRyV2l0aFNldHRlckV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90
QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RUeXBlZGVmc0F0dHJXaXRoU2V0dGVyRXhjZXB0aW9uKEV4ZWNTdGF0ZSogZXhl
YywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5
TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAg
ICAgSlNUZXN0VHlwZWRlZnMqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdFR5cGVk
ZWZzKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2Fz
dGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0VHlwZWRlZnNQcm90
b3R5cGUqPihzbG90QmFzZSkpCkBAIC0zMjAsOCArMzI1LDkgQEAgRW5jb2RlZEpTVmFsdWUganNU
ZXN0VHlwZWRlZnNBdHRyV2l0aFNldHRlckV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEpTT2Jq
ZWN0KgogfQogCiAKLUVuY29kZWRKU1ZhbHVlIGpzVGVzdFR5cGVkZWZzU3RyaW5nQXR0cldpdGhH
ZXR0ZXJFeGNlcHRpb24oRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCogc2xvdEJhc2UsIEVuY29k
ZWRKU1ZhbHVlIHRoaXNWYWx1ZSwgUHJvcGVydHlOYW1lKQorRW5jb2RlZEpTVmFsdWUganNUZXN0
VHlwZWRlZnNTdHJpbmdBdHRyV2l0aEdldHRlckV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEpT
T2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUg
cHJvcGVydHlOYW1lKQogeworICAgIFVOVVNFRF9QQVJBTShwcm9wZXJ0eU5hbWUpOwogICAgIEpT
VGVzdFR5cGVkZWZzKiBjYXN0ZWRUaGlzID0ganNEeW5hbWljQ2FzdDxKU1Rlc3RUeXBlZGVmcyo+
KEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoVU5MSUtFTFkoIWNhc3RlZFRo
aXMpKSB7CiAgICAgICAgIGlmIChqc0R5bmFtaWNDYXN0PEpTVGVzdFR5cGVkZWZzUHJvdG90eXBl
Kj4oc2xvdEJhc2UpKQpAQCAtMzM2LDggKzM0Miw5IEBAIEVuY29kZWRKU1ZhbHVlIGpzVGVzdFR5
cGVkZWZzU3RyaW5nQXR0cldpdGhHZXR0ZXJFeGNlcHRpb24oRXhlY1N0YXRlKiBleGVjLCBKU09i
CiB9CiAKIAotRW5jb2RlZEpTVmFsdWUganNUZXN0VHlwZWRlZnNTdHJpbmdBdHRyV2l0aFNldHRl
ckV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpT
VmFsdWUgdGhpc1ZhbHVlLCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RUeXBl
ZGVmc1N0cmluZ0F0dHJXaXRoU2V0dGVyRXhjZXB0aW9uKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmpl
Y3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9w
ZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5TmFtZSk7CiAgICAgSlNUZXN0
VHlwZWRlZnMqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTVGVzdFR5cGVkZWZzKj4oSlNW
YWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSghY2FzdGVkVGhpcykp
IHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNUZXN0VHlwZWRlZnNQcm90b3R5cGUqPihz
bG90QmFzZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNhdHRyaWJ1dGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTYXR0cmlidXRlLmNwcAppbmRleCA4ODMyNGY4Li4zMzQzZGE1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNhdHRyaWJ1dGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU2F0dHJpYnV0
ZS5jcHAKQEAgLTEyNSw4ICsxMjUsOSBAQCBib29sIEpTYXR0cmlidXRlOjpnZXRPd25Qcm9wZXJ0
eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eQogICAgIHJl
dHVybiBCYXNlOjpnZXRPd25Qcm9wZXJ0eVNsb3QodGhpc09iamVjdCwgZXhlYywgcHJvcGVydHlO
YW1lLCBzbG90KTsKIH0KIAotRW5jb2RlZEpTVmFsdWUganNhdHRyaWJ1dGVSZWFkb25seShFeGVj
U3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUgdGhpc1ZhbHVl
LCBQcm9wZXJ0eU5hbWUpCitFbmNvZGVkSlNWYWx1ZSBqc2F0dHJpYnV0ZVJlYWRvbmx5KEV4ZWNT
dGF0ZSogZXhlYywgSlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSB0aGlzVmFsdWUs
IFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CisgICAgVU5VU0VEX1BBUkFNKHByb3BlcnR5
TmFtZSk7CiAgICAgSlNhdHRyaWJ1dGUqIGNhc3RlZFRoaXMgPSBqc0R5bmFtaWNDYXN0PEpTYXR0
cmlidXRlKj4oSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmIChVTkxJS0VMWSgh
Y2FzdGVkVGhpcykpIHsKICAgICAgICAgaWYgKGpzRHluYW1pY0Nhc3Q8SlNhdHRyaWJ1dGVQcm90
b3R5cGUqPihzbG90QmFzZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVu
dC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5pZGwKaW5kZXggOTc3ODYxNi4uYWMy
ODAwZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmlkbApAQCAtMjUsNyArMjUsNyBAQAogCiAgICAgLy8g
RE9NIExldmVsIDEgQ29yZQogCi0gICAgW1RyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVsbF0g
cmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyB0YWdOYW1lOworICAgIFtUcmVhdFJldHVybmVk
TnVsbFN0cmluZ0FzPU51bGwsIFJldHVybnNDYWNoZWFibGVWYWx1ZV0gcmVhZG9ubHkgYXR0cmli
dXRlIERPTVN0cmluZyB0YWdOYW1lOwogCiAgICAgW1RyZWF0UmV0dXJuZWROdWxsU3RyaW5nQXM9
TnVsbF0gRE9NU3RyaW5nIGdldEF0dHJpYnV0ZShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFs
IERPTVN0cmluZyBuYW1lKTsKICAgICBbT2JqQ0xlZ2FjeVVubmFtZWRQYXJhbWV0ZXJzLCBSYWlz
ZXNFeGNlcHRpb25dIHZvaWQgc2V0QXR0cmlidXRlKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9u
YWwgRE9NU3RyaW5nIG5hbWUsCkBAIC0zOCw3ICszOCw3IEBACiAKICNpZiAhZGVmaW5lZChMQU5H
VUFHRV9PQkpFQ1RJVkVfQykKICAgICAvLyBGb3IgT2JqQyB0aGlzIGlzIGRlZmluZWQgb24gTm9k
ZSBmb3IgbGVnYWN5IHN1cHBvcnQuCi0gICAgcmVhZG9ubHkgYXR0cmlidXRlIE5hbWVkTm9kZU1h
cCAgICAgYXR0cmlidXRlczsKKyAgICBbUmV0dXJuc0NhY2hlYWJsZVZhbHVlXSByZWFkb25seSBh
dHRyaWJ1dGUgTmFtZWROb2RlTWFwICAgICBhdHRyaWJ1dGVzOwogICAgIGJvb2xlYW4gICAgICAg
ICAgICBoYXNBdHRyaWJ1dGVzKCk7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL05vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaWRsCmluZGV4IGVmYjVm
NzEuLmY4MDBkYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5pZGwKQEAgLTQ2LDEyICs0NiwxMiBAQAogICAgIGNv
bnN0IHVuc2lnbmVkIHNob3J0ICAgICAgRE9DVU1FTlRfRlJBR01FTlRfTk9ERSAgICAgICAgID0g
MTE7CiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgICAgICBOT1RBVElPTl9OT0RFICAgICAgICAg
ICAgICAgICAgPSAxMjsKIAotICAgIFtUcmVhdFJldHVybmVkTnVsbFN0cmluZ0FzPU51bGxdIHJl
YWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgICAgICAgIG5vZGVOYW1lOworICAgIFtUcmVhdFJl
dHVybmVkTnVsbFN0cmluZ0FzPU51bGwsIFJldHVybnNDYWNoZWFibGVWYWx1ZV0gcmVhZG9ubHkg
YXR0cmlidXRlIERPTVN0cmluZyAgICAgICAgbm9kZU5hbWU7CiAKICAgICAvLyBGSVhNRTogdGhl
IHNwZWMgc2F5cyB0aGlzIGNhbiBhbHNvIHJhaXNlIG9uIHJldHJpZXZhbC4KICAgICBbVHJlYXRS
ZXR1cm5lZE51bGxTdHJpbmdBcz1OdWxsLCBUcmVhdE51bGxBcz1OdWxsU3RyaW5nLCBTZXR0ZXJS
YWlzZXNFeGNlcHRpb25dIGF0dHJpYnV0ZSBET01TdHJpbmcgbm9kZVZhbHVlOwogCi0gICAgcmVh
ZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0ICAgbm9kZVR5cGU7CisgICAgW1JldHVybnND
YWNoZWFibGVWYWx1ZV0gcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0ICAgbm9kZVR5
cGU7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vZGUgICAgICAgICAgICAgcGFyZW50Tm9kZTsK
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgTm9kZUxpc3QgICAgICAgICBjaGlsZE5vZGVzOwogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlICAgICAgICAgICAgIGZpcnN0Q2hpbGQ7Cg==
</data>
<flag name="review"
          id="253850"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>