<?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>133943</bug_id>
          
          <creation_ts>2014-06-16 10:59:59 -0700</creation_ts>
          <short_desc>Move forward declaration of bindings static functions into their implementation file</short_desc>
          <delta_ts>2014-06-16 20:56:57 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>alecflett</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>jsbell</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1015893</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2014-06-16 10:59:59 -0700</bug_when>
    <thetext>Move forward declaration of bindings static funtions into their implementation file</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015952</commentid>
    <comment_count>1</comment_count>
      <attachid>233176</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2014-06-16 14:00:35 -0700</bug_when>
    <thetext>Created attachment 233176
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015955</commentid>
    <comment_count>2</comment_count>
      <attachid>233176</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-06-16 14:10:04 -0700</bug_when>
    <thetext>Comment on attachment 233176
Patch

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

r=me

&gt; Source/JavaScriptCore/ChangeLog:3
&gt; +        Move forward declaration of bindings static functions into their implementation file

file =&gt; files

&gt; Source/WebCore/ChangeLog:3
&gt; +        Move forward declaration of bindings static functions into their implementation file

file =&gt; files</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1016054</commentid>
    <comment_count>3</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2014-06-16 20:56:57 -0700</bug_when>
    <thetext>Fixed in r1700432</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>233176</attachid>
            <date>2014-06-16 14:00:35 -0700</date>
            <delta_ts>2014-06-16 14:10:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-133943-20140616140015.patch</filename>
            <type>text/plain</type>
            <size>121044</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTcwMDI1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBA
CisyMDE0LTA2LTE2ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgTW92
ZSBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mIGJpbmRpbmdzIHN0YXRpYyBmdW5jdGlvbnMgaW50byB0
aGVpciBpbXBsZW1lbnRhdGlvbiBmaWxlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMzM5NDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIHJ1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaDoKKyAgICAgICAg
QWRkIGEgZmV3IGlkZW50aWZpZXJzIHRoYXQgYXJlIG5lZWRlZCBieSB0aGUgRE9NLgorCiAyMDE0
LTA2LTE2ICBKdWVyZ2VuIFJpYnV0emthICA8anVlcmdlbkBhcHBsZS5jb20+CiAKICAgICAgICAg
Q2hhbmdlIHRoZSBvcmRlciBvZiB0aGUgYWxpYXMgYW5hbHlzaXMgcGFzc2VzIHRvIGFsaWduIHdp
dGggdGhlIG9wdCBwaXBlbGluZSBvZiBMTFZNCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgJKHJldmlzaW9uIDE3MDAyNSkKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgJKHdvcmtp
bmcgY29weSkKQEAgLTY0LDcgKzY0LDEwIEBACiAgICAgbWFjcm8oYWRkKSBcCiAgICAgbWFjcm8o
YW5vbnltb3VzKSBcCiAgICAgbWFjcm8oYXJndW1lbnRzKSBcCisgICAgbWFjcm8oYXNzaWduKSBc
CisgICAgbWFjcm8oYmFjaykgXAogICAgIG1hY3JvKGJpbmQpIFwKKyAgICBtYWNybyhibHVyKSBc
CiAgICAgbWFjcm8oYnVmZmVyKSBcCiAgICAgbWFjcm8oYnl0ZUxlbmd0aCkgXAogICAgIG1hY3Jv
KGJ5dGVPZmZzZXQpIFwKQEAgLTc2LDYgKzc5LDggQEAKICAgICBtYWNybyhjYWxsZXIpIFwKICAg
ICBtYWNybyhjYXN0KSBcCiAgICAgbWFjcm8oY2xlYXIpIFwKKyAgICBtYWNybyhjbG9zZSkgXAor
ICAgIG1hY3JvKGNsb3NlZCkgXAogICAgIG1hY3JvKGNvbXBpbGF0aW9uS2luZCkgXAogICAgIG1h
Y3JvKGNvbXBpbGF0aW9ucykgXAogICAgIG1hY3JvKGNvbXBpbGUpIFwKQEAgLTk0LDE0ICs5OSwx
OCBAQAogICAgIG1hY3JvKGV4ZWMpIFwKICAgICBtYWNybyhleGVjdXRpb25Db3VudCkgXAogICAg
IG1hY3JvKGV4aXRLaW5kKSBcCisgICAgbWFjcm8oZm9jdXMpIFwKICAgICBtYWNybyhmb3JFYWNo
KSBcCisgICAgbWFjcm8oZm9yd2FyZCkgXAogICAgIG1hY3JvKGZyb21DaGFyQ29kZSkgXAogICAg
IG1hY3JvKGdldCkgXAogICAgIG1hY3JvKGdsb2JhbCkgXAorICAgIG1hY3JvKGdvKSBcCiAgICAg
bWFjcm8oaGFzKSBcCiAgICAgbWFjcm8oaGFzT3duUHJvcGVydHkpIFwKICAgICBtYWNybyhoYXNo
KSBcCiAgICAgbWFjcm8oaGVhZGVyKSBcCisgICAgbWFjcm8oaHJlZikgXAogICAgIG1hY3JvKGlk
KSBcCiAgICAgbWFjcm8oaWdub3JlQ2FzZSkgXAogICAgIG1hY3JvKGluZGV4KSBcCkBAIC0xMzEs
MTAgKzE0MCwxNCBAQAogICAgIG1hY3JvKG9zckV4aXRTaXRlcykgXAogICAgIG1hY3JvKG9zckV4
aXRzKSBcCiAgICAgbWFjcm8ocGFyc2UpIFwKKyAgICBtYWNybyhwb3N0TWVzc2FnZSkgXAogICAg
IG1hY3JvKHByb2ZpbGVkQnl0ZWNvZGVzKSBcCiAgICAgbWFjcm8ocHJvcGVydHlJc0VudW1lcmFi
bGUpIFwKICAgICBtYWNybyhwcm90b3R5cGUpIFwKKyAgICBtYWNybyhyZWxvYWQpIFwKKyAgICBt
YWNybyhyZXBsYWNlKSBcCiAgICAgbWFjcm8oc2V0KSBcCisgICAgbWFjcm8oc2hvd01vZGFsRGlh
bG9nKSBcCiAgICAgbWFjcm8oc2l6ZSkgXAogICAgIG1hY3JvKHNsaWNlKSBcCiAgICAgbWFjcm8o
c291cmNlKSBcCkBAIC0xNTEsOCArMTY0LDggQEAKICAgICBtYWNybyh0b1ByZWNpc2lvbikgXAog
ICAgIG1hY3JvKHRvU3RyaW5nKSBcCiAgICAgbWFjcm8odmFsdWUpIFwKLSAgICBtYWNybyh2YWx1
ZXMpIFwKICAgICBtYWNybyh2YWx1ZU9mKSBcCisgICAgbWFjcm8odmFsdWVzKSBcCiAgICAgbWFj
cm8od2luZG93KSBcCiAgICAgbWFjcm8od3JpdGFibGUpCiAKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlz
aW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDQ3IEBACisyMDE0LTA2LTE2ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+
CisKKyAgICAgICAgTW92ZSBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mIGJpbmRpbmdzIHN0YXRpYyBm
dW5jdGlvbnMgaW50byB0aGVpciBpbXBsZW1lbnRhdGlvbiBmaWxlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzM5NDMKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAtIE1vdmVzIHRoZSBmb3J3YXJkIGRlY2xh
cmF0aW9uIG9mIHN0YXRpYyBmdW5jdGlvbnMgZm9yIGdlbmVyYXRlZCBmaWxlcyB0byB0aGUgaW1w
bGVtZW50YXRpb24uCisgICAgICAgIC0gQWRkcyBhIG5ldyBleHRlbmRlZCBhdHRyaWJ1dGUsIEZv
cndhcmREZWNsYXJlSW5IZWFkZXIsIGZvciBmdW5jdGlvbnMgdGhhdCBzdGlsbCBuZWVkIGEgCisg
ICAgICAgICAgZm9yd2FyZCBkZWNsYXJhdGlvbiBpbiB0aGUgaGVhZGVyLgorCisgICAgICAgICog
YmluZGluZ3MvanMvSlNET01CaW5kaW5nLmg6CisgICAgICAgIChXZWJDb3JlOjpub25DYWNoaW5n
U3RhdGljRnVuY3Rpb25HZXR0ZXIpOgorICAgICAgICBNb3ZlIHRoaXMgaGVscGVyIGhlcmUgZnJv
bSBKU0RPTVdpbmRvd0N1c3RvbS5jcHAuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTVdp
bmRvd0N1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0RPTVdpbmRvdzo6Z2V0T3duUHJv
cGVydHlTbG90KToKKyAgICAgICAgU3dpdGNoIHRvIGNvbXBhcmluZyB0aGUgcHJvcGVydHkgbmFt
ZSBkaXJlY3RseSByYXRoZXIgdGhhbiBsb29raW5nIHVwIGluIHRoZSBzdGF0aWMgdGFibGUgYW5k
CisgICAgICAgIGNvbXBhcmluZyBmdW5jdGlvbiBwb2ludGVycy4KKworICAgICAgICAqIGJpbmRp
bmdzL2pzL0pTSGlzdG9yeUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0hpc3Rvcnk6
OmdldE93blByb3BlcnR5U2xvdERlbGVnYXRlKToKKyAgICAgICAgU3dpdGNoIHRvIGNvbXBhcmlu
ZyB0aGUgcHJvcGVydHkgbmFtZSBkaXJlY3RseSByYXRoZXIgdGhhbiBsb29raW5nIHVwIGluIHRo
ZSBzdGF0aWMgdGFibGUgYW5kCisgICAgICAgIGNvbXBhcmluZyBmdW5jdGlvbiBwb2ludGVycyBh
bmQgc3RhcnQgdXNpbmcgdGhlIG5vbkNhY2hpbmdTdGF0aWNGdW5jdGlvbkdldHRlcjw+IGhlbHBl
ci4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTTG9jYXRpb25DdXN0b20uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SlNMb2NhdGlvbjo6Z2V0T3duUHJvcGVydHlTbG90RGVsZWdhdGUpOgorICAg
ICAgICAoV2ViQ29yZTo6SlNMb2NhdGlvbjo6cHV0RGVsZWdhdGUpOgorICAgICAgICBTd2l0Y2gg
dG8gY29tcGFyaW5nIHRoZSBwcm9wZXJ0eSBuYW1lIGRpcmVjdGx5IHJhdGhlciB0aGFuIGxvb2tp
bmcgdXAgaW4gdGhlIHN0YXRpYyB0YWJsZSBhbmQKKyAgICAgICAgY29tcGFyaW5nIGZ1bmN0aW9u
IHBvaW50ZXJzIGFuZCBzdGFydCB1c2luZyB0aGUgbm9uQ2FjaGluZ1N0YXRpY0Z1bmN0aW9uR2V0
dGVyPD4gaGVscGVyLgorCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
SlMucG06CisgICAgICAgIChHZW5lcmF0ZUhlYWRlcik6CisgICAgICAgIChHZW5lcmF0ZUltcGxl
bWVudGF0aW9uKToKKyAgICAgICAgTW92ZSBmb3J3YXJkIGRlY2xhcmF0aW9uIGNyZWF0aW9uIHRv
IHRoZSBpbXBsZW1lbnRhdGlvbiBmaWxlIHdoZXJlIHBvc3NpYmxlLgorCisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dDoKKyAgICAgICAgQWRkIEZvcndhcmREZWNs
YXJlSW5IZWFkZXIuCisKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6CisgICAgICAgICog
cGFnZS9IaXN0b3J5LmlkbDoKKyAgICAgICAgKiBwYWdlL0xvY2F0aW9uLmlkbDoKKyAgICAgICAg
QWRkIEZvcndhcmREZWNsYXJlSW5IZWFkZXIgd2hlcmUgbmVjZXNzYXJ5LgorCiAyMDE0LTA2LTE1
ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgQ2hhbmdl
IFJlc291cmNlUmVxdWVzdEJhc2U6OmFkZEhUVFBIZWFkZXJGaWVsZHMgdG8gc2V0SFRUUEhlYWRl
ckZpZWxkcyBpbnN0ZWFkCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJp
bmRpbmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJp
bmRpbmcuaAkocmV2aXNpb24gMTcwMDI1KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01CaW5kaW5nLmgJKHdvcmtpbmcgY29weSkKQEAgLTU4OSw2ICs1ODksMTIgQEAgdGVtcGxh
dGU8PiBpbmxpbmUgY29uc3QgSlNDOjpIYXNoVGFibGVWYQogICAgIHJldHVybiBudWxscHRyOwog
fQogCit0ZW1wbGF0ZTxKU0M6Ok5hdGl2ZUZ1bmN0aW9uIG5hdGl2ZUZ1bmN0aW9uLCBpbnQgbGVu
Z3RoPgorSlNDOjpFbmNvZGVkSlNWYWx1ZSBub25DYWNoaW5nU3RhdGljRnVuY3Rpb25HZXR0ZXIo
SlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVl
LCBKU0M6OlByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCit7CisgICAgcmV0dXJuIEpTQzo6SlNW
YWx1ZTo6ZW5jb2RlKEpTQzo6SlNGdW5jdGlvbjo6Y3JlYXRlKGV4ZWMtPnZtKCksIGV4ZWMtPmxl
eGljYWxHbG9iYWxPYmplY3QoKSwgbGVuZ3RoLCBwcm9wZXJ0eU5hbWUucHVibGljTmFtZSgpLCBu
YXRpdmVGdW5jdGlvbikpOworfQorCiBlbnVtIFNlY3VyaXR5UmVwb3J0aW5nT3B0aW9uIHsKICAg
ICBEb05vdFJlcG9ydFNlY3VyaXR5RXJyb3IsCiAgICAgUmVwb3J0U2VjdXJpdHlFcnJvciwKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93Q3VzdG9tLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0N1c3RvbS5j
cHAJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9N
V2luZG93Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjQsMTIgKzY0LDYgQEAgdm9pZCBK
U0RPTVdpbmRvdzo6dmlzaXRBZGRpdGlvbmFsQ2hpbGRyZQogICAgICAgICB2aXNpdG9yLmFkZE9w
YXF1ZVJvb3QoZnJhbWUpOwogfQogCi10ZW1wbGF0ZTxOYXRpdmVGdW5jdGlvbiBuYXRpdmVGdW5j
dGlvbiwgaW50IGxlbmd0aD4KLUVuY29kZWRKU1ZhbHVlIG5vbkNhY2hpbmdTdGF0aWNGdW5jdGlv
bkdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiwgRW5jb2RlZEpTVmFsdWUsIFByb3Bl
cnR5TmFtZSBwcm9wZXJ0eU5hbWUpCi17Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShKU0Z1
bmN0aW9uOjpjcmVhdGUoZXhlYy0+dm0oKSwgZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLCBs
ZW5ndGgsIHByb3BlcnR5TmFtZS5wdWJsaWNOYW1lKCksIG5hdGl2ZUZ1bmN0aW9uKSk7Ci19Ci0K
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBjaGlsZEZyYW1lR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywg
SlNPYmplY3QqIHNsb3RCYXNlLCBFbmNvZGVkSlNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5
TmFtZSkKIHsKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRvSlMoZXhlYywganNDYXN0PEpT
RE9NV2luZG93Kj4oc2xvdEJhc2UpLT5pbXBsKCkuZnJhbWUoKS0+dHJlZSgpLnNjb3BlZENoaWxk
KHByb3BlcnR5TmFtZVRvQXRvbWljU3RyaW5nKHByb3BlcnR5TmFtZSkpLT5kb2N1bWVudCgpLT5k
b21XaW5kb3coKSkpOwpAQCAtMTA0LDIxICs5OCwxNyBAQCBib29sIEpTRE9NV2luZG93OjpnZXRP
d25Qcm9wZXJ0eVNsb3QoSlNPCiAgICAgLy8gYXJlIG5vdCBhZmZlY3RlZCBieSBwcm9wZXJ0aWVz
IGNoYW5nZWQgb24gdGhlIFdpbmRvdyBvciBhbnl0aGluZyBpbiBpdHMgcHJvdG90eXBlIGNoYWlu
LgogICAgIC8vIFRoaXMgaXMgY29uc2lzdGVudCB3aXRoIHRoZSBiZWhhdmlvciBvZiBGaXJlZm94
LgogCi0gICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5OwotCiAgICAgLy8gV2UgZG9uJ3Qg
d2FudCBhbnkgcHJvcGVydGllcyBvdGhlciB0aGFuICJjbG9zZSIgYW5kICJjbG9zZWQiIG9uIGEg
ZnJhbWVsZXNzIHdpbmRvdyAoaS5lLiBvbmUgd2hvc2UgcGFnZSBnb3QgY2xvc2VkLAogICAgIC8v
IG9yIHdob3NlIGlmcmFtZSBnb3QgcmVtb3ZlZCkuCiAgICAgLy8gRklYTUU6IFRoaXMgZG9lc24n
dCBmdWxseSBtYXRjaCBGaXJlZm94LCB3aGljaCBhbGxvd3MgYXQgbGVhc3QgdG9TdHJpbmcgaW4g
YWRkaXRpb24gdG8gdGhvc2UuCiAgICAgaWYgKCF0aGlzT2JqZWN0LT5pbXBsKCkuZnJhbWUoKSkg
ewogICAgICAgICAvLyBUaGUgZm9sbG93aW5nIGNvZGUgaXMgc2FmZSBmb3IgY3Jvc3MtZG9tYWlu
IGFuZCBzYW1lIGRvbWFpbiB1c2UuCiAgICAgICAgIC8vIEl0IGlnbm9yZXMgYW55IGN1c3RvbSBw
cm9wZXJ0aWVzIHRoYXQgbWlnaHQgYmUgc2V0IG9uIHRoZSBET01XaW5kb3cgKGluY2x1ZGluZyBh
IGN1c3RvbSBwcm90b3R5cGUpLgotICAgICAgICBlbnRyeSA9IHNfaW5mby5wcm9wSGFzaFRhYmxl
KGV4ZWMpLT5lbnRyeShleGVjLCBwcm9wZXJ0eU5hbWUpOwotICAgICAgICBpZiAoZW50cnkgJiYg
IShlbnRyeS0+YXR0cmlidXRlcygpICYgSlNDOjpGdW5jdGlvbikgJiYgZW50cnktPnByb3BlcnR5
R2V0dGVyKCkgPT0ganNET01XaW5kb3dDbG9zZWQpIHsKLSAgICAgICAgICAgIHNsb3Quc2V0Q3Vz
dG9tKHRoaXNPYmplY3QsIFJlYWRPbmx5IHwgRG9udERlbGV0ZSB8IERvbnRFbnVtLCBlbnRyeS0+
cHJvcGVydHlHZXR0ZXIoKSk7CisgICAgICAgIGlmIChwcm9wZXJ0eU5hbWUgPT0gZXhlYy0+cHJv
cGVydHlOYW1lcygpLmNsb3NlZCkgeworICAgICAgICAgICAgc2xvdC5zZXRDdXN0b20odGhpc09i
amVjdCwgUmVhZE9ubHkgfCBEb250RGVsZXRlIHwgRG9udEVudW0sIGpzRE9NV2luZG93Q2xvc2Vk
KTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICB9Ci0gICAgICAgIGVudHJ5ID0g
SlNET01XaW5kb3dQcm90b3R5cGU6OmluZm8oKS0+cHJvcEhhc2hUYWJsZShleGVjKS0+ZW50cnko
ZXhlYywgcHJvcGVydHlOYW1lKTsKLSAgICAgICAgaWYgKGVudHJ5ICYmIChlbnRyeS0+YXR0cmli
dXRlcygpICYgSlNDOjpGdW5jdGlvbikgJiYgZW50cnktPmZ1bmN0aW9uKCkgPT0ganNET01XaW5k
b3dQcm90b3R5cGVGdW5jdGlvbkNsb3NlKSB7CisgICAgICAgIGlmIChwcm9wZXJ0eU5hbWUgPT0g
ZXhlYy0+cHJvcGVydHlOYW1lcygpLmNsb3NlKSB7CiAgICAgICAgICAgICBzbG90LnNldEN1c3Rv
bSh0aGlzT2JqZWN0LCBSZWFkT25seSB8IERvbnREZWxldGUgfCBEb250RW51bSwgbm9uQ2FjaGlu
Z1N0YXRpY0Z1bmN0aW9uR2V0dGVyPGpzRE9NV2luZG93UHJvdG90eXBlRnVuY3Rpb25DbG9zZSwg
MD4pOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIH0KQEAgLTE0NSw0NyArMTM1
LDQwIEBAIGJvb2wgSlNET01XaW5kb3c6OmdldE93blByb3BlcnR5U2xvdChKU08KICAgICAvLyBw
cm90b3R5cGUgZHVlIHRvIHRoZSBibGFua2V0IHNhbWUgb3JpZ2luIChzaG91bGRBbGxvd0FjY2Vz
c1RvRE9NV2luZG93KSBjaGVjayBhdCB0aGUgZW5kIG9mIGdldE93blByb3BlcnR5U2xvdC4KICAg
ICAvLyBBbHNvLCBpdCdzIGltcG9ydGFudCB0byBnZXQgdGhlIGltcGxlbWVudGF0aW9uIHN0cmFp
Z2h0IG91dCBvZiB0aGUgRE9NV2luZG93IHByb3RvdHlwZSByZWdhcmRsZXNzIG9mCiAgICAgLy8g
d2hhdCBwcm90b3R5cGUgaXMgYWN0dWFsbHkgc2V0IG9uIHRoaXMgb2JqZWN0LgotICAgIGVudHJ5
ID0gSlNET01XaW5kb3dQcm90b3R5cGU6OmluZm8oKS0+cHJvcEhhc2hUYWJsZShleGVjKS0+ZW50
cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKLSAgICBpZiAoZW50cnkpIHsKLSAgICAgICAgaWYgKGVu
dHJ5LT5hdHRyaWJ1dGVzKCkgJiBKU0M6OkZ1bmN0aW9uKSB7Ci0gICAgICAgICAgICBpZiAoZW50
cnktPmZ1bmN0aW9uKCkgPT0ganNET01XaW5kb3dQcm90b3R5cGVGdW5jdGlvbkJsdXIpIHsKLSAg
ICAgICAgICAgICAgICBpZiAoIWFsbG93c0FjY2VzcykgewotICAgICAgICAgICAgICAgICAgICBz
bG90LnNldEN1c3RvbSh0aGlzT2JqZWN0LCBSZWFkT25seSB8IERvbnREZWxldGUgfCBEb250RW51
bSwgbm9uQ2FjaGluZ1N0YXRpY0Z1bmN0aW9uR2V0dGVyPGpzRE9NV2luZG93UHJvdG90eXBlRnVu
Y3Rpb25CbHVyLCAwPik7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAg
ICAgICAgICAgIH0KLSAgICAgICAgICAgIH0gZWxzZSBpZiAoZW50cnktPmZ1bmN0aW9uKCkgPT0g
anNET01XaW5kb3dQcm90b3R5cGVGdW5jdGlvbkNsb3NlKSB7Ci0gICAgICAgICAgICAgICAgaWYg
KCFhbGxvd3NBY2Nlc3MpIHsKLSAgICAgICAgICAgICAgICAgICAgc2xvdC5zZXRDdXN0b20odGhp
c09iamVjdCwgUmVhZE9ubHkgfCBEb250RGVsZXRlIHwgRG9udEVudW0sIG5vbkNhY2hpbmdTdGF0
aWNGdW5jdGlvbkdldHRlcjxqc0RPTVdpbmRvd1Byb3RvdHlwZUZ1bmN0aW9uQ2xvc2UsIDA+KTsK
LSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgfSBlbHNlIGlmIChlbnRyeS0+ZnVuY3Rpb24oKSA9PSBqc0RPTVdpbmRvd1Byb3Rv
dHlwZUZ1bmN0aW9uRm9jdXMpIHsKLSAgICAgICAgICAgICAgICBpZiAoIWFsbG93c0FjY2Vzcykg
ewotICAgICAgICAgICAgICAgICAgICBzbG90LnNldEN1c3RvbSh0aGlzT2JqZWN0LCBSZWFkT25s
eSB8IERvbnREZWxldGUgfCBEb250RW51bSwgbm9uQ2FjaGluZ1N0YXRpY0Z1bmN0aW9uR2V0dGVy
PGpzRE9NV2luZG93UHJvdG90eXBlRnVuY3Rpb25Gb2N1cywgMD4pOwotICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9IGVsc2Ug
aWYgKGVudHJ5LT5mdW5jdGlvbigpID09IGpzRE9NV2luZG93UHJvdG90eXBlRnVuY3Rpb25Qb3N0
TWVzc2FnZSkgewotICAgICAgICAgICAgICAgIGlmICghYWxsb3dzQWNjZXNzKSB7Ci0gICAgICAg
ICAgICAgICAgICAgIHNsb3Quc2V0Q3VzdG9tKHRoaXNPYmplY3QsIFJlYWRPbmx5IHwgRG9udERl
bGV0ZSB8IERvbnRFbnVtLCBub25DYWNoaW5nU3RhdGljRnVuY3Rpb25HZXR0ZXI8anNET01XaW5k
b3dQcm90b3R5cGVGdW5jdGlvblBvc3RNZXNzYWdlLCAyPik7Ci0gICAgICAgICAgICAgICAgICAg
IHJldHVybiB0cnVlOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0gZWxzZSBpZiAo
ZW50cnktPmZ1bmN0aW9uKCkgPT0ganNET01XaW5kb3dQcm90b3R5cGVGdW5jdGlvblNob3dNb2Rh
bERpYWxvZykgewotICAgICAgICAgICAgICAgIGlmICghRE9NV2luZG93OjpjYW5TaG93TW9kYWxE
aWFsb2codGhpc09iamVjdC0+aW1wbCgpLmZyYW1lKCkpKSB7Ci0gICAgICAgICAgICAgICAgICAg
IHNsb3Quc2V0VW5kZWZpbmVkKCk7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwot
ICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KKyAgICBpZiAocHJvcGVydHlOYW1lID09
IGV4ZWMtPnByb3BlcnR5TmFtZXMoKS5ibHVyKSB7CisgICAgICAgIGlmICghYWxsb3dzQWNjZXNz
KSB7CisgICAgICAgICAgICBzbG90LnNldEN1c3RvbSh0aGlzT2JqZWN0LCBSZWFkT25seSB8IERv
bnREZWxldGUgfCBEb250RW51bSwgbm9uQ2FjaGluZ1N0YXRpY0Z1bmN0aW9uR2V0dGVyPGpzRE9N
V2luZG93UHJvdG90eXBlRnVuY3Rpb25CbHVyLCAwPik7CisgICAgICAgICAgICByZXR1cm4gdHJ1
ZTsKKyAgICAgICAgfQorICAgIH0gZWxzZSBpZiAocHJvcGVydHlOYW1lID09IGV4ZWMtPnByb3Bl
cnR5TmFtZXMoKS5jbG9zZSkgeworICAgICAgICBpZiAoIWFsbG93c0FjY2VzcykgeworICAgICAg
ICAgICAgc2xvdC5zZXRDdXN0b20odGhpc09iamVjdCwgUmVhZE9ubHkgfCBEb250RGVsZXRlIHwg
RG9udEVudW0sIG5vbkNhY2hpbmdTdGF0aWNGdW5jdGlvbkdldHRlcjxqc0RPTVdpbmRvd1Byb3Rv
dHlwZUZ1bmN0aW9uQ2xvc2UsIDA+KTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAg
ICB9Ci0gICAgfSBlbHNlIHsKKyAgICB9IGVsc2UgaWYgKHByb3BlcnR5TmFtZSA9PSBleGVjLT5w
cm9wZXJ0eU5hbWVzKCkuZm9jdXMpIHsKKyAgICAgICAgaWYgKCFhbGxvd3NBY2Nlc3MpIHsKKyAg
ICAgICAgICAgIHNsb3Quc2V0Q3VzdG9tKHRoaXNPYmplY3QsIFJlYWRPbmx5IHwgRG9udERlbGV0
ZSB8IERvbnRFbnVtLCBub25DYWNoaW5nU3RhdGljRnVuY3Rpb25HZXR0ZXI8anNET01XaW5kb3dQ
cm90b3R5cGVGdW5jdGlvbkZvY3VzLCAwPik7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAg
ICAgICAgfQorICAgIH0gZWxzZSBpZiAocHJvcGVydHlOYW1lID09IGV4ZWMtPnByb3BlcnR5TmFt
ZXMoKS5wb3N0TWVzc2FnZSkgeworICAgICAgICBpZiAoIWFsbG93c0FjY2VzcykgeworICAgICAg
ICAgICAgc2xvdC5zZXRDdXN0b20odGhpc09iamVjdCwgUmVhZE9ubHkgfCBEb250RGVsZXRlIHwg
RG9udEVudW0sIG5vbkNhY2hpbmdTdGF0aWNGdW5jdGlvbkdldHRlcjxqc0RPTVdpbmRvd1Byb3Rv
dHlwZUZ1bmN0aW9uUG9zdE1lc3NhZ2UsIDI+KTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwor
ICAgICAgICB9CisgICAgfSBlbHNlIGlmIChwcm9wZXJ0eU5hbWUgPT0gZXhlYy0+cHJvcGVydHlO
YW1lcygpLnNob3dNb2RhbERpYWxvZykgeworICAgICAgICBpZiAoIURPTVdpbmRvdzo6Y2FuU2hv
d01vZGFsRGlhbG9nKHRoaXNPYmplY3QtPmltcGwoKS5mcmFtZSgpKSkgeworICAgICAgICAgICAg
c2xvdC5zZXRVbmRlZmluZWQoKTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICB9
CisgICAgfSBlbHNlIGlmIChwcm9wZXJ0eU5hbWUgPT0gZXhlYy0+cHJvcGVydHlOYW1lcygpLnRv
U3RyaW5nKSB7CiAgICAgICAgIC8vIEFsbG93IGFjY2VzcyB0byB0b1N0cmluZygpIGNyb3NzLWRv
bWFpbiwgYnV0IGFsd2F5cyBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLgotICAgICAgICBpZiAo
cHJvcGVydHlOYW1lID09IGV4ZWMtPnByb3BlcnR5TmFtZXMoKS50b1N0cmluZykgewotICAgICAg
ICAgICAgaWYgKCFhbGxvd3NBY2Nlc3MpIHsKLSAgICAgICAgICAgICAgICBzbG90LnNldEN1c3Rv
bSh0aGlzT2JqZWN0LCBSZWFkT25seSB8IERvbnREZWxldGUgfCBEb250RW51bSwgb2JqZWN0VG9T
dHJpbmdGdW5jdGlvbkdldHRlcik7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAg
ICAgICAgICB9CisgICAgICAgIGlmICghYWxsb3dzQWNjZXNzKSB7CisgICAgICAgICAgICBzbG90
LnNldEN1c3RvbSh0aGlzT2JqZWN0LCBSZWFkT25seSB8IERvbnREZWxldGUgfCBEb250RW51bSwg
b2JqZWN0VG9TdHJpbmdGdW5jdGlvbkdldHRlcik7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
ICAgICAgICAgfQogICAgIH0KIAotICAgIGVudHJ5ID0gSlNET01XaW5kb3c6OmluZm8oKS0+cHJv
cEhhc2hUYWJsZShleGVjKS0+ZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICBjb25zdCBI
YXNoVGFibGVWYWx1ZSogZW50cnkgPSBKU0RPTVdpbmRvdzo6aW5mbygpLT5wcm9wSGFzaFRhYmxl
KGV4ZWMpLT5lbnRyeShleGVjLCBwcm9wZXJ0eU5hbWUpOwogICAgIGlmIChlbnRyeSkgewogICAg
ICAgICBzbG90LnNldENhY2hlYWJsZUN1c3RvbSh0aGlzT2JqZWN0LCBhbGxvd3NBY2Nlc3MgPyBl
bnRyeS0+YXR0cmlidXRlcygpIDogUmVhZE9ubHkgfCBEb250RGVsZXRlIHwgRG9udEVudW0sIGVu
dHJ5LT5wcm9wZXJ0eUdldHRlcigpKTsKICAgICAgICAgcmV0dXJuIHRydWU7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hpc3RvcnlDdXN0b20uY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSGlzdG9yeUN1c3RvbS5jcHAJKHJldmlzaW9u
IDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSGlzdG9yeUN1c3RvbS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTM4LDIxICszOCw2IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RhdGljIEVuY29kZWRKU1ZhbHVlIG5vbkNhY2hp
bmdTdGF0aWNCYWNrRnVuY3Rpb25HZXR0ZXIoRXhlY1N0YXRlKiBleGVjLCBKU09iamVjdCosIEVu
Y29kZWRKU1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQotewotICAgIHJldHVybiBK
U1ZhbHVlOjplbmNvZGUoSlNGdW5jdGlvbjo6Y3JlYXRlKGV4ZWMtPnZtKCksIGV4ZWMtPmxleGlj
YWxHbG9iYWxPYmplY3QoKSwgMCwgcHJvcGVydHlOYW1lLnB1YmxpY05hbWUoKSwganNIaXN0b3J5
UHJvdG90eXBlRnVuY3Rpb25CYWNrKSk7Ci19Ci0KLXN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBub25D
YWNoaW5nU3RhdGljRm9yd2FyZEZ1bmN0aW9uR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgSlNPYmpl
Y3QqLCBFbmNvZGVkSlNWYWx1ZSwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKLXsKLSAgICBy
ZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEpTRnVuY3Rpb246OmNyZWF0ZShleGVjLT52bSgpLCBleGVj
LT5sZXhpY2FsR2xvYmFsT2JqZWN0KCksIDAsIHByb3BlcnR5TmFtZS5wdWJsaWNOYW1lKCksIGpz
SGlzdG9yeVByb3RvdHlwZUZ1bmN0aW9uRm9yd2FyZCkpOwotfQotCi1zdGF0aWMgRW5jb2RlZEpT
VmFsdWUgbm9uQ2FjaGluZ1N0YXRpY0dvRnVuY3Rpb25HZXR0ZXIoRXhlY1N0YXRlKiBleGVjLCBK
U09iamVjdCosIEVuY29kZWRKU1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQotewot
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSlNGdW5jdGlvbjo6Y3JlYXRlKGV4ZWMtPnZtKCks
IGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSwgMSwgcHJvcGVydHlOYW1lLnB1YmxpY05hbWUo
KSwganNIaXN0b3J5UHJvdG90eXBlRnVuY3Rpb25HbykpOwotfQotCiBib29sIEpTSGlzdG9yeTo6
Z2V0T3duUHJvcGVydHlTbG90RGVsZWdhdGUoRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUg
cHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QmIHNsb3QpCiB7CiAgICAgLy8gV2hlbiBhY2Nlc3Np
bmcgSGlzdG9yeSBjcm9zcy1kb21haW4sIGZ1bmN0aW9ucyBhcmUgYWx3YXlzIHRoZSBuYXRpdmUg
YnVpbHQtaW4gb25lcy4KQEAgLTY2LDI3ICs1MSwyMiBAQCBib29sIEpTSGlzdG9yeTo6Z2V0T3du
UHJvcGVydHlTbG90RGVsZWdhCiAKICAgICAvLyBDaGVjayBmb3IgdGhlIGZldyBmdW5jdGlvbnMg
dGhhdCB3ZSBhbGxvdywgZXZlbiB3aGVuIGNhbGxlZCBjcm9zcy1kb21haW4uCiAgICAgLy8gTWFr
ZSB0aGVzZSByZWFkLW9ubHkgLyBub24tY29uZmlndXJhYmxlIHRvIHByZXZlbnQgd3JpdGVzIHZp
YSBkZWZpbmVQcm9wZXJ0eS4KLSAgICBjb25zdCBIYXNoVGFibGVWYWx1ZSogZW50cnkgPSBKU0hp
c3RvcnlQcm90b3R5cGU6OmluZm8oKS0+cHJvcEhhc2hUYWJsZShleGVjKS0+ZW50cnkoZXhlYywg
cHJvcGVydHlOYW1lKTsKLSAgICBpZiAoZW50cnkpIHsKLSAgICAgICAgLy8gQWxsb3cgYWNjZXNz
IHRvIGJhY2soKSwgZm9yd2FyZCgpIGFuZCBnbygpIGZyb20gYW55IGZyYW1lLgotICAgICAgICBp
ZiAoZW50cnktPmF0dHJpYnV0ZXMoKSAmIEpTQzo6RnVuY3Rpb24pIHsKLSAgICAgICAgICAgIGlm
IChlbnRyeS0+ZnVuY3Rpb24oKSA9PSBqc0hpc3RvcnlQcm90b3R5cGVGdW5jdGlvbkJhY2spIHsK
LSAgICAgICAgICAgICAgICBzbG90LnNldEN1c3RvbSh0aGlzLCBSZWFkT25seSB8IERvbnREZWxl
dGUgfCBEb250RW51bSwgbm9uQ2FjaGluZ1N0YXRpY0JhY2tGdW5jdGlvbkdldHRlcik7Ci0gICAg
ICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgICAgICB9IGVsc2UgaWYgKGVudHJ5LT5m
dW5jdGlvbigpID09IGpzSGlzdG9yeVByb3RvdHlwZUZ1bmN0aW9uRm9yd2FyZCkgewotICAgICAg
ICAgICAgICAgIHNsb3Quc2V0Q3VzdG9tKHRoaXMsIFJlYWRPbmx5IHwgRG9udERlbGV0ZSB8IERv
bnRFbnVtLCBub25DYWNoaW5nU3RhdGljRm9yd2FyZEZ1bmN0aW9uR2V0dGVyKTsKLSAgICAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgICAgIH0gZWxzZSBpZiAoZW50cnktPmZ1bmN0
aW9uKCkgPT0ganNIaXN0b3J5UHJvdG90eXBlRnVuY3Rpb25HbykgewotICAgICAgICAgICAgICAg
IHNsb3Quc2V0Q3VzdG9tKHRoaXMsIFJlYWRPbmx5IHwgRG9udERlbGV0ZSB8IERvbnRFbnVtLCBu
b25DYWNoaW5nU3RhdGljR29GdW5jdGlvbkdldHRlcik7Ci0gICAgICAgICAgICAgICAgcmV0dXJu
IHRydWU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgewotICAgICAgICAv
LyBBbGxvdyBhY2Nlc3MgdG8gdG9TdHJpbmcoKSBjcm9zcy1kb21haW4sIGJ1dCBhbHdheXMgT2Jq
ZWN0LnRvU3RyaW5nLgotICAgICAgICBpZiAocHJvcGVydHlOYW1lID09IGV4ZWMtPnByb3BlcnR5
TmFtZXMoKS50b1N0cmluZykgewotICAgICAgICAgICAgc2xvdC5zZXRDdXN0b20odGhpcywgUmVh
ZE9ubHkgfCBEb250RGVsZXRlIHwgRG9udEVudW0sIG9iamVjdFRvU3RyaW5nRnVuY3Rpb25HZXR0
ZXIpOwotICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIH0KKyAgICBpZiAocHJvcGVy
dHlOYW1lID09IGV4ZWMtPnByb3BlcnR5TmFtZXMoKS5iYWNrKSB7CisgICAgICAgIHNsb3Quc2V0
Q3VzdG9tKHRoaXMsIFJlYWRPbmx5IHwgRG9udERlbGV0ZSB8IERvbnRFbnVtLCBub25DYWNoaW5n
U3RhdGljRnVuY3Rpb25HZXR0ZXI8anNIaXN0b3J5UHJvdG90eXBlRnVuY3Rpb25CYWNrLCAwPik7
CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICBpZiAocHJvcGVydHlOYW1lID09IGV4
ZWMtPnByb3BlcnR5TmFtZXMoKS5mb3J3YXJkKSB7CisgICAgICAgIHNsb3Quc2V0Q3VzdG9tKHRo
aXMsIFJlYWRPbmx5IHwgRG9udERlbGV0ZSB8IERvbnRFbnVtLCBub25DYWNoaW5nU3RhdGljRnVu
Y3Rpb25HZXR0ZXI8anNIaXN0b3J5UHJvdG90eXBlRnVuY3Rpb25Gb3J3YXJkLCAwPik7CisgICAg
ICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICBpZiAocHJvcGVydHlOYW1lID09IGV4ZWMtPnBy
b3BlcnR5TmFtZXMoKS5nbykgeworICAgICAgICBzbG90LnNldEN1c3RvbSh0aGlzLCBSZWFkT25s
eSB8IERvbnREZWxldGUgfCBEb250RW51bSwgbm9uQ2FjaGluZ1N0YXRpY0Z1bmN0aW9uR2V0dGVy
PGpzSGlzdG9yeVByb3RvdHlwZUZ1bmN0aW9uR28sIDE+KTsKKyAgICAgICAgcmV0dXJuIHRydWU7
CisgICAgfQorICAgIC8vIEFsbG93IGFjY2VzcyB0byB0b1N0cmluZygpIGNyb3NzLWRvbWFpbiwg
YnV0IGFsd2F5cyBPYmplY3QudG9TdHJpbmcuCisgICAgaWYgKHByb3BlcnR5TmFtZSA9PSBleGVj
LT5wcm9wZXJ0eU5hbWVzKCkudG9TdHJpbmcpIHsKKyAgICAgICAgc2xvdC5zZXRDdXN0b20odGhp
cywgUmVhZE9ubHkgfCBEb250RGVsZXRlIHwgRG9udEVudW0sIG9iamVjdFRvU3RyaW5nRnVuY3Rp
b25HZXR0ZXIpOworICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKICAgICBwcmludEVycm9y
TWVzc2FnZUZvckZyYW1lKGltcGwoKS5mcmFtZSgpLCBtZXNzYWdlKTsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTTG9jYXRpb25DdXN0b20uY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTG9jYXRpb25DdXN0b20uY3BwCShyZXZpc2lvbiAx
NzAwMjUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0xvY2F0aW9uQ3VzdG9tLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzAsMjEgKzMwLDYgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdGF0aWMgRW5jb2RlZEpTVmFsdWUgbm9uQ2FjaGlu
Z1N0YXRpY1JlcGxhY2VGdW5jdGlvbkdldHRlcihFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0Kiwg
RW5jb2RlZEpTVmFsdWUsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCi17Ci0gICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShKU0Z1bmN0aW9uOjpjcmVhdGUoZXhlYy0+dm0oKSwgZXhlYy0+bGV4
aWNhbEdsb2JhbE9iamVjdCgpLCAxLCBwcm9wZXJ0eU5hbWUucHVibGljTmFtZSgpLCBqc0xvY2F0
aW9uUHJvdG90eXBlRnVuY3Rpb25SZXBsYWNlKSk7Ci19Ci0KLXN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBub25DYWNoaW5nU3RhdGljUmVsb2FkRnVuY3Rpb25HZXR0ZXIoRXhlY1N0YXRlKiBleGVjLCBK
U09iamVjdCosIEVuY29kZWRKU1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQotewot
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSlNGdW5jdGlvbjo6Y3JlYXRlKGV4ZWMtPnZtKCks
IGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSwgMCwgcHJvcGVydHlOYW1lLnB1YmxpY05hbWUo
KSwganNMb2NhdGlvblByb3RvdHlwZUZ1bmN0aW9uUmVsb2FkKSk7Ci19Ci0KLXN0YXRpYyBFbmNv
ZGVkSlNWYWx1ZSBub25DYWNoaW5nU3RhdGljQXNzaWduRnVuY3Rpb25HZXR0ZXIoRXhlY1N0YXRl
KiBleGVjLCBKU09iamVjdCosIEVuY29kZWRKU1ZhbHVlLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlO
YW1lKQotewotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoSlNGdW5jdGlvbjo6Y3JlYXRlKGV4
ZWMtPnZtKCksIGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSwgMSwgcHJvcGVydHlOYW1lLnB1
YmxpY05hbWUoKSwganNMb2NhdGlvblByb3RvdHlwZUZ1bmN0aW9uQXNzaWduKSk7Ci19Ci0KIGJv
b2wgSlNMb2NhdGlvbjo6Z2V0T3duUHJvcGVydHlTbG90RGVsZWdhdGUoRXhlY1N0YXRlKiBleGVj
LCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QmIHNsb3QpCiB7CiAgICAg
RnJhbWUqIGZyYW1lID0gaW1wbCgpLmZyYW1lKCk7CkBAIC02NCwxOCArNDksMTcgQEAgYm9vbCBK
U0xvY2F0aW9uOjpnZXRPd25Qcm9wZXJ0eVNsb3REZWxlZwogCiAgICAgLy8gQ2hlY2sgZm9yIHRo
ZSBmZXcgZnVuY3Rpb25zIHRoYXQgd2UgYWxsb3csIGV2ZW4gd2hlbiBjYWxsZWQgY3Jvc3MtZG9t
YWluLgogICAgIC8vIE1ha2UgdGhlc2UgcmVhZC1vbmx5IC8gbm9uLWNvbmZpZ3VyYWJsZSB0byBw
cmV2ZW50IHdyaXRlcyB2aWEgZGVmaW5lUHJvcGVydHkuCi0gICAgY29uc3QgSGFzaFRhYmxlVmFs
dWUqIGVudHJ5ID0gSlNMb2NhdGlvblByb3RvdHlwZTo6aW5mbygpLT5wcm9wSGFzaFRhYmxlKGV4
ZWMpLT5lbnRyeShleGVjLCBwcm9wZXJ0eU5hbWUpOwotICAgIGlmIChlbnRyeSAmJiAoZW50cnkt
PmF0dHJpYnV0ZXMoKSAmIEpTQzo6RnVuY3Rpb24pKSB7Ci0gICAgICAgIGlmIChlbnRyeS0+ZnVu
Y3Rpb24oKSA9PSBqc0xvY2F0aW9uUHJvdG90eXBlRnVuY3Rpb25SZXBsYWNlKSB7Ci0gICAgICAg
ICAgICBzbG90LnNldEN1c3RvbSh0aGlzLCBSZWFkT25seSB8IERvbnREZWxldGUgfCBEb250RW51
bSwgbm9uQ2FjaGluZ1N0YXRpY1JlcGxhY2VGdW5jdGlvbkdldHRlcik7Ci0gICAgICAgICAgICBy
ZXR1cm4gdHJ1ZTsKLSAgICAgICAgfSBlbHNlIGlmIChlbnRyeS0+ZnVuY3Rpb24oKSA9PSBqc0xv
Y2F0aW9uUHJvdG90eXBlRnVuY3Rpb25SZWxvYWQpIHsKLSAgICAgICAgICAgIHNsb3Quc2V0Q3Vz
dG9tKHRoaXMsIFJlYWRPbmx5IHwgRG9udERlbGV0ZSB8IERvbnRFbnVtLCBub25DYWNoaW5nU3Rh
dGljUmVsb2FkRnVuY3Rpb25HZXR0ZXIpOwotICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAg
ICAgIH0gZWxzZSBpZiAoZW50cnktPmZ1bmN0aW9uKCkgPT0ganNMb2NhdGlvblByb3RvdHlwZUZ1
bmN0aW9uQXNzaWduKSB7Ci0gICAgICAgICAgICBzbG90LnNldEN1c3RvbSh0aGlzLCBSZWFkT25s
eSB8IERvbnREZWxldGUgfCBEb250RW51bSwgbm9uQ2FjaGluZ1N0YXRpY0Fzc2lnbkZ1bmN0aW9u
R2V0dGVyKTsKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICB9CisgICAgaWYgKHBy
b3BlcnR5TmFtZSA9PSBleGVjLT5wcm9wZXJ0eU5hbWVzKCkucmVwbGFjZSkgeworICAgICAgICBz
bG90LnNldEN1c3RvbSh0aGlzLCBSZWFkT25seSB8IERvbnREZWxldGUgfCBEb250RW51bSwgbm9u
Q2FjaGluZ1N0YXRpY0Z1bmN0aW9uR2V0dGVyPGpzTG9jYXRpb25Qcm90b3R5cGVGdW5jdGlvblJl
cGxhY2UsIDE+KTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIGlmIChwcm9wZXJ0
eU5hbWUgPT0gZXhlYy0+cHJvcGVydHlOYW1lcygpLnJlbG9hZCkgeworICAgICAgICBzbG90LnNl
dEN1c3RvbSh0aGlzLCBSZWFkT25seSB8IERvbnREZWxldGUgfCBEb250RW51bSwgbm9uQ2FjaGlu
Z1N0YXRpY0Z1bmN0aW9uR2V0dGVyPGpzTG9jYXRpb25Qcm90b3R5cGVGdW5jdGlvblJlbG9hZCwg
MD4pOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisgICAgaWYgKHByb3BlcnR5TmFtZSA9
PSBleGVjLT5wcm9wZXJ0eU5hbWVzKCkuYXNzaWduKSB7CisgICAgICAgIHNsb3Quc2V0Q3VzdG9t
KHRoaXMsIFJlYWRPbmx5IHwgRG9udERlbGV0ZSB8IERvbnRFbnVtLCBub25DYWNoaW5nU3RhdGlj
RnVuY3Rpb25HZXR0ZXI8anNMb2NhdGlvblByb3RvdHlwZUZ1bmN0aW9uQXNzaWduLCAxPik7Cisg
ICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KIAogICAgIC8vIEZJWE1FOiBPdGhlciBpbXBsZW1l
bnRlcnMgb2YgdGhlIFdpbmRvdyBjcm9zcy1kb21haW4gc2NoZW1lIChXaW5kb3csIEhpc3Rvcnkp
IGFsbG93IHRvU3RyaW5nLApAQCAtMTA4LDcgKzkyLDcgQEAgYm9vbCBKU0xvY2F0aW9uOjpwdXRE
ZWxlZ2F0ZShFeGVjU3RhdGUqIAogICAgIC8vIENyb3NzLWRvbWFpbiBhY2Nlc3MgdG8gdGhlIGxv
Y2F0aW9uIGlzIGFsbG93ZWQgd2hlbiBhc3NpZ25pbmcgdGhlIHdob2xlIGxvY2F0aW9uLAogICAg
IC8vIGJ1dCBub3Qgd2hlbiBhc3NpZ25pbmcgdGhlIGluZGl2aWR1YWwgcGllY2VzLCBzaW5jZSB0
aGF0IG1pZ2h0IGluYWR2ZXJ0ZW50bHkKICAgICAvLyBkaXNjbG9zZSBvdGhlciBwYXJ0cyBvZiB0
aGUgb3JpZ2luYWwgbG9jYXRpb24uCi0gICAgaWYgKGVudHJ5LT5wcm9wZXJ0eVB1dHRlcigpICE9
IHNldEpTTG9jYXRpb25IcmVmICYmICFzYW1lRG9tYWluQWNjZXNzKQorICAgIGlmIChwcm9wZXJ0
eU5hbWUgIT0gZXhlYy0+cHJvcGVydHlOYW1lcygpLmhyZWYgJiYgIXNhbWVEb21haW5BY2Nlc3Mp
CiAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgcmV0dXJuIGZhbHNlOwpJbmRleDogU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0JKHJl
dmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvckpTLnBtCSh3b3JraW5nIGNvcHkpCkBAIC0xMDA4LDYgKzEwMDgsOSBAQCBzdWIgR2Vu
ZXJhdGVIZWFkZXIKICAgICBteSAkbnVtQ3VzdG9tRnVuY3Rpb25zID0gMDsKICAgICBteSAkbnVt
Q3VzdG9tQXR0cmlidXRlcyA9IDA7CiAKKyAgICBteSAkaGFzRm9yd2FyZERlY2xhcmluZ0Z1bmN0
aW9ucyA9IDA7CisgICAgbXkgJGhhc0ZvcndhcmREZWNsYXJpbmdBdHRyaWJ1dGVzID0gMDsKKwog
ICAgICMgQXR0cmlidXRlIGFuZCBmdW5jdGlvbiBlbnVtcwogICAgIGlmICgkbnVtQXR0cmlidXRl
cyA+IDApIHsKICAgICAgICAgZm9yZWFjaCAoQHskaW50ZXJmYWNlLT5hdHRyaWJ1dGVzfSkgewpA
QCAtMTAyMiw2ICsxMDI1LDEwIEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogICAgICAgICAgICAgICAg
ICRuZWVkc1Zpc2l0Q2hpbGRyZW4gPSAxOwogICAgICAgICAgICAgICAgIHB1c2goQGhlYWRlckNv
bnRlbnQsICIjZW5kaWZcbiIpIGlmICRjb25kaXRpb25hbFN0cmluZzsKICAgICAgICAgICAgIH0K
KworICAgICAgICAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IkZvcndhcmREZWNsYXJlSW5IZWFkZXIifSkgeworICAgICAgICAgICAgICAgICRoYXNG
b3J3YXJkRGVjbGFyaW5nQXR0cmlidXRlcyA9IDE7CisgICAgICAgICAgICB9CiAgICAgICAgIH0K
ICAgICB9CiAKQEAgLTEwNTQsNiArMTA2MSwxMCBAQCBzdWIgR2VuZXJhdGVIZWFkZXIKIAogICAg
IGZvcmVhY2ggbXkgJGZ1bmN0aW9uIChAeyRpbnRlcmZhY2UtPmZ1bmN0aW9uc30pIHsKICAgICAg
ICAgJG51bUN1c3RvbUZ1bmN0aW9ucysrIGlmIEhhc0N1c3RvbU1ldGhvZCgkZnVuY3Rpb24tPnNp
Z25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzKTsKKworICAgICAgICBpZiAoJGZ1bmN0aW9uLT5z
aWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJGb3J3YXJkRGVjbGFyZUluSGVhZGVyIn0p
IHsKKyAgICAgICAgICAgICRoYXNGb3J3YXJkRGVjbGFyaW5nRnVuY3Rpb25zID0gMTsKKyAgICAg
ICAgfQogICAgIH0KIAogICAgIGlmICgkbnVtQ3VzdG9tRnVuY3Rpb25zID4gMCkgewpAQCAtMTI0
NiwxMSArMTI1NywxMyBAQCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICAgICAgR2VuZXJhdGVDb25z
dHJ1Y3RvckRlY2xhcmF0aW9uKFxAaGVhZGVyQ29udGVudCwgJGNsYXNzTmFtZSwgJGludGVyZmFj
ZSwgJGludGVyZmFjZU5hbWUpOwogICAgIH0KIAotICAgIGlmICgkbnVtRnVuY3Rpb25zID4gMCkg
eworICAgIGlmICgkaGFzRm9yd2FyZERlY2xhcmluZ0Z1bmN0aW9ucykgewogICAgICAgICBteSAk
aW5BcHBsZUNvcHlyaWdodCA9IDA7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsIi8vIEZ1
bmN0aW9uc1xuXG4iKTsKICAgICAgICAgZm9yZWFjaCBteSAkZnVuY3Rpb24gKEB7JGludGVyZmFj
ZS0+ZnVuY3Rpb25zfSkgewogICAgICAgICAgICAgbmV4dCBpZiAkZnVuY3Rpb24tPntvdmVybG9h
ZEluZGV4fSAmJiAkZnVuY3Rpb24tPntvdmVybG9hZEluZGV4fSA+IDE7CisgICAgICAgICAgICBu
ZXh0IHVubGVzcyAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkZv
cndhcmREZWNsYXJlSW5IZWFkZXIifTsKKwogICAgICAgICAgICAgbXkgJG5lZWRzQXBwbGVDb3B5
cmlnaHQgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkFwcGxl
Q29weXJpZ2h0In07CiAgICAgICAgICAgICBpZiAoJG5lZWRzQXBwbGVDb3B5cmlnaHQpIHsKICAg
ICAgICAgICAgICAgICBpZiAoISRpbkFwcGxlQ29weXJpZ2h0KSB7CkBAIC0xMjcyLDkgKzEyODUs
MTEgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICRl
bmRBcHBsZUNvcHlyaWdodCkgaWYgJGluQXBwbGVDb3B5cmlnaHQ7CiAgICAgfQogCi0gICAgaWYg
KCRudW1BdHRyaWJ1dGVzID4gMCB8fCAhJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
Ik5vSW50ZXJmYWNlT2JqZWN0In0pIHsKKyAgICBpZiAoJGhhc0ZvcndhcmREZWNsYXJpbmdBdHRy
aWJ1dGVzKSB7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsIi8vIEF0dHJpYnV0ZXNcblxu
Iik7CiAgICAgICAgIGZvcmVhY2ggbXkgJGF0dHJpYnV0ZSAoQHskaW50ZXJmYWNlLT5hdHRyaWJ1
dGVzfSkgeworICAgICAgICAgICAgbmV4dCB1bmxlc3MgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiRm9yd2FyZERlY2xhcmVJbkhlYWRlciJ9OworCiAgICAgICAg
ICAgICBteSAkY29uZGl0aW9uYWxTdHJpbmcgPSAkY29kZUdlbmVyYXRvci0+R2VuZXJhdGVDb25k
aXRpb25hbFN0cmluZygkYXR0cmlidXRlLT5zaWduYXR1cmUpOwogICAgICAgICAgICAgcHVzaChA
aGVhZGVyQ29udGVudCwgIiNpZiAke2NvbmRpdGlvbmFsU3RyaW5nfVxuIikgaWYgJGNvbmRpdGlv
bmFsU3RyaW5nOwogICAgICAgICAgICAgbXkgJGdldHRlciA9IEdldEF0dHJpYnV0ZUdldHRlck5h
bWUoJGludGVyZmFjZU5hbWUsICRjbGFzc05hbWUsICRhdHRyaWJ1dGUpOwpAQCAtMTI4NSwxNiAr
MTMwMCw2IEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogICAgICAgICAgICAgfQogICAgICAgICAgICAg
cHVzaChAaGVhZGVyQ29udGVudCwgIiNlbmRpZlxuIikgaWYgJGNvbmRpdGlvbmFsU3RyaW5nOwog
ICAgICAgICB9Ci0gICAgICAgIAotICAgICAgICBpZiAoISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJOb0ludGVyZmFjZU9iamVjdCJ9KSB7Ci0gICAgICAgICAgICBteSAkZ2V0dGVy
ID0gImpzIiAuICRpbnRlcmZhY2VOYW1lIC4gIkNvbnN0cnVjdG9yIjsKLSAgICAgICAgICAgIHB1
c2goQGhlYWRlckNvbnRlbnQsICJKU0M6OkVuY29kZWRKU1ZhbHVlICR7Z2V0dGVyfShKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3Bl
cnR5TmFtZSk7XG4iKTsKLSAgICAgICAgfQotCi0gICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiUmVwbGFjZWFibGVDb25zdHJ1Y3RvciJ9KSB7Ci0gICAgICAgICAg
ICBteSAkY29uc3RydWN0b3JGdW5jdGlvbk5hbWUgPSAic2V0SlMiIC4gJGludGVyZmFjZU5hbWUg
LiAiQ29uc3RydWN0b3IiOwotICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgInZvaWQg
JHtjb25zdHJ1Y3RvckZ1bmN0aW9uTmFtZX0oSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7XG4iKTsKLSAgICAg
ICAgfQogICAgIH0KIAogICAgIG15ICRjb25kaXRpb25hbFN0cmluZyA9ICRjb2RlR2VuZXJhdG9y
LT5HZW5lcmF0ZUNvbmRpdGlvbmFsU3RyaW5nKCRpbnRlcmZhY2UpOwpAQCAtMTc0OCw2ICsxNzUz
LDY1IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICJcbnVzaW5nIG5hbWVzcGFjZSBKU0M7XG5cbiIpOwogICAgIHB1c2goQGltcGxDb250ZW50LCAi
bmFtZXNwYWNlIFdlYkNvcmUge1xuXG4iKTsKIAorICAgIG15ICRudW1Db25zdGFudHMgPSBAeyRp
bnRlcmZhY2UtPmNvbnN0YW50c307CisgICAgbXkgJG51bUZ1bmN0aW9ucyA9IEB7JGludGVyZmFj
ZS0+ZnVuY3Rpb25zfTsKKyAgICBteSAkbnVtQXR0cmlidXRlcyA9IEB7JGludGVyZmFjZS0+YXR0
cmlidXRlc307CisKKyAgICBpZiAoJG51bUZ1bmN0aW9ucyA+IDApIHsKKyAgICAgICAgbXkgJGlu
QXBwbGVDb3B5cmlnaHQgPSAwOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwiLy8gRnVuY3Rp
b25zXG5cbiIpOworICAgICAgICBmb3JlYWNoIG15ICRmdW5jdGlvbiAoQHskaW50ZXJmYWNlLT5m
dW5jdGlvbnN9KSB7CisgICAgICAgICAgICBuZXh0IGlmICRmdW5jdGlvbi0+e292ZXJsb2FkSW5k
ZXh9ICYmICRmdW5jdGlvbi0+e292ZXJsb2FkSW5kZXh9ID4gMTsKKyAgICAgICAgICAgIG5leHQg
aWYgJGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJGb3J3YXJkRGVj
bGFyZUluSGVhZGVyIn07CisKKyAgICAgICAgICAgIG15ICRuZWVkc0FwcGxlQ29weXJpZ2h0ID0g
JGZ1bmN0aW9uLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJBcHBsZUNvcHlyaWdo
dCJ9OworICAgICAgICAgICAgaWYgKCRuZWVkc0FwcGxlQ29weXJpZ2h0KSB7CisgICAgICAgICAg
ICAgICAgaWYgKCEkaW5BcHBsZUNvcHlyaWdodCkgeworICAgICAgICAgICAgICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgJGJlZ2luQXBwbGVDb3B5cmlnaHRGb3JIZWFkZXJGaWxlcyk7CisgICAg
ICAgICAgICAgICAgICAgICRpbkFwcGxlQ29weXJpZ2h0ID0gMTsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICB9IGVsc2lmICgkaW5BcHBsZUNvcHlyaWdodCkgeworICAgICAgICAgICAg
ICAgIHB1c2goQGltcGxDb250ZW50LCAkZW5kQXBwbGVDb3B5cmlnaHQpOworICAgICAgICAgICAg
ICAgICRpbkFwcGxlQ29weXJpZ2h0ID0gMDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
bXkgJGNvbmRpdGlvbmFsU3RyaW5nID0gJGNvZGVHZW5lcmF0b3ItPkdlbmVyYXRlQ29uZGl0aW9u
YWxTdHJpbmcoJGZ1bmN0aW9uLT5zaWduYXR1cmUpOworICAgICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICIjaWYgJHtjb25kaXRpb25hbFN0cmluZ31cbiIpIGlmICRjb25kaXRpb25hbFN0cmlu
ZzsKKyAgICAgICAgICAgIG15ICRmdW5jdGlvbk5hbWUgPSBHZXRGdW5jdGlvbk5hbWUoJGNsYXNz
TmFtZSwgJGZ1bmN0aW9uKTsKKyAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiSlNDOjpF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMICR7ZnVuY3Rpb25OYW1lfShKU0M6OkV4ZWNTdGF0
ZSopO1xuIik7CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiNlbmRpZlxuIikgaWYg
JGNvbmRpdGlvbmFsU3RyaW5nOworICAgICAgICB9CisKKyAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICRlbmRBcHBsZUNvcHlyaWdodCkgaWYgJGluQXBwbGVDb3B5cmlnaHQ7CisgICAgfQorCisg
ICAgaWYgKCRudW1BdHRyaWJ1dGVzID4gMCB8fCAhJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57Ik5vSW50ZXJmYWNlT2JqZWN0In0pIHsKKyAgICAgICAgcHVzaChAaW1wbENvbnRlbnQs
Ii8vIEF0dHJpYnV0ZXNcblxuIik7CisgICAgICAgIGZvcmVhY2ggbXkgJGF0dHJpYnV0ZSAoQHsk
aW50ZXJmYWNlLT5hdHRyaWJ1dGVzfSkgeworICAgICAgICAgICAgbmV4dCBpZiAkYXR0cmlidXRl
LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJGb3J3YXJkRGVjbGFyZUluSGVhZGVy
In07CisKKyAgICAgICAgICAgIG15ICRjb25kaXRpb25hbFN0cmluZyA9ICRjb2RlR2VuZXJhdG9y
LT5HZW5lcmF0ZUNvbmRpdGlvbmFsU3RyaW5nKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSk7CisgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiNpZiAke2NvbmRpdGlvbmFsU3RyaW5nfVxuIikg
aWYgJGNvbmRpdGlvbmFsU3RyaW5nOworICAgICAgICAgICAgbXkgJGdldHRlciA9IEdldEF0dHJp
YnV0ZUdldHRlck5hbWUoJGludGVyZmFjZU5hbWUsICRjbGFzc05hbWUsICRhdHRyaWJ1dGUpOwor
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJKU0M6OkVuY29kZWRKU1ZhbHVlICR7Z2V0
dGVyfShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVl
LCBKU0M6OlByb3BlcnR5TmFtZSk7XG4iKTsKKyAgICAgICAgICAgIGlmICghSXNSZWFkb25seSgk
YXR0cmlidXRlKSkgeworICAgICAgICAgICAgICAgIG15ICRzZXR0ZXIgPSBHZXRBdHRyaWJ1dGVT
ZXR0ZXJOYW1lKCRpbnRlcmZhY2VOYW1lLCAkY2xhc3NOYW1lLCAkYXR0cmlidXRlKTsKKyAgICAg
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgInZvaWQgJHtzZXR0ZXJ9KEpTQzo6RXhlY1N0
YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpT
VmFsdWUpO1xuIik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dCwgIiNlbmRpZlxuIikgaWYgJGNvbmRpdGlvbmFsU3RyaW5nOworICAgICAgICB9CisgICAgICAg
IAorICAgICAgICBpZiAoISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOb0ludGVy
ZmFjZU9iamVjdCJ9KSB7CisgICAgICAgICAgICBteSAkZ2V0dGVyID0gImpzIiAuICRpbnRlcmZh
Y2VOYW1lIC4gIkNvbnN0cnVjdG9yIjsKKyAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
SlNDOjpFbmNvZGVkSlNWYWx1ZSAke2dldHRlcn0oSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpO1xuIik7CisgICAg
ICAgIH0KKworICAgICAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlJl
cGxhY2VhYmxlQ29uc3RydWN0b3IifSkgeworICAgICAgICAgICAgbXkgJGNvbnN0cnVjdG9yRnVu
Y3Rpb25OYW1lID0gInNldEpTIiAuICRpbnRlcmZhY2VOYW1lIC4gIkNvbnN0cnVjdG9yIjsKKyAg
ICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAidm9pZCAke2NvbnN0cnVjdG9yRnVuY3Rpb25O
YW1lfShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVl
LCBKU0M6OkVuY29kZWRKU1ZhbHVlKTtcbiIpOworICAgICAgICB9CisgICAgfQorCiAgICAgbXkg
QGhhc2hLZXlzID0gKCk7CiAgICAgbXkgQGhhc2hWYWx1ZTEgPSAoKTsKICAgICBteSBAaGFzaFZh
bHVlMiA9ICgpOwpAQCAtMTc2MCw4ICsxODI0LDYgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRp
b24KICAgICAgICAgXEBoYXNoVmFsdWUxLCBcQGhhc2hWYWx1ZTIsCiAgICAgICAgIFwlY29uZGl0
aW9uYWxzKTsKIAotICAgIG15ICRudW1Db25zdGFudHMgPSBAeyRpbnRlcmZhY2UtPmNvbnN0YW50
c307Ci0gICAgbXkgJG51bUZ1bmN0aW9ucyA9IEB7JGludGVyZmFjZS0+ZnVuY3Rpb25zfTsKICAg
ICAkb2JqZWN0LT5HZW5lcmF0ZUhhc2hUYWJsZSgkaGFzaE5hbWUsICRudW1JbnN0YW5jZUF0dHJp
YnV0ZXMsCiAgICAgICAgIFxAaGFzaEtleXMsIFxAaGFzaFNwZWNpYWxzLAogICAgICAgICBcQGhh
c2hWYWx1ZTEsIFxAaGFzaFZhbHVlMiwKQEAgLTIxNDAsNyArMjIwMiw2IEBAIHN1YiBHZW5lcmF0
ZUltcGxlbWVudGF0aW9uCiAgICAgICAgIH0KIAogICAgIH0KLSAgICBteSAkbnVtQXR0cmlidXRl
cyA9IEB7JGludGVyZmFjZS0+YXR0cmlidXRlc307CiAgICAgJG51bUF0dHJpYnV0ZXMgPSAkbnVt
QXR0cmlidXRlcyArIDEgaWYgISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJOb0lu
dGVyZmFjZU9iamVjdCJ9OwogICAgIGlmICgkbnVtQXR0cmlidXRlcyA+IDApIHsKICAgICAgICAg
Zm9yZWFjaCBteSAkYXR0cmlidXRlIChAeyRpbnRlcmZhY2UtPmF0dHJpYnV0ZXN9KSB7CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50
eHQJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
SURMQXR0cmlidXRlcy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTU5LDYgKzU5LDcgQEAgRW5hYmxl
ZEF0UnVudGltZT0qCiBFbmFibGVkQnlTZXR0aW5nPSoKIEVuZm9yY2VSYW5nZQogRXZlbnRUYXJn
ZXQKK0ZvcndhcmREZWNsYXJlSW5IZWFkZXIKIEdlbmVyYXRlSXNSZWFjaGFibGU9fEltcGx8SW1w
bFdlYkdMUmVuZGVyaW5nQ29udGV4dHxJbXBsRG9jdW1lbnR8SW1wbEVsZW1lbnRSb290fEltcGxG
cmFtZXxJbXBsT3duZXJOb2RlUm9vdAogR2V0dGVyUmFpc2VzRXhjZXB0aW9uCiBHbG9iYWxDb250
ZXh0PURPTVdpbmRvd3xXb3JrZXJHbG9iYWxTY29wZXxTaGFyZWRXb3JrZXJHbG9iYWxTY29wZXxE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEFjdGl2ZURPTU9iamVjdC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEFjdGl2ZURPTU9i
amVjdC5jcHAJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RBY3RpdmVET01PYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0zMyw2ICszMywxNCBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKKy8vIEZ1bmN0aW9ucworCitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
anNUZXN0QWN0aXZlRE9NT2JqZWN0UHJvdG90eXBlRnVuY3Rpb25FeGNpdGluZ0Z1bmN0aW9uKEpT
Qzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0
QWN0aXZlRE9NT2JqZWN0UHJvdG90eXBlRnVuY3Rpb25Qb3N0TWVzc2FnZShKU0M6OkV4ZWNTdGF0
ZSopOworLy8gQXR0cmlidXRlcworCitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdEFjdGl2ZURP
TU9iamVjdEV4Y2l0aW5nQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVl
IGpzVGVzdEFjdGl2ZURPTU9iamVjdENvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpK
U09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKIC8qIEhh
c2ggdGFibGUgKi8KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBDb21wYWN0SGFzaEluZGV4IEpTVGVz
dEFjdGl2ZURPTU9iamVjdFRhYmxlSW5kZXhbNF0gPSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0QWN0aXZlRE9NT2JqZWN0LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEFjdGl2
ZURPTU9iamVjdC5oCShyZXZpc2lvbiAxNzAwMjUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0QWN0aXZlRE9NT2JqZWN0LmgJKHdvcmtpbmcgY29weSkK
QEAgLTE0MywxNCArMTQzLDYgQEAgcHJvdGVjdGVkOgogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25l
ZCBTdHJ1Y3R1cmVGbGFncyA9IEpTQzo6T3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90IHwgSlND
OjpJbXBsZW1lbnRzSGFzSW5zdGFuY2UgfCBET01Db25zdHJ1Y3Rvck9iamVjdDo6U3RydWN0dXJl
RmxhZ3M7CiB9OwogCi0vLyBGdW5jdGlvbnMKLQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGpzVGVzdEFjdGl2ZURPTU9iamVjdFByb3RvdHlwZUZ1bmN0aW9uRXhjaXRpbmdGdW5j
dGlvbihKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGpzVGVzdEFjdGl2ZURPTU9iamVjdFByb3RvdHlwZUZ1bmN0aW9uUG9zdE1lc3NhZ2UoSlNDOjpF
eGVjU3RhdGUqKTsKLS8vIEF0dHJpYnV0ZXMKLQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RB
Y3RpdmVET01PYmplY3RFeGNpdGluZ0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotSlNDOjpFbmNvZGVk
SlNWYWx1ZSBqc1Rlc3RBY3RpdmVET01PYmplY3RDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSos
IEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIApJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q3VzdG9t
TmFtZWRHZXR0ZXIuY3BwCShyZXZpc2lvbiAxNzAwMjUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0zMiw2ICszMiwxMiBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKKy8vIEZ1bmN0aW9ucworCitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwganNUZXN0Q3VzdG9tTmFtZWRHZXR0ZXJQcm90b3R5cGVGdW5jdGlvbkFub3RoZXJG
dW5jdGlvbihKU0M6OkV4ZWNTdGF0ZSopOworLy8gQXR0cmlidXRlcworCitKU0M6OkVuY29kZWRK
U1ZhbHVlIGpzVGVzdEN1c3RvbU5hbWVkR2V0dGVyQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUq
LCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUp
OwogLyogSGFzaCB0YWJsZSAqLwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IENvbXBhY3RIYXNoSW5k
ZXggSlNUZXN0Q3VzdG9tTmFtZWRHZXR0ZXJUYWJsZUluZGV4WzJdID0gewpJbmRleDogU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEN1c3RvbU5hbWVkR2V0dGVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEN1c3RvbU5hbWVkR2V0dGVyLmgJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDdXN0b21OYW1lZEdldHRlci5o
CSh3b3JraW5nIGNvcHkpCkBAIC0xNDcsMTIgKzE0Nyw2IEBAIHByb3RlY3RlZDoKICAgICBzdGF0
aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBKU0M6Ok92ZXJyaWRlc0dldE93blBy
b3BlcnR5U2xvdCB8IEpTQzo6SW1wbGVtZW50c0hhc0luc3RhbmNlIHwgRE9NQ29uc3RydWN0b3JP
YmplY3Q6OlN0cnVjdHVyZUZsYWdzOwogfTsKIAotLy8gRnVuY3Rpb25zCi0KLUpTQzo6RW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RDdXN0b21OYW1lZEdldHRlclByb3RvdHlwZUZ1
bmN0aW9uQW5vdGhlckZ1bmN0aW9uKEpTQzo6RXhlY1N0YXRlKik7Ci0vLyBBdHRyaWJ1dGVzCi0K
LUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0Q3VzdG9tTmFtZWRHZXR0ZXJDb25zdHJ1Y3RvcihK
U0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6
OlByb3BlcnR5TmFtZSk7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIApJbmRleDogU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3Iu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcAkocmV2aXNpb24gMTcwMDI1KQorKysgU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw2ICszMywxMSBAQCB1c2luZyBuYW1lc3BhY2UgSlND
OwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKKy8vIEF0dHJpYnV0ZXMKKworSlNDOjpFbmNvZGVk
SlNWYWx1ZSBqc1Rlc3RFdmVudENvbnN0cnVjdG9yQXR0cjEoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOworSlND
OjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RFdmVudENvbnN0cnVjdG9yQXR0cjIoSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5h
bWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RFdmVudENvbnN0cnVjdG9yQ29uc3RydWN0
b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwg
SlNDOjpQcm9wZXJ0eU5hbWUpOwogLyogSGFzaCB0YWJsZSBmb3IgY29uc3RydWN0b3IgKi8KIAog
c3RhdGljIGNvbnN0IHN0cnVjdCBDb21wYWN0SGFzaEluZGV4IEpTVGVzdEV2ZW50Q29uc3RydWN0
b3JDb25zdHJ1Y3RvclRhYmxlSW5kZXhbMV0gPSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENv
bnN0cnVjdG9yLmgJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmgJKHdvcmtpbmcgY29weSkK
QEAgLTE0OCwxMSArMTQ4LDYgQEAgcHJvdGVjdGVkOgogCiBib29sIGZpbGxUZXN0RXZlbnRDb25z
dHJ1Y3RvckluaXQoVGVzdEV2ZW50Q29uc3RydWN0b3JJbml0JiwgSlNEaWN0aW9uYXJ5Jik7CiAK
LS8vIEF0dHJpYnV0ZXMKLQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RFdmVudENvbnN0cnVj
dG9yQXR0cjEoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNW
YWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RFdmVu
dENvbnN0cnVjdG9yQXR0cjIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBq
c1Rlc3RFdmVudENvbnN0cnVjdG9yQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpT
T2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdldC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcAkocmV2
aXNpb24gMTcwMDI1KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEV2ZW50VGFyZ2V0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzgsNiArMzgsMTUgQEAg
dXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCisvLyBGdW5jdGlv
bnMKKworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdEV2ZW50VGFyZ2V0
UHJvdG90eXBlRnVuY3Rpb25JdGVtKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwganNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGVGdW5jdGlvbkFkZEV2
ZW50TGlzdGVuZXIoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBqc1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZUZ1bmN0aW9uUmVtb3ZlRXZlbnRMaXN0
ZW5lcihKU0M6OkV4ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGpzVGVzdEV2ZW50VGFyZ2V0UHJvdG90eXBlRnVuY3Rpb25EaXNwYXRjaEV2ZW50KEpTQzo6RXhl
Y1N0YXRlKik7CisvLyBBdHRyaWJ1dGVzCisKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0RXZl
bnRUYXJnZXRDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAvKiBIYXNoIHRhYmxlICovCiAK
IHN0YXRpYyBjb25zdCBzdHJ1Y3QgQ29tcGFjdEhhc2hJbmRleCBKU1Rlc3RFdmVudFRhcmdldFRh
YmxlSW5kZXhbMl0gPSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuaAkocmV2aXNpb24gMTcw
MDI1KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2
ZW50VGFyZ2V0LmgJKHdvcmtpbmcgY29weSkKQEAgLTE1MSwxNSArMTUxLDYgQEAgcHJvdGVjdGVk
OgogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1Y3R1cmVGbGFncyA9IEpTQzo6T3ZlcnJp
ZGVzR2V0T3duUHJvcGVydHlTbG90IHwgSlNDOjpJbXBsZW1lbnRzSGFzSW5zdGFuY2UgfCBET01D
b25zdHJ1Y3Rvck9iamVjdDo6U3RydWN0dXJlRmxhZ3M7CiB9OwogCi0vLyBGdW5jdGlvbnMKLQot
SlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdEV2ZW50VGFyZ2V0UHJvdG90
eXBlRnVuY3Rpb25JdGVtKEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwganNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGVGdW5jdGlvbkFkZEV2ZW50TGlz
dGVuZXIoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBqc1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZUZ1bmN0aW9uUmVtb3ZlRXZlbnRMaXN0ZW5lcihK
U0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVz
dEV2ZW50VGFyZ2V0UHJvdG90eXBlRnVuY3Rpb25EaXNwYXRjaEV2ZW50KEpTQzo6RXhlY1N0YXRl
Kik7Ci0vLyBBdHRyaWJ1dGVzCi0KLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0RXZlbnRUYXJn
ZXRDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29k
ZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
IApJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4
Y2VwdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0zMSw2ICszMSwxMCBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKKy8vIEF0dHJpYnV0ZXMKKworSlNDOjpFbmNvZGVkSlNWYWx1
ZSBqc1Rlc3RFeGNlcHRpb25OYW1lKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpT
Qzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK0pTQzo6RW5jb2RlZEpTVmFs
dWUganNUZXN0RXhjZXB0aW9uQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwogLyogSGFzaCB0
YWJsZSAqLwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IENvbXBhY3RIYXNoSW5kZXggSlNUZXN0RXhj
ZXB0aW9uVGFibGVJbmRleFsyXSA9IHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmgJKHJldmlzaW9u
IDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RFeGNlcHRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMTQzLDEwICsxNDMsNiBAQCBwcm90ZWN0
ZWQ6CiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gSlNDOjpPdmVy
cmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBKU0M6OkltcGxlbWVudHNIYXNJbnN0YW5jZSB8IERP
TUNvbnN0cnVjdG9yT2JqZWN0OjpTdHJ1Y3R1cmVGbGFnczsKIH07CiAKLS8vIEF0dHJpYnV0ZXMK
LQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RFeGNlcHRpb25OYW1lKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1l
KTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0RXhjZXB0aW9uQ29uc3RydWN0b3IoSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9w
ZXJ0eU5hbWUpOwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5jcHAJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hh
YmxlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjgsNiArMjgsOSBAQCB1c2luZyBuYW1lc3BhY2Ug
SlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKKy8vIEF0dHJpYnV0ZXMKKworSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlQ29uc3RydWN0b3IoSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0
eU5hbWUpOwogLyogSGFzaCB0YWJsZSBmb3IgY29uc3RydWN0b3IgKi8KIAogc3RhdGljIGNvbnN0
IHN0cnVjdCBDb21wYWN0SGFzaEluZGV4IEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVDb25zdHJ1
Y3RvclRhYmxlSW5kZXhbMV0gPSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVh
Y2hhYmxlLmgJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlLmgJKHdvcmtpbmcgY29weSkK
QEAgLTE0Miw5ICsxNDIsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVk
IFN0cnVjdHVyZUZsYWdzID0gSlNDOjpPdmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBKU0M6
OkltcGxlbWVudHNIYXNJbnN0YW5jZSB8IERPTUNvbnN0cnVjdG9yT2JqZWN0OjpTdHJ1Y3R1cmVG
bGFnczsKIH07CiAKLS8vIEF0dHJpYnV0ZXMKLQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RH
ZW5lcmF0ZUlzUmVhY2hhYmxlQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwCShyZXZpc2lvbiAx
NzAwMjUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
SW50ZXJmYWNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDgsNiArNDgsNzkgQEAgdXNpbmcgbmFt
ZXNwYWNlIEpTQzsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCisvLyBGdW5jdGlvbnMKKworI2lm
IEVOQUJMRShDb25kaXRpb24yMikgfHwgRU5BQkxFKENvbmRpdGlvbjIzKQorSlNDOjpFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdEludGVyZmFjZVByb3RvdHlwZUZ1bmN0aW9uSW1w
bGVtZW50c01ldGhvZDEoSlNDOjpFeGVjU3RhdGUqKTsKKyNlbmRpZgorI2lmIEVOQUJMRShDb25k
aXRpb24yMikgfHwgRU5BQkxFKENvbmRpdGlvbjIzKQorSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGpzVGVzdEludGVyZmFjZVByb3RvdHlwZUZ1bmN0aW9uSW1wbGVtZW50c01ldGhv
ZDIoSlNDOjpFeGVjU3RhdGUqKTsKKyNlbmRpZgorI2lmIEVOQUJMRShDb25kaXRpb24yMikgfHwg
RU5BQkxFKENvbmRpdGlvbjIzKQorSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpz
VGVzdEludGVyZmFjZVByb3RvdHlwZUZ1bmN0aW9uSW1wbGVtZW50c01ldGhvZDMoSlNDOjpFeGVj
U3RhdGUqKTsKKyNlbmRpZgorI2lmIEVOQUJMRShDb25kaXRpb24yMikgfHwgRU5BQkxFKENvbmRp
dGlvbjIzKQorSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdEludGVyZmFj
ZUNvbnN0cnVjdG9yRnVuY3Rpb25JbXBsZW1lbnRzTWV0aG9kNChKU0M6OkV4ZWNTdGF0ZSopOwor
I2VuZGlmCisjaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9uMTIpCitK
U0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0SW50ZXJmYWNlUHJvdG90eXBl
RnVuY3Rpb25TdXBwbGVtZW50YWxNZXRob2QxKEpTQzo6RXhlY1N0YXRlKik7CisjZW5kaWYKKyNp
ZiBFTkFCTEUoQ29uZGl0aW9uMTEpIHx8IEVOQUJMRShDb25kaXRpb24xMikKK0pTQzo6RW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RJbnRlcmZhY2VQcm90b3R5cGVGdW5jdGlvblN1
cHBsZW1lbnRhbE1ldGhvZDIoSlNDOjpFeGVjU3RhdGUqKTsKKyNlbmRpZgorI2lmIEVOQUJMRShD
b25kaXRpb24xMSkgfHwgRU5BQkxFKENvbmRpdGlvbjEyKQorSlNDOjpFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGpzVGVzdEludGVyZmFjZVByb3RvdHlwZUZ1bmN0aW9uU3VwcGxlbWVudGFs
TWV0aG9kMyhKU0M6OkV4ZWNTdGF0ZSopOworI2VuZGlmCisjaWYgRU5BQkxFKENvbmRpdGlvbjEx
KSB8fCBFTkFCTEUoQ29uZGl0aW9uMTIpCitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwganNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3JGdW5jdGlvblN1cHBsZW1lbnRhbE1ldGhvZDQo
SlNDOjpFeGVjU3RhdGUqKTsKKyNlbmRpZgorLy8gQXR0cmlidXRlcworCisjaWYgRU5BQkxFKENv
bmRpdGlvbjIyKSB8fCBFTkFCTEUoQ29uZGl0aW9uMjMpCitKU0M6OkVuY29kZWRKU1ZhbHVlIGpz
VGVzdEludGVyZmFjZUNvbnN0cnVjdG9ySW1wbGVtZW50c1N0YXRpY1JlYWRPbmx5QXR0cihKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlBy
b3BlcnR5TmFtZSk7CisjZW5kaWYKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMjIpIHx8IEVOQUJMRShD
b25kaXRpb24yMykKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlQ29uc3RydWN0
b3JJbXBsZW1lbnRzU3RhdGljQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBK
U0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdElu
dGVyZmFjZUNvbnN0cnVjdG9ySW1wbGVtZW50c1N0YXRpY0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBK
U0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7
CisjZW5kaWYKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMjIpIHx8IEVOQUJMRShDb25kaXRpb24yMykK
K0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlSW1wbGVtZW50c1N0cjEoSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9w
ZXJ0eU5hbWUpOworI2VuZGlmCisjaWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFCTEUoQ29u
ZGl0aW9uMjMpCitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUltcGxlbWVudHNT
dHIyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUs
IEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0SW50ZXJmYWNlSW1wbGVtZW50c1N0
cjIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSk7CisjZW5kaWYKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMjIpIHx8
IEVOQUJMRShDb25kaXRpb24yMykKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNl
SW1wbGVtZW50c1N0cjMoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rlc3RJbnRlcmZhY2VJ
bXBsZW1lbnRzU3RyMyhKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29k
ZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKKyNlbmRpZgorI2lmIEVOQUJMRShDb25k
aXRpb24yMikgfHwgRU5BQkxFKENvbmRpdGlvbjIzKQorSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rl
c3RJbnRlcmZhY2VJbXBsZW1lbnRzTm9kZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3Qq
LCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVz
dEludGVyZmFjZUltcGxlbWVudHNOb2RlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCos
IEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworI2VuZGlmCisjaWYg
RU5BQkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9uMTIpCitKU0M6OkVuY29kZWRK
U1ZhbHVlIGpzVGVzdEludGVyZmFjZUNvbnN0cnVjdG9yU3VwcGxlbWVudGFsU3RhdGljUmVhZE9u
bHlBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFs
dWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKKyNlbmRpZgorI2lmIEVOQUJMRShDb25kaXRpb24xMSkg
fHwgRU5BQkxFKENvbmRpdGlvbjEyKQorSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RJbnRlcmZh
Y2VDb25zdHJ1Y3RvclN1cHBsZW1lbnRhbFN0YXRpY0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9p
ZCBzZXRKU1Rlc3RJbnRlcmZhY2VDb25zdHJ1Y3RvclN1cHBsZW1lbnRhbFN0YXRpY0F0dHIoSlND
OjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSk7CisjZW5kaWYKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMTEpIHx8IEVOQUJM
RShDb25kaXRpb24xMikKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlU3VwcGxl
bWVudGFsU3RyMShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRK
U1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CisjZW5kaWYKKyNpZiBFTkFCTEUoQ29uZGl0aW9u
MTEpIHx8IEVOQUJMRShDb25kaXRpb24xMikKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0SW50
ZXJmYWNlU3VwcGxlbWVudGFsU3RyMihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBK
U0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdElu
dGVyZmFjZVN1cHBsZW1lbnRhbFN0cjIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0Kiwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CisjZW5kaWYKKyNpZiBF
TkFCTEUoQ29uZGl0aW9uMTEpIHx8IEVOQUJMRShDb25kaXRpb24xMikKK0pTQzo6RW5jb2RlZEpT
VmFsdWUganNUZXN0SW50ZXJmYWNlU3VwcGxlbWVudGFsU3RyMyhKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2
b2lkIHNldEpTVGVzdEludGVyZmFjZVN1cHBsZW1lbnRhbFN0cjMoSlNDOjpFeGVjU3RhdGUqLCBK
U0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7
CisjZW5kaWYKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMTEpIHx8IEVOQUJMRShDb25kaXRpb24xMikK
K0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlU3VwcGxlbWVudGFsTm9kZShKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlBy
b3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdEludGVyZmFjZVN1cHBsZW1lbnRhbE5vZGUoSlND
OjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSk7CisjZW5kaWYKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJm
YWNlQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwogLyogSGFzaCB0YWJsZSAqLwogCiBzdGF0
aWMgY29uc3Qgc3RydWN0IENvbXBhY3RIYXNoSW5kZXggSlNUZXN0SW50ZXJmYWNlVGFibGVJbmRl
eFs0XSA9IHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RJbnRlcmZhY2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmgJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuaAko
d29ya2luZyBjb3B5KQpAQCAtMTc0LDc5ICsxNzQsNiBAQCBwcm90ZWN0ZWQ6CiAjZW5kaWYgLy8g
RU5BQkxFKFRFU1RfSU5URVJGQUNFKQogfTsKIAotLy8gRnVuY3Rpb25zCi0KLSNpZiBFTkFCTEUo
Q29uZGl0aW9uMjIpIHx8IEVOQUJMRShDb25kaXRpb24yMykKLUpTQzo6RW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBqc1Rlc3RJbnRlcmZhY2VQcm90b3R5cGVGdW5jdGlvbkltcGxlbWVudHNN
ZXRob2QxKEpTQzo6RXhlY1N0YXRlKik7Ci0jZW5kaWYKLSNpZiBFTkFCTEUoQ29uZGl0aW9uMjIp
IHx8IEVOQUJMRShDb25kaXRpb24yMykKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBqc1Rlc3RJbnRlcmZhY2VQcm90b3R5cGVGdW5jdGlvbkltcGxlbWVudHNNZXRob2QyKEpTQzo6
RXhlY1N0YXRlKik7Ci0jZW5kaWYKLSNpZiBFTkFCTEUoQ29uZGl0aW9uMjIpIHx8IEVOQUJMRShD
b25kaXRpb24yMykKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RJbnRl
cmZhY2VQcm90b3R5cGVGdW5jdGlvbkltcGxlbWVudHNNZXRob2QzKEpTQzo6RXhlY1N0YXRlKik7
Ci0jZW5kaWYKLSNpZiBFTkFCTEUoQ29uZGl0aW9uMjIpIHx8IEVOQUJMRShDb25kaXRpb24yMykK
LUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RJbnRlcmZhY2VDb25zdHJ1
Y3RvckZ1bmN0aW9uSW1wbGVtZW50c01ldGhvZDQoSlNDOjpFeGVjU3RhdGUqKTsKLSNlbmRpZgot
I2lmIEVOQUJMRShDb25kaXRpb24xMSkgfHwgRU5BQkxFKENvbmRpdGlvbjEyKQotSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdEludGVyZmFjZVByb3RvdHlwZUZ1bmN0aW9u
U3VwcGxlbWVudGFsTWV0aG9kMShKU0M6OkV4ZWNTdGF0ZSopOwotI2VuZGlmCi0jaWYgRU5BQkxF
KENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9uMTIpCi1KU0M6OkVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwganNUZXN0SW50ZXJmYWNlUHJvdG90eXBlRnVuY3Rpb25TdXBwbGVtZW50
YWxNZXRob2QyKEpTQzo6RXhlY1N0YXRlKik7Ci0jZW5kaWYKLSNpZiBFTkFCTEUoQ29uZGl0aW9u
MTEpIHx8IEVOQUJMRShDb25kaXRpb24xMikKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTCBqc1Rlc3RJbnRlcmZhY2VQcm90b3R5cGVGdW5jdGlvblN1cHBsZW1lbnRhbE1ldGhvZDMo
SlNDOjpFeGVjU3RhdGUqKTsKLSNlbmRpZgotI2lmIEVOQUJMRShDb25kaXRpb24xMSkgfHwgRU5B
QkxFKENvbmRpdGlvbjEyKQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVz
dEludGVyZmFjZUNvbnN0cnVjdG9yRnVuY3Rpb25TdXBwbGVtZW50YWxNZXRob2Q0KEpTQzo6RXhl
Y1N0YXRlKik7Ci0jZW5kaWYKLS8vIEF0dHJpYnV0ZXMKLQotI2lmIEVOQUJMRShDb25kaXRpb24y
MikgfHwgRU5BQkxFKENvbmRpdGlvbjIzKQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RJbnRl
cmZhY2VDb25zdHJ1Y3RvckltcGxlbWVudHNTdGF0aWNSZWFkT25seUF0dHIoSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5h
bWUpOwotI2VuZGlmCi0jaWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFCTEUoQ29uZGl0aW9u
MjMpCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUNvbnN0cnVjdG9ySW1wbGVt
ZW50c1N0YXRpY0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RJbnRlcmZhY2VD
b25zdHJ1Y3RvckltcGxlbWVudHNTdGF0aWNBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09i
amVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotI2VuZGlm
Ci0jaWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFCTEUoQ29uZGl0aW9uMjMpCi1KU0M6OkVu
Y29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUltcGxlbWVudHNTdHIxKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1l
KTsKLSNlbmRpZgotI2lmIEVOQUJMRShDb25kaXRpb24yMikgfHwgRU5BQkxFKENvbmRpdGlvbjIz
KQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RJbnRlcmZhY2VJbXBsZW1lbnRzU3RyMihKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlBy
b3BlcnR5TmFtZSk7Ci12b2lkIHNldEpTVGVzdEludGVyZmFjZUltcGxlbWVudHNTdHIyKEpTQzo6
RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5j
b2RlZEpTVmFsdWUpOwotI2VuZGlmCi0jaWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFCTEUo
Q29uZGl0aW9uMjMpCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUltcGxlbWVu
dHNTdHIzKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFs
dWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0SW50ZXJmYWNlSW1wbGVtZW50
c1N0cjMoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1
ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci0jZW5kaWYKLSNpZiBFTkFCTEUoQ29uZGl0aW9uMjIp
IHx8IEVOQUJMRShDb25kaXRpb24yMykKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJm
YWNlSW1wbGVtZW50c05vZGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RJbnRlcmZh
Y2VJbXBsZW1lbnRzTm9kZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVu
Y29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLSNlbmRpZgotI2lmIEVOQUJMRShD
b25kaXRpb24xMSkgfHwgRU5BQkxFKENvbmRpdGlvbjEyKQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBq
c1Rlc3RJbnRlcmZhY2VDb25zdHJ1Y3RvclN1cHBsZW1lbnRhbFN0YXRpY1JlYWRPbmx5QXR0cihK
U0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6
OlByb3BlcnR5TmFtZSk7Ci0jZW5kaWYKLSNpZiBFTkFCTEUoQ29uZGl0aW9uMTEpIHx8IEVOQUJM
RShDb25kaXRpb24xMikKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlQ29uc3Ry
dWN0b3JTdXBwbGVtZW50YWxTdGF0aWNBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNU
ZXN0SW50ZXJmYWNlQ29uc3RydWN0b3JTdXBwbGVtZW50YWxTdGF0aWNBdHRyKEpTQzo6RXhlY1N0
YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpT
VmFsdWUpOwotI2VuZGlmCi0jaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0
aW9uMTIpCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZVN1cHBsZW1lbnRhbFN0
cjEoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwg
SlNDOjpQcm9wZXJ0eU5hbWUpOwotI2VuZGlmCi0jaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBF
TkFCTEUoQ29uZGl0aW9uMTIpCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZVN1
cHBsZW1lbnRhbFN0cjIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RJbnRlcmZhY2VT
dXBwbGVtZW50YWxTdHIyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5j
b2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotI2VuZGlmCi0jaWYgRU5BQkxFKENv
bmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9uMTIpCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpz
VGVzdEludGVyZmFjZVN1cHBsZW1lbnRhbFN0cjMoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRK
U1Rlc3RJbnRlcmZhY2VTdXBwbGVtZW50YWxTdHIzKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09i
amVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotI2VuZGlm
Ci0jaWYgRU5BQkxFKENvbmRpdGlvbjExKSB8fCBFTkFCTEUoQ29uZGl0aW9uMTIpCi1KU0M6OkVu
Y29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZVN1cHBsZW1lbnRhbE5vZGUoSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5h
bWUpOwotdm9pZCBzZXRKU1Rlc3RJbnRlcmZhY2VTdXBwbGVtZW50YWxOb2RlKEpTQzo6RXhlY1N0
YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpT
VmFsdWUpOwotI2VuZGlmCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdEludGVyZmFjZUNvbnN0
cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFs
dWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWVkaWFRdWVy
eUxpc3RMaXN0ZW5lci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwCShyZXZpc2lv
biAxNzAwMjUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDYgKzMy
LDEyIEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorLy8g
RnVuY3Rpb25zCisKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RNZWRp
YVF1ZXJ5TGlzdExpc3RlbmVyUHJvdG90eXBlRnVuY3Rpb25NZXRob2QoSlNDOjpFeGVjU3RhdGUq
KTsKKy8vIEF0dHJpYnV0ZXMKKworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RNZWRpYVF1ZXJ5
TGlzdExpc3RlbmVyQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0Kiwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwogLyogSGFzaCB0YWJsZSBm
b3IgY29uc3RydWN0b3IgKi8KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBDb21wYWN0SGFzaEluZGV4
IEpTVGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXJDb25zdHJ1Y3RvclRhYmxlSW5kZXhbMV0gPSB7
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWVk
aWFRdWVyeUxpc3RMaXN0ZW5lci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmgJKHJldmlz
aW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTE0MiwxMiAr
MTQyLDYgQEAgcHJvdGVjdGVkOgogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBTdHJ1Y3R1cmVG
bGFncyA9IEpTQzo6T3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90IHwgSlNDOjpJbXBsZW1lbnRz
SGFzSW5zdGFuY2UgfCBET01Db25zdHJ1Y3Rvck9iamVjdDo6U3RydWN0dXJlRmxhZ3M7CiB9Owog
Ci0vLyBGdW5jdGlvbnMKLQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVz
dE1lZGlhUXVlcnlMaXN0TGlzdGVuZXJQcm90b3R5cGVGdW5jdGlvbk1ldGhvZChKU0M6OkV4ZWNT
dGF0ZSopOwotLy8gQXR0cmlidXRlcwotCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE1lZGlh
UXVlcnlMaXN0TGlzdGVuZXJDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmpl
Y3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKIApJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkQ29uc3RydWN0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZENvbnN0cnVjdG9yLmNw
cAkocmV2aXNpb24gMTcwMDI1KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkQ29uc3RydWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw2
ICszMSw5IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAor
Ly8gQXR0cmlidXRlcworCitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE5hbWVkQ29uc3RydWN0
b3JDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29k
ZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAvKiBIYXNoIHRhYmxlIGZvciBjb25zdHJ1
Y3RvciAqLwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IENvbXBhY3RIYXNoSW5kZXggSlNUZXN0TmFt
ZWRDb25zdHJ1Y3RvckNvbnN0cnVjdG9yVGFibGVJbmRleFsxXSA9IHsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZENvbnN0cnVjdG9yLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5hbWVkQ29uc3RydWN0b3IuaAkocmV2aXNpb24gMTcwMDI1KQorKysgU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQ29uc3RydWN0b3IuaAkod29y
a2luZyBjb3B5KQpAQCAtMTY5LDkgKzE2OSw2IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmaW5pc2hD
cmVhdGlvbihKU0M6OlZNJiwgSlNET01HbG9iYWxPYmplY3QqKTsKIH07CiAKLS8vIEF0dHJpYnV0
ZXMKLQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3ROYW1lZENvbnN0cnVjdG9yQ29uc3RydWN0
b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwg
SlNDOjpQcm9wZXJ0eU5hbWUpOwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Tm9kZS5jcHAJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzEsNiArMzEs
OSBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKKy8vIEF0
dHJpYnV0ZXMKKworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3ROb2RlQ29uc3RydWN0b3IoSlND
OjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQ
cm9wZXJ0eU5hbWUpOwogLyogSGFzaCB0YWJsZSBmb3IgY29uc3RydWN0b3IgKi8KIAogc3RhdGlj
IGNvbnN0IHN0cnVjdCBDb21wYWN0SGFzaEluZGV4IEpTVGVzdE5vZGVDb25zdHJ1Y3RvclRhYmxl
SW5kZXhbMV0gPSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0Tm9kZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmgJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTExNSw5ICsxMTUsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIEpTQzo6Q29uc3Ry
dWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwgSlNDOjpDb25zdHJ1Y3REYXRh
Jik7CiB9OwogCi0vLyBBdHRyaWJ1dGVzCi0KLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0Tm9k
ZUNvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2Rl
ZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQog
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9u
ZGV0ZXJtaW5pc3RpYy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vbmRldGVybWluaXN0aWMuY3BwCShyZXZpc2lvbiAxNzAw
MjUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9u
ZGV0ZXJtaW5pc3RpYy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDIxIEBAIHVzaW5n
IG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorLy8gRnVuY3Rpb25zCisK
K0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3ROb25kZXRlcm1pbmlzdGlj
UHJvdG90eXBlRnVuY3Rpb25Ob25kZXRlcm1pbmlzdGljWmVyb0FyZ0Z1bmN0aW9uKEpTQzo6RXhl
Y1N0YXRlKik7CisvLyBBdHRyaWJ1dGVzCisKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0Tm9u
ZGV0ZXJtaW5pc3RpY05vbmRldGVybWluaXN0aWNSZWFkb25seUF0dHIoSlNDOjpFeGVjU3RhdGUq
LCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUp
OworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3ROb25kZXRlcm1pbmlzdGljTm9uZGV0ZXJtaW5p
c3RpY1dyaXRlYWJsZUF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rlc3ROb25kZXRl
cm1pbmlzdGljTm9uZGV0ZXJtaW5pc3RpY1dyaXRlYWJsZUF0dHIoSlNDOjpFeGVjU3RhdGUqLCBK
U0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7
CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE5vbmRldGVybWluaXN0aWNOb25kZXRlcm1pbmlz
dGljRXhjZXB0aW9uQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVu
Y29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdE5vbmRldGVy
bWluaXN0aWNOb25kZXRlcm1pbmlzdGljRXhjZXB0aW9uQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsK
K0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0Tm9uZGV0ZXJtaW5pc3RpY05vbmRldGVybWluaXN0
aWNHZXR0ZXJFeGNlcHRpb25BdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpT
Qzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0Tm9u
ZGV0ZXJtaW5pc3RpY05vbmRldGVybWluaXN0aWNHZXR0ZXJFeGNlcHRpb25BdHRyKEpTQzo6RXhl
Y1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2Rl
ZEpTVmFsdWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3ROb25kZXRlcm1pbmlzdGljTm9u
ZGV0ZXJtaW5pc3RpY1NldHRlckV4Y2VwdGlvbkF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpT
T2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBz
ZXRKU1Rlc3ROb25kZXRlcm1pbmlzdGljTm9uZGV0ZXJtaW5pc3RpY1NldHRlckV4Y2VwdGlvbkF0
dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE5vbmRldGVy
bWluaXN0aWNDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAvKiBIYXNoIHRhYmxlIGZvciBj
b25zdHJ1Y3RvciAqLwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IENvbXBhY3RIYXNoSW5kZXggSlNU
ZXN0Tm9uZGV0ZXJtaW5pc3RpY0NvbnN0cnVjdG9yVGFibGVJbmRleFsxXSA9IHsKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb25kZXRlcm1pbmlz
dGljLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5vbmRldGVybWluaXN0aWMuaAkocmV2aXNpb24gMTcwMDI1KQorKysgU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vbmRldGVybWluaXN0aWMu
aAkod29ya2luZyBjb3B5KQpAQCAtMTQyLDIxICsxNDIsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgc3Rh
dGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gSlNDOjpPdmVycmlkZXNHZXRPd25Q
cm9wZXJ0eVNsb3QgfCBKU0M6OkltcGxlbWVudHNIYXNJbnN0YW5jZSB8IERPTUNvbnN0cnVjdG9y
T2JqZWN0OjpTdHJ1Y3R1cmVGbGFnczsKIH07CiAKLS8vIEZ1bmN0aW9ucwotCi1KU0M6OkVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0Tm9uZGV0ZXJtaW5pc3RpY1Byb3RvdHlwZUZ1
bmN0aW9uTm9uZGV0ZXJtaW5pc3RpY1plcm9BcmdGdW5jdGlvbihKU0M6OkV4ZWNTdGF0ZSopOwot
Ly8gQXR0cmlidXRlcwotCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE5vbmRldGVybWluaXN0
aWNOb25kZXRlcm1pbmlzdGljUmVhZG9ubHlBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09i
amVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLUpTQzo6RW5j
b2RlZEpTVmFsdWUganNUZXN0Tm9uZGV0ZXJtaW5pc3RpY05vbmRldGVybWluaXN0aWNXcml0ZWFi
bGVBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFs
dWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0Tm9uZGV0ZXJtaW5pc3RpY05v
bmRldGVybWluaXN0aWNXcml0ZWFibGVBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3ROb25kZXRlcm1pbmlzdGljTm9uZGV0ZXJtaW5pc3RpY0V4Y2VwdGlv
bkF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1
ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3ROb25kZXRlcm1pbmlzdGljTm9u
ZGV0ZXJtaW5pc3RpY0V4Y2VwdGlvbkF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1KU0M6OkVuY29k
ZWRKU1ZhbHVlIGpzVGVzdE5vbmRldGVybWluaXN0aWNOb25kZXRlcm1pbmlzdGljR2V0dGVyRXhj
ZXB0aW9uQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRK
U1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12b2lkIHNldEpTVGVzdE5vbmRldGVybWluaXN0
aWNOb25kZXRlcm1pbmlzdGljR2V0dGVyRXhjZXB0aW9uQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsK
LUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0Tm9uZGV0ZXJtaW5pc3RpY05vbmRldGVybWluaXN0
aWNTZXR0ZXJFeGNlcHRpb25BdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpT
Qzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0Tm9u
ZGV0ZXJtaW5pc3RpY05vbmRldGVybWluaXN0aWNTZXR0ZXJFeGNlcHRpb25BdHRyKEpTQzo6RXhl
Y1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2Rl
ZEpTVmFsdWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3ROb25kZXRlcm1pbmlzdGljQ29u
c3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNW
YWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RPYmouY3BwCShyZXZpc2lvbiAxNzAwMjUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzQsNiAr
NzQsMjIyIEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAor
Ly8gRnVuY3Rpb25zCisKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RP
YmpQcm90b3R5cGVGdW5jdGlvblZvaWRNZXRob2QoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvblZvaWRN
ZXRob2RXaXRoQXJncyhKU0M6OkV4ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uQnl0ZU1ldGhvZChKU0M6OkV4ZWNT
dGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3Rv
dHlwZUZ1bmN0aW9uQnl0ZU1ldGhvZFdpdGhBcmdzKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25PY3Rl
dE1ldGhvZChKU0M6OkV4ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uT2N0ZXRNZXRob2RXaXRoQXJncyhKU0M6OkV4
ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialBy
b3RvdHlwZUZ1bmN0aW9uTG9uZ01ldGhvZChKU0M6OkV4ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uTG9uZ01ldGhv
ZFdpdGhBcmdzKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25PYmpNZXRob2QoSlNDOjpFeGVjU3RhdGUq
KTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVG
dW5jdGlvbk9iak1ldGhvZFdpdGhBcmdzKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRo
U2VxdWVuY2VBcmcoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFJldHVybmluZ1NlcXVlbmNl
KEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNU
ZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoRW51bUFyZyhKU0M6OkV4ZWNTdGF0ZSop
OworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1
bmN0aW9uTWV0aG9kVGhhdFJlcXVpcmVzQWxsQXJnc0FuZFRocm93cyhKU0M6OkV4ZWNTdGF0ZSop
OworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1
bmN0aW9uU2VyaWFsaXplZFZhbHVlKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25PcHRpb25zT2JqZWN0
KEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNU
ZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoRXhjZXB0aW9uKEpTQzo6RXhlY1N0YXRl
Kik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBl
RnVuY3Rpb25DdXN0b21NZXRob2QoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkN1c3RvbU1ldGhvZFdp
dGhBcmdzKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25BZGRFdmVudExpc3RlbmVyKEpTQzo6RXhlY1N0
YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90
eXBlRnVuY3Rpb25SZW1vdmVFdmVudExpc3RlbmVyKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25XaXRo
U2NyaXB0U3RhdGVWb2lkKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25XaXRoU2NyaXB0U3RhdGVPYmoo
SlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rl
c3RPYmpQcm90b3R5cGVGdW5jdGlvbldpdGhTY3JpcHRTdGF0ZVZvaWRFeGNlcHRpb24oSlNDOjpF
eGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQ
cm90b3R5cGVGdW5jdGlvbldpdGhTY3JpcHRTdGF0ZU9iakV4Y2VwdGlvbihKU0M6OkV4ZWNTdGF0
ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlw
ZUZ1bmN0aW9uV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoSlNDOjpFeGVjU3RhdGUqKTsKK0pT
Qzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlv
bldpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGUoSlNDOjpFeGVjU3RhdGUq
KTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVG
dW5jdGlvbldpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVPYmpFeGNlcHRp
b24oSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBq
c1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbldpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2Ny
aXB0U3RhdGVXaXRoU3BhY2VzKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25XaXRoU2NyaXB0QXJndW1l
bnRzQW5kQ2FsbFN0YWNrKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoT3B0aW9uYWxB
cmcoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBq
c1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhOb25PcHRpb25hbEFyZ0FuZE9wdGlv
bmFsQXJnKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoTm9uT3B0aW9uYWxBcmdBbmRU
d29PcHRpb25hbEFyZ3MoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhPcHRpb25hbFN0
cmluZyhKU0M6OkV4ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uTWV0aG9kV2l0aE9wdGlvbmFsU3RyaW5nSXNVbmRl
ZmluZWQoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhPcHRpb25hbFN0cmluZ0lzTnVs
bFN0cmluZyhKU0M6OkV4ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uTWV0aG9kV2l0aENhbGxiYWNrQXJnKEpTQzo6
RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2Jq
UHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoTm9uQ2FsbGJhY2tBcmdBbmRDYWxsYmFja0FyZyhK
U0M6OkV4ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVz
dE9ialByb3RvdHlwZUZ1bmN0aW9uTWV0aG9kV2l0aENhbGxiYWNrQW5kT3B0aW9uYWxBcmcoSlND
OjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RP
YmpDb25zdHJ1Y3RvckZ1bmN0aW9uU3RhdGljTWV0aG9kV2l0aENhbGxiYWNrQW5kT3B0aW9uYWxB
cmcoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBq
c1Rlc3RPYmpDb25zdHJ1Y3RvckZ1bmN0aW9uU3RhdGljTWV0aG9kV2l0aENhbGxiYWNrQXJnKEpT
Qzo6RXhlY1N0YXRlKik7CisjaWYgRU5BQkxFKENvbmRpdGlvbjEpCitKU0M6OkVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25Db25kaXRpb25hbE1l
dGhvZDEoSlNDOjpFeGVjU3RhdGUqKTsKKyNlbmRpZgorI2lmIEVOQUJMRShDb25kaXRpb24xKSAm
JiBFTkFCTEUoQ29uZGl0aW9uMikKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBq
c1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkNvbmRpdGlvbmFsTWV0aG9kMihKU0M6OkV4ZWNTdGF0
ZSopOworI2VuZGlmCisjaWYgRU5BQkxFKENvbmRpdGlvbjEpIHx8IEVOQUJMRShDb25kaXRpb24y
KQorSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1
bmN0aW9uQ29uZGl0aW9uYWxNZXRob2QzKEpTQzo6RXhlY1N0YXRlKik7CisjZW5kaWYKK0pTQzo6
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk92
ZXJsb2FkZWRNZXRob2QoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBqc1Rlc3RPYmpDb25zdHJ1Y3RvckZ1bmN0aW9uQ2xhc3NNZXRob2QoSlNDOjpF
eGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpD
b25zdHJ1Y3RvckZ1bmN0aW9uQ2xhc3NNZXRob2RXaXRoT3B0aW9uYWwoSlNDOjpFeGVjU3RhdGUq
KTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpDb25zdHJ1Y3Rv
ckZ1bmN0aW9uQ2xhc3NNZXRob2QyKEpTQzo6RXhlY1N0YXRlKik7CisjaWYgRU5BQkxFKENvbmRp
dGlvbjEpCitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqQ29uc3Ry
dWN0b3JGdW5jdGlvbk92ZXJsb2FkZWRNZXRob2QxKEpTQzo6RXhlY1N0YXRlKik7CisjZW5kaWYK
K0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5j
dGlvbkNsYXNzTWV0aG9kV2l0aENsYW1wKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRo
VW5zaWduZWRMb25nU2VxdWVuY2UoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvblN0cmluZ0FycmF5RnVu
Y3Rpb24oSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkRvbVN0cmluZ0xpc3RGdW5jdGlvbihKU0M6OkV4
ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialBy
b3RvdHlwZUZ1bmN0aW9uTWV0aG9kV2l0aEFuZFdpdGhvdXROdWxsYWJsZVNlcXVlbmNlKEpTQzo6
RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2Jq
UHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoQW5kV2l0aG91dE51bGxhYmxlU2VxdWVuY2UyKEpT
Qzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0
T2JqUHJvdG90eXBlRnVuY3Rpb25HZXRTVkdEb2N1bWVudChKU0M6OkV4ZWNTdGF0ZSopOworSlND
OjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9u
Q29udmVydDEoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkNvbnZlcnQyKEpTQzo6RXhlY1N0YXRlKik7
CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVu
Y3Rpb25Db252ZXJ0NChKU0M6OkV4ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uQ29udmVydDUoSlNDOjpFeGVjU3Rh
dGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5
cGVGdW5jdGlvbk11dGFibGVQb2ludEZ1bmN0aW9uKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25JbW11
dGFibGVQb2ludEZ1bmN0aW9uKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25PcmFuZ2UoSlNDOjpFeGVj
U3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90
b3R5cGVGdW5jdGlvblN0cmljdEZ1bmN0aW9uKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25TdHJpY3RG
dW5jdGlvbldpdGhTZXF1ZW5jZShKU0M6OkV4ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uU3RyaWN0RnVuY3Rpb25X
aXRoQXJyYXkoSlNDOjpFeGVjU3RhdGUqKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvblZhcmlhZGljU3RyaW5nTWV0aG9kKEpTQzo6
RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2Jq
UHJvdG90eXBlRnVuY3Rpb25WYXJpYWRpY0RvdWJsZU1ldGhvZChKU0M6OkV4ZWNTdGF0ZSopOwor
SlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0
aW9uVmFyaWFkaWNOb2RlTWV0aG9kKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25BbnkoSlNDOjpFeGVj
U3RhdGUqKTsKKy8vIEF0dHJpYnV0ZXMKKworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpS
ZWFkT25seUxvbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5j
b2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNU
ZXN0T2JqUmVhZE9ubHlTdHJpbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCos
IEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK0pTQzo6RW5jb2RlZEpT
VmFsdWUganNUZXN0T2JqUmVhZE9ubHlUZXN0T2JqQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CitKU0M6
OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNvbnN0cnVjdG9yU3RhdGljUmVhZE9ubHlMb25nQXR0
cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBK
U0M6OlByb3BlcnR5TmFtZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNvbnN0cnVj
dG9yU3RhdGljU3RyaW5nQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9iakNv
bnN0cnVjdG9yU3RhdGljU3RyaW5nQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3Qq
LCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKK0pTQzo6RW5jb2Rl
ZEpTVmFsdWUganNUZXN0T2JqQ29uc3RydWN0b3JUZXN0U3ViT2JqKEpTQzo6RXhlY1N0YXRlKiwg
SlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsK
K0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqVGVzdFN1Yk9iakVuYWJsZWRCeVNldHRpbmdD
b25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRK
U1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9ialRlc3RTdWJPYmpF
bmFibGVkQnlTZXR0aW5nQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29k
ZWRKU1ZhbHVlIGpzVGVzdE9iakVudW1BdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNU
ZXN0T2JqRW51bUF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpz
VGVzdE9iakJ5dGVBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5j
b2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqQnl0ZUF0
dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iak9jdGV0
QXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVl
LCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9iak9jdGV0QXR0cihKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29k
ZWRKU1ZhbHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqU2hvcnRBdHRyKEpTQzo6
RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJv
cGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqU2hvcnRBdHRyKEpTQzo6RXhlY1N0YXRlKiwg
SlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUp
OworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpVbnNpZ25lZFNob3J0QXR0cihKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3Bl
cnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9ialVuc2lnbmVkU2hvcnRBdHRyKEpTQzo6RXhlY1N0
YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpT
VmFsdWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpMb25nQXR0cihKU0M6OkV4ZWNT
dGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5
TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9iakxvbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpK
U09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlND
OjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpMb25nTG9uZ0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBK
U0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwor
dm9pZCBzZXRKU1Rlc3RPYmpMb25nTG9uZ0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVu
Y29kZWRKU1ZhbHVlIGpzVGVzdE9ialVuc2lnbmVkTG9uZ0xvbmdBdHRyKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1l
KTsKK3ZvaWQgc2V0SlNUZXN0T2JqVW5zaWduZWRMb25nTG9uZ0F0dHIoSlNDOjpFeGVjU3RhdGUq
LCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1
ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialN0cmluZ0F0dHIoSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5h
bWUpOwordm9pZCBzZXRKU1Rlc3RPYmpTdHJpbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpK
U09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlND
OjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpUZXN0T2JqQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2
b2lkIHNldEpTVGVzdE9ialRlc3RPYmpBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RPYmpYTUxPYmpBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09i
amVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0
SlNUZXN0T2JqWE1MT2JqQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFs
dWUganNUZXN0T2JqQ3JlYXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6
RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqQ3Jl
YXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUs
IEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWZs
ZWN0ZWRTdHJpbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5j
b2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqUmVmbGVj
dGVkU3RyaW5nQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29k
ZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNU
ZXN0T2JqUmVmbGVjdGVkSW50ZWdyYWxBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNU
ZXN0T2JqUmVmbGVjdGVkSW50ZWdyYWxBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWZsZWN0ZWRVbnNpZ25lZEludGVncmFsQXR0cihKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3Bl
cnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9ialJlZmxlY3RlZFVuc2lnbmVkSW50ZWdyYWxBdHRy
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpT
Qzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWZsZWN0
ZWRCb29sZWFuQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29k
ZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9ialJlZmxlY3Rl
ZEJvb2xlYW5BdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2Rl
ZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rl
c3RPYmpSZWZsZWN0ZWRVUkxBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpT
Qzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2Jq
UmVmbGVjdGVkVVJMQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVu
Y29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUg
anNUZXN0T2JqUmVmbGVjdGVkU3RyaW5nQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmpl
Y3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpT
VGVzdE9ialJlZmxlY3RlZFN0cmluZ0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29k
ZWRKU1ZhbHVlIGpzVGVzdE9ialJlZmxlY3RlZEN1c3RvbUludGVncmFsQXR0cihKU0M6OkV4ZWNT
dGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5
TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9ialJlZmxlY3RlZEN1c3RvbUludGVncmFsQXR0cihKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVu
Y29kZWRKU1ZhbHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVmbGVjdGVkQ3Vz
dG9tQm9vbGVhbkF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rlc3RPYmpSZWZsZWN0
ZWRDdXN0b21Cb29sZWFuQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFs
dWUganNUZXN0T2JqUmVmbGVjdGVkQ3VzdG9tVVJMQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lk
IHNldEpTVGVzdE9ialJlZmxlY3RlZEN1c3RvbVVSTEF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitK
U0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialR5cGVkQXJyYXlBdHRyKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1l
KTsKK3ZvaWQgc2V0SlNUZXN0T2JqVHlwZWRBcnJheUF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitK
U0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakF0dHJXaXRoR2V0dGVyRXhjZXB0aW9uKEpTQzo6
RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJv
cGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqQXR0cldpdGhHZXR0ZXJFeGNlcHRpb24oSlND
OjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakF0dHJXaXRoU2V0
dGVyRXhjZXB0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2Rl
ZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqQXR0cldpdGhT
ZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpz
VGVzdE9ialN0cmluZ0F0dHJXaXRoR2V0dGVyRXhjZXB0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlND
OjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3Zv
aWQgc2V0SlNUZXN0T2JqU3RyaW5nQXR0cldpdGhHZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNW
YWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialN0cmluZ0F0dHJXaXRoU2V0dGVy
RXhjZXB0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpT
VmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqU3RyaW5nQXR0cldp
dGhTZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVl
IGpzVGVzdE9iakN1c3RvbUF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlND
OjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rlc3RPYmpD
dXN0b21BdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpT
VmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RP
YmpXaXRoU2NyaXB0U3RhdGVBdHRyaWJ1dGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rl
c3RPYmpXaXRoU2NyaXB0U3RhdGVBdHRyaWJ1dGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVu
Y29kZWRKU1ZhbHVlIGpzVGVzdE9ialdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QXR0cmlidXRl
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpT
Qzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqV2l0aFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHRBdHRyaWJ1dGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpz
VGVzdE9ialdpdGhTY3JpcHRTdGF0ZUF0dHJpYnV0ZVJhaXNlcyhKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2
b2lkIHNldEpTVGVzdE9ialdpdGhTY3JpcHRTdGF0ZUF0dHJpYnV0ZVJhaXNlcyhKU0M6OkV4ZWNT
dGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRK
U1ZhbHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqV2l0aFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHRBdHRyaWJ1dGVSYWlzZXMoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0Kiwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rlc3RP
YmpXaXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEF0dHJpYnV0ZVJhaXNlcyhKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1Zh
bHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqV2l0aFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHRBbmRTY3JpcHRTdGF0ZUF0dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmpl
Y3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpT
VGVzdE9ialdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVBdHRyaWJ1dGUo
SlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlND
OjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialdpdGhTY3Jp
cHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVBdHRyaWJ1dGVSYWlzZXMoSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0
eU5hbWUpOwordm9pZCBzZXRKU1Rlc3RPYmpXaXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNj
cmlwdFN0YXRlQXR0cmlidXRlUmFpc2VzKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCos
IEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNvZGVk
SlNWYWx1ZSBqc1Rlc3RPYmpXaXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRl
V2l0aFNwYWNlc0F0dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9ialdp
dGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVXaXRoU3BhY2VzQXR0cmlidXRl
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpT
Qzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpXaXRoU2Ny
aXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpK
U09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQg
c2V0SlNUZXN0T2JqV2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZShKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVu
Y29kZWRKU1ZhbHVlKTsKKyNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKK0pTQzo6RW5jb2RlZEpTVmFs
dWUganNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyMShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmpl
Y3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpT
VGVzdE9iakNvbmRpdGlvbmFsQXR0cjEoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0Kiwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CisjZW5kaWYKKyNpZiBF
TkFCTEUoQ29uZGl0aW9uMSkgJiYgRU5BQkxFKENvbmRpdGlvbjIpCitKU0M6OkVuY29kZWRKU1Zh
bHVlIGpzVGVzdE9iakNvbmRpdGlvbmFsQXR0cjIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRK
U1Rlc3RPYmpDb25kaXRpb25hbEF0dHIyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCos
IEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworI2VuZGlmCisjaWYg
RU5BQkxFKENvbmRpdGlvbjEpIHx8IEVOQUJMRShDb25kaXRpb24yKQorSlNDOjpFbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RPYmpDb25kaXRpb25hbEF0dHIzKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09i
amVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0
SlNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyMyhKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3Qq
LCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKKyNlbmRpZgorI2lm
IEVOQUJMRShDb25kaXRpb24xKQorSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDb25kaXRp
b25hbEF0dHI0Q29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlND
OjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rlc3RPYmpD
b25kaXRpb25hbEF0dHI0Q29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CisjZW5kaWYKKyNp
ZiBFTkFCTEUoQ29uZGl0aW9uMSkgJiYgRU5BQkxFKENvbmRpdGlvbjIpCitKU0M6OkVuY29kZWRK
U1ZhbHVlIGpzVGVzdE9iakNvbmRpdGlvbmFsQXR0cjVDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFt
ZSk7Cit2b2lkIHNldEpTVGVzdE9iakNvbmRpdGlvbmFsQXR0cjVDb25zdHJ1Y3RvcihKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29k
ZWRKU1ZhbHVlKTsKKyNlbmRpZgorI2lmIEVOQUJMRShDb25kaXRpb24xKSB8fCBFTkFCTEUoQ29u
ZGl0aW9uMikKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyNkNv
bnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpT
VmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqQ29uZGl0aW9uYWxB
dHRyNkNvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5j
b2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworI2VuZGlmCitKU0M6OkVuY29kZWRK
U1ZhbHVlIGpzVGVzdE9iakNhY2hlZEF0dHJpYnV0ZTEoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpT
T2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOworSlNDOjpF
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDYWNoZWRBdHRyaWJ1dGUyKEpTQzo6RXhlY1N0YXRlKiwg
SlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsK
K0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQW55QXR0cmlidXRlKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1l
KTsKK3ZvaWQgc2V0SlNUZXN0T2JqQW55QXR0cmlidXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpK
U09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlND
OjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDb250ZW50RG9jdW1lbnQoSlNDOjpFeGVjU3RhdGUq
LCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUp
OworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpNdXRhYmxlUG9pbnQoSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5h
bWUpOwordm9pZCBzZXRKU1Rlc3RPYmpNdXRhYmxlUG9pbnQoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitK
U0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakltbXV0YWJsZVBvaW50KEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1l
KTsKK3ZvaWQgc2V0SlNUZXN0T2JqSW1tdXRhYmxlUG9pbnQoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitK
U0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialN0cmF3YmVycnkoSlNDOjpFeGVjU3RhdGUqLCBK
U0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwor
dm9pZCBzZXRKU1Rlc3RPYmpTdHJhd2JlcnJ5KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RPYmpTdHJpY3RGbG9hdChKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNP
YmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNl
dEpTVGVzdE9ialN0cmljdEZsb2F0KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpT
Qzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RPYmpEZXNjcmlwdGlvbihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3Qq
LCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CitKU0M6OkVuY29kZWRK
U1ZhbHVlIGpzVGVzdE9iaklkKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6
RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqSWQo
SlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlND
OjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakhhc2goSlND
OjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQ
cm9wZXJ0eU5hbWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZXBsYWNlYWJsZUF0
dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1Zh
bHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9ialJlcGxhY2VhYmxlQXR0
cmlidXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFs
dWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpO
dWxsYWJsZURvdWJsZUF0dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBK
U0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CitKU0M6OkVuY29kZWRKU1Zh
bHVlIGpzVGVzdE9iak51bGxhYmxlTG9uZ0F0dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CitKU0M6
OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iak51bGxhYmxlQm9vbGVhbkF0dHJpYnV0ZShKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3Bl
cnR5TmFtZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iak51bGxhYmxlU3RyaW5nQXR0
cmlidXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFs
dWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTnVs
bGFibGVMb25nU2V0dGFibGVBdHRyaWJ1dGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rl
c3RPYmpOdWxsYWJsZUxvbmdTZXR0YWJsZUF0dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKK0pT
Qzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTnVsbGFibGVTdHJpbmdWYWx1ZShKU0M6OkV4ZWNT
dGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5
TmFtZSk7Cit2b2lkIHNldEpTVGVzdE9iak51bGxhYmxlU3RyaW5nVmFsdWUoSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNW
YWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakF0dHJpYnV0ZShKU0M6OkV4ZWNT
dGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5
TmFtZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakF0dHJpYnV0ZVdpdGhSZXNlcnZl
ZEVudW1UeXBlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpT
VmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0T2JqQXR0cmlidXRlV2l0
aFJlc2VydmVkRW51bVR5cGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVl
IGpzVGVzdE9iakNvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpT
Qzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKIC8qIEhhc2ggdGFibGUgKi8K
IAogc3RhdGljIGNvbnN0IHN0cnVjdCBDb21wYWN0SGFzaEluZGV4IEpTVGVzdE9ialRhYmxlSW5k
ZXhbMTddID0gewpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE9iai5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RPYmouaAkocmV2aXNpb24gMTcwMDI1KQorKysgU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xNTgsMjIyICsxNTgsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIEpTQzo6Q29uc3RydWN0
VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwgSlNDOjpDb25zdHJ1Y3REYXRhJik7
CiB9OwogCi0vLyBGdW5jdGlvbnMKLQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uVm9pZE1ldGhvZChKU0M6OkV4ZWNTdGF0ZSopOwot
SlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0
aW9uVm9pZE1ldGhvZFdpdGhBcmdzKEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25CeXRlTWV0aG9kKEpT
Qzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0
T2JqUHJvdG90eXBlRnVuY3Rpb25CeXRlTWV0aG9kV2l0aEFyZ3MoSlNDOjpFeGVjU3RhdGUqKTsK
LUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5j
dGlvbk9jdGV0TWV0aG9kKEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25PY3RldE1ldGhvZFdpdGhBcmdz
KEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNU
ZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25Mb25nTWV0aG9kKEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6
OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25M
b25nTWV0aG9kV2l0aEFyZ3MoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk9iak1ldGhvZChKU0M6OkV4
ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialBy
b3RvdHlwZUZ1bmN0aW9uT2JqTWV0aG9kV2l0aEFyZ3MoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1l
dGhvZFdpdGhTZXF1ZW5jZUFyZyhKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uTWV0aG9kUmV0dXJuaW5n
U2VxdWVuY2UoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhFbnVtQXJnKEpTQzo6RXhl
Y1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJv
dG90eXBlRnVuY3Rpb25NZXRob2RUaGF0UmVxdWlyZXNBbGxBcmdzQW5kVGhyb3dzKEpTQzo6RXhl
Y1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJv
dG90eXBlRnVuY3Rpb25TZXJpYWxpemVkVmFsdWUoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk9wdGlv
bnNPYmplY3QoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhFeGNlcHRpb24oSlNDOjpF
eGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQ
cm90b3R5cGVGdW5jdGlvbkN1c3RvbU1ldGhvZChKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uQ3VzdG9t
TWV0aG9kV2l0aEFyZ3MoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkFkZEV2ZW50TGlzdGVuZXIoSlND
OjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RP
YmpQcm90b3R5cGVGdW5jdGlvblJlbW92ZUV2ZW50TGlzdGVuZXIoSlNDOjpFeGVjU3RhdGUqKTsK
LUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5j
dGlvbldpdGhTY3JpcHRTdGF0ZVZvaWQoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbldpdGhTY3JpcHRT
dGF0ZU9iaihKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uV2l0aFNjcmlwdFN0YXRlVm9pZEV4Y2VwdGlv
bihKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpz
VGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uV2l0aFNjcmlwdFN0YXRlT2JqRXhjZXB0aW9uKEpTQzo6
RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2Jq
UHJvdG90eXBlRnVuY3Rpb25XaXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dChKU0M6OkV4ZWNTdGF0
ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlw
ZUZ1bmN0aW9uV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZShKU0M6OkV4
ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialBy
b3RvdHlwZUZ1bmN0aW9uV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZU9i
akV4Y2VwdGlvbihKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXMoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbldpdGhTY3Jp
cHRBcmd1bWVudHNBbmRDYWxsU3RhY2soSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhP
cHRpb25hbEFyZyhKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uTWV0aG9kV2l0aE5vbk9wdGlvbmFsQXJn
QW5kT3B0aW9uYWxBcmcoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhOb25PcHRpb25h
bEFyZ0FuZFR3b09wdGlvbmFsQXJncyhKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uTWV0aG9kV2l0aE9w
dGlvbmFsU3RyaW5nKEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoT3B0aW9uYWxTdHJp
bmdJc1VuZGVmaW5lZChKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uTWV0aG9kV2l0aE9wdGlvbmFsU3Ry
aW5nSXNOdWxsU3RyaW5nKEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoQ2FsbGJhY2tB
cmcoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBq
c1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhOb25DYWxsYmFja0FyZ0FuZENhbGxi
YWNrQXJnKEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25h
bEFyZyhKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGpzVGVzdE9iakNvbnN0cnVjdG9yRnVuY3Rpb25TdGF0aWNNZXRob2RXaXRoQ2FsbGJhY2tBbmRP
cHRpb25hbEFyZyhKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGpzVGVzdE9iakNvbnN0cnVjdG9yRnVuY3Rpb25TdGF0aWNNZXRob2RXaXRoQ2FsbGJh
Y2tBcmcoSlNDOjpFeGVjU3RhdGUqKTsKLSNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKLUpTQzo6RW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkNvbmRp
dGlvbmFsTWV0aG9kMShKU0M6OkV4ZWNTdGF0ZSopOwotI2VuZGlmCi0jaWYgRU5BQkxFKENvbmRp
dGlvbjEpICYmIEVOQUJMRShDb25kaXRpb24yKQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uQ29uZGl0aW9uYWxNZXRob2QyKEpTQzo6
RXhlY1N0YXRlKik7Ci0jZW5kaWYKLSNpZiBFTkFCTEUoQ29uZGl0aW9uMSkgfHwgRU5BQkxFKENv
bmRpdGlvbjIpCi1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJv
dG90eXBlRnVuY3Rpb25Db25kaXRpb25hbE1ldGhvZDMoSlNDOjpFeGVjU3RhdGUqKTsKLSNlbmRp
ZgotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1
bmN0aW9uT3ZlcmxvYWRlZE1ldGhvZChKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9iakNvbnN0cnVjdG9yRnVuY3Rpb25DbGFzc01ldGhv
ZChKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpz
VGVzdE9iakNvbnN0cnVjdG9yRnVuY3Rpb25DbGFzc01ldGhvZFdpdGhPcHRpb25hbChKU0M6OkV4
ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9iakNv
bnN0cnVjdG9yRnVuY3Rpb25DbGFzc01ldGhvZDIoSlNDOjpFeGVjU3RhdGUqKTsKLSNpZiBFTkFC
TEUoQ29uZGl0aW9uMSkKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RP
YmpDb25zdHJ1Y3RvckZ1bmN0aW9uT3ZlcmxvYWRlZE1ldGhvZDEoSlNDOjpFeGVjU3RhdGUqKTsK
LSNlbmRpZgotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3Rv
dHlwZUZ1bmN0aW9uQ2xhc3NNZXRob2RXaXRoQ2xhbXAoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1l
dGhvZFdpdGhVbnNpZ25lZExvbmdTZXF1ZW5jZShKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uU3RyaW5n
QXJyYXlGdW5jdGlvbihKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uRG9tU3RyaW5nTGlzdEZ1bmN0aW9u
KEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNU
ZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25NZXRob2RXaXRoQW5kV2l0aG91dE51bGxhYmxlU2VxdWVu
Y2UoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBq
c1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhBbmRXaXRob3V0TnVsbGFibGVTZXF1
ZW5jZTIoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkdldFNWR0RvY3VtZW50KEpTQzo6RXhlY1N0YXRl
Kik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBl
RnVuY3Rpb25Db252ZXJ0MShKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uQ29udmVydDIoSlNDOjpFeGVj
U3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90
b3R5cGVGdW5jdGlvbkNvbnZlcnQ0KEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25Db252ZXJ0NShKU0M6
OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdE9i
alByb3RvdHlwZUZ1bmN0aW9uTXV0YWJsZVBvaW50RnVuY3Rpb24oSlNDOjpFeGVjU3RhdGUqKTsK
LUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5j
dGlvbkltbXV0YWJsZVBvaW50RnVuY3Rpb24oSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbk9yYW5nZShK
U0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVz
dE9ialByb3RvdHlwZUZ1bmN0aW9uU3RyaWN0RnVuY3Rpb24oSlNDOjpFeGVjU3RhdGUqKTsKLUpT
Qzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlv
blN0cmljdEZ1bmN0aW9uV2l0aFNlcXVlbmNlKEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90eXBlRnVuY3Rpb25TdHJpY3RG
dW5jdGlvbldpdGhBcnJheShKU0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGpzVGVzdE9ialByb3RvdHlwZUZ1bmN0aW9uVmFyaWFkaWNTdHJpbmdNZXRo
b2QoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBq
c1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvblZhcmlhZGljRG91YmxlTWV0aG9kKEpTQzo6RXhlY1N0
YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0T2JqUHJvdG90
eXBlRnVuY3Rpb25WYXJpYWRpY05vZGVNZXRob2QoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RPYmpQcm90b3R5cGVGdW5jdGlvbkFueShK
U0M6OkV4ZWNTdGF0ZSopOwotLy8gQXR0cmlidXRlcwotCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpz
VGVzdE9ialJlYWRPbmx5TG9uZ0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0Kiwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotSlNDOjpFbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RPYmpSZWFkT25seVN0cmluZ0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpT
T2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotSlNDOjpF
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWFkT25seVRlc3RPYmpBdHRyKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1l
KTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ29uc3RydWN0b3JTdGF0aWNSZWFkT25s
eUxvbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpT
VmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2Jq
Q29uc3RydWN0b3JTdGF0aWNTdHJpbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNU
ZXN0T2JqQ29uc3RydWN0b3JTdGF0aWNTdHJpbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpK
U09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotSlND
OjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDb25zdHJ1Y3RvclRlc3RTdWJPYmooSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0
eU5hbWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpUZXN0U3ViT2JqRW5hYmxlZEJ5
U2V0dGluZ0NvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6
RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqVGVz
dFN1Yk9iakVuYWJsZWRCeVNldHRpbmdDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpT
Qzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqRW51bUF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9p
ZCBzZXRKU1Rlc3RPYmpFbnVtQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBK
U0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpT
VmFsdWUganNUZXN0T2JqQnl0ZUF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0Kiwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RP
YmpCeXRlQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRK
U1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0
T2JqT2N0ZXRBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2Rl
ZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqT2N0ZXRBdHRy
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpT
Qzo6RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpTaG9ydEF0
dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwg
SlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpTaG9ydEF0dHIoSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVk
SlNWYWx1ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialVuc2lnbmVkU2hvcnRBdHRy
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpT
Qzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqVW5zaWduZWRTaG9ydEF0dHIoSlND
OjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakxvbmdBdHRyKEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6
UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqTG9uZ0F0dHIoSlNDOjpFeGVjU3RhdGUq
LCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1
ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakxvbmdMb25nQXR0cihKU0M6OkV4ZWNT
dGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5
TmFtZSk7Ci12b2lkIHNldEpTVGVzdE9iakxvbmdMb25nQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsK
LUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqVW5zaWduZWRMb25nTG9uZ0F0dHIoSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9w
ZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpVbnNpZ25lZExvbmdMb25nQXR0cihKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29k
ZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqU3RyaW5nQXR0cihKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlBy
b3BlcnR5TmFtZSk7Ci12b2lkIHNldEpTVGVzdE9ialN0cmluZ0F0dHIoSlNDOjpFeGVjU3RhdGUq
LCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1
ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialRlc3RPYmpBdHRyKEpTQzo6RXhlY1N0
YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlO
YW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqVGVzdE9iakF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1K
U0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialhNTE9iakF0dHIoSlNDOjpFeGVjU3RhdGUqLCBK
U0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwot
dm9pZCBzZXRKU1Rlc3RPYmpYTUxPYmpBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDcmVhdGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rl
c3RPYmpDcmVhdGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVk
SlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVz
dE9ialJlZmxlY3RlZFN0cmluZ0F0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0Kiwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RP
YmpSZWZsZWN0ZWRTdHJpbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpT
Qzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpFbmNvZGVkSlNW
YWx1ZSBqc1Rlc3RPYmpSZWZsZWN0ZWRJbnRlZ3JhbEF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9p
ZCBzZXRKU1Rlc3RPYmpSZWZsZWN0ZWRJbnRlZ3JhbEF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1K
U0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialJlZmxlY3RlZFVuc2lnbmVkSW50ZWdyYWxBdHRy
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpT
Qzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqUmVmbGVjdGVkVW5zaWduZWRJbnRl
Z3JhbEF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNW
YWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9i
alJlZmxlY3RlZEJvb2xlYW5BdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpT
Qzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0T2Jq
UmVmbGVjdGVkQm9vbGVhbkF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlND
OjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1KU0M6OkVuY29kZWRKU1Zh
bHVlIGpzVGVzdE9ialJlZmxlY3RlZFVSTEF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRK
U1Rlc3RPYmpSZWZsZWN0ZWRVUkxBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCos
IEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpFbmNvZGVk
SlNWYWx1ZSBqc1Rlc3RPYmpSZWZsZWN0ZWRTdHJpbmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlND
OjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZv
aWQgc2V0SlNUZXN0T2JqUmVmbGVjdGVkU3RyaW5nQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpT
Qzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqUmVmbGVjdGVkQ3VzdG9tSW50ZWdyYWxBdHRyKEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6
UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqUmVmbGVjdGVkQ3VzdG9tSW50ZWdyYWxB
dHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUs
IEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWZs
ZWN0ZWRDdXN0b21Cb29sZWFuQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBK
U0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12b2lkIHNldEpTVGVzdE9i
alJlZmxlY3RlZEN1c3RvbUJvb2xlYW5BdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RPYmpSZWZsZWN0ZWRDdXN0b21VUkxBdHRyKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1l
KTsKLXZvaWQgc2V0SlNUZXN0T2JqUmVmbGVjdGVkQ3VzdG9tVVJMQXR0cihKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1Zh
bHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqVHlwZWRBcnJheUF0dHIoSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9w
ZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpUeXBlZEFycmF5QXR0cihKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1Zh
bHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQXR0cldpdGhHZXR0ZXJFeGNlcHRp
b24oSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwg
SlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpBdHRyV2l0aEdldHRlckV4Y2Vw
dGlvbihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVl
LCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQXR0
cldpdGhTZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlND
OjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpB
dHRyV2l0aFNldHRlckV4Y2VwdGlvbihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBK
U0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpT
VmFsdWUganNUZXN0T2JqU3RyaW5nQXR0cldpdGhHZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5h
bWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpTdHJpbmdBdHRyV2l0aEdldHRlckV4Y2VwdGlvbihKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVu
Y29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqU3RyaW5nQXR0cldp
dGhTZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpTdHJp
bmdBdHRyV2l0aFNldHRlckV4Y2VwdGlvbihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3Qq
LCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2Rl
ZEpTVmFsdWUganNUZXN0T2JqQ3VzdG9tQXR0cihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmpl
Y3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12b2lkIHNldEpT
VGVzdE9iakN1c3RvbUF0dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVl
IGpzVGVzdE9ialdpdGhTY3JpcHRTdGF0ZUF0dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12b2lk
IHNldEpTVGVzdE9ialdpdGhTY3JpcHRTdGF0ZUF0dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsK
LUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRB
dHRyaWJ1dGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNW
YWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpXaXRoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dEF0dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBK
U0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpT
VmFsdWUganNUZXN0T2JqV2l0aFNjcmlwdFN0YXRlQXR0cmlidXRlUmFpc2VzKEpTQzo6RXhlY1N0
YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlO
YW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqV2l0aFNjcmlwdFN0YXRlQXR0cmlidXRlUmFpc2VzKEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6
RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpXaXRoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dEF0dHJpYnV0ZVJhaXNlcyhKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNP
YmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12b2lkIHNl
dEpTVGVzdE9ialdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QXR0cmlidXRlUmFpc2VzKEpTQzo6
RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5j
b2RlZEpTVmFsdWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpXaXRoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlQXR0cmlidXRlKEpTQzo6RXhlY1N0YXRlKiwgSlND
OjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZv
aWQgc2V0SlNUZXN0T2JqV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZUF0
dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1Zh
bHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2Jq
V2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZUF0dHJpYnV0ZVJhaXNlcyhK
U0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6
OlByb3BlcnR5TmFtZSk7Ci12b2lkIHNldEpTVGVzdE9ialdpdGhTY3JpcHRFeGVjdXRpb25Db250
ZXh0QW5kU2NyaXB0U3RhdGVBdHRyaWJ1dGVSYWlzZXMoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpT
T2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1KU0M6
OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2Ny
aXB0U3RhdGVXaXRoU3BhY2VzQXR0cmlidXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNU
ZXN0T2JqV2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXNB
dHRyaWJ1dGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNW
YWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9i
aldpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGUoSlNDOjpFeGVjU3RhdGUq
LCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUp
Owotdm9pZCBzZXRKU1Rlc3RPYmpXaXRoU2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmli
dXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUs
IEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotI2lmIEVOQUJMRShDb25kaXRpb24xKQotSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDb25kaXRpb25hbEF0dHIxKEpTQzo6RXhlY1N0YXRlKiwgSlND
OjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZv
aWQgc2V0SlNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyMShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNP
YmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLSNlbmRp
ZgotI2lmIEVOQUJMRShDb25kaXRpb24xKSAmJiBFTkFCTEUoQ29uZGl0aW9uMikKLUpTQzo6RW5j
b2RlZEpTVmFsdWUganNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyMihKU0M6OkV4ZWNTdGF0ZSosIEpT
Qzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12
b2lkIHNldEpTVGVzdE9iakNvbmRpdGlvbmFsQXR0cjIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpT
T2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci0jZW5k
aWYKLSNpZiBFTkFCTEUoQ29uZGl0aW9uMSkgfHwgRU5BQkxFKENvbmRpdGlvbjIpCi1KU0M6OkVu
Y29kZWRKU1ZhbHVlIGpzVGVzdE9iakNvbmRpdGlvbmFsQXR0cjMoSlNDOjpFeGVjU3RhdGUqLCBK
U0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwot
dm9pZCBzZXRKU1Rlc3RPYmpDb25kaXRpb25hbEF0dHIzKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpK
U09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotI2Vu
ZGlmCi0jaWYgRU5BQkxFKENvbmRpdGlvbjEpCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9i
akNvbmRpdGlvbmFsQXR0cjRDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmpl
Y3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12b2lkIHNldEpT
VGVzdE9iakNvbmRpdGlvbmFsQXR0cjRDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLSNl
bmRpZgotI2lmIEVOQUJMRShDb25kaXRpb24xKSAmJiBFTkFCTEUoQ29uZGl0aW9uMikKLUpTQzo6
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyNUNvbnN0cnVjdG9yKEpTQzo6
RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJv
cGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqQ29uZGl0aW9uYWxBdHRyNUNvbnN0cnVjdG9y
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpT
Qzo6RW5jb2RlZEpTVmFsdWUpOwotI2VuZGlmCi0jaWYgRU5BQkxFKENvbmRpdGlvbjEpIHx8IEVO
QUJMRShDb25kaXRpb24yKQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpDb25kaXRpb25h
bEF0dHI2Q29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpDb25k
aXRpb25hbEF0dHI2Q29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0Kiwg
SlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci0jZW5kaWYKLUpTQzo6
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQ2FjaGVkQXR0cmlidXRlMShKU0M6OkV4ZWNTdGF0ZSos
IEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7
Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNhY2hlZEF0dHJpYnV0ZTIoSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0
eU5hbWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpBbnlBdHRyaWJ1dGUoSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9w
ZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpBbnlBdHRyaWJ1dGUoSlNDOjpFeGVjU3RhdGUq
LCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1
ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iakNvbnRlbnREb2N1bWVudChKU0M6OkV4
ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3Bl
cnR5TmFtZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9iak11dGFibGVQb2ludChKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlBy
b3BlcnR5TmFtZSk7Ci12b2lkIHNldEpTVGVzdE9iak11dGFibGVQb2ludChKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1Zh
bHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqSW1tdXRhYmxlUG9pbnQoSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9w
ZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpJbW11dGFibGVQb2ludChKU0M6OkV4ZWNTdGF0
ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1Zh
bHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqU3RyYXdiZXJyeShKU0M6OkV4ZWNT
dGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5
TmFtZSk7Ci12b2lkIHNldEpTVGVzdE9ialN0cmF3YmVycnkoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1K
U0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialN0cmljdEZsb2F0KEpTQzo6RXhlY1N0YXRlKiwg
SlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsK
LXZvaWQgc2V0SlNUZXN0T2JqU3RyaWN0RmxvYXQoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1KU0M6OkVu
Y29kZWRKU1ZhbHVlIGpzVGVzdE9iakRlc2NyaXB0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpK
U09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLUpTQzo6
RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqSWQoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0
KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rl
c3RPYmpJZChKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1Zh
bHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2Jq
SGFzaChKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVl
LCBKU0M6OlByb3BlcnR5TmFtZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdE9ialJlcGxh
Y2VhYmxlQXR0cmlidXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5j
b2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqUmVwbGFj
ZWFibGVBdHRyaWJ1dGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpz
VGVzdE9iak51bGxhYmxlRG91YmxlQXR0cmlidXRlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09i
amVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLUpTQzo6RW5j
b2RlZEpTVmFsdWUganNUZXN0T2JqTnVsbGFibGVMb25nQXR0cmlidXRlKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1l
KTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTnVsbGFibGVCb29sZWFuQXR0cmlidXRl
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpT
Qzo6UHJvcGVydHlOYW1lKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqTnVsbGFibGVT
dHJpbmdBdHRyaWJ1dGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rl
c3RPYmpOdWxsYWJsZUxvbmdTZXR0YWJsZUF0dHJpYnV0ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12b2lk
IHNldEpTVGVzdE9iak51bGxhYmxlTG9uZ1NldHRhYmxlQXR0cmlidXRlKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFs
dWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RPYmpOdWxsYWJsZVN0cmluZ1ZhbHVlKEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6
UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0T2JqTnVsbGFibGVTdHJpbmdWYWx1ZShKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVu
Y29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQXR0cmlidXRlKEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6
UHJvcGVydHlOYW1lKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T2JqQXR0cmlidXRlV2l0
aFJlc2VydmVkRW51bVR5cGUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RPYmpBdHRy
aWJ1dGVXaXRoUmVzZXJ2ZWRFbnVtVHlwZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3Qq
LCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2Rl
ZEpTVmFsdWUganNUZXN0T2JqQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9ycy5jcHAJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMzIsNiArMzIsOSBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKKy8vIEF0dHJpYnV0ZXMKKworSlNDOjpFbmNvZGVkSlNWYWx1ZSBq
c1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzQ29uc3RydWN0b3IoSlNDOjpFeGVjU3RhdGUqLCBK
U0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwog
LyogSGFzaCB0YWJsZSBmb3IgY29uc3RydWN0b3IgKi8KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBD
b21wYWN0SGFzaEluZGV4IEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNDb25zdHJ1Y3RvclRh
YmxlSW5kZXhbMV0gPSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzLmgJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTE0OCw5ICsxNDgsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIEpTQzo6Q29uc3Ry
dWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwgSlNDOjpDb25zdHJ1Y3REYXRh
Jik7CiB9OwogCi0vLyBBdHRyaWJ1dGVzCi0KLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09i
amVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2Vy
aWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcAkocmV2aXNpb24gMTcwMDI1KQorKysgU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZUludGVyZmFjZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM2LDYgKzM2LDE2IEBAIHVz
aW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorLy8gQXR0cmlidXRl
cworCitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVy
ZmFjZVZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpT
VmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0U2VyaWFsaXplZFNjcmlw
dFZhbHVlSW50ZXJmYWNlVmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlND
OjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1Zh
bHVlIGpzVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVJlYWRvbmx5VmFsdWUoSlND
OjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQ
cm9wZXJ0eU5hbWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0
VmFsdWVJbnRlcmZhY2VDYWNoZWRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3Qq
LCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Cit2b2lkIHNldEpTVGVz
dFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZUNhY2hlZFZhbHVlKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFs
dWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRl
cmZhY2VQb3J0cyhKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRK
U1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZUNhY2hlZFJlYWRvbmx5VmFsdWUoSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0
eU5hbWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJ
bnRlcmZhY2VDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAvKiBIYXNoIHRhYmxlIGZvciBj
b25zdHJ1Y3RvciAqLwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IENvbXBhY3RIYXNoSW5kZXggSlNU
ZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlQ29uc3RydWN0b3JUYWJsZUluZGV4WzFd
ID0gewpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFs
dWVJbnRlcmZhY2UuaAkocmV2aXNpb24gMTcwMDI1KQorKysgU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5o
CSh3b3JraW5nIGNvcHkpCkBAIC0xNDgsMTYgKzE0OCw2IEBAIHByb3RlY3RlZDoKICAgICBzdGF0
aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBKU0M6Ok92ZXJyaWRlc0dldE93blBy
b3BlcnR5U2xvdCB8IEpTQzo6SW1wbGVtZW50c0hhc0luc3RhbmNlIHwgRE9NQ29uc3RydWN0b3JP
YmplY3Q6OlN0cnVjdHVyZUZsYWdzOwogfTsKIAotLy8gQXR0cmlidXRlcwotCi1KU0M6OkVuY29k
ZWRKU1ZhbHVlIGpzVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVZhbHVlKEpTQzo6
RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJv
cGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNl
VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1
ZSwgSlNDOjpFbmNvZGVkSlNWYWx1ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVJlYWRvbmx5VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBK
U0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwot
SlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VD
YWNoZWRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRK
U1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12b2lkIHNldEpTVGVzdFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZUludGVyZmFjZUNhY2hlZFZhbHVlKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVj
dCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQb3J0cyhKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlBy
b3BlcnR5TmFtZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZUludGVyZmFjZUNhY2hlZFJlYWRvbmx5VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpT
T2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotSlNDOjpF
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VDb25zdHJ1
Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVl
LCBKU0M6OlByb3BlcnR5TmFtZSk7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIApJbmRleDog
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0VHlwZWRlZnMuY3BwCShyZXZpc2lvbiAxNzAwMjUpCisrKyBTb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRlZnMuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC00NCw2ICs0NCwzNCBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKKy8vIEZ1bmN0aW9ucworCitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwganNUZXN0VHlwZWRlZnNQcm90b3R5cGVGdW5jdGlvbkZ1bmMoSlNDOjpFeGVjU3RhdGUqKTsK
K0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RUeXBlZGVmc1Byb3RvdHlw
ZUZ1bmN0aW9uU2V0U2hhZG93KEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwganNUZXN0VHlwZWRlZnNQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhT
ZXF1ZW5jZUFyZyhKU0M6OkV4ZWNTdGF0ZSopOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGpzVGVzdFR5cGVkZWZzUHJvdG90eXBlRnVuY3Rpb25OdWxsYWJsZUFycmF5QXJnKEpT
Qzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0
VHlwZWRlZnNQcm90b3R5cGVGdW5jdGlvbkZ1bmNXaXRoQ2xhbXAoSlNDOjpFeGVjU3RhdGUqKTsK
K0pTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RUeXBlZGVmc1Byb3RvdHlw
ZUZ1bmN0aW9uSW1tdXRhYmxlUG9pbnRGdW5jdGlvbihKU0M6OkV4ZWNTdGF0ZSopOworSlNDOjpF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdFR5cGVkZWZzUHJvdG90eXBlRnVuY3Rp
b25TdHJpbmdBcnJheUZ1bmN0aW9uKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwganNUZXN0VHlwZWRlZnNQcm90b3R5cGVGdW5jdGlvblN0cmluZ0Fy
cmF5RnVuY3Rpb24yKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwganNUZXN0VHlwZWRlZnNQcm90b3R5cGVGdW5jdGlvbkNhbGxXaXRoU2VxdWVuY2VU
aGF0UmVxdWlyZXNJbmNsdWRlKEpTQzo6RXhlY1N0YXRlKik7CitKU0M6OkVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwganNUZXN0VHlwZWRlZnNQcm90b3R5cGVGdW5jdGlvbk1ldGhvZFdpdGhF
eGNlcHRpb24oSlNDOjpFeGVjU3RhdGUqKTsKKy8vIEF0dHJpYnV0ZXMKKworSlNDOjpFbmNvZGVk
SlNWYWx1ZSBqc1Rlc3RUeXBlZGVmc1Vuc2lnbmVkTG9uZ0xvbmdBdHRyKEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1l
KTsKK3ZvaWQgc2V0SlNUZXN0VHlwZWRlZnNVbnNpZ25lZExvbmdMb25nQXR0cihKU0M6OkV4ZWNT
dGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRK
U1ZhbHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0VHlwZWRlZnNJbW11dGFibGVTZXJp
YWxpemVkU2NyaXB0VmFsdWUoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rlc3RUeXBlZGVm
c0ltbXV0YWJsZVNlcmlhbGl6ZWRTY3JpcHRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNP
YmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKK0pTQzo6
RW5jb2RlZEpTVmFsdWUganNUZXN0VHlwZWRlZnNDb25zdHJ1Y3RvclRlc3RTdWJPYmooSlNDOjpF
eGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9w
ZXJ0eU5hbWUpOworSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RUeXBlZGVmc0F0dHJXaXRoR2V0
dGVyRXhjZXB0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2Rl
ZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0VHlwZWRlZnNBdHRy
V2l0aEdldHRlckV4Y2VwdGlvbihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6
OkVuY29kZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFs
dWUganNUZXN0VHlwZWRlZnNBdHRyV2l0aFNldHRlckV4Y2VwdGlvbihKU0M6OkV4ZWNTdGF0ZSos
IEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7
Cit2b2lkIHNldEpTVGVzdFR5cGVkZWZzQXR0cldpdGhTZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVk
SlNWYWx1ZSk7CitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdFR5cGVkZWZzU3RyaW5nQXR0cldp
dGhHZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwordm9pZCBzZXRKU1Rlc3RUeXBlZGVm
c1N0cmluZ0F0dHJXaXRoR2V0dGVyRXhjZXB0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09i
amVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOworSlNDOjpF
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RUeXBlZGVmc1N0cmluZ0F0dHJXaXRoU2V0dGVyRXhjZXB0aW9u
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpT
Qzo6UHJvcGVydHlOYW1lKTsKK3ZvaWQgc2V0SlNUZXN0VHlwZWRlZnNTdHJpbmdBdHRyV2l0aFNl
dHRlckV4Y2VwdGlvbihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29k
ZWRKU1ZhbHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKK0pTQzo6RW5jb2RlZEpTVmFsdWUganNU
ZXN0VHlwZWRlZnNDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBK
U0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAvKiBIYXNoIHRhYmxlICov
CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgQ29tcGFjdEhhc2hJbmRleCBKU1Rlc3RUeXBlZGVmc1Rh
YmxlSW5kZXhbMl0gPSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0VHlwZWRlZnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRlZnMuaAkocmV2aXNpb24gMTcwMDI1KQor
KysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTE0NSwzNCArMTQ1LDYgQEAgcHJvdGVjdGVkOgogICAgIHN0
YXRpYyBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpT
Qzo6Q29uc3RydWN0RGF0YSYpOwogfTsKIAotLy8gRnVuY3Rpb25zCi0KLUpTQzo6RW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RUeXBlZGVmc1Byb3RvdHlwZUZ1bmN0aW9uRnVuYyhK
U0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVz
dFR5cGVkZWZzUHJvdG90eXBlRnVuY3Rpb25TZXRTaGFkb3coSlNDOjpFeGVjU3RhdGUqKTsKLUpT
Qzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RUeXBlZGVmc1Byb3RvdHlwZUZ1
bmN0aW9uTWV0aG9kV2l0aFNlcXVlbmNlQXJnKEpTQzo6RXhlY1N0YXRlKik7Ci1KU0M6OkVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0VHlwZWRlZnNQcm90b3R5cGVGdW5jdGlvbk51
bGxhYmxlQXJyYXlBcmcoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBqc1Rlc3RUeXBlZGVmc1Byb3RvdHlwZUZ1bmN0aW9uRnVuY1dpdGhDbGFtcChK
U0M6OkV4ZWNTdGF0ZSopOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVz
dFR5cGVkZWZzUHJvdG90eXBlRnVuY3Rpb25JbW11dGFibGVQb2ludEZ1bmN0aW9uKEpTQzo6RXhl
Y1N0YXRlKik7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0VHlwZWRl
ZnNQcm90b3R5cGVGdW5jdGlvblN0cmluZ0FycmF5RnVuY3Rpb24oSlNDOjpFeGVjU3RhdGUqKTsK
LUpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RUeXBlZGVmc1Byb3RvdHlw
ZUZ1bmN0aW9uU3RyaW5nQXJyYXlGdW5jdGlvbjIoSlNDOjpFeGVjU3RhdGUqKTsKLUpTQzo6RW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RUeXBlZGVmc1Byb3RvdHlwZUZ1bmN0aW9u
Q2FsbFdpdGhTZXF1ZW5jZVRoYXRSZXF1aXJlc0luY2x1ZGUoSlNDOjpFeGVjU3RhdGUqKTsKLUpT
Qzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBqc1Rlc3RUeXBlZGVmc1Byb3RvdHlwZUZ1
bmN0aW9uTWV0aG9kV2l0aEV4Y2VwdGlvbihKU0M6OkV4ZWNTdGF0ZSopOwotLy8gQXR0cmlidXRl
cwotCi1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdFR5cGVkZWZzVW5zaWduZWRMb25nTG9uZ0F0
dHIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwg
SlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RUeXBlZGVmc1Vuc2lnbmVkTG9uZ0xv
bmdBdHRyKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFs
dWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RUeXBl
ZGVmc0ltbXV0YWJsZVNlcmlhbGl6ZWRTY3JpcHRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12b2lk
IHNldEpTVGVzdFR5cGVkZWZzSW1tdXRhYmxlU2VyaWFsaXplZFNjcmlwdFZhbHVlKEpTQzo6RXhl
Y1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2Rl
ZEpTVmFsdWUpOwotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RUeXBlZGVmc0NvbnN0cnVjdG9y
VGVzdFN1Yk9iaihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRK
U1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdFR5
cGVkZWZzQXR0cldpdGhHZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2Jq
ZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRK
U1Rlc3RUeXBlZGVmc0F0dHJXaXRoR2V0dGVyRXhjZXB0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlND
OjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwot
SlNDOjpFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RUeXBlZGVmc0F0dHJXaXRoU2V0dGVyRXhjZXB0aW9u
KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpT
Qzo6UHJvcGVydHlOYW1lKTsKLXZvaWQgc2V0SlNUZXN0VHlwZWRlZnNBdHRyV2l0aFNldHRlckV4
Y2VwdGlvbihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1Zh
bHVlLCBKU0M6OkVuY29kZWRKU1ZhbHVlKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNUZXN0VHlw
ZWRlZnNTdHJpbmdBdHRyV2l0aEdldHRlckV4Y2VwdGlvbihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6
SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7Ci12b2lk
IHNldEpTVGVzdFR5cGVkZWZzU3RyaW5nQXR0cldpdGhHZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVj
U3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpFbmNvZGVk
SlNWYWx1ZSk7Ci1KU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdFR5cGVkZWZzU3RyaW5nQXR0cldp
dGhTZXR0ZXJFeGNlcHRpb24oSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTT2JqZWN0KiwgSlNDOjpF
bmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwotdm9pZCBzZXRKU1Rlc3RUeXBlZGVm
c1N0cmluZ0F0dHJXaXRoU2V0dGVyRXhjZXB0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09i
amVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6RW5jb2RlZEpTVmFsdWUpOwotSlNDOjpF
bmNvZGVkSlNWYWx1ZSBqc1Rlc3RUeXBlZGVmc0NvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwg
SlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNhdHRyaWJ1dGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU2F0dHJpYnV0ZS5jcHAJKHJldmlzaW9u
IDE3MDAyNSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU2F0
dHJpYnV0ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMxLDYgKzMxLDEwIEBAIHVzaW5nIG5hbWVz
cGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorLy8gQXR0cmlidXRlcworCitKU0M6
OkVuY29kZWRKU1ZhbHVlIGpzYXR0cmlidXRlUmVhZG9ubHkoSlNDOjpFeGVjU3RhdGUqLCBKU0M6
OkpTT2JqZWN0KiwgSlNDOjpFbmNvZGVkSlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOworSlND
OjpFbmNvZGVkSlNWYWx1ZSBqc2F0dHJpYnV0ZUNvbnN0cnVjdG9yKEpTQzo6RXhlY1N0YXRlKiwg
SlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsK
IC8qIEhhc2ggdGFibGUgZm9yIGNvbnN0cnVjdG9yICovCiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg
Q29tcGFjdEhhc2hJbmRleCBKU2F0dHJpYnV0ZUNvbnN0cnVjdG9yVGFibGVJbmRleFsxXSA9IHsK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU2F0dHJpYnV0
ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU2F0dHJpYnV0ZS5oCShyZXZpc2lvbiAxNzAwMjUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNhdHRyaWJ1dGUuaAkod29ya2luZyBjb3B5KQpAQCAtMTQy
LDEwICsxNDIsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVj
dHVyZUZsYWdzID0gSlNDOjpPdmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBKU0M6OkltcGxl
bWVudHNIYXNJbnN0YW5jZSB8IERPTUNvbnN0cnVjdG9yT2JqZWN0OjpTdHJ1Y3R1cmVGbGFnczsK
IH07CiAKLS8vIEF0dHJpYnV0ZXMKLQotSlNDOjpFbmNvZGVkSlNWYWx1ZSBqc2F0dHJpYnV0ZVJl
YWRvbmx5KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCosIEpTQzo6RW5jb2RlZEpTVmFs
dWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKLUpTQzo6RW5jb2RlZEpTVmFsdWUganNhdHRyaWJ1dGVD
b25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRK
U1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIApJ
bmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTcmVhZG9ubHku
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU3JlYWRvbmx5LmNwcAkocmV2aXNpb24gMTcwMDI1KQorKysgU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTcmVhZG9ubHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
OCw2ICsyOCw5IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAorLy8gQXR0cmlidXRlcworCitKU0M6OkVuY29kZWRKU1ZhbHVlIGpzcmVhZG9ubHlDb25zdHJ1
Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3QqLCBKU0M6OkVuY29kZWRKU1ZhbHVl
LCBKU0M6OlByb3BlcnR5TmFtZSk7CiAvKiBIYXNoIHRhYmxlIGZvciBjb25zdHJ1Y3RvciAqLwog
CiBzdGF0aWMgY29uc3Qgc3RydWN0IENvbXBhY3RIYXNoSW5kZXggSlNyZWFkb25seUNvbnN0cnVj
dG9yVGFibGVJbmRleFsxXSA9IHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU3JlYWRvbmx5LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTcmVhZG9ubHkuaAkocmV2aXNpb24gMTcwMDI1KQorKysg
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTcmVhZG9ubHkuaAkod29y
a2luZyBjb3B5KQpAQCAtMTQyLDkgKzE0Miw2IEBAIHByb3RlY3RlZDoKICAgICBzdGF0aWMgY29u
c3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBKU0M6Ok92ZXJyaWRlc0dldE93blByb3BlcnR5
U2xvdCB8IEpTQzo6SW1wbGVtZW50c0hhc0luc3RhbmNlIHwgRE9NQ29uc3RydWN0b3JPYmplY3Q6
OlN0cnVjdHVyZUZsYWdzOwogfTsKIAotLy8gQXR0cmlidXRlcwotCi1KU0M6OkVuY29kZWRKU1Zh
bHVlIGpzcmVhZG9ubHlDb25zdHJ1Y3RvcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNPYmplY3Qq
LCBKU0M6OkVuY29kZWRKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKIApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmlkbAkocmV2aXNpb24g
MTcwMDI1KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCSh3b3JraW5nIGNv
cHkpCkBAIC01OSw5ICs1OSw5IEBACiAKICAgICBbQ2hlY2tTZWN1cml0eUZvck5vZGVdIHJlYWRv
bmx5IGF0dHJpYnV0ZSBFbGVtZW50IGZyYW1lRWxlbWVudDsKIAotICAgIFtEb05vdENoZWNrU2Vj
dXJpdHksIENhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIHZvaWQgZm9jdXMoKTsKLSAg
ICBbRG9Ob3RDaGVja1NlY3VyaXR5XSB2b2lkIGJsdXIoKTsKLSAgICBbRG9Ob3RDaGVja1NlY3Vy
aXR5LCBDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSB2b2lkIGNsb3NlKCk7CisgICAg
W0RvTm90Q2hlY2tTZWN1cml0eSwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgRm9y
d2FyZERlY2xhcmVJbkhlYWRlcl0gdm9pZCBmb2N1cygpOworICAgIFtEb05vdENoZWNrU2VjdXJp
dHksIEZvcndhcmREZWNsYXJlSW5IZWFkZXJdIHZvaWQgYmx1cigpOworICAgIFtEb05vdENoZWNr
U2VjdXJpdHksIENhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIEZvcndhcmREZWNsYXJl
SW5IZWFkZXJdIHZvaWQgY2xvc2UoKTsKIAogICAgIHZvaWQgcHJpbnQoKTsKICAgICB2b2lkIHN0
b3AoKTsKQEAgLTExMCw3ICsxMTAsNyBAQAogICAgIHZvaWQgcmVzaXplQnkoW0RlZmF1bHQ9VW5k
ZWZpbmVkXSBvcHRpb25hbCB1bnJlc3RyaWN0ZWQgZmxvYXQgeCwgW0RlZmF1bHQ9VW5kZWZpbmVk
XSBvcHRpb25hbCB1bnJlc3RyaWN0ZWQgZmxvYXQgeSk7IC8vIEZJWE1FOiB0aGlzIHNob3VsZCB0
YWtlIGxvbmdzIG5vdCBmbG9hdHMuCiAgICAgdm9pZCByZXNpemVUbyhbRGVmYXVsdD1VbmRlZmlu
ZWRdIG9wdGlvbmFsIHVucmVzdHJpY3RlZCBmbG9hdCB3aWR0aCwgW0RlZmF1bHQ9VW5kZWZpbmVk
XSBvcHRpb25hbCB1bnJlc3RyaWN0ZWQgZmxvYXQgaGVpZ2h0KTsgLy8gRklYTUU6IHRoaXMgc2hv
dWxkIHRha2UgbG9uZ3Mgbm90IGZsb2F0cy4KIAotICAgIFtEb05vdENoZWNrU2VjdXJpdHldIHJl
YWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGNsb3NlZDsKKyAgICBbRG9Ob3RDaGVja1NlY3VyaXR5
LCBGb3J3YXJkRGVjbGFyZUluSGVhZGVyXSByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBjbG9z
ZWQ7CiAKICAgICBbUmVwbGFjZWFibGUsIERvTm90Q2hlY2tTZWN1cml0eU9uR2V0dGVyXSByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CiAKQEAgLTE3MiwxMCArMTcyLDEw
IEBACiAKICAgICAvLyBjcm9zcy1kb2N1bWVudCBtZXNzYWdpbmcKICNpZiBkZWZpbmVkKExBTkdV
QUdFX0pBVkFTQ1JJUFQpICYmIExBTkdVQUdFX0pBVkFTQ1JJUFQKLSAgICBbRG9Ob3RDaGVja1Nl
Y3VyaXR5LCBDdXN0b20sIFJhaXNlc0V4Y2VwdGlvbl0gdm9pZCBwb3N0TWVzc2FnZShTZXJpYWxp
emVkU2NyaXB0VmFsdWUgbWVzc2FnZSwgRE9NU3RyaW5nIHRhcmdldE9yaWdpbiwgb3B0aW9uYWwg
QXJyYXkgbWVzc2FnZVBvcnRzKTsKKyAgICBbRG9Ob3RDaGVja1NlY3VyaXR5LCBDdXN0b20sIFJh
aXNlc0V4Y2VwdGlvbiwgRm9yd2FyZERlY2xhcmVJbkhlYWRlcl0gdm9pZCBwb3N0TWVzc2FnZShT
ZXJpYWxpemVkU2NyaXB0VmFsdWUgbWVzc2FnZSwgRE9NU3RyaW5nIHRhcmdldE9yaWdpbiwgb3B0
aW9uYWwgQXJyYXkgbWVzc2FnZVBvcnRzKTsKICNlbHNlCiAgICAgLy8gVGhlcmUncyBubyBnb29k
IHdheSB0byBleHBvc2UgYW4gYXJyYXkgdmlhIHRoZSBPYmpDIGJpbmRpbmdzLCBzbyBmb3Igbm93
IGp1c3QgYWxsb3cgcGFzc2luZyBpbiBhIHNpbmdsZSBwb3J0LgotICAgIFtEb05vdENoZWNrU2Vj
dXJpdHksIEN1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHBvc3RNZXNzYWdlKFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZSBtZXNzYWdlLCBvcHRpb25hbCBNZXNzYWdlUG9ydCBtZXNzYWdlUG9ydCwg
RE9NU3RyaW5nIHRhcmdldE9yaWdpbik7CisgICAgW0RvTm90Q2hlY2tTZWN1cml0eSwgQ3VzdG9t
LCBSYWlzZXNFeGNlcHRpb24sIEZvcndhcmREZWNsYXJlSW5IZWFkZXJdIHZvaWQgcG9zdE1lc3Nh
Z2UoU2VyaWFsaXplZFNjcmlwdFZhbHVlIG1lc3NhZ2UsIG9wdGlvbmFsIE1lc3NhZ2VQb3J0IG1l
c3NhZ2VQb3J0LCBET01TdHJpbmcgdGFyZ2V0T3JpZ2luKTsKICNlbmRpZgogCiAjaWYgZGVmaW5l
ZChFTkFCTEVfV0VCX1RJTUlORykgJiYgRU5BQkxFX1dFQl9USU1JTkcKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BhZ2UvSGlzdG9yeS5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFn
ZS9IaXN0b3J5LmlkbAkocmV2aXNpb24gMTcwMDI1KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9I
aXN0b3J5LmlkbAkod29ya2luZyBjb3B5KQpAQCAtMzMsOSArMzMsOSBAQAogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKICAgICBbQ2FjaGVkQXR0cmlidXRlLCBD
dXN0b21dIHJlYWRvbmx5IGF0dHJpYnV0ZSBTZXJpYWxpemVkU2NyaXB0VmFsdWUgc3RhdGU7CiAK
LSAgICBbRG9Ob3RDaGVja1NlY3VyaXR5LCBDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0
XSB2b2lkIGJhY2soKTsKLSAgICBbRG9Ob3RDaGVja1NlY3VyaXR5LCBDYWxsV2l0aD1TY3JpcHRF
eGVjdXRpb25Db250ZXh0XSB2b2lkIGZvcndhcmQoKTsKLSAgICBbRG9Ob3RDaGVja1NlY3VyaXR5
LCBDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSB2b2lkIGdvKFtEZWZhdWx0PVVuZGVm
aW5lZF0gb3B0aW9uYWwgbG9uZyBkaXN0YW5jZSk7CisgICAgW0RvTm90Q2hlY2tTZWN1cml0eSwg
Q2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgRm9yd2FyZERlY2xhcmVJbkhlYWRlcl0g
dm9pZCBiYWNrKCk7CisgICAgW0RvTm90Q2hlY2tTZWN1cml0eSwgQ2FsbFdpdGg9U2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCwgRm9yd2FyZERlY2xhcmVJbkhlYWRlcl0gdm9pZCBmb3J3YXJkKCk7Cisg
ICAgW0RvTm90Q2hlY2tTZWN1cml0eSwgQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwg
Rm9yd2FyZERlY2xhcmVJbkhlYWRlcl0gdm9pZCBnbyhbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlv
bmFsIGxvbmcgZGlzdGFuY2UpOwogCiAgICAgW0N1c3RvbSwgUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IHB1c2hTdGF0ZShhbnkgZGF0YSwgRE9NU3RyaW5nIHRpdGxlLCBvcHRpb25hbCBET01TdHJpbmcg
dXJsKTsKICAgICBbQ3VzdG9tLCBSYWlzZXNFeGNlcHRpb25dIHZvaWQgcmVwbGFjZVN0YXRlKGFu
eSBkYXRhLCBET01TdHJpbmcgdGl0bGUsIG9wdGlvbmFsIERPTVN0cmluZyB1cmwpOwpJbmRleDog
U291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhdGlvbi5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9Mb2NhdGlvbi5pZGwJKHJldmlzaW9uIDE3MDAyNSkKKysrIFNvdXJjZS9XZWJD
b3JlL3BhZ2UvTG9jYXRpb24uaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0zOSw5ICszOSw5IEBACiBd
IGludGVyZmFjZSBMb2NhdGlvbiB7CiAgICAgW0RvTm90Q2hlY2tTZWN1cml0eU9uU2V0dGVyLCBD
dXN0b21TZXR0ZXJdIGF0dHJpYnV0ZSBET01TdHJpbmcgaHJlZjsKIAotICAgIFtDdXN0b21dIHZv
aWQgYXNzaWduKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgRE9NU3RyaW5nIHVybCk7Ci0g
ICAgW0N1c3RvbV0gdm9pZCByZXBsYWNlKFtEZWZhdWx0PVVuZGVmaW5lZF0gb3B0aW9uYWwgRE9N
U3RyaW5nIHVybCk7Ci0gICAgW0N1c3RvbV0gdm9pZCByZWxvYWQoKTsKKyAgICBbQ3VzdG9tLCBG
b3J3YXJkRGVjbGFyZUluSGVhZGVyXSB2b2lkIGFzc2lnbihbRGVmYXVsdD1VbmRlZmluZWRdIG9w
dGlvbmFsIERPTVN0cmluZyB1cmwpOworICAgIFtDdXN0b20sIEZvcndhcmREZWNsYXJlSW5IZWFk
ZXJdIHZvaWQgcmVwbGFjZShbRGVmYXVsdD1VbmRlZmluZWRdIG9wdGlvbmFsIERPTVN0cmluZyB1
cmwpOworICAgIFtDdXN0b20sIEZvcndhcmREZWNsYXJlSW5IZWFkZXJdIHZvaWQgcmVsb2FkKCk7
CiAKICAgICAvLyBVUkkgZGVjb21wb3NpdGlvbiBhdHRyaWJ1dGVzCiAgICAgW0N1c3RvbVNldHRl
cl0gYXR0cmlidXRlIERPTVN0cmluZyBwcm90b2NvbDsK
</data>
<flag name="review"
          id="257669"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>