<?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>215597</bug_id>
          
          <creation_ts>2020-08-17 17:27:26 -0700</creation_ts>
          <short_desc>Improve channel mixing support in AudioBus</short_desc>
          <delta_ts>2020-09-09 10:16:38 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Audio</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>212611</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>clark_wang</cc>
    
    <cc>darin</cc>
    
    <cc>dino</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>frankhome61</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1680981</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-17 17:27:26 -0700</bug_when>
    <thetext>Improve channel mixing support in AudioBus so that we can pass:
- http://w3c-test.org/webaudio/the-audio-api/the-audionode-interface/audionode-channel-rules.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680987</commentid>
    <comment_count>1</comment_count>
      <attachid>406757</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-17 17:32:51 -0700</bug_when>
    <thetext>Created attachment 406757
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680998</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-08-17 18:25:03 -0700</bug_when>
    <thetext>Committed r265794: &lt;https://trac.webkit.org/changeset/265794&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 406757.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680999</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-08-17 18:26:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/67285900&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687016</commentid>
    <comment_count>4</comment_count>
    <who name="">frankhome61</who>
    <bug_when>2020-09-09 10:11:03 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687017</commentid>
    <comment_count>5</comment_count>
      <attachid>408332</attachid>
    <who name="">frankhome61</who>
    <bug_when>2020-09-09 10:11:04 -0700</bug_when>
    <thetext>Created attachment 408332
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687018</commentid>
    <comment_count>6</comment_count>
    <who name="">frankhome61</who>
    <bug_when>2020-09-09 10:12:51 -0700</bug_when>
    <thetext>Sorry for the confusion, I had a typo when uploading to another patch and ended up uploading to this patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687023</commentid>
    <comment_count>7</comment_count>
    <who name="">frankhome61</who>
    <bug_when>2020-09-09 10:15:50 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1687024</commentid>
    <comment_count>8</comment_count>
      <attachid>408335</attachid>
    <who name="">frankhome61</who>
    <bug_when>2020-09-09 10:15:51 -0700</bug_when>
    <thetext>Created attachment 408335
Patch</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406757</attachid>
            <date>2020-08-17 17:32:51 -0700</date>
            <delta_ts>2020-09-09 10:11:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215597-20200817173250.patch</filename>
            <type>text/plain</type>
            <size>49721</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1NzgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODc4NTMyNDBlY2FhOTlm
NzMzZDZjZDE5OWJlZGYyZWQ4NmM1NTZhYS4uYWUyMzk2MWM5OWIwMjZmYzI5MzQxYjcyZmExNTc1
NjY3NGJkOThmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIwLTA4LTE3ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wcm92ZSBjaGFubmVsIG1p
eGluZyBzdXBwb3J0IGluIEF1ZGlvQnVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTU1OTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBJbXByb3ZlIGNoYW5uZWwgbWl4aW5nIHN1cHBvcnQgaW4gQXVkaW9C
dXMgdG8gbWF0Y2ggdGhlIHNwZWNpZmljYXRpb246CisgICAgICAgIC0gaHR0cHM6Ly93d3cudzMu
b3JnL1RSL3dlYmF1ZGlvLyNjaGFubmVsLXVwLW1peGluZy1hbmQtZG93bi1taXhpbmcKKworICAg
ICAgICBPdXIgaW1wbGVtZW50YXRpb24gYWxzbyBtYXRjaGVzIEJsaW5rJ3M6CisgICAgICAgIC0g
aHR0cHM6Ly9naXRodWIuY29tL2Nocm9taXVtL2Nocm9taXVtL2Jsb2IvbWFzdGVyL3RoaXJkX3Bh
cnR5L2JsaW5rL3JlbmRlcmVyL3BsYXRmb3JtL2F1ZGlvL2F1ZGlvX2J1cy5jYworCisgICAgICAg
IE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdC4KKworICAgICAgICAqIHBs
YXRmb3JtL2F1ZGlvL0F1ZGlvQnVzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkF1ZGlvQnVzOjpj
b3B5RnJvbSk6CisgICAgICAgIChXZWJDb3JlOjpBdWRpb0J1czo6c3VtRnJvbSk6CisgICAgICAg
IChXZWJDb3JlOjpBdWRpb0J1czo6c3BlYWtlcnNTdW1Gcm9tQnlVcE1peGluZyk6CisgICAgICAg
IChXZWJDb3JlOjpBdWRpb0J1czo6c3BlYWtlcnNTdW1Gcm9tQnlEb3duTWl4aW5nKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9hdWRpby9BdWRpb0J1cy5oOgorCiAyMDIwLTA4LTE3ICBLYXJsIFJhY2ts
ZXIgIDxyYWNrbGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcg
cjI2NTYwMy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0F1ZGlv
QnVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0F1ZGlvQnVzLmNwcAppbmRl
eCBkZjIzYTBlNjAzZGJkMmYwNDdhZmVhOWRmMzFhNmMwYzg4YmY2YWYyLi44MjZjZGZmOWQ5YTQ2
MDE4ZTM4MjBiYmE4NDVkMWM1YWYyYmQ2MDJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9hdWRpby9BdWRpb0J1cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
YXVkaW8vQXVkaW9CdXMuY3BwCkBAIC0yNDUsMjQgKzI0NSw5IEBAIHZvaWQgQXVkaW9CdXM6OmNv
cHlGcm9tKGNvbnN0IEF1ZGlvQnVzJiBzb3VyY2VCdXMsIENoYW5uZWxJbnRlcnByZXRhdGlvbiBj
aGFubmVsCiAgICAgaWYgKCZzb3VyY2VCdXMgPT0gdGhpcykKICAgICAgICAgcmV0dXJuOwogCi0g
ICAgdW5zaWduZWQgbnVtYmVyT2ZTb3VyY2VDaGFubmVscyA9IHNvdXJjZUJ1cy5udW1iZXJPZkNo
YW5uZWxzKCk7Ci0gICAgdW5zaWduZWQgbnVtYmVyT2ZEZXN0aW5hdGlvbkNoYW5uZWxzID0gbnVt
YmVyT2ZDaGFubmVscygpOwotCi0gICAgaWYgKG51bWJlck9mRGVzdGluYXRpb25DaGFubmVscyA9
PSBudW1iZXJPZlNvdXJjZUNoYW5uZWxzKSB7Ci0gICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7
IGkgPCBudW1iZXJPZlNvdXJjZUNoYW5uZWxzOyArK2kpCi0gICAgICAgICAgICBjaGFubmVsKGkp
LT5jb3B5RnJvbShzb3VyY2VCdXMuY2hhbm5lbChpKSk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAg
c3dpdGNoIChjaGFubmVsSW50ZXJwcmV0YXRpb24pIHsKLSAgICAgICAgY2FzZSBDaGFubmVsSW50
ZXJwcmV0YXRpb246OlNwZWFrZXJzOgotICAgICAgICAgICAgc3BlYWtlcnNDb3B5RnJvbShzb3Vy
Y2VCdXMpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgQ2hhbm5lbEludGVycHJl
dGF0aW9uOjpEaXNjcmV0ZToKLSAgICAgICAgICAgIGRpc2NyZXRlQ29weUZyb20oc291cmNlQnVz
KTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgIH0KLSAgICB9CisgICAgLy8gQ29weWluZyBidXMg
aXMgZXF1aXZhbGVudCB0byB6ZXJvaW5nIGFuZCB0aGVuIHN1bW1pbmcuCisgICAgemVybygpOwor
ICAgIHN1bUZyb20oc291cmNlQnVzLCBjaGFubmVsSW50ZXJwcmV0YXRpb24pOwogfQogCiB2b2lk
IEF1ZGlvQnVzOjpzdW1Gcm9tKGNvbnN0IEF1ZGlvQnVzJiBzb3VyY2VCdXMsIENoYW5uZWxJbnRl
cnByZXRhdGlvbiBjaGFubmVsSW50ZXJwcmV0YXRpb24pCkBAIC0yNzksNyArMjY0LDEwIEBAIHZv
aWQgQXVkaW9CdXM6OnN1bUZyb20oY29uc3QgQXVkaW9CdXMmIHNvdXJjZUJ1cywgQ2hhbm5lbElu
dGVycHJldGF0aW9uIGNoYW5uZWxJCiAgICAgfSBlbHNlIHsKICAgICAgICAgc3dpdGNoIChjaGFu
bmVsSW50ZXJwcmV0YXRpb24pIHsKICAgICAgICAgY2FzZSBDaGFubmVsSW50ZXJwcmV0YXRpb246
OlNwZWFrZXJzOgotICAgICAgICAgICAgc3BlYWtlcnNTdW1Gcm9tKHNvdXJjZUJ1cyk7CisgICAg
ICAgICAgICBpZiAobnVtYmVyT2ZTb3VyY2VDaGFubmVscyA8IG51bWJlck9mRGVzdGluYXRpb25D
aGFubmVscykKKyAgICAgICAgICAgICAgICBzcGVha2Vyc1N1bUZyb21CeVVwTWl4aW5nKHNvdXJj
ZUJ1cyk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgc3BlYWtlcnNTdW1Gcm9t
QnlEb3duTWl4aW5nKHNvdXJjZUJ1cyk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2Fz
ZSBDaGFubmVsSW50ZXJwcmV0YXRpb246OkRpc2NyZXRlOgogICAgICAgICAgICAgZGlzY3JldGVT
dW1Gcm9tKHNvdXJjZUJ1cyk7CkBAIC0yOTAsNjMgKzI3OCw0MyBAQCB2b2lkIEF1ZGlvQnVzOjpz
dW1Gcm9tKGNvbnN0IEF1ZGlvQnVzJiBzb3VyY2VCdXMsIENoYW5uZWxJbnRlcnByZXRhdGlvbiBj
aGFubmVsSQogICAgIH0KIH0KIAotdm9pZCBBdWRpb0J1czo6c3BlYWtlcnNDb3B5RnJvbShjb25z
dCBBdWRpb0J1cyYgc291cmNlQnVzKQordm9pZCBBdWRpb0J1czo6c3BlYWtlcnNTdW1Gcm9tQnlV
cE1peGluZyhjb25zdCBBdWRpb0J1cyYgc291cmNlQnVzKQogewotICAgIC8vIEZJWE1FOiBJbXBs
ZW1lbnQgZG93biBtaXhpbmcgNS4xIHRvIHN0ZXJlby4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzkxOTIKLQogICAgIHVuc2lnbmVkIG51bWJlck9mU291
cmNlQ2hhbm5lbHMgPSBzb3VyY2VCdXMubnVtYmVyT2ZDaGFubmVscygpOwogICAgIHVuc2lnbmVk
IG51bWJlck9mRGVzdGluYXRpb25DaGFubmVscyA9IG51bWJlck9mQ2hhbm5lbHMoKTsKIAotICAg
IGlmIChudW1iZXJPZkRlc3RpbmF0aW9uQ2hhbm5lbHMgPT0gMiAmJiBudW1iZXJPZlNvdXJjZUNo
YW5uZWxzID09IDEpIHsKLSAgICAgICAgLy8gSGFuZGxlIG1vbm8gLT4gc3RlcmVvIGNhc2UgKGZv
ciBub3cgc2ltcGx5IGNvcHkgbW9ubyBjaGFubmVsIGludG8gYm90aCBsZWZ0IGFuZCByaWdodCkK
LSAgICAgICAgLy8gRklYTUU6IFJlYWxseSB3ZSBzaG91bGQgYXBwbHkgYW4gZXF1YWwtcG93ZXIg
c2NhbGluZyBmYWN0b3IgaGVyZSwgc2luY2Ugd2UncmUgZWZmZWN0aXZlbHkgcGFubmluZyBjZW50
ZXIuLi4KLSAgICAgICAgY29uc3QgQXVkaW9DaGFubmVsKiBzb3VyY2VDaGFubmVsID0gc291cmNl
QnVzLmNoYW5uZWwoMCk7Ci0gICAgICAgIGNoYW5uZWwoMCktPmNvcHlGcm9tKHNvdXJjZUNoYW5u
ZWwpOwotICAgICAgICBjaGFubmVsKDEpLT5jb3B5RnJvbShzb3VyY2VDaGFubmVsKTsKLSAgICB9
IGVsc2UgaWYgKG51bWJlck9mRGVzdGluYXRpb25DaGFubmVscyA9PSAxICYmIG51bWJlck9mU291
cmNlQ2hhbm5lbHMgPT0gMikgewotICAgICAgICAvLyBIYW5kbGUgc3RlcmVvIC0+IG1vbm8gY2Fz
ZS4gb3V0cHV0ID0gMC41ICogKGlucHV0LkwgKyBpbnB1dC5SKS4KLSAgICAgICAgQXVkaW9CdXMm
IHNvdXJjZUJ1c1NhZmUgPSBjb25zdF9jYXN0PEF1ZGlvQnVzJj4oc291cmNlQnVzKTsKLQotICAg
ICAgICBjb25zdCBmbG9hdCogc291cmNlTCA9IHNvdXJjZUJ1c1NhZmUuY2hhbm5lbEJ5VHlwZShD
aGFubmVsTGVmdCktPmRhdGEoKTsKLSAgICAgICAgY29uc3QgZmxvYXQqIHNvdXJjZVIgPSBzb3Vy
Y2VCdXNTYWZlLmNoYW5uZWxCeVR5cGUoQ2hhbm5lbFJpZ2h0KS0+ZGF0YSgpOwotCi0gICAgICAg
IGZsb2F0KiBkZXN0aW5hdGlvbiA9IGNoYW5uZWxCeVR5cGUoQ2hhbm5lbExlZnQpLT5tdXRhYmxl
RGF0YSgpOwotICAgICAgICB2YWRkKHNvdXJjZUwsIDEsIHNvdXJjZVIsIDEsIGRlc3RpbmF0aW9u
LCAxLCBsZW5ndGgoKSk7Ci0gICAgICAgIGZsb2F0IHNjYWxlID0gMC41OwotICAgICAgICB2c211
bChkZXN0aW5hdGlvbiwgMSwgJnNjYWxlLCBkZXN0aW5hdGlvbiwgMSwgbGVuZ3RoKCkpOwotICAg
IH0gZWxzZSBpZiAobnVtYmVyT2ZEZXN0aW5hdGlvbkNoYW5uZWxzID09IDYgJiYgbnVtYmVyT2ZT
b3VyY2VDaGFubmVscyA9PSAxKSB7Ci0gICAgICAgIC8vIEhhbmRsZSBtb25vIC0+IDUuMSBjYXNl
LCBjb3B5IG1vbm8gY2hhbm5lbCB0byBjZW50ZXIuIAotICAgICAgICBjaGFubmVsKDIpLT5jb3B5
RnJvbShzb3VyY2VCdXMuY2hhbm5lbCgwKSk7Ci0gICAgICAgIGNoYW5uZWwoMCktPnplcm8oKTsK
LSAgICAgICAgY2hhbm5lbCgxKS0+emVybygpOwotICAgICAgICBjaGFubmVsKDMpLT56ZXJvKCk7
Ci0gICAgICAgIGNoYW5uZWwoNCktPnplcm8oKTsKLSAgICAgICAgY2hhbm5lbCg1KS0+emVybygp
OwotICAgIH0gZWxzZSBpZiAobnVtYmVyT2ZEZXN0aW5hdGlvbkNoYW5uZWxzID09IDEgJiYgbnVt
YmVyT2ZTb3VyY2VDaGFubmVscyA9PSA2KSB7Ci0gICAgICAgIC8vIEhhbmRsZSA1LjEgLT4gbW9u
byBjYXNlLgotICAgICAgICB6ZXJvKCk7Ci0gICAgICAgIHNwZWFrZXJzU3VtRnJvbTVfMV9Ub01v
bm8oc291cmNlQnVzKTsKKyAgICBpZiAoKG51bWJlck9mU291cmNlQ2hhbm5lbHMgPT0gMSAmJiBu
dW1iZXJPZkRlc3RpbmF0aW9uQ2hhbm5lbHMgPT0gMikKKyAgICAgICAgfHwgKG51bWJlck9mU291
cmNlQ2hhbm5lbHMgPT0gMSAmJiBudW1iZXJPZkRlc3RpbmF0aW9uQ2hhbm5lbHMgPT0gNCkpIHsK
KyAgICAgICAgLy8gSGFuZGxlIG1vbm8gLT4gc3RlcmVvIGNhc2UgKHN1bW1pbmcgbW9ubyBjaGFu
bmVsIGludG8gYm90aCBsZWZ0IGFuZCByaWdodCkuCisgICAgICAgIGF1dG8qIHNvdXJjZUwgPSBz
b3VyY2VCdXMuY2hhbm5lbEJ5VHlwZShDaGFubmVsTGVmdCk7CisgICAgICAgIGNoYW5uZWxCeVR5
cGUoQ2hhbm5lbExlZnQpLT5zdW1Gcm9tKHNvdXJjZUwpOworICAgICAgICBjaGFubmVsQnlUeXBl
KENoYW5uZWxSaWdodCktPnN1bUZyb20oc291cmNlTCk7CisgICAgfSBlbHNlIGlmIChudW1iZXJP
ZlNvdXJjZUNoYW5uZWxzID09IDEgJiYgbnVtYmVyT2ZEZXN0aW5hdGlvbkNoYW5uZWxzID09IDYp
IHsKKyAgICAgICAgLy8gSGFuZGxlIG1vbm8gLT4gNS4xIGNhc2UsIHN1bSBtb25vIGNoYW5uZWwg
aW50byBjZW50ZXIuCisgICAgICAgIGNoYW5uZWxCeVR5cGUoQ2hhbm5lbENlbnRlciktPnN1bUZy
b20oc291cmNlQnVzLmNoYW5uZWxCeVR5cGUoQ2hhbm5lbExlZnQpKTsKKyAgICB9IGVsc2UgaWYg
KChudW1iZXJPZlNvdXJjZUNoYW5uZWxzID09IDIgJiYgbnVtYmVyT2ZEZXN0aW5hdGlvbkNoYW5u
ZWxzID09IDQpCisgICAgICAgIHx8IChudW1iZXJPZlNvdXJjZUNoYW5uZWxzID09IDIgJiYgbnVt
YmVyT2ZEZXN0aW5hdGlvbkNoYW5uZWxzID09IDYpKSB7CisgICAgICAgIC8vIFVwLW1peGluZzog
MiAtPiA0LCAyIC0+IDUuMQorICAgICAgICBjaGFubmVsQnlUeXBlKENoYW5uZWxMZWZ0KS0+c3Vt
RnJvbShzb3VyY2VCdXMuY2hhbm5lbEJ5VHlwZShDaGFubmVsTGVmdCkpOworICAgICAgICBjaGFu
bmVsQnlUeXBlKENoYW5uZWxSaWdodCktPnN1bUZyb20oc291cmNlQnVzLmNoYW5uZWxCeVR5cGUo
Q2hhbm5lbFJpZ2h0KSk7CisgICAgfSBlbHNlIGlmIChudW1iZXJPZlNvdXJjZUNoYW5uZWxzID09
IDQgJiYgbnVtYmVyT2ZEZXN0aW5hdGlvbkNoYW5uZWxzID09IDYpIHsKKyAgICAgICAgLy8gVXAt
bWl4aW5nOiA0IC0+IDUuMQorICAgICAgICBjaGFubmVsQnlUeXBlKENoYW5uZWxMZWZ0KS0+c3Vt
RnJvbShzb3VyY2VCdXMuY2hhbm5lbEJ5VHlwZShDaGFubmVsTGVmdCkpOworICAgICAgICBjaGFu
bmVsQnlUeXBlKENoYW5uZWxSaWdodCktPnN1bUZyb20oc291cmNlQnVzLmNoYW5uZWxCeVR5cGUo
Q2hhbm5lbFJpZ2h0KSk7CisgICAgICAgIGNoYW5uZWxCeVR5cGUoQ2hhbm5lbFN1cnJvdW5kTGVm
dCktPnN1bUZyb20oc291cmNlQnVzLmNoYW5uZWxCeVR5cGUoQ2hhbm5lbFN1cnJvdW5kTGVmdCkp
OworICAgICAgICBjaGFubmVsQnlUeXBlKENoYW5uZWxTdXJyb3VuZFJpZ2h0KS0+c3VtRnJvbShz
b3VyY2VCdXMuY2hhbm5lbEJ5VHlwZShDaGFubmVsU3Vycm91bmRSaWdodCkpOwogICAgIH0gZWxz
ZSB7CiAgICAgICAgIC8vIEZhbGxiYWNrIGZvciB1bmtub3duIGNvbWJpbmF0aW9ucy4KLSAgICAg
ICAgZGlzY3JldGVDb3B5RnJvbShzb3VyY2VCdXMpOworICAgICAgICBkaXNjcmV0ZVN1bUZyb20o
c291cmNlQnVzKTsKICAgICB9CiB9CiAKLXZvaWQgQXVkaW9CdXM6OnNwZWFrZXJzU3VtRnJvbShj
b25zdCBBdWRpb0J1cyYgc291cmNlQnVzKQordm9pZCBBdWRpb0J1czo6c3BlYWtlcnNTdW1Gcm9t
QnlEb3duTWl4aW5nKGNvbnN0IEF1ZGlvQnVzJiBzb3VyY2VCdXMpCiB7Ci0gICAgLy8gRklYTUU6
IEltcGxlbWVudCBkb3duIG1peGluZyA1LjEgdG8gc3RlcmVvLgotICAgIC8vIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTE5MgotICAgIAogICAgIHVuc2lnbmVkIG51
bWJlck9mU291cmNlQ2hhbm5lbHMgPSBzb3VyY2VCdXMubnVtYmVyT2ZDaGFubmVscygpOwogICAg
IHVuc2lnbmVkIG51bWJlck9mRGVzdGluYXRpb25DaGFubmVscyA9IG51bWJlck9mQ2hhbm5lbHMo
KTsKIAotICAgIGlmIChudW1iZXJPZkRlc3RpbmF0aW9uQ2hhbm5lbHMgPT0gMiAmJiBudW1iZXJP
ZlNvdXJjZUNoYW5uZWxzID09IDEpIHsKLSAgICAgICAgLy8gSGFuZGxlIG1vbm8gLT4gc3RlcmVv
IGNhc2UgKHN1bW1pbmcgbW9ubyBjaGFubmVsIGludG8gYm90aCBsZWZ0IGFuZCByaWdodCkuCi0g
ICAgICAgIGNvbnN0IEF1ZGlvQ2hhbm5lbCogc291cmNlQ2hhbm5lbCA9IHNvdXJjZUJ1cy5jaGFu
bmVsKDApOwotICAgICAgICBjaGFubmVsKDApLT5zdW1Gcm9tKHNvdXJjZUNoYW5uZWwpOwotICAg
ICAgICBjaGFubmVsKDEpLT5zdW1Gcm9tKHNvdXJjZUNoYW5uZWwpOwotICAgIH0gZWxzZSBpZiAo
bnVtYmVyT2ZEZXN0aW5hdGlvbkNoYW5uZWxzID09IDEgJiYgbnVtYmVyT2ZTb3VyY2VDaGFubmVs
cyA9PSAyKSB7CisgICAgaWYgKG51bWJlck9mU291cmNlQ2hhbm5lbHMgPT0gMiAmJiBudW1iZXJP
ZkRlc3RpbmF0aW9uQ2hhbm5lbHMgPT0gMSkgewogICAgICAgICAvLyBIYW5kbGUgc3RlcmVvIC0+
IG1vbm8gY2FzZS4gb3V0cHV0ICs9IDAuNSAqIChpbnB1dC5MICsgaW5wdXQuUikuCiAgICAgICAg
IEF1ZGlvQnVzJiBzb3VyY2VCdXNTYWZlID0gY29uc3RfY2FzdDxBdWRpb0J1cyY+KHNvdXJjZUJ1
cyk7CiAKQEAgLTM1Nyw2NyArMzI1LDEwMiBAQCB2b2lkIEF1ZGlvQnVzOjpzcGVha2Vyc1N1bUZy
b20oY29uc3QgQXVkaW9CdXMmIHNvdXJjZUJ1cykKICAgICAgICAgZmxvYXQgc2NhbGUgPSAwLjU7
CiAgICAgICAgIHZzbWEoc291cmNlTCwgMSwgJnNjYWxlLCBkZXN0aW5hdGlvbiwgMSwgbGVuZ3Ro
KCkpOwogICAgICAgICB2c21hKHNvdXJjZVIsIDEsICZzY2FsZSwgZGVzdGluYXRpb24sIDEsIGxl
bmd0aCgpKTsKLSAgICB9IGVsc2UgaWYgKG51bWJlck9mRGVzdGluYXRpb25DaGFubmVscyA9PSA2
ICYmIG51bWJlck9mU291cmNlQ2hhbm5lbHMgPT0gMSkgewotICAgICAgICAvLyBIYW5kbGUgbW9u
byAtPiA1LjEgY2FzZSwgc3VtIG1vbm8gY2hhbm5lbCBpbnRvIGNlbnRlci4KLSAgICAgICAgY2hh
bm5lbCgyKS0+c3VtRnJvbShzb3VyY2VCdXMuY2hhbm5lbCgwKSk7Ci0gICAgfSBlbHNlIGlmIChu
dW1iZXJPZkRlc3RpbmF0aW9uQ2hhbm5lbHMgPT0gMSAmJiBudW1iZXJPZlNvdXJjZUNoYW5uZWxz
ID09IDYpIHsKLSAgICAgICAgLy8gSGFuZGxlIDUuMSAtPiBtb25vIGNhc2UuCi0gICAgICAgIHNw
ZWFrZXJzU3VtRnJvbTVfMV9Ub01vbm8oc291cmNlQnVzKTsKKyAgICB9IGVsc2UgaWYgKG51bWJl
ck9mU291cmNlQ2hhbm5lbHMgPT0gNCAmJiBudW1iZXJPZkRlc3RpbmF0aW9uQ2hhbm5lbHMgPT0g
MSkgeworICAgICAgICAvLyBEb3duLW1peGluZzogNCAtPiAxCisgICAgICAgIC8vIG91dHB1dCA9
IDAuMjUgKiAoaW5wdXQuTCArIGlucHV0LlIgKyBpbnB1dC5TTCArIGlucHV0LlNSKQorICAgICAg
ICBhdXRvKiBzb3VyY2VMID0gc291cmNlQnVzLmNoYW5uZWxCeVR5cGUoQ2hhbm5lbExlZnQpLT5k
YXRhKCk7CisgICAgICAgIGF1dG8qIHNvdXJjZVIgPSBzb3VyY2VCdXMuY2hhbm5lbEJ5VHlwZShD
aGFubmVsUmlnaHQpLT5kYXRhKCk7CisgICAgICAgIGF1dG8qIHNvdXJjZVNMID0gc291cmNlQnVz
LmNoYW5uZWxCeVR5cGUoQ2hhbm5lbFN1cnJvdW5kTGVmdCktPmRhdGEoKTsKKyAgICAgICAgYXV0
byogc291cmNlU1IgPSBzb3VyY2VCdXMuY2hhbm5lbEJ5VHlwZShDaGFubmVsU3Vycm91bmRSaWdo
dCktPmRhdGEoKTsKKworICAgICAgICBhdXRvKiBkZXN0aW5hdGlvbiA9IGNoYW5uZWxCeVR5cGUo
Q2hhbm5lbExlZnQpLT5tdXRhYmxlRGF0YSgpOworICAgICAgICBmbG9hdCBzY2FsZSA9IDAuMjU7
CisKKyAgICAgICAgdnNtYShzb3VyY2VMLCAxLCAmc2NhbGUsIGRlc3RpbmF0aW9uLCAxLCBsZW5n
dGgoKSk7CisgICAgICAgIHZzbWEoc291cmNlUiwgMSwgJnNjYWxlLCBkZXN0aW5hdGlvbiwgMSwg
bGVuZ3RoKCkpOworICAgICAgICB2c21hKHNvdXJjZVNMLCAxLCAmc2NhbGUsIGRlc3RpbmF0aW9u
LCAxLCBsZW5ndGgoKSk7CisgICAgICAgIHZzbWEoc291cmNlU1IsIDEsICZzY2FsZSwgZGVzdGlu
YXRpb24sIDEsIGxlbmd0aCgpKTsKKyAgICB9IGVsc2UgaWYgKG51bWJlck9mU291cmNlQ2hhbm5l
bHMgPT0gNiAmJiBudW1iZXJPZkRlc3RpbmF0aW9uQ2hhbm5lbHMgPT0gMSkgeworICAgICAgICAv
LyBEb3duLW1peGluZzogNS4xIC0+IDEKKyAgICAgICAgLy8gb3V0cHV0ID0gc3FydCgxLzIpICog
KGlucHV0LkwgKyBpbnB1dC5SKSArIGlucHV0LkMgKyAwLjUgKiAoaW5wdXQuU0wgKyBpbnB1dC5T
UikKKyAgICAgICAgYXV0byogc291cmNlTCA9IHNvdXJjZUJ1cy5jaGFubmVsQnlUeXBlKENoYW5u
ZWxMZWZ0KS0+ZGF0YSgpOworICAgICAgICBhdXRvKiBzb3VyY2VSID0gc291cmNlQnVzLmNoYW5u
ZWxCeVR5cGUoQ2hhbm5lbFJpZ2h0KS0+ZGF0YSgpOworICAgICAgICBhdXRvKiBzb3VyY2VDID0g
c291cmNlQnVzLmNoYW5uZWxCeVR5cGUoQ2hhbm5lbENlbnRlciktPmRhdGEoKTsKKyAgICAgICAg
YXV0byogc291cmNlU0wgPSBzb3VyY2VCdXMuY2hhbm5lbEJ5VHlwZShDaGFubmVsU3Vycm91bmRM
ZWZ0KS0+ZGF0YSgpOworICAgICAgICBhdXRvKiBzb3VyY2VTUiA9IHNvdXJjZUJ1cy5jaGFubmVs
QnlUeXBlKENoYW5uZWxTdXJyb3VuZFJpZ2h0KS0+ZGF0YSgpOworCisgICAgICAgIGF1dG8qIGRl
c3RpbmF0aW9uID0gY2hhbm5lbEJ5VHlwZShDaGFubmVsTGVmdCktPm11dGFibGVEYXRhKCk7Cisg
ICAgICAgIGZsb2F0IHNjYWxlU3FydEhhbGYgPSBzcXJ0ZigwLjUpOworICAgICAgICBmbG9hdCBz
Y2FsZUhhbGYgPSAwLjVmOworCisgICAgICAgIHZzbWEoc291cmNlTCwgMSwgJnNjYWxlU3FydEhh
bGYsIGRlc3RpbmF0aW9uLCAxLCBsZW5ndGgoKSk7CisgICAgICAgIHZzbWEoc291cmNlUiwgMSwg
JnNjYWxlU3FydEhhbGYsIGRlc3RpbmF0aW9uLCAxLCBsZW5ndGgoKSk7CisgICAgICAgIHZhZGQo
c291cmNlQywgMSwgZGVzdGluYXRpb24sIDEsIGRlc3RpbmF0aW9uLCAxLCBsZW5ndGgoKSk7Cisg
ICAgICAgIHZzbWEoc291cmNlU0wsIDEsICZzY2FsZUhhbGYsIGRlc3RpbmF0aW9uLCAxLCBsZW5n
dGgoKSk7CisgICAgICAgIHZzbWEoc291cmNlU1IsIDEsICZzY2FsZUhhbGYsIGRlc3RpbmF0aW9u
LCAxLCBsZW5ndGgoKSk7CisgICAgfSBlbHNlIGlmIChudW1iZXJPZlNvdXJjZUNoYW5uZWxzID09
IDQgJiYgbnVtYmVyT2ZEZXN0aW5hdGlvbkNoYW5uZWxzID09IDIpIHsKKyAgICAgICAgLy8gRG93
bi1taXhpbmc6IDQgLT4gMgorICAgICAgICAvLyBvdXRwdXQuTCA9IDAuNSAqIChpbnB1dC5MICsg
aW5wdXQuU0wpCisgICAgICAgIC8vIG91dHB1dC5SID0gMC41ICogKGlucHV0LlIgKyBpbnB1dC5T
UikKKyAgICAgICAgYXV0byogc291cmNlTCA9IHNvdXJjZUJ1cy5jaGFubmVsQnlUeXBlKENoYW5u
ZWxMZWZ0KS0+ZGF0YSgpOworICAgICAgICBhdXRvKiBzb3VyY2VSID0gc291cmNlQnVzLmNoYW5u
ZWxCeVR5cGUoQ2hhbm5lbFJpZ2h0KS0+ZGF0YSgpOworICAgICAgICBhdXRvKiBzb3VyY2VTTCA9
IHNvdXJjZUJ1cy5jaGFubmVsQnlUeXBlKENoYW5uZWxTdXJyb3VuZExlZnQpLT5kYXRhKCk7Cisg
ICAgICAgIGF1dG8qIHNvdXJjZVNSID0gc291cmNlQnVzLmNoYW5uZWxCeVR5cGUoQ2hhbm5lbFN1
cnJvdW5kUmlnaHQpLT5kYXRhKCk7CisKKyAgICAgICAgYXV0byogZGVzdGluYXRpb25MID0gY2hh
bm5lbEJ5VHlwZShDaGFubmVsTGVmdCktPm11dGFibGVEYXRhKCk7CisgICAgICAgIGF1dG8qIGRl
c3RpbmF0aW9uUiA9IGNoYW5uZWxCeVR5cGUoQ2hhbm5lbFJpZ2h0KS0+bXV0YWJsZURhdGEoKTsK
KyAgICAgICAgZmxvYXQgc2NhbGVIYWxmID0gMC41ZjsKKworICAgICAgICB2c21hKHNvdXJjZUws
IDEsICZzY2FsZUhhbGYsIGRlc3RpbmF0aW9uTCwgMSwgbGVuZ3RoKCkpOworICAgICAgICB2c21h
KHNvdXJjZVNMLCAxLCAmc2NhbGVIYWxmLCBkZXN0aW5hdGlvbkwsIDEsIGxlbmd0aCgpKTsKKyAg
ICAgICAgdnNtYShzb3VyY2VSLCAxLCAmc2NhbGVIYWxmLCBkZXN0aW5hdGlvblIsIDEsIGxlbmd0
aCgpKTsKKyAgICAgICAgdnNtYShzb3VyY2VTUiwgMSwgJnNjYWxlSGFsZiwgZGVzdGluYXRpb25S
LCAxLCBsZW5ndGgoKSk7CisgICAgfSBlbHNlIGlmIChudW1iZXJPZlNvdXJjZUNoYW5uZWxzID09
IDYgJiYgbnVtYmVyT2ZEZXN0aW5hdGlvbkNoYW5uZWxzID09IDIpIHsKKyAgICAgICAgLy8gRG93
bi1taXhpbmc6IDUuMSAtPiAyCisgICAgICAgIC8vIG91dHB1dC5MID0gaW5wdXQuTCArIHNxcnQo
MS8yKSAqIChpbnB1dC5DICsgaW5wdXQuU0wpCisgICAgICAgIC8vIG91dHB1dC5SID0gaW5wdXQu
UiArIHNxcnQoMS8yKSAqIChpbnB1dC5DICsgaW5wdXQuU1IpCisgICAgICAgIGF1dG8qIHNvdXJj
ZUwgPSBzb3VyY2VCdXMuY2hhbm5lbEJ5VHlwZShDaGFubmVsTGVmdCktPmRhdGEoKTsKKyAgICAg
ICAgYXV0byogc291cmNlUiA9IHNvdXJjZUJ1cy5jaGFubmVsQnlUeXBlKENoYW5uZWxSaWdodCkt
PmRhdGEoKTsKKyAgICAgICAgYXV0byogc291cmNlQyA9IHNvdXJjZUJ1cy5jaGFubmVsQnlUeXBl
KENoYW5uZWxDZW50ZXIpLT5kYXRhKCk7CisgICAgICAgIGF1dG8qIHNvdXJjZVNMID0gc291cmNl
QnVzLmNoYW5uZWxCeVR5cGUoQ2hhbm5lbFN1cnJvdW5kTGVmdCktPmRhdGEoKTsKKyAgICAgICAg
YXV0byogc291cmNlU1IgPSBzb3VyY2VCdXMuY2hhbm5lbEJ5VHlwZShDaGFubmVsU3Vycm91bmRS
aWdodCktPmRhdGEoKTsKKworICAgICAgICBmbG9hdCogZGVzdGluYXRpb25MID0gY2hhbm5lbEJ5
VHlwZShDaGFubmVsTGVmdCktPm11dGFibGVEYXRhKCk7CisgICAgICAgIGZsb2F0KiBkZXN0aW5h
dGlvblIgPSBjaGFubmVsQnlUeXBlKENoYW5uZWxSaWdodCktPm11dGFibGVEYXRhKCk7CisgICAg
ICAgIGZsb2F0IHNjYWxlU3FydEhhbGYgPSBzcXJ0ZigwLjUpOworCisgICAgICAgIHZhZGQoc291
cmNlTCwgMSwgZGVzdGluYXRpb25MLCAxLCBkZXN0aW5hdGlvbkwsIDEsIGxlbmd0aCgpKTsKKyAg
ICAgICAgdnNtYShzb3VyY2VDLCAxLCAmc2NhbGVTcXJ0SGFsZiwgZGVzdGluYXRpb25MLCAxLCBs
ZW5ndGgoKSk7CisgICAgICAgIHZzbWEoc291cmNlU0wsIDEsICZzY2FsZVNxcnRIYWxmLCBkZXN0
aW5hdGlvbkwsIDEsIGxlbmd0aCgpKTsKKyAgICAgICAgdmFkZChzb3VyY2VSLCAxLCBkZXN0aW5h
dGlvblIsIDEsIGRlc3RpbmF0aW9uUiwgMSwgbGVuZ3RoKCkpOworICAgICAgICB2c21hKHNvdXJj
ZUMsIDEsICZzY2FsZVNxcnRIYWxmLCBkZXN0aW5hdGlvblIsIDEsIGxlbmd0aCgpKTsKKyAgICAg
ICAgdnNtYShzb3VyY2VTUiwgMSwgJnNjYWxlU3FydEhhbGYsIGRlc3RpbmF0aW9uUiwgMSwgbGVu
Z3RoKCkpOworICAgIH0gZWxzZSBpZiAobnVtYmVyT2ZTb3VyY2VDaGFubmVscyA9PSA2ICYmIG51
bWJlck9mRGVzdGluYXRpb25DaGFubmVscyA9PSA0KSB7CisgICAgICAgIC8vIERvd24tbWl4aW5n
OiA1LjEgLT4gNAorICAgICAgICAvLyBvdXRwdXQuTCA9IGlucHV0LkwgKyBzcXJ0KDEvMikgKiBp
bnB1dC5DCisgICAgICAgIC8vIG91dHB1dC5SID0gaW5wdXQuUiArIHNxcnQoMS8yKSAqIGlucHV0
LkMKKyAgICAgICAgLy8gb3V0cHV0LlNMID0gaW5wdXQuU0wKKyAgICAgICAgLy8gb3V0cHV0LlNS
ID0gaW5wdXQuU1IKKyAgICAgICAgYXV0byogc291cmNlTCA9IHNvdXJjZUJ1cy5jaGFubmVsQnlU
eXBlKENoYW5uZWxMZWZ0KS0+ZGF0YSgpOworICAgICAgICBhdXRvKiBzb3VyY2VSID0gc291cmNl
QnVzLmNoYW5uZWxCeVR5cGUoQ2hhbm5lbFJpZ2h0KS0+ZGF0YSgpOworICAgICAgICBhdXRvKiBz
b3VyY2VDID0gc291cmNlQnVzLmNoYW5uZWxCeVR5cGUoQ2hhbm5lbENlbnRlciktPmRhdGEoKTsK
KworICAgICAgICBhdXRvKiBkZXN0aW5hdGlvbkwgPSBjaGFubmVsQnlUeXBlKENoYW5uZWxMZWZ0
KS0+bXV0YWJsZURhdGEoKTsKKyAgICAgICAgYXV0byogZGVzdGluYXRpb25SID0gY2hhbm5lbEJ5
VHlwZShDaGFubmVsUmlnaHQpLT5tdXRhYmxlRGF0YSgpOworICAgICAgICBhdXRvIHNjYWxlU3Fy
dEhhbGYgPSBzcXJ0ZigwLjUpOworCisgICAgICAgIHZhZGQoc291cmNlTCwgMSwgZGVzdGluYXRp
b25MLCAxLCBkZXN0aW5hdGlvbkwsIDEsIGxlbmd0aCgpKTsKKyAgICAgICAgdnNtYShzb3VyY2VD
LCAxLCAmc2NhbGVTcXJ0SGFsZiwgZGVzdGluYXRpb25MLCAxLCBsZW5ndGgoKSk7CisgICAgICAg
IHZhZGQoc291cmNlUiwgMSwgZGVzdGluYXRpb25SLCAxLCBkZXN0aW5hdGlvblIsIDEsIGxlbmd0
aCgpKTsKKyAgICAgICAgdnNtYShzb3VyY2VDLCAxLCAmc2NhbGVTcXJ0SGFsZiwgZGVzdGluYXRp
b25SLCAxLCBsZW5ndGgoKSk7CisgICAgICAgIGNoYW5uZWwoMiktPnN1bUZyb20oc291cmNlQnVz
LmNoYW5uZWwoNCkpOworICAgICAgICBjaGFubmVsKDMpLT5zdW1Gcm9tKHNvdXJjZUJ1cy5jaGFu
bmVsKDUpKTsKICAgICB9IGVsc2UgewogICAgICAgICAvLyBGYWxsYmFjayBmb3IgdW5rbm93biBj
b21iaW5hdGlvbnMuCiAgICAgICAgIGRpc2NyZXRlU3VtRnJvbShzb3VyY2VCdXMpOwogICAgIH0K
IH0KIAotdm9pZCBBdWRpb0J1czo6c3BlYWtlcnNTdW1Gcm9tNV8xX1RvTW9ubyhjb25zdCBBdWRp
b0J1cyYgc291cmNlQnVzKQotewotICAgIEF1ZGlvQnVzJiBzb3VyY2VCdXNTYWZlID0gY29uc3Rf
Y2FzdDxBdWRpb0J1cyY+KHNvdXJjZUJ1cyk7Ci0KLSAgICBjb25zdCBmbG9hdCogc291cmNlTCA9
IHNvdXJjZUJ1c1NhZmUuY2hhbm5lbEJ5VHlwZShDaGFubmVsTGVmdCktPmRhdGEoKTsKLSAgICBj
b25zdCBmbG9hdCogc291cmNlUiA9IHNvdXJjZUJ1c1NhZmUuY2hhbm5lbEJ5VHlwZShDaGFubmVs
UmlnaHQpLT5kYXRhKCk7Ci0gICAgY29uc3QgZmxvYXQqIHNvdXJjZUMgPSBzb3VyY2VCdXNTYWZl
LmNoYW5uZWxCeVR5cGUoQ2hhbm5lbENlbnRlciktPmRhdGEoKTsKLSAgICBjb25zdCBmbG9hdCog
c291cmNlU0wgPSBzb3VyY2VCdXNTYWZlLmNoYW5uZWxCeVR5cGUoQ2hhbm5lbFN1cnJvdW5kTGVm
dCktPmRhdGEoKTsKLSAgICBjb25zdCBmbG9hdCogc291cmNlU1IgPSBzb3VyY2VCdXNTYWZlLmNo
YW5uZWxCeVR5cGUoQ2hhbm5lbFN1cnJvdW5kUmlnaHQpLT5kYXRhKCk7Ci0KLSAgICBmbG9hdCog
ZGVzdGluYXRpb24gPSBjaGFubmVsQnlUeXBlKENoYW5uZWxMZWZ0KS0+bXV0YWJsZURhdGEoKTsK
LQotICAgIEF1ZGlvRmxvYXRBcnJheSB0ZW1wKGxlbmd0aCgpKTsKLSAgICBmbG9hdCogdGVtcERh
dGEgPSB0ZW1wLmRhdGEoKTsKLQotICAgIC8vIFN1bSBpbiBMIGFuZCBSLgotICAgIHZhZGQoc291
cmNlTCwgMSwgc291cmNlUiwgMSwgdGVtcERhdGEsIDEsIGxlbmd0aCgpKTsKLSAgICBmbG9hdCBz
Y2FsZSA9IDAuNzA3MTsKLSAgICB2c211bCh0ZW1wRGF0YSwgMSwgJnNjYWxlLCB0ZW1wRGF0YSwg
MSwgbGVuZ3RoKCkpOwotICAgIHZhZGQodGVtcERhdGEsIDEsIGRlc3RpbmF0aW9uLCAxLCBkZXN0
aW5hdGlvbiwgMSwgbGVuZ3RoKCkpOwotCi0gICAgLy8gU3VtIGluIFNMIGFuZCBTUi4KLSAgICB2
YWRkKHNvdXJjZVNMLCAxLCBzb3VyY2VTUiwgMSwgdGVtcERhdGEsIDEsIGxlbmd0aCgpKTsKLSAg
ICBzY2FsZSA9IDAuNTsKLSAgICB2c211bCh0ZW1wRGF0YSwgMSwgJnNjYWxlLCB0ZW1wRGF0YSwg
MSwgbGVuZ3RoKCkpOwotICAgIHZhZGQodGVtcERhdGEsIDEsIGRlc3RpbmF0aW9uLCAxLCBkZXN0
aW5hdGlvbiwgMSwgbGVuZ3RoKCkpOwotCi0gICAgLy8gU3VtIGluIGNlbnRlci4KLSAgICB2YWRk
KHNvdXJjZUMsIDEsIGRlc3RpbmF0aW9uLCAxLCBkZXN0aW5hdGlvbiwgMSwgbGVuZ3RoKCkpOwot
fQotCi12b2lkIEF1ZGlvQnVzOjpkaXNjcmV0ZUNvcHlGcm9tKGNvbnN0IEF1ZGlvQnVzJiBzb3Vy
Y2VCdXMpCi17Ci0gICAgdW5zaWduZWQgbnVtYmVyT2ZTb3VyY2VDaGFubmVscyA9IHNvdXJjZUJ1
cy5udW1iZXJPZkNoYW5uZWxzKCk7Ci0gICAgdW5zaWduZWQgbnVtYmVyT2ZEZXN0aW5hdGlvbkNo
YW5uZWxzID0gbnVtYmVyT2ZDaGFubmVscygpOwotICAgIAotICAgIGlmIChudW1iZXJPZkRlc3Rp
bmF0aW9uQ2hhbm5lbHMgPCBudW1iZXJPZlNvdXJjZUNoYW5uZWxzKSB7Ci0gICAgICAgIC8vIERv
d24tbWl4IGJ5IGNvcHlpbmcgY2hhbm5lbHMgYW5kIGRyb3BwaW5nIHRoZSByZW1haW5pbmcuCi0g
ICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1iZXJPZkRlc3RpbmF0aW9uQ2hhbm5l
bHM7ICsraSkKLSAgICAgICAgICAgIGNoYW5uZWwoaSktPmNvcHlGcm9tKHNvdXJjZUJ1cy5jaGFu
bmVsKGkpKTsKLSAgICB9IGVsc2UgaWYgKG51bWJlck9mRGVzdGluYXRpb25DaGFubmVscyA+IG51
bWJlck9mU291cmNlQ2hhbm5lbHMpIHsKLSAgICAgICAgLy8gVXAtbWl4IGJ5IGNvcHlpbmcgYXMg
bWFueSBjaGFubmVscyBhcyB3ZSBoYXZlLCB0aGVuIHplcm9pbmcgcmVtYWluaW5nIGNoYW5uZWxz
LgotICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtYmVyT2ZTb3VyY2VDaGFubmVs
czsgKytpKSAKLSAgICAgICAgICAgIGNoYW5uZWwoaSktPmNvcHlGcm9tKHNvdXJjZUJ1cy5jaGFu
bmVsKGkpKTsKLSAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gbnVtYmVyT2ZTb3VyY2VDaGFubmVs
czsgaSA8IG51bWJlck9mRGVzdGluYXRpb25DaGFubmVsczsgKytpKQotICAgICAgICAgICAgY2hh
bm5lbChpKS0+emVybygpOwotICAgIH0KLX0KLQogdm9pZCBBdWRpb0J1czo6ZGlzY3JldGVTdW1G
cm9tKGNvbnN0IEF1ZGlvQnVzJiBzb3VyY2VCdXMpCiB7CiAgICAgdW5zaWduZWQgbnVtYmVyT2ZT
b3VyY2VDaGFubmVscyA9IHNvdXJjZUJ1cy5udW1iZXJPZkNoYW5uZWxzKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9BdWRpb0J1cy5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vYXVkaW8vQXVkaW9CdXMuaAppbmRleCBiNWE4ZjhhZjA1ZTQ4ZDJjNWYzOWRi
MmE4ZjZiODRiOGZjNzQyOGUzLi45NWQyMTM5Nzc4ZjNhMjU1MjFjYmM2ODMxNzNlZjhkZThmYmNi
YjBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9BdWRpb0J1cy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0F1ZGlvQnVzLmgKQEAgLTE1NSwx
MSArMTU1LDkgQEAgcHJpdmF0ZToKIAogICAgIEF1ZGlvQnVzKHVuc2lnbmVkIG51bWJlck9mQ2hh
bm5lbHMsIHNpemVfdCBsZW5ndGgsIGJvb2wgYWxsb2NhdGUpOwogCi0gICAgdm9pZCBzcGVha2Vy
c0NvcHlGcm9tKGNvbnN0IEF1ZGlvQnVzJik7Ci0gICAgdm9pZCBkaXNjcmV0ZUNvcHlGcm9tKGNv
bnN0IEF1ZGlvQnVzJik7Ci0gICAgdm9pZCBzcGVha2Vyc1N1bUZyb20oY29uc3QgQXVkaW9CdXMm
KTsKKyAgICB2b2lkIHNwZWFrZXJzU3VtRnJvbUJ5VXBNaXhpbmcoY29uc3QgQXVkaW9CdXMmKTsK
KyAgICB2b2lkIHNwZWFrZXJzU3VtRnJvbUJ5RG93bk1peGluZyhjb25zdCBBdWRpb0J1cyYpOwog
ICAgIHZvaWQgZGlzY3JldGVTdW1Gcm9tKGNvbnN0IEF1ZGlvQnVzJik7Ci0gICAgdm9pZCBzcGVh
a2Vyc1N1bUZyb201XzFfVG9Nb25vKGNvbnN0IEF1ZGlvQnVzJik7CiAKICAgICBzaXplX3QgbV9s
ZW5ndGg7CiAgICAgVmVjdG9yPHN0ZDo6dW5pcXVlX3B0cjxBdWRpb0NoYW5uZWw+PiBtX2NoYW5u
ZWxzOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCmluZGV4IDdlMGE5ODVjNjQ4M2ZkNzJmYWI1NjRiMGZjNGYwMmEzMTRmZGQzZGYuLjlm
MjM3MmNlMDllMDE5NDFhZjcwYTkzY2VmNzE4ODk3NzBjNjlmODMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NSBAQAorMjAyMC0wOC0xNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAg
ICAgIEltcHJvdmUgY2hhbm5lbCBtaXhpbmcgc3VwcG9ydCBpbiBBdWRpb0J1cworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NTk3CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVtb3ZlIG91dGRhdGVkIHRl
c3QuIEEgbmV3ZXIgdmVyc2lvbiBvZiB0aGlzIHRlc3QgaXMgcHJlc2VudCBpbiB3ZWItcGxhdGZv
cm0tdGVzdHMuCisKKyAgICAgICAgKiB3ZWJhdWRpby9hdWRpb25vZGUtY2hhbm5lbC1ydWxlcy1l
eHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogd2ViYXVkaW8vYXVkaW9ub2RlLWNoYW5u
ZWwtcnVsZXMuaHRtbDogUmVtb3ZlZC4KKwogMjAyMC0wOC0xNyAgSGVjdG9yIExvcGV6ICA8aGVj
dG9yX2lfbG9wZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFsgbWFjT1Mgd2sxIF0gd2ViYXVkaW8v
b3NjaWxsYXRvci1zcXVhcmUuaHRtbCBpcyBhIGZsYWt5IGZhaWx1cmUKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nCmluZGV4IDk3NDc3ZTJkYmQ3ZDFhNTYwM2I4YmZkYWYyZTI0NTA1NGJkNzc3
MjUuLjA0MzcxZmE5NTI0ODY4MTEzYmRjYTcyOTU2MzliZDA3YjQ0MWI0YWUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA4LTE3ICBDaHJpcyBE
dW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wcm92ZSBjaGFubmVsIG1peGlu
ZyBzdXBwb3J0IGluIEF1ZGlvQnVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMTU1OTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0IG5vdyB0aGF0IGFsbCBjaGVja3MgYXJl
IHBhc3NpbmcuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtYXVkaW9ub2RlLWludGVyZmFjZS9hdWRpb25vZGUtY2hhbm5lbC1ydWxlcy1l
eHBlY3RlZC50eHQ6CisKIDIwMjAtMDgtMTcgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNv
bT4KIAogICAgICAgICBBdWRpb05vZGUuZGlzY29ubmVjdCgpIGRvZXMgbm90IG1hdGNoIHRoZSBz
cGVjaWZpY2F0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvbm9kZS1pbnRlcmZh
Y2UvYXVkaW9ub2RlLWNoYW5uZWwtcnVsZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1h
dWRpb25vZGUtaW50ZXJmYWNlL2F1ZGlvbm9kZS1jaGFubmVsLXJ1bGVzLWV4cGVjdGVkLnR4dApp
bmRleCA2MDYyYTNkNmY3ZjQ5MjM0MzNiZWEzYzRlODU4YzVhZTA2YTlkNjA3Li5kZTQ0OWMxNWZh
YWUyZjhkYjhhODZmY2E5ZDA5MjE4NDdmZGVjMGYxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWF1ZGlvbm9kZS1pbnRlcmZhY2UvYXVkaW9ub2RlLWNoYW5uZWwtcnVsZXMtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9ub2RlLWludGVyZmFjZS9hdWRpb25vZGUtY2hhbm5l
bC1ydWxlcy1leHBlY3RlZC50eHQKQEAgLTE1LDk3ICsxNSw5NyBAQCBQQVNTICAgY29ubmVjdGlv
bnM6IDcsIG1heCwgc3BlYWtlcnMgaXMgdHJ1ZS4KIFBBU1MgICBjb25uZWN0aW9uczogOCwgbWF4
LCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTEsIG1heCwgc3BlYWtl
cnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDEyLCBtYXgsIHNwZWFrZXJzIGlzIHRy
dWUuIAotRkFJTCBYIGNvbm5lY3Rpb25zOiAxNCwgbWF4LCBzcGVha2VycyBpcyBub3QgZXF1YWwg
dG8gMS4gR290IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAg
IGNvbm5lY3Rpb25zOiAxNCwgbWF4LCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0
aW9uczogMTgsIG1heCwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDEx
MSwgbWF4LCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTIyLCBtYXgs
IHNwZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiAxMjMsIG1heCwgc3BlYWtl
cnMgaXMgdHJ1ZS4gCi1GQUlMIFggY29ubmVjdGlvbnM6IDEyNCwgbWF4LCBzcGVha2VycyBpcyBu
b3QgZXF1YWwgdG8gMS4gR290IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQorUEFTUyAgIGNvbm5lY3Rpb25zOiAxMjQsIG1heCwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNT
ICAgY29ubmVjdGlvbnM6IDEyOCwgbWF4LCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25u
ZWN0aW9uczogMSwgY2xhbXBlZC1tYXgoNCksIHNwZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNv
bm5lY3Rpb25zOiAyLCBjbGFtcGVkLW1heCg0KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAg
Y29ubmVjdGlvbnM6IDMsIGNsYW1wZWQtbWF4KDQpLCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1Mg
ICBjb25uZWN0aW9uczogNCwgY2xhbXBlZC1tYXgoNCksIHNwZWFrZXJzIGlzIHRydWUuIAogUEFT
UyAgIGNvbm5lY3Rpb25zOiA1LCBjbGFtcGVkLW1heCg0KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCi1G
QUlMIFggY29ubmVjdGlvbnM6IDYsIGNsYW1wZWQtbWF4KDQpLCBzcGVha2VycyBpcyBub3QgZXF1
YWwgdG8gMC43MDcxMDY3NjkwODQ5MzA0LiBHb3QgMC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCitQQVNTICAgY29ubmVjdGlvbnM6IDYsIGNsYW1wZWQtbWF4KDQpLCBzcGVh
a2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogNywgY2xhbXBlZC1tYXgoNCksIHNw
ZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiA4LCBjbGFtcGVkLW1heCg0KSwg
c3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDExLCBjbGFtcGVkLW1heCg0
KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDEyLCBjbGFtcGVkLW1h
eCg0KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCi1GQUlMIFggY29ubmVjdGlvbnM6IDE0LCBjbGFtcGVk
LW1heCg0KSwgc3BlYWtlcnMgaXMgbm90IGVxdWFsIHRvIDEuIEdvdCAwLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBjb25uZWN0aW9uczogMTgsIGNsYW1wZWQt
bWF4KDQpLCBzcGVha2VycyBpcyBub3QgZXF1YWwgdG8gMS4gR290IDAuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5lY3Rpb25zOiAxNCwgY2xhbXBlZC1t
YXgoNCksIHNwZWFrZXJzIGlzIHRydWUuIAorUEFTUyAgIGNvbm5lY3Rpb25zOiAxOCwgY2xhbXBl
ZC1tYXgoNCksIHNwZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiAxMTEsIGNs
YW1wZWQtbWF4KDQpLCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTIy
LCBjbGFtcGVkLW1heCg0KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6
IDEyMywgY2xhbXBlZC1tYXgoNCksIHNwZWFrZXJzIGlzIHRydWUuIAotRkFJTCBYIGNvbm5lY3Rp
b25zOiAxMjQsIGNsYW1wZWQtbWF4KDQpLCBzcGVha2VycyBpcyBub3QgZXF1YWwgdG8gMS4gR290
IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNvbm5lY3Rp
b25zOiAxMjgsIGNsYW1wZWQtbWF4KDQpLCBzcGVha2VycyBpcyBub3QgZXF1YWwgdG8gMS4gR290
IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5lY3Rp
b25zOiAxMjQsIGNsYW1wZWQtbWF4KDQpLCBzcGVha2VycyBpcyB0cnVlLiAKK1BBU1MgICBjb25u
ZWN0aW9uczogMTI4LCBjbGFtcGVkLW1heCg0KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAg
Y29ubmVjdGlvbnM6IDEsIGV4cGxpY2l0KDEpLCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBj
b25uZWN0aW9uczogMiwgZXhwbGljaXQoMSksIHNwZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNv
bm5lY3Rpb25zOiAzLCBleHBsaWNpdCgxKSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCi1GQUlMIFggY29u
bmVjdGlvbnM6IDQsIGV4cGxpY2l0KDEpLCBzcGVha2VycyBpcyBub3QgZXF1YWwgdG8gMC4yNS4g
R290IDEuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5l
Y3Rpb25zOiA0LCBleHBsaWNpdCgxKSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVj
dGlvbnM6IDUsIGV4cGxpY2l0KDEpLCBzcGVha2VycyBpcyB0cnVlLiAKLUZBSUwgWCBjb25uZWN0
aW9uczogNiwgZXhwbGljaXQoMSksIHNwZWFrZXJzIGlzIG5vdCBlcXVhbCB0byAwLjcwNzEwNjc2
OTA4NDkzMDQuIEdvdCAwLjcwNzA5OTk3NDE1NTQyNi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCitQQVNTICAgY29ubmVjdGlvbnM6IDYsIGV4cGxpY2l0KDEpLCBzcGVha2Vy
cyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogNywgZXhwbGljaXQoMSksIHNwZWFrZXJz
IGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiA4LCBleHBsaWNpdCgxKSwgc3BlYWtlcnMg
aXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDExLCBleHBsaWNpdCgxKSwgc3BlYWtlcnMg
aXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDEyLCBleHBsaWNpdCgxKSwgc3BlYWtlcnMg
aXMgdHJ1ZS4gCi1GQUlMIFggY29ubmVjdGlvbnM6IDE0LCBleHBsaWNpdCgxKSwgc3BlYWtlcnMg
aXMgbm90IGVxdWFsIHRvIDEuMjUuIEdvdCAyLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKK1BBU1MgICBjb25uZWN0aW9uczogMTQsIGV4cGxpY2l0KDEpLCBzcGVha2VycyBp
cyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTgsIGV4cGxpY2l0KDEpLCBzcGVha2VycyBp
cyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTExLCBleHBsaWNpdCgxKSwgc3BlYWtlcnMg
aXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDEyMiwgZXhwbGljaXQoMSksIHNwZWFrZXJz
IGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiAxMjMsIGV4cGxpY2l0KDEpLCBzcGVha2Vy
cyBpcyB0cnVlLiAKLUZBSUwgWCBjb25uZWN0aW9uczogMTI0LCBleHBsaWNpdCgxKSwgc3BlYWtl
cnMgaXMgbm90IGVxdWFsIHRvIDEuNzUuIEdvdCAyLjUuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5lY3Rpb25zOiAxMjQsIGV4cGxpY2l0KDEpLCBzcGVh
a2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTI4LCBleHBsaWNpdCgxKSwgc3Bl
YWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDEsIGV4cGxpY2l0KDIpLCBzcGVh
a2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMiwgZXhwbGljaXQoMiksIHNwZWFr
ZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiAzLCBleHBsaWNpdCgyKSwgc3BlYWtl
cnMgaXMgdHJ1ZS4gCi1GQUlMIFggY29ubmVjdGlvbnM6IDQsIGV4cGxpY2l0KDIpLCBzcGVha2Vy
cyBpcyBub3QgZXF1YWwgdG8gMC41LiBHb3QgMS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCitQQVNTICAgY29ubmVjdGlvbnM6IDQsIGV4cGxpY2l0KDIpLCBzcGVha2VycyBp
cyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogNSwgZXhwbGljaXQoMiksIHNwZWFrZXJzIGlz
IHRydWUuIAotRkFJTCBYIGNvbm5lY3Rpb25zOiA2LCBleHBsaWNpdCgyKSwgc3BlYWtlcnMgaXMg
bm90IGVxdWFsIHRvIDAuNzA3MTA2NzY5MDg0OTMwNC4gR290IDAuIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5lY3Rpb25zOiA2LCBleHBsaWNpdCgyKSwg
c3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDcsIGV4cGxpY2l0KDIpLCBz
cGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogOCwgZXhwbGljaXQoMiksIHNw
ZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiAxMSwgZXhwbGljaXQoMiksIHNw
ZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiAxMiwgZXhwbGljaXQoMiksIHNw
ZWFrZXJzIGlzIHRydWUuIAotRkFJTCBYIGNvbm5lY3Rpb25zOiAxNCwgZXhwbGljaXQoMiksIHNw
ZWFrZXJzIGlzIG5vdCBlcXVhbCB0byAxLjUuIEdvdCAyLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBjb25uZWN0aW9uczogMTQsIGV4cGxpY2l0KDIpLCBzcGVh
a2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTgsIGV4cGxpY2l0KDIpLCBzcGVh
a2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTExLCBleHBsaWNpdCgyKSwgc3Bl
YWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDEyMiwgZXhwbGljaXQoMiksIHNw
ZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiAxMjMsIGV4cGxpY2l0KDIpLCBz
cGVha2VycyBpcyB0cnVlLiAKLUZBSUwgWCBjb25uZWN0aW9uczogMTI0LCBleHBsaWNpdCgyKSwg
c3BlYWtlcnMgaXMgbm90IGVxdWFsIHRvIDIuNS4gR290IDMuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5lY3Rpb25zOiAxMjQsIGV4cGxpY2l0KDIpLCBz
cGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTI4LCBleHBsaWNpdCgyKSwg
c3BlYWtlcnMgaXMgdHJ1ZS4gCi1GQUlMIFggY29ubmVjdGlvbnM6IDEsIGV4cGxpY2l0KDQpLCBz
cGVha2VycyBpcyBub3QgZXF1YWwgdG8gMS4gR290IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5lY3Rpb25zOiAxLCBleHBsaWNpdCg0KSwgc3BlYWtl
cnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDIsIGV4cGxpY2l0KDQpLCBzcGVha2Vy
cyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMywgZXhwbGljaXQoNCksIHNwZWFrZXJz
IGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiA0LCBleHBsaWNpdCg0KSwgc3BlYWtlcnMg
aXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDUsIGV4cGxpY2l0KDQpLCBzcGVha2VycyBp
cyB0cnVlLiAKLUZBSUwgWCBjb25uZWN0aW9uczogNiwgZXhwbGljaXQoNCksIHNwZWFrZXJzIGlz
IG5vdCBlcXVhbCB0byAwLjcwNzEwNjc2OTA4NDkzMDQuIEdvdCAwLiBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBjb25uZWN0aW9uczogNiwgZXhwbGljaXQoNCks
IHNwZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiA3LCBleHBsaWNpdCg0KSwg
c3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDgsIGV4cGxpY2l0KDQpLCBz
cGVha2VycyBpcyB0cnVlLiAKLUZBSUwgWCBjb25uZWN0aW9uczogMTEsIGV4cGxpY2l0KDQpLCBz
cGVha2VycyBpcyBub3QgZXF1YWwgdG8gMi4gR290IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNvbm5lY3Rpb25zOiAxMiwgZXhwbGljaXQoNCksIHNwZWFr
ZXJzIGlzIG5vdCBlcXVhbCB0byAxLiBHb3QgMC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCi1GQUlMIFggY29ubmVjdGlvbnM6IDE0LCBleHBsaWNpdCg0KSwgc3BlYWtlcnMg
aXMgbm90IGVxdWFsIHRvIDEuIEdvdCAwLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKLUZBSUwgWCBjb25uZWN0aW9uczogMTgsIGV4cGxpY2l0KDQpLCBzcGVha2VycyBpcyBu
b3QgZXF1YWwgdG8gMS4gR290IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQotRkFJTCBYIGNvbm5lY3Rpb25zOiAxMTEsIGV4cGxpY2l0KDQpLCBzcGVha2VycyBpcyBub3Qg
ZXF1YWwgdG8gMy4gR290IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQot
RkFJTCBYIGNvbm5lY3Rpb25zOiAxMjIsIGV4cGxpY2l0KDQpLCBzcGVha2VycyBpcyBub3QgZXF1
YWwgdG8gMS4gR290IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJ
TCBYIGNvbm5lY3Rpb25zOiAxMjMsIGV4cGxpY2l0KDQpLCBzcGVha2VycyBpcyBub3QgZXF1YWwg
dG8gMS4gR290IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBY
IGNvbm5lY3Rpb25zOiAxMjQsIGV4cGxpY2l0KDQpLCBzcGVha2VycyBpcyBub3QgZXF1YWwgdG8g
MS4gR290IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIGNv
bm5lY3Rpb25zOiAxMjgsIGV4cGxpY2l0KDQpLCBzcGVha2VycyBpcyBub3QgZXF1YWwgdG8gMS4g
R290IDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5l
Y3Rpb25zOiAxMSwgZXhwbGljaXQoNCksIHNwZWFrZXJzIGlzIHRydWUuIAorUEFTUyAgIGNvbm5l
Y3Rpb25zOiAxMiwgZXhwbGljaXQoNCksIHNwZWFrZXJzIGlzIHRydWUuIAorUEFTUyAgIGNvbm5l
Y3Rpb25zOiAxNCwgZXhwbGljaXQoNCksIHNwZWFrZXJzIGlzIHRydWUuIAorUEFTUyAgIGNvbm5l
Y3Rpb25zOiAxOCwgZXhwbGljaXQoNCksIHNwZWFrZXJzIGlzIHRydWUuIAorUEFTUyAgIGNvbm5l
Y3Rpb25zOiAxMTEsIGV4cGxpY2l0KDQpLCBzcGVha2VycyBpcyB0cnVlLiAKK1BBU1MgICBjb25u
ZWN0aW9uczogMTIyLCBleHBsaWNpdCg0KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCitQQVNTICAgY29u
bmVjdGlvbnM6IDEyMywgZXhwbGljaXQoNCksIHNwZWFrZXJzIGlzIHRydWUuIAorUEFTUyAgIGNv
bm5lY3Rpb25zOiAxMjQsIGV4cGxpY2l0KDQpLCBzcGVha2VycyBpcyB0cnVlLiAKK1BBU1MgICBj
b25uZWN0aW9uczogMTI4LCBleHBsaWNpdCg0KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAg
Y29ubmVjdGlvbnM6IDEsIGV4cGxpY2l0KDYpLCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBj
b25uZWN0aW9uczogMiwgZXhwbGljaXQoNiksIHNwZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNv
bm5lY3Rpb25zOiAzLCBleHBsaWNpdCg2KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCi1GQUlMIFggY29u
bmVjdGlvbnM6IDQsIGV4cGxpY2l0KDYpLCBzcGVha2VycyBpcyBub3QgZXF1YWwgdG8gMC4gR290
IDEuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5lY3Rp
b25zOiA0LCBleHBsaWNpdCg2KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlv
bnM6IDUsIGV4cGxpY2l0KDYpLCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9u
czogNiwgZXhwbGljaXQoNiksIHNwZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25z
OiA3LCBleHBsaWNpdCg2KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6
IDgsIGV4cGxpY2l0KDYpLCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczog
MTEsIGV4cGxpY2l0KDYpLCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczog
MTIsIGV4cGxpY2l0KDYpLCBzcGVha2VycyBpcyB0cnVlLiAKLUZBSUwgWCBjb25uZWN0aW9uczog
MTQsIGV4cGxpY2l0KDYpLCBzcGVha2VycyBpcyBub3QgZXF1YWwgdG8gMC4gR290IDEuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5lY3Rpb25zOiAxNCwg
ZXhwbGljaXQoNiksIHNwZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiAxOCwg
ZXhwbGljaXQoNiksIHNwZWFrZXJzIGlzIHRydWUuIAogUEFTUyAgIGNvbm5lY3Rpb25zOiAxMTEs
IGV4cGxpY2l0KDYpLCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTIy
LCBleHBsaWNpdCg2KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDEy
MywgZXhwbGljaXQoNiksIHNwZWFrZXJzIGlzIHRydWUuIAotRkFJTCBYIGNvbm5lY3Rpb25zOiAx
MjQsIGV4cGxpY2l0KDYpLCBzcGVha2VycyBpcyBub3QgZXF1YWwgdG8gMC4gR290IDEuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGNvbm5lY3Rpb25zOiAxMjQs
IGV4cGxpY2l0KDYpLCBzcGVha2VycyBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczogMTI4
LCBleHBsaWNpdCg2KSwgc3BlYWtlcnMgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDEs
IG1heCwgZGlzY3JldGUgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6IDIsIG1heCwgZGlz
Y3JldGUgaXMgdHJ1ZS4gCkBAIC0xNzUsNiArMTc1LDYgQEAgUEFTUyAgIGNvbm5lY3Rpb25zOiAx
MjIsIGV4cGxpY2l0KDgpLCBkaXNjcmV0ZSBpcyB0cnVlLgogUEFTUyAgIGNvbm5lY3Rpb25zOiAx
MjMsIGV4cGxpY2l0KDgpLCBkaXNjcmV0ZSBpcyB0cnVlLiAKIFBBU1MgICBjb25uZWN0aW9uczog
MTI0LCBleHBsaWNpdCg4KSwgZGlzY3JldGUgaXMgdHJ1ZS4gCiBQQVNTICAgY29ubmVjdGlvbnM6
IDEyOCwgZXhwbGljaXQoOCksIGRpc2NyZXRlIGlzIHRydWUuIAotRkFJTCA8IFt0ZXN0XSAyOSBv
dXQgb2YgMTcyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBv
ZiAxIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKK1BBU1MgPCBbdGVzdF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMTcyIGFzc2Vy
dGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIHRhc2tzIHJhbiBz
dWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9hdWRpb25v
ZGUtY2hhbm5lbC1ydWxlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9hdWRp
b25vZGUtY2hhbm5lbC1ydWxlcy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGI2MTRjNWQ4YWY4NmJiNzQyNzYyYTI0MWEzMWMwYjZlZGVjNjNlODIuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVk
aW8vYXVkaW9ub2RlLWNoYW5uZWwtcnVsZXMtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsMTc4ICswLDAgQEAKLUNoYW5uZWwgbWl4aW5nIHJ1bGVzIGZvciBBdWRpb05vZGVzLgotCi1P
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVBBU1MgY29ubmVjdGlvbnM6IDEsIG1heCwgc3Bl
YWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDIsIG1heCwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlv
bnM6IDMsIG1heCwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDQsIG1heCwgc3BlYWtlcnMK
LVBBU1MgY29ubmVjdGlvbnM6IDUsIG1heCwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDYs
IG1heCwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDcsIG1heCwgc3BlYWtlcnMKLVBBU1Mg
Y29ubmVjdGlvbnM6IDgsIG1heCwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDExLCBtYXgs
IHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAxMiwgbWF4LCBzcGVha2VycwotUEFTUyBjb25u
ZWN0aW9uczogMTQsIG1heCwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDE4LCBtYXgsIHNw
ZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAxMTEsIG1heCwgc3BlYWtlcnMKLVBBU1MgY29ubmVj
dGlvbnM6IDEyMiwgbWF4LCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9uczogMTIzLCBtYXgsIHNw
ZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAxMjQsIG1heCwgc3BlYWtlcnMKLVBBU1MgY29ubmVj
dGlvbnM6IDEyOCwgbWF4LCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9uczogMSwgY2xhbXBlZC1t
YXgoNCksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAyLCBjbGFtcGVkLW1heCg0KSwgc3Bl
YWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDMsIGNsYW1wZWQtbWF4KDQpLCBzcGVha2VycwotUEFT
UyBjb25uZWN0aW9uczogNCwgY2xhbXBlZC1tYXgoNCksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rp
b25zOiA1LCBjbGFtcGVkLW1heCg0KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDYsIGNs
YW1wZWQtbWF4KDQpLCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9uczogNywgY2xhbXBlZC1tYXgo
NCksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiA4LCBjbGFtcGVkLW1heCg0KSwgc3BlYWtl
cnMKLVBBU1MgY29ubmVjdGlvbnM6IDExLCBjbGFtcGVkLW1heCg0KSwgc3BlYWtlcnMKLVBBU1Mg
Y29ubmVjdGlvbnM6IDEyLCBjbGFtcGVkLW1heCg0KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlv
bnM6IDE0LCBjbGFtcGVkLW1heCg0KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDE4LCBj
bGFtcGVkLW1heCg0KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDExMSwgY2xhbXBlZC1t
YXgoNCksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAxMjIsIGNsYW1wZWQtbWF4KDQpLCBz
cGVha2VycwotUEFTUyBjb25uZWN0aW9uczogMTIzLCBjbGFtcGVkLW1heCg0KSwgc3BlYWtlcnMK
LVBBU1MgY29ubmVjdGlvbnM6IDEyNCwgY2xhbXBlZC1tYXgoNCksIHNwZWFrZXJzCi1QQVNTIGNv
bm5lY3Rpb25zOiAxMjgsIGNsYW1wZWQtbWF4KDQpLCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9u
czogMSwgZXhwbGljaXQoMSksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAyLCBleHBsaWNp
dCgxKSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDMsIGV4cGxpY2l0KDEpLCBzcGVha2Vy
cwotUEFTUyBjb25uZWN0aW9uczogNCwgZXhwbGljaXQoMSksIHNwZWFrZXJzCi1QQVNTIGNvbm5l
Y3Rpb25zOiA1LCBleHBsaWNpdCgxKSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDYsIGV4
cGxpY2l0KDEpLCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9uczogNywgZXhwbGljaXQoMSksIHNw
ZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiA4LCBleHBsaWNpdCgxKSwgc3BlYWtlcnMKLVBBU1Mg
Y29ubmVjdGlvbnM6IDExLCBleHBsaWNpdCgxKSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6
IDEyLCBleHBsaWNpdCgxKSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDE0LCBleHBsaWNp
dCgxKSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDE4LCBleHBsaWNpdCgxKSwgc3BlYWtl
cnMKLVBBU1MgY29ubmVjdGlvbnM6IDExMSwgZXhwbGljaXQoMSksIHNwZWFrZXJzCi1QQVNTIGNv
bm5lY3Rpb25zOiAxMjIsIGV4cGxpY2l0KDEpLCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9uczog
MTIzLCBleHBsaWNpdCgxKSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDEyNCwgZXhwbGlj
aXQoMSksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAxMjgsIGV4cGxpY2l0KDEpLCBzcGVh
a2VycwotUEFTUyBjb25uZWN0aW9uczogMSwgZXhwbGljaXQoMiksIHNwZWFrZXJzCi1QQVNTIGNv
bm5lY3Rpb25zOiAyLCBleHBsaWNpdCgyKSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDMs
IGV4cGxpY2l0KDIpLCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9uczogNCwgZXhwbGljaXQoMiks
IHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiA1LCBleHBsaWNpdCgyKSwgc3BlYWtlcnMKLVBB
U1MgY29ubmVjdGlvbnM6IDYsIGV4cGxpY2l0KDIpLCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9u
czogNywgZXhwbGljaXQoMiksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiA4LCBleHBsaWNp
dCgyKSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDExLCBleHBsaWNpdCgyKSwgc3BlYWtl
cnMKLVBBU1MgY29ubmVjdGlvbnM6IDEyLCBleHBsaWNpdCgyKSwgc3BlYWtlcnMKLVBBU1MgY29u
bmVjdGlvbnM6IDE0LCBleHBsaWNpdCgyKSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDE4
LCBleHBsaWNpdCgyKSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDExMSwgZXhwbGljaXQo
MiksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAxMjIsIGV4cGxpY2l0KDIpLCBzcGVha2Vy
cwotUEFTUyBjb25uZWN0aW9uczogMTIzLCBleHBsaWNpdCgyKSwgc3BlYWtlcnMKLVBBU1MgY29u
bmVjdGlvbnM6IDEyNCwgZXhwbGljaXQoMiksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAx
MjgsIGV4cGxpY2l0KDIpLCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9uczogMSwgZXhwbGljaXQo
NCksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAyLCBleHBsaWNpdCg0KSwgc3BlYWtlcnMK
LVBBU1MgY29ubmVjdGlvbnM6IDMsIGV4cGxpY2l0KDQpLCBzcGVha2VycwotUEFTUyBjb25uZWN0
aW9uczogNCwgZXhwbGljaXQoNCksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiA1LCBleHBs
aWNpdCg0KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDYsIGV4cGxpY2l0KDQpLCBzcGVh
a2VycwotUEFTUyBjb25uZWN0aW9uczogNywgZXhwbGljaXQoNCksIHNwZWFrZXJzCi1QQVNTIGNv
bm5lY3Rpb25zOiA4LCBleHBsaWNpdCg0KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDEx
LCBleHBsaWNpdCg0KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDEyLCBleHBsaWNpdCg0
KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDE0LCBleHBsaWNpdCg0KSwgc3BlYWtlcnMK
LVBBU1MgY29ubmVjdGlvbnM6IDE4LCBleHBsaWNpdCg0KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVj
dGlvbnM6IDExMSwgZXhwbGljaXQoNCksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAxMjIs
IGV4cGxpY2l0KDQpLCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9uczogMTIzLCBleHBsaWNpdCg0
KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDEyNCwgZXhwbGljaXQoNCksIHNwZWFrZXJz
Ci1QQVNTIGNvbm5lY3Rpb25zOiAxMjgsIGV4cGxpY2l0KDQpLCBzcGVha2VycwotUEFTUyBjb25u
ZWN0aW9uczogMSwgZXhwbGljaXQoNiksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAyLCBl
eHBsaWNpdCg2KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDMsIGV4cGxpY2l0KDYpLCBz
cGVha2VycwotUEFTUyBjb25uZWN0aW9uczogNCwgZXhwbGljaXQoNiksIHNwZWFrZXJzCi1QQVNT
IGNvbm5lY3Rpb25zOiA1LCBleHBsaWNpdCg2KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6
IDYsIGV4cGxpY2l0KDYpLCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9uczogNywgZXhwbGljaXQo
NiksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiA4LCBleHBsaWNpdCg2KSwgc3BlYWtlcnMK
LVBBU1MgY29ubmVjdGlvbnM6IDExLCBleHBsaWNpdCg2KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVj
dGlvbnM6IDEyLCBleHBsaWNpdCg2KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDE0LCBl
eHBsaWNpdCg2KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDE4LCBleHBsaWNpdCg2KSwg
c3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDExMSwgZXhwbGljaXQoNiksIHNwZWFrZXJzCi1Q
QVNTIGNvbm5lY3Rpb25zOiAxMjIsIGV4cGxpY2l0KDYpLCBzcGVha2VycwotUEFTUyBjb25uZWN0
aW9uczogMTIzLCBleHBsaWNpdCg2KSwgc3BlYWtlcnMKLVBBU1MgY29ubmVjdGlvbnM6IDEyNCwg
ZXhwbGljaXQoNiksIHNwZWFrZXJzCi1QQVNTIGNvbm5lY3Rpb25zOiAxMjgsIGV4cGxpY2l0KDYp
LCBzcGVha2VycwotUEFTUyBjb25uZWN0aW9uczogMSwgbWF4LCBkaXNjcmV0ZQotUEFTUyBjb25u
ZWN0aW9uczogMiwgbWF4LCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMywgbWF4LCBkaXNj
cmV0ZQotUEFTUyBjb25uZWN0aW9uczogNCwgbWF4LCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9u
czogNSwgbWF4LCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogNiwgbWF4LCBkaXNjcmV0ZQot
UEFTUyBjb25uZWN0aW9uczogNywgbWF4LCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogOCwg
bWF4LCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTEsIG1heCwgZGlzY3JldGUKLVBBU1Mg
Y29ubmVjdGlvbnM6IDEyLCBtYXgsIGRpc2NyZXRlCi1QQVNTIGNvbm5lY3Rpb25zOiAxNCwgbWF4
LCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTgsIG1heCwgZGlzY3JldGUKLVBBU1MgY29u
bmVjdGlvbnM6IDExMSwgbWF4LCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTIyLCBtYXgs
IGRpc2NyZXRlCi1QQVNTIGNvbm5lY3Rpb25zOiAxMjMsIG1heCwgZGlzY3JldGUKLVBBU1MgY29u
bmVjdGlvbnM6IDEyNCwgbWF4LCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTI4LCBtYXgs
IGRpc2NyZXRlCi1QQVNTIGNvbm5lY3Rpb25zOiAxLCBjbGFtcGVkLW1heCg0KSwgZGlzY3JldGUK
LVBBU1MgY29ubmVjdGlvbnM6IDIsIGNsYW1wZWQtbWF4KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25u
ZWN0aW9uczogMywgY2xhbXBlZC1tYXgoNCksIGRpc2NyZXRlCi1QQVNTIGNvbm5lY3Rpb25zOiA0
LCBjbGFtcGVkLW1heCg0KSwgZGlzY3JldGUKLVBBU1MgY29ubmVjdGlvbnM6IDUsIGNsYW1wZWQt
bWF4KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogNiwgY2xhbXBlZC1tYXgoNCksIGRp
c2NyZXRlCi1QQVNTIGNvbm5lY3Rpb25zOiA3LCBjbGFtcGVkLW1heCg0KSwgZGlzY3JldGUKLVBB
U1MgY29ubmVjdGlvbnM6IDgsIGNsYW1wZWQtbWF4KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0
aW9uczogMTEsIGNsYW1wZWQtbWF4KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTIs
IGNsYW1wZWQtbWF4KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTQsIGNsYW1wZWQt
bWF4KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTgsIGNsYW1wZWQtbWF4KDQpLCBk
aXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTExLCBjbGFtcGVkLW1heCg0KSwgZGlzY3JldGUK
LVBBU1MgY29ubmVjdGlvbnM6IDEyMiwgY2xhbXBlZC1tYXgoNCksIGRpc2NyZXRlCi1QQVNTIGNv
bm5lY3Rpb25zOiAxMjMsIGNsYW1wZWQtbWF4KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9u
czogMTI0LCBjbGFtcGVkLW1heCg0KSwgZGlzY3JldGUKLVBBU1MgY29ubmVjdGlvbnM6IDEyOCwg
Y2xhbXBlZC1tYXgoNCksIGRpc2NyZXRlCi1QQVNTIGNvbm5lY3Rpb25zOiAxLCBleHBsaWNpdCg0
KSwgZGlzY3JldGUKLVBBU1MgY29ubmVjdGlvbnM6IDIsIGV4cGxpY2l0KDQpLCBkaXNjcmV0ZQot
UEFTUyBjb25uZWN0aW9uczogMywgZXhwbGljaXQoNCksIGRpc2NyZXRlCi1QQVNTIGNvbm5lY3Rp
b25zOiA0LCBleHBsaWNpdCg0KSwgZGlzY3JldGUKLVBBU1MgY29ubmVjdGlvbnM6IDUsIGV4cGxp
Y2l0KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogNiwgZXhwbGljaXQoNCksIGRpc2Ny
ZXRlCi1QQVNTIGNvbm5lY3Rpb25zOiA3LCBleHBsaWNpdCg0KSwgZGlzY3JldGUKLVBBU1MgY29u
bmVjdGlvbnM6IDgsIGV4cGxpY2l0KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTEs
IGV4cGxpY2l0KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTIsIGV4cGxpY2l0KDQp
LCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTQsIGV4cGxpY2l0KDQpLCBkaXNjcmV0ZQot
UEFTUyBjb25uZWN0aW9uczogMTgsIGV4cGxpY2l0KDQpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0
aW9uczogMTExLCBleHBsaWNpdCg0KSwgZGlzY3JldGUKLVBBU1MgY29ubmVjdGlvbnM6IDEyMiwg
ZXhwbGljaXQoNCksIGRpc2NyZXRlCi1QQVNTIGNvbm5lY3Rpb25zOiAxMjMsIGV4cGxpY2l0KDQp
LCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTI0LCBleHBsaWNpdCg0KSwgZGlzY3JldGUK
LVBBU1MgY29ubmVjdGlvbnM6IDEyOCwgZXhwbGljaXQoNCksIGRpc2NyZXRlCi1QQVNTIGNvbm5l
Y3Rpb25zOiAxLCBleHBsaWNpdCg4KSwgZGlzY3JldGUKLVBBU1MgY29ubmVjdGlvbnM6IDIsIGV4
cGxpY2l0KDgpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMywgZXhwbGljaXQoOCksIGRp
c2NyZXRlCi1QQVNTIGNvbm5lY3Rpb25zOiA0LCBleHBsaWNpdCg4KSwgZGlzY3JldGUKLVBBU1Mg
Y29ubmVjdGlvbnM6IDUsIGV4cGxpY2l0KDgpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczog
NiwgZXhwbGljaXQoOCksIGRpc2NyZXRlCi1QQVNTIGNvbm5lY3Rpb25zOiA3LCBleHBsaWNpdCg4
KSwgZGlzY3JldGUKLVBBU1MgY29ubmVjdGlvbnM6IDgsIGV4cGxpY2l0KDgpLCBkaXNjcmV0ZQot
UEFTUyBjb25uZWN0aW9uczogMTEsIGV4cGxpY2l0KDgpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0
aW9uczogMTIsIGV4cGxpY2l0KDgpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTQsIGV4
cGxpY2l0KDgpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTgsIGV4cGxpY2l0KDgpLCBk
aXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTExLCBleHBsaWNpdCg4KSwgZGlzY3JldGUKLVBB
U1MgY29ubmVjdGlvbnM6IDEyMiwgZXhwbGljaXQoOCksIGRpc2NyZXRlCi1QQVNTIGNvbm5lY3Rp
b25zOiAxMjMsIGV4cGxpY2l0KDgpLCBkaXNjcmV0ZQotUEFTUyBjb25uZWN0aW9uczogMTI0LCBl
eHBsaWNpdCg4KSwgZGlzY3JldGUKLVBBU1MgY29ubmVjdGlvbnM6IDEyOCwgZXhwbGljaXQoOCks
IGRpc2NyZXRlCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExF
VEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vYXVkaW9ub2RlLWNoYW5uZWwt
cnVsZXMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2F1ZGlvbm9kZS1jaGFubmVsLXJ1bGVz
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU4MzdhOGRiNjFkMGQ5YzhlZmI0
OTUxNjUwZTg3ZjhmNWZlOTBkZWUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vYXVkaW9ub2RlLWNoYW5uZWwtcnVsZXMu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDMxMSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLQot
PGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9z
Y3JpcHQ+Ci08c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJyZXNvdXJjZXMvYXVk
aW8tdGVzdGluZy5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci0KLTxib2R5PgotPGRpdiBpZD0iZGVz
Y3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci0KLTxzY3JpcHQ+Ci1k
ZXNjcmlwdGlvbigiQ2hhbm5lbCBtaXhpbmcgcnVsZXMgZm9yIEF1ZGlvTm9kZXMuIik7Ci0KLXZh
ciBjb250ZXh0ID0gMDsKLXZhciBzYW1wbGVSYXRlID0gNDQxMDA7Ci12YXIgcmVuZGVyTnVtYmVy
T2ZDaGFubmVscyA9IDg7Ci12YXIgc2luZ2xlVGVzdEZyYW1lTGVuZ3RoID0gODsKLXZhciB0ZXN0
QnVmZmVyczsKLQotLy8gQSBsaXN0IG9mIGNvbm5lY3Rpb25zIHRvIGFuIEF1ZGlvTm9kZSBpbnB1
dCwgZWFjaCBvZiB3aGljaCBpcyB0byBiZSB1c2VkIGluIG9uZSBvciBtb3JlIHNwZWNpZmljIHRl
c3QgY2FzZXMuCi0vLyBFYWNoIGVsZW1lbnQgaW4gdGhlIGxpc3QgaXMgYSBzdHJpbmcsIHdpdGgg
dGhlIG51bWJlciBvZiBjb25uZWN0aW9ucyBjb3JyZXNwb25kaW5nIHRvIHRoZSBsZW5ndGggb2Yg
dGhlIHN0cmluZywKLS8vIGFuZCBlYWNoIGNoYXJhY3RlciBpbiB0aGUgc3RyaW5nIGlzIGZyb20g
JzEnIHRvICc4JyByZXByZXNlbnRpbmcgYSAxIHRvIDggY2hhbm5lbCBjb25uZWN0aW9uIChmcm9t
IGFuIEF1ZGlvTm9kZSBvdXRwdXQpLgotLy8gRm9yIGV4YW1wbGUsIHRoZSBzdHJpbmcgIjEyOCIg
bWVhbnMgMyBjb25uZWN0aW9ucywgaGF2aW5nIDEsIDIsIGFuZCA4IGNoYW5uZWxzIHJlc3BlY3Rp
dmVseS4KLXZhciBjb25uZWN0aW9uc0xpc3QgPSBbIjEiLCAiMiIsICIzIiwgIjQiLCAiNSIsICI2
IiwgIjciLCAiOCIsICIxMSIsICIxMiIsICIxNCIsICIxOCIsICIxMTEiLCAiMTIyIiwgIjEyMyIs
ICIxMjQiLCAiMTI4Il07Ci0KLS8vIEEgbGlzdCBvZiBtaXhpbmcgcnVsZXMsIGVhY2ggb2Ygd2hp
Y2ggd2lsbCBiZSB0ZXN0ZWQgYWdhaW5zdCBhbGwgb2YgdGhlIGNvbm5lY3Rpb25zIGluIGNvbm5l
Y3Rpb25zTGlzdC4KLXZhciBtaXhpbmdSdWxlc0xpc3QgPSBbCi0gICAge2NoYW5uZWxDb3VudDog
MiwgY2hhbm5lbENvdW50TW9kZTogIm1heCIsIGNoYW5uZWxJbnRlcnByZXRhdGlvbjogInNwZWFr
ZXJzIn0sCi0gICAge2NoYW5uZWxDb3VudDogNCwgY2hhbm5lbENvdW50TW9kZTogImNsYW1wZWQt
bWF4IiwgY2hhbm5lbEludGVycHJldGF0aW9uOiAic3BlYWtlcnMifSwKLQotICAgIC8vIFRlc3Qg
dXAtZG93bi1taXggdG8gc29tZSBleHBsaWNpdCBzcGVha2VyIGxheW91dHMuCi0gICAge2NoYW5u
ZWxDb3VudDogMSwgY2hhbm5lbENvdW50TW9kZTogImV4cGxpY2l0IiwgY2hhbm5lbEludGVycHJl
dGF0aW9uOiAic3BlYWtlcnMifSwKLSAgICB7Y2hhbm5lbENvdW50OiAyLCBjaGFubmVsQ291bnRN
b2RlOiAiZXhwbGljaXQiLCBjaGFubmVsSW50ZXJwcmV0YXRpb246ICJzcGVha2VycyJ9LAotICAg
IHtjaGFubmVsQ291bnQ6IDQsIGNoYW5uZWxDb3VudE1vZGU6ICJleHBsaWNpdCIsIGNoYW5uZWxJ
bnRlcnByZXRhdGlvbjogInNwZWFrZXJzIn0sCi0gICAge2NoYW5uZWxDb3VudDogNiwgY2hhbm5l
bENvdW50TW9kZTogImV4cGxpY2l0IiwgY2hhbm5lbEludGVycHJldGF0aW9uOiAic3BlYWtlcnMi
fSwKLQotICAgIHtjaGFubmVsQ291bnQ6IDIsIGNoYW5uZWxDb3VudE1vZGU6ICJtYXgiLCBjaGFu
bmVsSW50ZXJwcmV0YXRpb246ICJkaXNjcmV0ZSJ9LAotICAgIHtjaGFubmVsQ291bnQ6IDQsIGNo
YW5uZWxDb3VudE1vZGU6ICJjbGFtcGVkLW1heCIsIGNoYW5uZWxJbnRlcnByZXRhdGlvbjogImRp
c2NyZXRlIn0sCi0gICAge2NoYW5uZWxDb3VudDogNCwgY2hhbm5lbENvdW50TW9kZTogImV4cGxp
Y2l0IiwgY2hhbm5lbEludGVycHJldGF0aW9uOiAiZGlzY3JldGUifSwKLSAgICB7Y2hhbm5lbENv
dW50OiA4LCBjaGFubmVsQ291bnRNb2RlOiAiZXhwbGljaXQiLCBjaGFubmVsSW50ZXJwcmV0YXRp
b246ICJkaXNjcmV0ZSJ9LAotXTsKLQotdmFyIG51bWJlck9mVGVzdHMgPSBtaXhpbmdSdWxlc0xp
c3QubGVuZ3RoICogY29ubmVjdGlvbnNMaXN0Lmxlbmd0aDsKLQotLy8gQ3JlYXRlIGFuIG4tY2hh
bm5lbCBidWZmZXIsIHdpdGggYWxsIHNhbXBsZSBkYXRhIHplcm8gZXhjZXB0IGZvciBhIHNoaWZ0
ZWQgaW1wdWxzZS4KLS8vIFRoZSBpbXB1bHNlIHBvc2l0aW9uIGRlcGVuZHMgb24gdGhlIGNoYW5u
ZWwgaW5kZXguCi0vLyBGb3IgZXhhbXBsZSwgZm9yIGEgNC1jaGFubmVsIGJ1ZmZlcjoKLS8vIGNo
YW5uZWwwOiAxIDAgMCAwIDAgMCAwIDAKLS8vIGNoYW5uZWwxOiAwIDEgMCAwIDAgMCAwIDAKLS8v
IGNoYW5uZWwyOiAwIDAgMSAwIDAgMCAwIDAKLS8vIGNoYW5uZWwzOiAwIDAgMCAxIDAgMCAwIDAK
LWZ1bmN0aW9uIGNyZWF0ZVRlc3RCdWZmZXIobnVtYmVyT2ZDaGFubmVscykgewotICAgIHZhciBi
dWZmZXIgPSBjb250ZXh0LmNyZWF0ZUJ1ZmZlcihudW1iZXJPZkNoYW5uZWxzLCBzaW5nbGVUZXN0
RnJhbWVMZW5ndGgsIGNvbnRleHQuc2FtcGxlUmF0ZSk7Ci0gICAgZm9yICh2YXIgaSA9IDA7IGkg
PCBudW1iZXJPZkNoYW5uZWxzOyArK2kpIHsKLSAgICAgICAgdmFyIGRhdGEgPSBidWZmZXIuZ2V0
Q2hhbm5lbERhdGEoaSk7Ci0gICAgICAgIGRhdGFbaV0gPSAxOwotICAgIH0KLSAgICByZXR1cm4g
YnVmZmVyOwotfQotCi0vLyBEaXNjcmV0ZSBjaGFubmVsIGludGVycHJldGF0aW9uIG1peGluZzoK
LS8vIGh0dHBzOi8vZHZjcy53My5vcmcvaGcvYXVkaW8vcmF3LWZpbGUvdGlwL3dlYmF1ZGlvL3Nw
ZWNpZmljYXRpb24uaHRtbCNVcE1peAotLy8gdXAtbWl4IGJ5IGZpbGxpbmcgY2hhbm5lbHMgdW50
aWwgdGhleSBydW4gb3V0IHRoZW4gaWdub3JlIHJlbWFpbmluZyBkZXN0IGNoYW5uZWxzLgotLy8g
ZG93bi1taXggYnkgZmlsbGluZyBhcyBtYW55IGNoYW5uZWxzIGFzIHBvc3NpYmxlLCB0aGVuIGRy
b3BwaW5nIHJlbWFpbmluZyBzb3VyY2UgY2hhbm5lbHMuCi1mdW5jdGlvbiBkaXNjcmV0ZVN1bShz
b3VyY2VCdWZmZXIsIGRlc3RCdWZmZXIpIHsKLSAgICBpZiAoc291cmNlQnVmZmVyLmxlbmd0aCAh
PSBkZXN0QnVmZmVyLmxlbmd0aCkgewotICAgICAgICBhbGVydCgiZGlzY3JldGVTdW0oKTogaW52
YWxpZCBBdWRpb0J1ZmZlciEiKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIHZhciBu
dW1iZXJPZkNoYW5uZWxzID0gc291cmNlQnVmZmVyLm51bWJlck9mQ2hhbm5lbHMgPCBkZXN0QnVm
ZmVyLm51bWJlck9mQ2hhbm5lbHMgPyBzb3VyY2VCdWZmZXIubnVtYmVyT2ZDaGFubmVscyA6IGRl
c3RCdWZmZXIubnVtYmVyT2ZDaGFubmVsczsKLSAgICB2YXIgbGVuZ3RoID0gbnVtYmVyT2ZDaGFu
bmVsczsKLQotICAgIGZvciAodmFyIGMgPSAwOyBjIDwgbnVtYmVyT2ZDaGFubmVsczsgKytjKSB7
Ci0gICAgICAgIHZhciBzb3VyY2UgPSBzb3VyY2VCdWZmZXIuZ2V0Q2hhbm5lbERhdGEoYyk7Ci0g
ICAgICAgIHZhciBkZXN0ID0gZGVzdEJ1ZmZlci5nZXRDaGFubmVsRGF0YShjKTsKLSAgICAgICAg
Zm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkgewotICAgICAgICAgICAgZGVzdFtpXSAr
PSBzb3VyY2VbaV07Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLS8vIFNwZWFrZXIgY2hhbm5lbCBp
bnRlcnByZXRhdGlvbiBtaXhpbmc6Ci0vLyBodHRwczovL2R2Y3MudzMub3JnL2hnL2F1ZGlvL3Jh
dy1maWxlL3RpcC93ZWJhdWRpby9zcGVjaWZpY2F0aW9uLmh0bWwjVXBNaXgKLWZ1bmN0aW9uIHNw
ZWFrZXJzU3VtKHNvdXJjZUJ1ZmZlciwgZGVzdEJ1ZmZlcikKLXsKLSAgICB2YXIgbnVtYmVyT2ZT
b3VyY2VDaGFubmVscyA9IHNvdXJjZUJ1ZmZlci5udW1iZXJPZkNoYW5uZWxzOwotICAgIHZhciBu
dW1iZXJPZkRlc3RpbmF0aW9uQ2hhbm5lbHMgPSBkZXN0QnVmZmVyLm51bWJlck9mQ2hhbm5lbHM7
Ci0gICAgdmFyIGxlbmd0aCA9IGRlc3RCdWZmZXIubGVuZ3RoOwotCi0gICAgaWYgKG51bWJlck9m
RGVzdGluYXRpb25DaGFubmVscyA9PSAyICYmIG51bWJlck9mU291cmNlQ2hhbm5lbHMgPT0gMSkg
ewotICAgICAgICAvLyBIYW5kbGUgbW9ubyAtPiBzdGVyZW8gY2FzZSAoc3VtbWluZyBtb25vIGNo
YW5uZWwgaW50byBib3RoIGxlZnQgYW5kIHJpZ2h0KS4KLSAgICAgICAgdmFyIHNvdXJjZSA9IHNv
dXJjZUJ1ZmZlci5nZXRDaGFubmVsRGF0YSgwKTsKLSAgICAgICAgdmFyIGRlc3RMID0gZGVzdEJ1
ZmZlci5nZXRDaGFubmVsRGF0YSgwKTsKLSAgICAgICAgdmFyIGRlc3RSID0gZGVzdEJ1ZmZlci5n
ZXRDaGFubmVsRGF0YSgxKTsKLQotICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbmd0aDsg
KytpKSB7Ci0gICAgICAgICAgICBkZXN0TFtpXSArPSBzb3VyY2VbaV07Ci0gICAgICAgICAgICBk
ZXN0UltpXSArPSBzb3VyY2VbaV07Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgaWYgKG51bWJlck9m
RGVzdGluYXRpb25DaGFubmVscyA9PSAxICYmIG51bWJlck9mU291cmNlQ2hhbm5lbHMgPT0gMikg
ewotICAgICAgICAvLyBIYW5kbGUgc3RlcmVvIC0+IG1vbm8gY2FzZS4gb3V0cHV0ICs9IDAuNSAq
IChpbnB1dC5MICsgaW5wdXQuUikuCi0gICAgICAgIHZhciBzb3VyY2VMID0gc291cmNlQnVmZmVy
LmdldENoYW5uZWxEYXRhKDApOwotICAgICAgICB2YXIgc291cmNlUiA9IHNvdXJjZUJ1ZmZlci5n
ZXRDaGFubmVsRGF0YSgxKTsKLSAgICAgICAgdmFyIGRlc3QgPSBkZXN0QnVmZmVyLmdldENoYW5u
ZWxEYXRhKDApOwotCi0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuZ3RoOyArK2kpIHsK
LSAgICAgICAgICAgIGRlc3RbaV0gKz0gMC41ICogKHNvdXJjZUxbaV0gKyBzb3VyY2VSW2ldKTsK
LSAgICAgICAgfQotICAgIH0gZWxzZSBpZiAobnVtYmVyT2ZEZXN0aW5hdGlvbkNoYW5uZWxzID09
IDYgJiYgbnVtYmVyT2ZTb3VyY2VDaGFubmVscyA9PSAxKSB7Ci0gICAgICAgIC8vIEhhbmRsZSBt
b25vIC0+IDUuMSBjYXNlLCBzdW0gbW9ubyBjaGFubmVsIGludG8gY2VudGVyLgotICAgICAgICB2
YXIgc291cmNlID0gc291cmNlQnVmZmVyLmdldENoYW5uZWxEYXRhKDApOwotICAgICAgICB2YXIg
ZGVzdCA9IGRlc3RCdWZmZXIuZ2V0Q2hhbm5lbERhdGEoMik7Ci0KLSAgICAgICAgZm9yICh2YXIg
aSA9IDA7IGkgPCBsZW5ndGg7ICsraSkgewotICAgICAgICAgICAgZGVzdFtpXSArPSBzb3VyY2Vb
aV07Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgaWYgKG51bWJlck9mRGVzdGluYXRpb25DaGFubmVs
cyA9PSAxICYmIG51bWJlck9mU291cmNlQ2hhbm5lbHMgPT0gNikgewotICAgICAgICAvLyBIYW5k
bGUgNS4xIC0+IG1vbm8uCi0gICAgICAgIHZhciBzb3VyY2VMID0gc291cmNlQnVmZmVyLmdldENo
YW5uZWxEYXRhKDApOwotICAgICAgICB2YXIgc291cmNlUiA9IHNvdXJjZUJ1ZmZlci5nZXRDaGFu
bmVsRGF0YSgxKTsKLSAgICAgICAgdmFyIHNvdXJjZUMgPSBzb3VyY2VCdWZmZXIuZ2V0Q2hhbm5l
bERhdGEoMik7Ci0gICAgICAgIC8vIHNraXAgTEZFIGZvciBub3csIGFjY29yZGluZyB0byBjdXJy
ZW50IHNwZWMuCi0gICAgICAgIHZhciBzb3VyY2VTTCA9IHNvdXJjZUJ1ZmZlci5nZXRDaGFubmVs
RGF0YSg0KTsKLSAgICAgICAgdmFyIHNvdXJjZVNSID0gc291cmNlQnVmZmVyLmdldENoYW5uZWxE
YXRhKDUpOwotICAgICAgICB2YXIgZGVzdCA9IGRlc3RCdWZmZXIuZ2V0Q2hhbm5lbERhdGEoMCk7
Ci0KLSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkgewotICAgICAgICAg
ICAgZGVzdFtpXSArPSAwLjcwNzEgKiAoc291cmNlTFtpXSArIHNvdXJjZVJbaV0pICsgc291cmNl
Q1tpXSArIDAuNSAqIChzb3VyY2VTTFtpXSArIHNvdXJjZVNSW2ldKTsKLSAgICAgICAgfQotICAg
IH0gZWxzZSB7Ci0gICAgICAgIC8vIEZhbGxiYWNrIGZvciB1bmtub3duIGNvbWJpbmF0aW9ucy4K
LSAgICAgICAgZGlzY3JldGVTdW0oc291cmNlQnVmZmVyLCBkZXN0QnVmZmVyKTsKLSAgICB9Ci19
Ci0KLWZ1bmN0aW9uIHNjaGVkdWxlVGVzdCh0ZXN0TnVtYmVyLCBjb25uZWN0aW9ucywgY2hhbm5l
bENvdW50LCBjaGFubmVsQ291bnRNb2RlLCBjaGFubmVsSW50ZXJwcmV0YXRpb24pIHsKLSAgICB2
YXIgbWl4Tm9kZSA9IGNvbnRleHQuY3JlYXRlR2FpbigpOwotICAgIG1peE5vZGUuY2hhbm5lbENv
dW50ID0gY2hhbm5lbENvdW50OwotICAgIG1peE5vZGUuY2hhbm5lbENvdW50TW9kZSA9IGNoYW5u
ZWxDb3VudE1vZGU7Ci0gICAgbWl4Tm9kZS5jaGFubmVsSW50ZXJwcmV0YXRpb24gPSBjaGFubmVs
SW50ZXJwcmV0YXRpb247Ci0gICAgbWl4Tm9kZS5jb25uZWN0KGNvbnRleHQuZGVzdGluYXRpb24p
OwotCi0gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb25uZWN0aW9ucy5sZW5ndGg7ICsraSkgewot
ICAgICAgICB2YXIgY29ubmVjdGlvbk51bWJlck9mQ2hhbm5lbHMgPSBjb25uZWN0aW9ucy5jaGFy
Q29kZUF0KGkpIC0gIjAiLmNoYXJDb2RlQXQoMCk7Ci0KLSAgICAgICAgdmFyIHNvdXJjZSA9IGNv
bnRleHQuY3JlYXRlQnVmZmVyU291cmNlKCk7Ci0gICAgICAgIC8vIEdldCBhIGJ1ZmZlciB3aXRo
IHRoZSByaWdodCBudW1iZXIgb2YgY2hhbm5lbHMsIGNvbnZlcnRpbmcgZnJvbSAxLWJhc2VkIHRv
IDAtYmFzZWQgaW5kZXguCi0gICAgICAgIHZhciBidWZmZXIgPSB0ZXN0QnVmZmVyc1tjb25uZWN0
aW9uTnVtYmVyT2ZDaGFubmVscyAtIDFdOwotICAgICAgICBzb3VyY2UuYnVmZmVyID0gYnVmZmVy
OwotICAgICAgICBzb3VyY2UuY29ubmVjdChtaXhOb2RlKTsKLQotICAgICAgICAvLyBTdGFydCBh
dCB0aGUgcmlnaHQgb2Zmc2V0LgotICAgICAgICB2YXIgc2FtcGxlRnJhbWVPZmZzZXQgPSB0ZXN0
TnVtYmVyICogc2luZ2xlVGVzdEZyYW1lTGVuZ3RoOwotICAgICAgICB2YXIgdGltZSA9IHNhbXBs
ZUZyYW1lT2Zmc2V0IC8gc2FtcGxlUmF0ZTsKLSAgICAgICAgc291cmNlLnN0YXJ0KHRpbWUpOwot
ICAgIH0KLX0KLQotZnVuY3Rpb24gY29tcHV0ZU51bWJlck9mQ2hhbm5lbHMoY29ubmVjdGlvbnMs
IGNoYW5uZWxDb3VudCwgY2hhbm5lbENvdW50TW9kZSkgewotICAgIGlmIChjaGFubmVsQ291bnRN
b2RlID09ICJleHBsaWNpdCIpCi0gICAgICAgIHJldHVybiBjaGFubmVsQ291bnQ7Ci0KLSAgICB2
YXIgY29tcHV0ZWROdW1iZXJPZkNoYW5uZWxzID0gMTsgLy8gTXVzdCBoYXZlIGF0IGxlYXN0IG9u
ZSBjaGFubmVsLgotCi0gICAgLy8gQ29tcHV0ZSAiY29tcHV0ZWROdW1iZXJPZkNoYW5uZWxzIiBi
YXNlZCBvbiBhbGwgdGhlIGNvbm5lY3Rpb25zLgotICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY29u
bmVjdGlvbnMubGVuZ3RoOyArK2kpIHsKLSAgICAgICAgdmFyIGNvbm5lY3Rpb25OdW1iZXJPZkNo
YW5uZWxzID0gY29ubmVjdGlvbnMuY2hhckNvZGVBdChpKSAtICIwIi5jaGFyQ29kZUF0KDApOwot
ICAgICAgICBjb21wdXRlZE51bWJlck9mQ2hhbm5lbHMgPSBNYXRoLm1heChjb21wdXRlZE51bWJl
ck9mQ2hhbm5lbHMsIGNvbm5lY3Rpb25OdW1iZXJPZkNoYW5uZWxzKTsKLSAgICB9Ci0KLSAgICBp
ZiAoY2hhbm5lbENvdW50TW9kZSA9PSAiY2xhbXBlZC1tYXgiKQotICAgICAgICBjb21wdXRlZE51
bWJlck9mQ2hhbm5lbHMgPSBNYXRoLm1pbihjb21wdXRlZE51bWJlck9mQ2hhbm5lbHMsIGNoYW5u
ZWxDb3VudCk7Ci0KLSAgICByZXR1cm4gY29tcHV0ZWROdW1iZXJPZkNoYW5uZWxzOwotfQotCi1m
dW5jdGlvbiBjaGVja1Rlc3RSZXN1bHQocmVuZGVyZWRCdWZmZXIsIHRlc3ROdW1iZXIsIGNvbm5l
Y3Rpb25zLCBjaGFubmVsQ291bnQsIGNoYW5uZWxDb3VudE1vZGUsIGNoYW5uZWxJbnRlcnByZXRh
dGlvbikgewotICAgIHZhciBzID0gImNvbm5lY3Rpb25zOiAiICsgY29ubmVjdGlvbnMgKyAiLCAi
ICsgY2hhbm5lbENvdW50TW9kZTsKLQotICAgIC8vIGNoYW5uZWxDb3VudCBpcyBpZ25vcmVkIGlu
ICJtYXgiIG1vZGUuCi0gICAgaWYgKGNoYW5uZWxDb3VudE1vZGUgPT0gImNsYW1wZWQtbWF4IiB8
fCBjaGFubmVsQ291bnRNb2RlID09ICJleHBsaWNpdCIpIHsKLSAgICAgICAgcyArPSAiKCIgKyBj
aGFubmVsQ291bnQgKyAiKSI7Ci0gICAgfQotCi0gICAgcyArPSAiLCAiICsgY2hhbm5lbEludGVy
cHJldGF0aW9uOwotCi0gICAgdmFyIGNvbXB1dGVkTnVtYmVyT2ZDaGFubmVscyA9IGNvbXB1dGVO
dW1iZXJPZkNoYW5uZWxzKGNvbm5lY3Rpb25zLCBjaGFubmVsQ291bnQsIGNoYW5uZWxDb3VudE1v
ZGUpOwotCi0gICAgLy8gU2hvdyByZW5kZXJlZCBvdXRwdXQgZm9yIHRoaXMgdGVzdDoKLSAgICAv
LwotICAgIC8vIGNvbnNvbGUubG9nKHMpOwotICAgIC8vIHZhciBzYW1wbGVGcmFtZU9mZnNldCA9
IHRlc3ROdW1iZXIgKiBzaW5nbGVUZXN0RnJhbWVMZW5ndGg7Ci0gICAgLy8gZm9yICh2YXIgYyA9
IDA7IGMgPCByZW5kZXJOdW1iZXJPZkNoYW5uZWxzOyArK2MpIHsKLSAgICAvLyAgICAgdmFyIGRh
dGEgPSByZW5kZXJlZEJ1ZmZlci5nZXRDaGFubmVsRGF0YShjKTsKLSAgICAvLyAgICAgdmFyIHMg
PSAiIjsKLSAgICAvLyAgICAgZm9yICh2YXIgc2FtcGxlRnJhbWUgPSAwOyBzYW1wbGVGcmFtZSA8
IHNpbmdsZVRlc3RGcmFtZUxlbmd0aDsgKytzYW1wbGVGcmFtZSkgewotICAgIC8vICAgICAgICAg
cyArPSBkYXRhW3NhbXBsZUZyYW1lICsgc2FtcGxlRnJhbWVPZmZzZXRdICsgIiAiOwotICAgIC8v
ICAgICB9Ci0gICAgLy8gICAgIHMgKz0gIlxuIjsKLSAgICAvLyAgICAgY29uc29sZS5sb2cocyk7
Ci0gICAgLy8gfQotICAgIC8vIHJldHVybjsKLQotICAgIC8vIENyZWF0ZSBhIHplcm8taW5pdGlh
bGl6ZWQgc2lsZW50IEF1ZGlvQnVmZmVyIHdpdGggY29tcHV0ZWROdW1iZXJPZkNoYW5uZWxzLgot
ICAgIHZhciBkZXN0QnVmZmVyID0gY29udGV4dC5jcmVhdGVCdWZmZXIoY29tcHV0ZWROdW1iZXJP
ZkNoYW5uZWxzLCBzaW5nbGVUZXN0RnJhbWVMZW5ndGgsIGNvbnRleHQuc2FtcGxlUmF0ZSk7Ci0K
LSAgICAvLyBNaXggYWxsIG9mIHRoZSBjb25uZWN0aW9ucyBpbnRvIHRoZSBkZXN0aW5hdGlvbiBi
dWZmZXIuCi0gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb25uZWN0aW9ucy5sZW5ndGg7ICsraSkg
ewotICAgICAgICB2YXIgY29ubmVjdGlvbk51bWJlck9mQ2hhbm5lbHMgPSBjb25uZWN0aW9ucy5j
aGFyQ29kZUF0KGkpIC0gIjAiLmNoYXJDb2RlQXQoMCk7Ci0gICAgICAgIHZhciBzb3VyY2VCdWZm
ZXIgPSB0ZXN0QnVmZmVyc1tjb25uZWN0aW9uTnVtYmVyT2ZDaGFubmVscyAtIDFdOyAvLyBjb252
ZXJ0IGZyb20gMS1iYXNlZCB0byAwLWJhc2VkIGluZGV4Ci0KLSAgICAgICAgaWYgKGNoYW5uZWxJ
bnRlcnByZXRhdGlvbiA9PSAic3BlYWtlcnMiKSB7Ci0gICAgICAgICAgICBzcGVha2Vyc1N1bShz
b3VyY2VCdWZmZXIsIGRlc3RCdWZmZXIpOwotICAgICAgICB9IGVsc2UgaWYgKGNoYW5uZWxJbnRl
cnByZXRhdGlvbiA9PSAiZGlzY3JldGUiKSB7Ci0gICAgICAgICAgICBkaXNjcmV0ZVN1bShzb3Vy
Y2VCdWZmZXIsIGRlc3RCdWZmZXIpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgYWxl
cnQoIkludmFsaWQgY2hhbm5lbCBpbnRlcnByZXRhdGlvbiEiKTsKLSAgICAgICAgfQotICAgIH0K
LQotICAgIC8vIFZhbGlkYXRlIHRoYXQgZGVzdEJ1ZmZlciBtYXRjaGVzIHRoZSByZW5kZXJlZCBv
dXRwdXQuCi0gICAgLy8gV2UgbmVlZCB0byBjaGVjayB0aGUgcmVuZGVyZWQgb3V0cHV0IGF0IGEg
c3BlY2lmaWMgc2FtcGxlLWZyYW1lLW9mZnNldCBjb3JyZXNwb25kaW5nCi0gICAgLy8gdG8gdGhl
IHNwZWNpZmljIHRlc3QgY2FzZSB3ZSdyZSBjaGVja2luZyBmb3IgYmFzZWQgb24gdGVzdE51bWJl
ci4KLQotICAgIHZhciBzYW1wbGVGcmFtZU9mZnNldCA9IHRlc3ROdW1iZXIgKiBzaW5nbGVUZXN0
RnJhbWVMZW5ndGg7Ci0gICAgZm9yICh2YXIgYyA9IDA7IGMgPCByZW5kZXJOdW1iZXJPZkNoYW5u
ZWxzOyArK2MpIHsKLSAgICAgICAgdmFyIHJlbmRlcmVkRGF0YSA9IHJlbmRlcmVkQnVmZmVyLmdl
dENoYW5uZWxEYXRhKGMpOwotICAgICAgICBmb3IgKHZhciBmcmFtZSA9IDA7IGZyYW1lIDwgc2lu
Z2xlVGVzdEZyYW1lTGVuZ3RoOyArK2ZyYW1lKSB7Ci0gICAgICAgICAgICB2YXIgcmVuZGVyZWRW
YWx1ZSA9IHJlbmRlcmVkRGF0YVtmcmFtZSArIHNhbXBsZUZyYW1lT2Zmc2V0XTsKLQotICAgICAg
ICAgICAgdmFyIGV4cGVjdGVkVmFsdWUgPSAwOwotICAgICAgICAgICAgaWYgKGMgPCBkZXN0QnVm
ZmVyLm51bWJlck9mQ2hhbm5lbHMpIHsKLSAgICAgICAgICAgICAgICB2YXIgZXhwZWN0ZWREYXRh
ID0gZGVzdEJ1ZmZlci5nZXRDaGFubmVsRGF0YShjKTsKLSAgICAgICAgICAgICAgICBleHBlY3Rl
ZFZhbHVlID0gZXhwZWN0ZWREYXRhW2ZyYW1lXTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAg
ICAgLy8gV2UgbWF5IG5lZWQgdG8gYWRkIGFuIGVwc2lsb24gaW4gdGhlIGNvbXBhcmlzb24gaWYg
d2UgYWRkIG1vcmUgdGVzdCB2ZWN0b3JzLgotICAgICAgICAgICAgaWYgKHJlbmRlcmVkVmFsdWUg
IT0gZXhwZWN0ZWRWYWx1ZSkgewotICAgICAgICAgICAgICAgIHZhciBtZXNzYWdlID0gcyArICJy
ZW5kZXJlZDogIiArIHJlbmRlcmVkVmFsdWUgKyAiIGV4cGVjdGVkOiAiICsgZXhwZWN0ZWRWYWx1
ZSArICIgY2hhbm5lbDogIiArIGMgKyAiIGZyYW1lOiAiICsgZnJhbWU7Ci0gICAgICAgICAgICAg
ICAgdGVzdEZhaWxlZChzKTsKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9
Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICB0ZXN0UGFzc2VkKHMpOwotfQotCi1mdW5jdGlvbiBj
aGVja1Jlc3VsdChldmVudCkgewotICAgIHZhciBidWZmZXIgPSBldmVudC5yZW5kZXJlZEJ1ZmZl
cjsKLQotICAgIC8vIFNhbml0eSBjaGVjayByZXN1bHQuCi0gICAgaWYgKGJ1ZmZlci5sZW5ndGgg
IT0gbnVtYmVyT2ZUZXN0cyAqIHNpbmdsZVRlc3RGcmFtZUxlbmd0aCB8fCBidWZmZXIubnVtYmVy
T2ZDaGFubmVscyAhPSByZW5kZXJOdW1iZXJPZkNoYW5uZWxzKSB7Ci0gICAgICAgIHRlc3RGYWls
ZWQoIk9mZmxpbmVBdWRpb0NvbnRleHQgcmVzdWx0IG5vdCBvZiBleHBlY3RlZCBzaXplISIpOwot
ICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIC8v
IENoZWNrIGFsbCB0aGUgdGVzdHMuCi0gICAgdmFyIHRlc3ROdW1iZXIgPSAwOwotICAgIGZvciAo
dmFyIG0gPSAwOyBtIDwgbWl4aW5nUnVsZXNMaXN0Lmxlbmd0aDsgKyttKSB7Ci0gICAgICAgIHZh
ciBtaXhpbmdSdWxlcyA9IG1peGluZ1J1bGVzTGlzdFttXTsKLSAgICAgICAgZm9yICh2YXIgaSA9
IDA7IGkgPCBjb25uZWN0aW9uc0xpc3QubGVuZ3RoOyArK2ksICsrdGVzdE51bWJlcikgewotICAg
ICAgICAgICAgY2hlY2tUZXN0UmVzdWx0KGJ1ZmZlciwgdGVzdE51bWJlciwgY29ubmVjdGlvbnNM
aXN0W2ldLCBtaXhpbmdSdWxlcy5jaGFubmVsQ291bnQsIG1peGluZ1J1bGVzLmNoYW5uZWxDb3Vu
dE1vZGUsIG1peGluZ1J1bGVzLmNoYW5uZWxJbnRlcnByZXRhdGlvbik7Ci0gICAgICAgIH0KLSAg
ICB9Ci0KLSAgICBmaW5pc2hKU1Rlc3QoKTsKLX0KLQotZnVuY3Rpb24gcnVuVGVzdCgpIHsKLSAg
ICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLSAgICAvLyBDcmVhdGUgOC1jaGFubmVs
IG9mZmxpbmUgYXVkaW8gY29udGV4dC4KLSAgICAvLyBFYWNoIHRlc3Qgd2lsbCByZW5kZXIgOCBz
YW1wbGUtZnJhbWVzIHN0YXJ0aW5nIGF0IHNhbXBsZS1mcmFtZSBwb3NpdGlvbiB0ZXN0TnVtYmVy
ICogOC4KLSAgICB2YXIgdG90YWxGcmFtZUxlbmd0aCA9IG51bWJlck9mVGVzdHMgKiBzaW5nbGVU
ZXN0RnJhbWVMZW5ndGg7Ci0gICAgY29udGV4dCA9IG5ldyB3ZWJraXRPZmZsaW5lQXVkaW9Db250
ZXh0KHJlbmRlck51bWJlck9mQ2hhbm5lbHMsIHRvdGFsRnJhbWVMZW5ndGgsIHNhbXBsZVJhdGUp
OwotCi0gICAgLy8gU2V0IGRlc3RpbmF0aW9uIHRvIGRpc2NyZXRlIG1peGluZy4KLSAgICBjb250
ZXh0LmRlc3RpbmF0aW9uLmNoYW5uZWxDb3VudCA9IHJlbmRlck51bWJlck9mQ2hhbm5lbHM7Ci0g
ICAgY29udGV4dC5kZXN0aW5hdGlvbi5jaGFubmVsQ291bnRNb2RlID0gImV4cGxpY2l0IjsKLSAg
ICBjb250ZXh0LmRlc3RpbmF0aW9uLmNoYW5uZWxJbnRlcnByZXRhdGlvbiA9ICJkaXNjcmV0ZSI7
Ci0KLSAgICAvLyBDcmVhdGUgdGVzdCBidWZmZXJzIGZyb20gMSB0byA4IGNoYW5uZWxzLgotICAg
IHRlc3RCdWZmZXJzID0gbmV3IEFycmF5KCk7Ci0gICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZW5k
ZXJOdW1iZXJPZkNoYW5uZWxzOyArK2kpIHsKLSAgICAgICAgdGVzdEJ1ZmZlcnNbaV0gPSBjcmVh
dGVUZXN0QnVmZmVyKGkgKyAxKTsKLSAgICB9Ci0KLSAgICAvLyBTY2hlZHVsZSBhbGwgdGhlIHRl
c3RzLgotICAgIHZhciB0ZXN0TnVtYmVyID0gMDsKLSAgICBmb3IgKHZhciBtID0gMDsgbSA8IG1p
eGluZ1J1bGVzTGlzdC5sZW5ndGg7ICsrbSkgewotICAgICAgICB2YXIgbWl4aW5nUnVsZXMgPSBt
aXhpbmdSdWxlc0xpc3RbbV07Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY29ubmVjdGlv
bnNMaXN0Lmxlbmd0aDsgKytpLCArK3Rlc3ROdW1iZXIpIHsKLSAgICAgICAgICAgIHNjaGVkdWxl
VGVzdCh0ZXN0TnVtYmVyLCBjb25uZWN0aW9uc0xpc3RbaV0sIG1peGluZ1J1bGVzLmNoYW5uZWxD
b3VudCwgbWl4aW5nUnVsZXMuY2hhbm5lbENvdW50TW9kZSwgbWl4aW5nUnVsZXMuY2hhbm5lbElu
dGVycHJldGF0aW9uKTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIC8vIFJlbmRlciB0aGVuIGNo
ZWNrIHJlc3VsdHMuCi0gICAgY29udGV4dC5vbmNvbXBsZXRlID0gY2hlY2tSZXN1bHQ7Ci0gICAg
Y29udGV4dC5zdGFydFJlbmRlcmluZygpOwotfQotCi1ydW5UZXN0KCk7Ci0KLTwvc2NyaXB0Pgot
PC9ib2R5PgotPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408332</attachid>
            <date>2020-09-09 10:11:04 -0700</date>
            <delta_ts>2020-09-09 10:11:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215597-20200909101103.patch</filename>
            <type>text/plain</type>
            <size>9024</size>
            <attacher>frankhome61</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NzQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDRhZTBiM2M4NjZkNDY0
NzcxMGU3ODgxMGYxY2QyZGQ2ZjY1MWQ1Ni4uMTZlZmY4OWZkMjQxNGNjMzJlNTdmMjdlNDgwYTUy
MmZmYTcyYTgxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIwLTA5LTA5ICBGcmFu
ayBZYW5nICA8Z3Vvd2VpX3lhbmdAYXBwbGUuY29tPgorCisgICAgICAgIEltcHJvdmUgY2hhbm5l
bCBtaXhpbmcgc3VwcG9ydCBpbiBBdWRpb0J1cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NTk3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgQ29yZUltYWdlIGltcGxlbWVudGF0aW9uIG9mIEZF
R2F1c3NpYW5CbHVyLCB3aGljaCBpcyB1c2VkIHRvIGltcGxlbWVudAorICAgICAgICBDU1MgYmx1
cigpIGZ1bmN0aW9uLgorCisgICAgICAgIFRlc3Q6IGNzczMvZmlsdGVycy9lZmZlY3QtYmx1ci1z
cXVhcmUuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZWltYWdlL0ZpbHRl
ckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29yZWltYWdlL0ZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLm1tOgorICAgICAgICAoV2Vi
Q29yZTo6RmlsdGVyRWZmZWN0UmVuZGVyZXJDb3JlSW1hZ2U6OnN1cHBvcnRzQ29yZUltYWdlUmVu
ZGVyaW5nKTogcmV0dXJucyB0cnVlCisgICAgICAgICAgICBmb3IgRkVHYXVzc2lhbkJsdXIgdHlw
ZQorICAgICAgICAoV2ViQ29yZTo6RmlsdGVyRWZmZWN0UmVuZGVyZXJDb3JlSW1hZ2U6OmNvbm5l
Y3RDSUZpbHRlcnMpOgorICAgICAgICAgICAgTm93IHJldHVybnMgYSB2YWxpZCBnYXVzc2lhbiBi
bHVyIGltYWdlIGZvciBGRUdhdXNzaWFuQmx1cgorICAgICAgICAoV2ViQ29yZTo6RmlsdGVyRWZm
ZWN0UmVuZGVyZXJDb3JlSW1hZ2U6OmltYWdlRm9yRkVHYXVzc2lhbkJsdXIpOiBjcmVhdGVzIGEg
Z2F1c3NpYW4KKyAgICAgICAgICAgIGJsdXIgQ0lGaWx0ZXIgYW5kIHJldHVybnMgdGhlIG91dHB1
dCBpbWFnZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFR2F1c3NpYW5C
bHVyLmg6CisgICAgICAgIChpc1R5cGUpOiBVc2VkIHRvIGRvd25jYXN0IGEgRmlsdGVyRWZmZWN0
IG9iamVjdCB0byBGRUdhdXNzaWFuQmx1ci4KKwogMjAyMC0wOS0wOCAgVGltIEhvcnRvbiAgPHRp
bW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBpT1M6IDxhdHRhY2htZW50PidzIFF1
aWNrTG9vayB0aHVtYm5haWxzIGNhbiBhcHBlYXIgc3F1aXNoZWQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmVpbWFnZS9GaWx0ZXJFZmZlY3RSZW5kZXJl
ckNvcmVJbWFnZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZWltYWdl
L0ZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLmgKaW5kZXggZGU1NGU0ZGUwMDcxMGIxNDNi
OGQ1Njg2YjEwZjVlY2FhOTUxOTc5NS4uMDZiZjE2YTJlY2NhNjI1NWVlMjczMmIzNDU2NzE0OTg3
OWE0ZTRlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29y
ZWltYWdlL0ZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZWltYWdlL0ZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUlt
YWdlLmgKQEAgLTM5LDYgKzM5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBGRUNv
bG9yTWF0cml4OwogY2xhc3MgRkVDb21wb25lbnRUcmFuc2ZlcjsKK2NsYXNzIEZFR2F1c3NpYW5C
bHVyOwogY2xhc3MgU291cmNlR3JhcGhpYzsKIAogY2xhc3MgRmlsdGVyRWZmZWN0UmVuZGVyZXJD
b3JlSW1hZ2UgOiBwdWJsaWMgRmlsdGVyRWZmZWN0UmVuZGVyZXIgewpAQCAtNjMsNyArNjQsOCBA
QCBwcml2YXRlOgogICAgIFJldGFpblB0cjxDSUltYWdlPiBpbWFnZUZvclNvdXJjZUdyYXBoaWMo
U291cmNlR3JhcGhpYyYpOwogICAgIFJldGFpblB0cjxDSUltYWdlPiBpbWFnZUZvckZFQ29sb3JN
YXRyaXgoY29uc3QgRkVDb2xvck1hdHJpeCYsIGNvbnN0IFZlY3RvcjxSZXRhaW5QdHI8Q0lJbWFn
ZT4+Jik7CiAgICAgUmV0YWluUHRyPENJSW1hZ2U+IGltYWdlRm9yRkVDb21wb25lbnRUcmFuc2Zl
cihjb25zdCBGRUNvbXBvbmVudFRyYW5zZmVyJiwgVmVjdG9yPFJldGFpblB0cjxDSUltYWdlPj4m
KTsKLSAgICAKKyAgICBSZXRhaW5QdHI8Q0lJbWFnZT4gaW1hZ2VGb3JGRUdhdXNzaWFuQmx1cihG
RUdhdXNzaWFuQmx1ciYsIGNvbnN0IFZlY3RvcjxSZXRhaW5QdHI8Q0lJbWFnZT4+Jik7CisKICAg
ICBzdGQ6OnVuaXF1ZV9wdHI8SW1hZ2VCdWZmZXI+IG1fb3V0cHV0SW1hZ2VCdWZmZXI7CiAgICAg
UmV0YWluUHRyPENJSW1hZ2U+IG1fb3V0cHV0SW1hZ2U7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZWltYWdlL0ZpbHRlckVmZmVjdFJlbmRlcmVy
Q29yZUltYWdlLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZWltYWdl
L0ZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLm1tCmluZGV4IDUxM2Y0NTVjYWQ4ZTVlNjA1
MjcyOGQzNDdjMzkzZDlmNDQ3ZmUzODguLjA0YjBlYmEyOGI1NDFmZWM2NWQxZDRhOTNhMWU4N2Zj
NWVjYjQ5MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
cmVpbWFnZS9GaWx0ZXJFZmZlY3RSZW5kZXJlckNvcmVJbWFnZS5tbQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JlaW1hZ2UvRmlsdGVyRWZmZWN0UmVuZGVyZXJDb3Jl
SW1hZ2UubW0KQEAgLTMwLDYgKzMwLDcgQEAKIAogI2ltcG9ydCAiRkVDb2xvck1hdHJpeC5oIgog
I2ltcG9ydCAiRkVDb21wb25lbnRUcmFuc2Zlci5oIgorI2ltcG9ydCAiRkVHYXVzc2lhbkJsdXIu
aCIKICNpbXBvcnQgIkZpbHRlci5oIgogI2ltcG9ydCAiRmlsdGVyRWZmZWN0LmgiCiAjaW1wb3J0
ICJGaWx0ZXJPcGVyYXRpb24uaCIKQEAgLTg5LDYgKzkwLDggQEAgYm9vbCBGaWx0ZXJFZmZlY3RS
ZW5kZXJlckNvcmVJbWFnZTo6c3VwcG9ydHNDb3JlSW1hZ2VSZW5kZXJpbmcoRmlsdGVyRWZmZWN0
JiBlZmYKIAogICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpDb21wb25lbnRUcmFuc2ZlcjoK
ICAgICAgICAgcmV0dXJuIGlzTnVsbE9yTGluZWFyQ29tcG9uZW50VHJhbnNmZXJGdW5jdGlvbihk
b3duY2FzdDxGRUNvbXBvbmVudFRyYW5zZmVyPihlZmZlY3QpKTsKKyAgICBjYXNlIEZpbHRlckVm
ZmVjdDo6VHlwZTo6R2F1c3NpYW5CbHVyOgorICAgICAgICByZXR1cm4gdHJ1ZTsKIAogICAgIGNh
c2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpCbGVuZDoKICAgICBjYXNlIEZpbHRlckVmZmVjdDo6VHlw
ZTo6Q29tcG9zaXRlOgpAQCAtOTcsNyArMTAwLDYgQEAgYm9vbCBGaWx0ZXJFZmZlY3RSZW5kZXJl
ckNvcmVJbWFnZTo6c3VwcG9ydHNDb3JlSW1hZ2VSZW5kZXJpbmcoRmlsdGVyRWZmZWN0JiBlZmYK
ICAgICBjYXNlIEZpbHRlckVmZmVjdDo6VHlwZTo6RGlzcGxhY2VtZW50TWFwOgogICAgIGNhc2Ug
RmlsdGVyRWZmZWN0OjpUeXBlOjpEcm9wU2hhZG93OgogICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpU
eXBlOjpGbG9vZDoKLSAgICBjYXNlIEZpbHRlckVmZmVjdDo6VHlwZTo6R2F1c3NpYW5CbHVyOgog
ICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpJbWFnZToKICAgICBjYXNlIEZpbHRlckVmZmVj
dDo6VHlwZTo6TGlnaHRpbmc6CiAgICAgY2FzZSBGaWx0ZXJFZmZlY3Q6OlR5cGU6Ok1lcmdlOgpA
QCAtMTQzLDYgKzE0NSw4IEBAIFJldGFpblB0cjxDSUltYWdlPiBGaWx0ZXJFZmZlY3RSZW5kZXJl
ckNvcmVJbWFnZTo6Y29ubmVjdENJRmlsdGVycyhGaWx0ZXJFZmZlY3QmCiAgICAgICAgIHJldHVy
biBpbWFnZUZvckZFQ29sb3JNYXRyaXgoZG93bmNhc3Q8RkVDb2xvck1hdHJpeD4oZWZmZWN0KSwg
aW5wdXRJbWFnZXMpOwogICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpDb21wb25lbnRUcmFu
c2ZlcjoKICAgICAgICAgcmV0dXJuIGltYWdlRm9yRkVDb21wb25lbnRUcmFuc2Zlcihkb3duY2Fz
dDxGRUNvbXBvbmVudFRyYW5zZmVyPihlZmZlY3QpLCBpbnB1dEltYWdlcyk7CisgICAgY2FzZSBG
aWx0ZXJFZmZlY3Q6OlR5cGU6OkdhdXNzaWFuQmx1cjoKKyAgICAgICAgcmV0dXJuIGltYWdlRm9y
RkVHYXVzc2lhbkJsdXIoZG93bmNhc3Q8RkVHYXVzc2lhbkJsdXI+KGVmZmVjdCksIGlucHV0SW1h
Z2VzKTsKIAogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhvc2UgZmlsdGVycyB1c2luZyBDSUZp
bHRlciBzbyB0aGF0IHRoZSBmdW5jdGlvbiByZXR1cm5zIGEgdmFsaWQgQ0lJbWFnZQogICAgIGNh
c2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpCbGVuZDoKQEAgLTE1Miw3ICsxNTYsNiBAQCBSZXRhaW5Q
dHI8Q0lJbWFnZT4gRmlsdGVyRWZmZWN0UmVuZGVyZXJDb3JlSW1hZ2U6OmNvbm5lY3RDSUZpbHRl
cnMoRmlsdGVyRWZmZWN0JgogICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpEaXNwbGFjZW1l
bnRNYXA6CiAgICAgY2FzZSBGaWx0ZXJFZmZlY3Q6OlR5cGU6OkRyb3BTaGFkb3c6CiAgICAgY2Fz
ZSBGaWx0ZXJFZmZlY3Q6OlR5cGU6OkZsb29kOgotICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBl
OjpHYXVzc2lhbkJsdXI6CiAgICAgY2FzZSBGaWx0ZXJFZmZlY3Q6OlR5cGU6OkltYWdlOgogICAg
IGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpMaWdodGluZzoKICAgICBjYXNlIEZpbHRlckVmZmVj
dDo6VHlwZTo6TWVyZ2U6CkBAIC0yNTQsNiArMjU3LDIyIEBAIFJldGFpblB0cjxDSUltYWdlPiBG
aWx0ZXJFZmZlY3RSZW5kZXJlckNvcmVJbWFnZTo6aW1hZ2VGb3JGRUNvbXBvbmVudFRyYW5zZmVy
KGNvCiAgICAgcmV0dXJuIGZpbHRlci5vdXRwdXRJbWFnZTsKIH0KIAorUmV0YWluUHRyPENJSW1h
Z2U+IEZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlOjppbWFnZUZvckZFR2F1c3NpYW5CbHVy
KEZFR2F1c3NpYW5CbHVyJiBlZmZlY3QsIGNvbnN0IFZlY3RvcjxSZXRhaW5QdHI8Q0lJbWFnZT4+
JiBpbnB1dEltYWdlcykKK3sKKyAgICBhdXRvIGlucHV0SW1hZ2UgPSBpbnB1dEltYWdlcy5hdCgw
KTsKKyAgICAKKyAgICBlZmZlY3Quc2V0SXNBbHBoYUltYWdlKGVmZmVjdC5pbnB1dEVmZmVjdCgw
KS0+aXNBbHBoYUltYWdlKCkpOworICAgIAorICAgIENJRmlsdGVyKiBnYXVzc2lhbkJsdXJGaWx0
ZXIgPSBbQ0lGaWx0ZXIgZmlsdGVyV2l0aE5hbWU6QCJDSUdhdXNzaWFuQmx1clhZIl07CisgICAg
CisgICAgW2dhdXNzaWFuQmx1ckZpbHRlciBzZXRWYWx1ZTppbnB1dEltYWdlLmdldCgpIGZvcktl
eTprQ0lJbnB1dEltYWdlS2V5XTsKKyAgICBbZ2F1c3NpYW5CbHVyRmlsdGVyIHNldFZhbHVlOkAo
ZWZmZWN0LnN0ZERldmlhdGlvblgoKSAqIGVmZmVjdC5maWx0ZXIoKS5maWx0ZXJTY2FsZSgpKSBm
b3JLZXk6QCJpbnB1dFNpZ21hWCJdOworICAgIFtnYXVzc2lhbkJsdXJGaWx0ZXIgc2V0VmFsdWU6
QChlZmZlY3Quc3RkRGV2aWF0aW9uWSgpICogZWZmZWN0LmZpbHRlcigpLmZpbHRlclNjYWxlKCkp
IGZvcktleTpAImlucHV0U2lnbWFZIl07CisgICAgCisgICAgRmxvYXRSZWN0IG91dHB1dEV4dGVu
dCA9IEZsb2F0UmVjdChnYXVzc2lhbkJsdXJGaWx0ZXIub3V0cHV0SW1hZ2UuZXh0ZW50KTsKKyAg
ICByZXR1cm4gW2dhdXNzaWFuQmx1ckZpbHRlci5vdXRwdXRJbWFnZSBpbWFnZUJ5QXBwbHlpbmdU
cmFuc2Zvcm06Q0dBZmZpbmVUcmFuc2Zvcm1NYWtlVHJhbnNsYXRpb24oLW91dHB1dEV4dGVudC54
KCksIC1vdXRwdXRFeHRlbnQueSgpKV07Cit9CisKIGJvb2wgRmlsdGVyRWZmZWN0UmVuZGVyZXJD
b3JlSW1hZ2U6OmNhblJlbmRlclVzaW5nQ0lGaWx0ZXJzKEZpbHRlckVmZmVjdCYgZWZmZWN0KQog
ewogICAgIGlmICghc3VwcG9ydHNDb3JlSW1hZ2VSZW5kZXJpbmcoZWZmZWN0KSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVHYXVzc2lhbkJs
dXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVHYXVzc2lh
bkJsdXIuaAppbmRleCA1ZmI5N2ZmYjA3MGMyZGFlYjZlYjI4M2JlYWFhMTc2NDdjYmIyZDNlLi44
Mzg0YzA4NGE0MWY2YzVkOWE5MGUzNTE5NDM2MzI3OGZkNjQ3MDYyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFR2F1c3NpYW5CbHVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUdhdXNzaWFuQmx1
ci5oCkBAIC04MywzICs4Myw2IEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
IAorU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpGRUdhdXNzaWFuQmx1cikK
KyAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6RmlsdGVyRWZmZWN0JiBlZmZl
Y3QpIHsgcmV0dXJuIGVmZmVjdC5maWx0ZXJFZmZlY3RDbGFzc1R5cGUoKSA9PSBXZWJDb3JlOjpG
aWx0ZXJFZmZlY3Q6OlR5cGU6OkdhdXNzaWFuQmx1cjsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlU
U19FTkQoKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IGMwOWIxYWUyMGYyOWNjMzE2Y2FkMGE5ZTgwMGUxN2NiNjY1ZjA2OWMu
LjAyNjFlYzE0NGRjODUwY2U3M2U1MjZhNDA2Y2E0MmI4ZTFjYjEwMzkgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxMyBAQAorMjAyMC0wOS0wOSAgRnJhbmsgWWFuZyAgPGd1b3dlaV95YW5nQGFwcGxlLmNvbT4K
KworICAgICAgICBJbXByb3ZlIGNoYW5uZWwgbWl4aW5nIHN1cHBvcnQgaW4gQXVkaW9CdXMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNTU5NworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzMy9maWx0
ZXJzL2VmZmVjdC1ibHVyLXNxdWFyZS1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBj
c3MzL2ZpbHRlcnMvZWZmZWN0LWJsdXItc3F1YXJlLmh0bWw6IEFkZGVkLgorCiAyMDIwLTA5LTA4
ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAgICAgICAgIGlPUzog
PGF0dGFjaG1lbnQ+J3MgUXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVhciBzcXVpc2hlZApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2VmZmVjdC1ibHVyLXNxdWFyZS1l
eHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2VmZmVjdC1ibHVyLXNxdWFy
ZS1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNlZmRlYzJhMWE1NGY2NmFlMmEzYTkwNmIxYzVh
NTQ2MDM3N2E4NTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMv
ZWZmZWN0LWJsdXItc3F1YXJlLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwxOSBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRsZT5DU1MgRmlsdGVyIFRlc3Q6IFRl
c3QgZm9yIFNhdHVyYXRlIHNob3J0IGhhbmQ8L3RpdGxlPgorICAgIDxzdHlsZSB0eXBlPSJ0ZXh0
L2NzcyI+CisgICAgZGl2IHsKKyAgICAgICAgd2lkdGg6IDYwMHB4OworICAgICAgICBoZWlnaHQ6
IDYwMHB4OyAKKyAgICAgICAgYmFja2dyb3VuZDogcmdiKDI1NSwgMCwgMCk7CisgICAgfQorCisg
ICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPllvdSBzaG91bGQgc2VlIGEgZ3Jl
ZW4gcmVjdGFuZ2xlLjwvcD4KKyAgICA8ZGl2PjwvZGl2PgorCis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvZWZmZWN0LWJsdXItc3F1YXJlLmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvZWZmZWN0LWJsdXItc3F1YXJlLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZWFlZDI1MmZlODZmZDEzYWU5ZDZiYWViYWMwNTU4YWYzOTg4ZDc0NAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9lZmZlY3QtYmx1ci1zcXVhcmUu
aHRtbApAQCAtMCwwICsxLDMzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cisg
ICAgPHRpdGxlPkNTUyBGaWx0ZXIgVGVzdDogVGVzdCBmb3IgU2F0dXJhdGUgc2hvcnQgaGFuZDwv
dGl0bGU+CisgICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKworLmNvbnRhaW5lcnsKKyAgICBw
b3NpdGlvbjpyZWxhdGl2ZTsKKyAgICB3aWR0aDo2MDBweDsKKyAgICBoZWlnaHQ6NjAwcHg7Cisg
ICAgb3ZlcmZsb3c6aGlkZGVuOworfQorCisjYmFja2dyb3VuZCB7CisgICAgYmFja2dyb3VuZDog
cmVkOworICAgIGxlZnQ6LTE1cHg7CisgICAgcmlnaHQ6LTE1cHg7CisgICAgdG9wOi0xNXB4Owor
ICAgIGJvdHRvbTotMTVweDsKKyAgICBmaWx0ZXI6IGJsdXIoMTBweCk7CisgICAgcG9zaXRpb246
IGFic29sdXRlOworfQorCisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPllv
dSBzaG91bGQgc2VlIGEgcmVkIHJlY3RhbmdsZS48L3A+CisgICAgPGRpdiBjbGFzcz0iY29udGFp
bmVyIj4KKyAgICAgICAgPGRpdiBpZD0iYmFja2dyb3VuZCI+PC9kaXY+CisgICAgPC9kaXY+CisK
KzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408335</attachid>
            <date>2020-09-09 10:15:51 -0700</date>
            <delta_ts>2020-09-09 10:16:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215597-20200909101550.patch</filename>
            <type>text/plain</type>
            <size>9027</size>
            <attacher>frankhome61</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NzQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDRhZTBiM2M4NjZkNDY0
NzcxMGU3ODgxMGYxY2QyZGQ2ZjY1MWQ1Ni4uMTZlZmY4OWZkMjQxNGNjMzJlNTdmMjdlNDgwYTUy
MmZmYTcyYTgxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIwLTA5LTA5ICBGcmFu
ayBZYW5nICA8Z3Vvd2VpX3lhbmdAYXBwbGUuY29tPgorCisgICAgICAgIEltcHJvdmUgY2hhbm5l
bCBtaXhpbmcgc3VwcG9ydCBpbiBBdWRpb0J1cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NTk3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgQ29yZUltYWdlIGltcGxlbWVudGF0aW9uIG9mIEZF
R2F1c3NpYW5CbHVyLCB3aGljaCBpcyB1c2VkIHRvIGltcGxlbWVudAorICAgICAgICBDU1MgYmx1
cigpIGZ1bmN0aW9uLgorCisgICAgICAgIFRlc3Q6IGNzczMvZmlsdGVycy9lZmZlY3QtYmx1ci1z
cXVhcmUuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29yZWltYWdlL0ZpbHRl
ckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29yZWltYWdlL0ZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLm1tOgorICAgICAgICAoV2Vi
Q29yZTo6RmlsdGVyRWZmZWN0UmVuZGVyZXJDb3JlSW1hZ2U6OnN1cHBvcnRzQ29yZUltYWdlUmVu
ZGVyaW5nKTogcmV0dXJucyB0cnVlCisgICAgICAgICAgICBmb3IgRkVHYXVzc2lhbkJsdXIgdHlw
ZQorICAgICAgICAoV2ViQ29yZTo6RmlsdGVyRWZmZWN0UmVuZGVyZXJDb3JlSW1hZ2U6OmNvbm5l
Y3RDSUZpbHRlcnMpOgorICAgICAgICAgICAgTm93IHJldHVybnMgYSB2YWxpZCBnYXVzc2lhbiBi
bHVyIGltYWdlIGZvciBGRUdhdXNzaWFuQmx1cgorICAgICAgICAoV2ViQ29yZTo6RmlsdGVyRWZm
ZWN0UmVuZGVyZXJDb3JlSW1hZ2U6OmltYWdlRm9yRkVHYXVzc2lhbkJsdXIpOiBjcmVhdGVzIGEg
Z2F1c3NpYW4KKyAgICAgICAgICAgIGJsdXIgQ0lGaWx0ZXIgYW5kIHJldHVybnMgdGhlIG91dHB1
dCBpbWFnZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFR2F1c3NpYW5C
bHVyLmg6CisgICAgICAgIChpc1R5cGUpOiBVc2VkIHRvIGRvd25jYXN0IGEgRmlsdGVyRWZmZWN0
IG9iamVjdCB0byBGRUdhdXNzaWFuQmx1ci4KKwogMjAyMC0wOS0wOCAgVGltIEhvcnRvbiAgPHRp
bW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBpT1M6IDxhdHRhY2htZW50PidzIFF1
aWNrTG9vayB0aHVtYm5haWxzIGNhbiBhcHBlYXIgc3F1aXNoZWQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvcmVpbWFnZS9GaWx0ZXJFZmZlY3RSZW5kZXJl
ckNvcmVJbWFnZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZWltYWdl
L0ZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLmgKaW5kZXggZGU1NGU0ZGUwMDcxMGIxNDNi
OGQ1Njg2YjEwZjVlY2FhOTUxOTc5NS4uMDZiZjE2YTJlY2NhNjI1NWVlMjczMmIzNDU2NzE0OTg3
OWE0ZTRlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29y
ZWltYWdlL0ZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZWltYWdlL0ZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUlt
YWdlLmgKQEAgLTM5LDYgKzM5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBGRUNv
bG9yTWF0cml4OwogY2xhc3MgRkVDb21wb25lbnRUcmFuc2ZlcjsKK2NsYXNzIEZFR2F1c3NpYW5C
bHVyOwogY2xhc3MgU291cmNlR3JhcGhpYzsKIAogY2xhc3MgRmlsdGVyRWZmZWN0UmVuZGVyZXJD
b3JlSW1hZ2UgOiBwdWJsaWMgRmlsdGVyRWZmZWN0UmVuZGVyZXIgewpAQCAtNjMsNyArNjQsOCBA
QCBwcml2YXRlOgogICAgIFJldGFpblB0cjxDSUltYWdlPiBpbWFnZUZvclNvdXJjZUdyYXBoaWMo
U291cmNlR3JhcGhpYyYpOwogICAgIFJldGFpblB0cjxDSUltYWdlPiBpbWFnZUZvckZFQ29sb3JN
YXRyaXgoY29uc3QgRkVDb2xvck1hdHJpeCYsIGNvbnN0IFZlY3RvcjxSZXRhaW5QdHI8Q0lJbWFn
ZT4+Jik7CiAgICAgUmV0YWluUHRyPENJSW1hZ2U+IGltYWdlRm9yRkVDb21wb25lbnRUcmFuc2Zl
cihjb25zdCBGRUNvbXBvbmVudFRyYW5zZmVyJiwgVmVjdG9yPFJldGFpblB0cjxDSUltYWdlPj4m
KTsKLSAgICAKKyAgICBSZXRhaW5QdHI8Q0lJbWFnZT4gaW1hZ2VGb3JGRUdhdXNzaWFuQmx1cihG
RUdhdXNzaWFuQmx1ciYsIGNvbnN0IFZlY3RvcjxSZXRhaW5QdHI8Q0lJbWFnZT4+Jik7CisKICAg
ICBzdGQ6OnVuaXF1ZV9wdHI8SW1hZ2VCdWZmZXI+IG1fb3V0cHV0SW1hZ2VCdWZmZXI7CiAgICAg
UmV0YWluUHRyPENJSW1hZ2U+IG1fb3V0cHV0SW1hZ2U7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZWltYWdlL0ZpbHRlckVmZmVjdFJlbmRlcmVy
Q29yZUltYWdlLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29yZWltYWdl
L0ZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLm1tCmluZGV4IDUxM2Y0NTVjYWQ4ZTVlNjA1
MjcyOGQzNDdjMzkzZDlmNDQ3ZmUzODguLjA0YjBlYmEyOGI1NDFmZWM2NWQxZDRhOTNhMWU4N2Zj
NWVjYjQ5MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
cmVpbWFnZS9GaWx0ZXJFZmZlY3RSZW5kZXJlckNvcmVJbWFnZS5tbQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb3JlaW1hZ2UvRmlsdGVyRWZmZWN0UmVuZGVyZXJDb3Jl
SW1hZ2UubW0KQEAgLTMwLDYgKzMwLDcgQEAKIAogI2ltcG9ydCAiRkVDb2xvck1hdHJpeC5oIgog
I2ltcG9ydCAiRkVDb21wb25lbnRUcmFuc2Zlci5oIgorI2ltcG9ydCAiRkVHYXVzc2lhbkJsdXIu
aCIKICNpbXBvcnQgIkZpbHRlci5oIgogI2ltcG9ydCAiRmlsdGVyRWZmZWN0LmgiCiAjaW1wb3J0
ICJGaWx0ZXJPcGVyYXRpb24uaCIKQEAgLTg5LDYgKzkwLDggQEAgYm9vbCBGaWx0ZXJFZmZlY3RS
ZW5kZXJlckNvcmVJbWFnZTo6c3VwcG9ydHNDb3JlSW1hZ2VSZW5kZXJpbmcoRmlsdGVyRWZmZWN0
JiBlZmYKIAogICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpDb21wb25lbnRUcmFuc2ZlcjoK
ICAgICAgICAgcmV0dXJuIGlzTnVsbE9yTGluZWFyQ29tcG9uZW50VHJhbnNmZXJGdW5jdGlvbihk
b3duY2FzdDxGRUNvbXBvbmVudFRyYW5zZmVyPihlZmZlY3QpKTsKKyAgICBjYXNlIEZpbHRlckVm
ZmVjdDo6VHlwZTo6R2F1c3NpYW5CbHVyOgorICAgICAgICByZXR1cm4gdHJ1ZTsKIAogICAgIGNh
c2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpCbGVuZDoKICAgICBjYXNlIEZpbHRlckVmZmVjdDo6VHlw
ZTo6Q29tcG9zaXRlOgpAQCAtOTcsNyArMTAwLDYgQEAgYm9vbCBGaWx0ZXJFZmZlY3RSZW5kZXJl
ckNvcmVJbWFnZTo6c3VwcG9ydHNDb3JlSW1hZ2VSZW5kZXJpbmcoRmlsdGVyRWZmZWN0JiBlZmYK
ICAgICBjYXNlIEZpbHRlckVmZmVjdDo6VHlwZTo6RGlzcGxhY2VtZW50TWFwOgogICAgIGNhc2Ug
RmlsdGVyRWZmZWN0OjpUeXBlOjpEcm9wU2hhZG93OgogICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpU
eXBlOjpGbG9vZDoKLSAgICBjYXNlIEZpbHRlckVmZmVjdDo6VHlwZTo6R2F1c3NpYW5CbHVyOgog
ICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpJbWFnZToKICAgICBjYXNlIEZpbHRlckVmZmVj
dDo6VHlwZTo6TGlnaHRpbmc6CiAgICAgY2FzZSBGaWx0ZXJFZmZlY3Q6OlR5cGU6Ok1lcmdlOgpA
QCAtMTQzLDYgKzE0NSw4IEBAIFJldGFpblB0cjxDSUltYWdlPiBGaWx0ZXJFZmZlY3RSZW5kZXJl
ckNvcmVJbWFnZTo6Y29ubmVjdENJRmlsdGVycyhGaWx0ZXJFZmZlY3QmCiAgICAgICAgIHJldHVy
biBpbWFnZUZvckZFQ29sb3JNYXRyaXgoZG93bmNhc3Q8RkVDb2xvck1hdHJpeD4oZWZmZWN0KSwg
aW5wdXRJbWFnZXMpOwogICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpDb21wb25lbnRUcmFu
c2ZlcjoKICAgICAgICAgcmV0dXJuIGltYWdlRm9yRkVDb21wb25lbnRUcmFuc2Zlcihkb3duY2Fz
dDxGRUNvbXBvbmVudFRyYW5zZmVyPihlZmZlY3QpLCBpbnB1dEltYWdlcyk7CisgICAgY2FzZSBG
aWx0ZXJFZmZlY3Q6OlR5cGU6OkdhdXNzaWFuQmx1cjoKKyAgICAgICAgcmV0dXJuIGltYWdlRm9y
RkVHYXVzc2lhbkJsdXIoZG93bmNhc3Q8RkVHYXVzc2lhbkJsdXI+KGVmZmVjdCksIGlucHV0SW1h
Z2VzKTsKIAogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhvc2UgZmlsdGVycyB1c2luZyBDSUZp
bHRlciBzbyB0aGF0IHRoZSBmdW5jdGlvbiByZXR1cm5zIGEgdmFsaWQgQ0lJbWFnZQogICAgIGNh
c2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpCbGVuZDoKQEAgLTE1Miw3ICsxNTYsNiBAQCBSZXRhaW5Q
dHI8Q0lJbWFnZT4gRmlsdGVyRWZmZWN0UmVuZGVyZXJDb3JlSW1hZ2U6OmNvbm5lY3RDSUZpbHRl
cnMoRmlsdGVyRWZmZWN0JgogICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpEaXNwbGFjZW1l
bnRNYXA6CiAgICAgY2FzZSBGaWx0ZXJFZmZlY3Q6OlR5cGU6OkRyb3BTaGFkb3c6CiAgICAgY2Fz
ZSBGaWx0ZXJFZmZlY3Q6OlR5cGU6OkZsb29kOgotICAgIGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBl
OjpHYXVzc2lhbkJsdXI6CiAgICAgY2FzZSBGaWx0ZXJFZmZlY3Q6OlR5cGU6OkltYWdlOgogICAg
IGNhc2UgRmlsdGVyRWZmZWN0OjpUeXBlOjpMaWdodGluZzoKICAgICBjYXNlIEZpbHRlckVmZmVj
dDo6VHlwZTo6TWVyZ2U6CkBAIC0yNTQsNiArMjU3LDIyIEBAIFJldGFpblB0cjxDSUltYWdlPiBG
aWx0ZXJFZmZlY3RSZW5kZXJlckNvcmVJbWFnZTo6aW1hZ2VGb3JGRUNvbXBvbmVudFRyYW5zZmVy
KGNvCiAgICAgcmV0dXJuIGZpbHRlci5vdXRwdXRJbWFnZTsKIH0KIAorUmV0YWluUHRyPENJSW1h
Z2U+IEZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlOjppbWFnZUZvckZFR2F1c3NpYW5CbHVy
KEZFR2F1c3NpYW5CbHVyJiBlZmZlY3QsIGNvbnN0IFZlY3RvcjxSZXRhaW5QdHI8Q0lJbWFnZT4+
JiBpbnB1dEltYWdlcykKK3sKKyAgICBhdXRvIGlucHV0SW1hZ2UgPSBpbnB1dEltYWdlcy5hdCgw
KTsKKyAgICAKKyAgICBlZmZlY3Quc2V0SXNBbHBoYUltYWdlKGVmZmVjdC5pbnB1dEVmZmVjdCgw
KS0+aXNBbHBoYUltYWdlKCkpOworICAgIAorICAgIENJRmlsdGVyKiBnYXVzc2lhbkJsdXJGaWx0
ZXIgPSBbQ0lGaWx0ZXIgZmlsdGVyV2l0aE5hbWU6QCJDSUdhdXNzaWFuQmx1clhZIl07CisgICAg
CisgICAgW2dhdXNzaWFuQmx1ckZpbHRlciBzZXRWYWx1ZTppbnB1dEltYWdlLmdldCgpIGZvcktl
eTprQ0lJbnB1dEltYWdlS2V5XTsKKyAgICBbZ2F1c3NpYW5CbHVyRmlsdGVyIHNldFZhbHVlOkAo
ZWZmZWN0LnN0ZERldmlhdGlvblgoKSAqIGVmZmVjdC5maWx0ZXIoKS5maWx0ZXJTY2FsZSgpKSBm
b3JLZXk6QCJpbnB1dFNpZ21hWCJdOworICAgIFtnYXVzc2lhbkJsdXJGaWx0ZXIgc2V0VmFsdWU6
QChlZmZlY3Quc3RkRGV2aWF0aW9uWSgpICogZWZmZWN0LmZpbHRlcigpLmZpbHRlclNjYWxlKCkp
IGZvcktleTpAImlucHV0U2lnbWFZIl07CisgICAgCisgICAgRmxvYXRSZWN0IG91dHB1dEV4dGVu
dCA9IEZsb2F0UmVjdChnYXVzc2lhbkJsdXJGaWx0ZXIub3V0cHV0SW1hZ2UuZXh0ZW50KTsKKyAg
ICByZXR1cm4gW2dhdXNzaWFuQmx1ckZpbHRlci5vdXRwdXRJbWFnZSBpbWFnZUJ5QXBwbHlpbmdU
cmFuc2Zvcm06Q0dBZmZpbmVUcmFuc2Zvcm1NYWtlVHJhbnNsYXRpb24oLW91dHB1dEV4dGVudC54
KCksIC1vdXRwdXRFeHRlbnQueSgpKV07Cit9CisKIGJvb2wgRmlsdGVyRWZmZWN0UmVuZGVyZXJD
b3JlSW1hZ2U6OmNhblJlbmRlclVzaW5nQ0lGaWx0ZXJzKEZpbHRlckVmZmVjdCYgZWZmZWN0KQog
ewogICAgIGlmICghc3VwcG9ydHNDb3JlSW1hZ2VSZW5kZXJpbmcoZWZmZWN0KSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVHYXVzc2lhbkJs
dXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVHYXVzc2lh
bkJsdXIuaAppbmRleCA1ZmI5N2ZmYjA3MGMyZGFlYjZlYjI4M2JlYWFhMTc2NDdjYmIyZDNlLi44
Mzg0YzA4NGE0MWY2YzVkOWE5MGUzNTE5NDM2MzI3OGZkNjQ3MDYyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFR2F1c3NpYW5CbHVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUdhdXNzaWFuQmx1
ci5oCkBAIC04MywzICs4Myw2IEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
IAorU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpGRUdhdXNzaWFuQmx1cikK
KyAgICBzdGF0aWMgYm9vbCBpc1R5cGUoY29uc3QgV2ViQ29yZTo6RmlsdGVyRWZmZWN0JiBlZmZl
Y3QpIHsgcmV0dXJuIGVmZmVjdC5maWx0ZXJFZmZlY3RDbGFzc1R5cGUoKSA9PSBXZWJDb3JlOjpG
aWx0ZXJFZmZlY3Q6OlR5cGU6OkdhdXNzaWFuQmx1cjsgfQorU1BFQ0lBTElaRV9UWVBFX1RSQUlU
U19FTkQoKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IGMwOWIxYWUyMGYyOWNjMzE2Y2FkMGE5ZTgwMGUxN2NiNjY1ZjA2OWMu
LmIxYmNlMjFmMWM0ODBkZGQ2NmU1MWQ0OGYyNzE4MzVmYzMwMThkMWYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxMyBAQAorMjAyMC0wOS0wOSAgRnJhbmsgWWFuZyAgPGd1b3dlaV95YW5nQGFwcGxlLmNvbT4K
KworICAgICAgICBDb3JlSW1hZ2UgSW1wbGVtZW50YXRpb24gb2YgQ1NTIEZpbHRlciBibHVyKCkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNTk1Nwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogY3NzMy9m
aWx0ZXJzL2VmZmVjdC1ibHVyLXNxdWFyZS1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBjc3MzL2ZpbHRlcnMvZWZmZWN0LWJsdXItc3F1YXJlLmh0bWw6IEFkZGVkLgorCiAyMDIwLTA5
LTA4ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAgICAgICAgIGlP
UzogPGF0dGFjaG1lbnQ+J3MgUXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVhciBzcXVpc2hl
ZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2VmZmVjdC1ibHVyLXNxdWFy
ZS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9maWx0ZXJzL2VmZmVjdC1ibHVyLXNx
dWFyZS1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNlZmRlYzJhMWE1NGY2NmFlMmEzYTkwNmIx
YzVhNTQ2MDM3N2E4NTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRl
cnMvZWZmZWN0LWJsdXItc3F1YXJlLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwxOSBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDx0aXRsZT5DU1MgRmlsdGVyIFRlc3Q6
IFRlc3QgZm9yIFNhdHVyYXRlIHNob3J0IGhhbmQ8L3RpdGxlPgorICAgIDxzdHlsZSB0eXBlPSJ0
ZXh0L2NzcyI+CisgICAgZGl2IHsKKyAgICAgICAgd2lkdGg6IDYwMHB4OworICAgICAgICBoZWln
aHQ6IDYwMHB4OyAKKyAgICAgICAgYmFja2dyb3VuZDogcmdiKDI1NSwgMCwgMCk7CisgICAgfQor
CisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwPllvdSBzaG91bGQgc2VlIGEg
Z3JlZW4gcmVjdGFuZ2xlLjwvcD4KKyAgICA8ZGl2PjwvZGl2PgorCis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvZWZmZWN0LWJsdXItc3F1YXJl
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZpbHRlcnMvZWZmZWN0LWJsdXItc3F1YXJlLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZWFlZDI1MmZlODZmZDEzYWU5ZDZiYWViYWMwNTU4YWYzOTg4ZDc0NAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvZmlsdGVycy9lZmZlY3QtYmx1ci1zcXVh
cmUuaHRtbApAQCAtMCwwICsxLDMzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
CisgICAgPHRpdGxlPkNTUyBGaWx0ZXIgVGVzdDogVGVzdCBmb3IgU2F0dXJhdGUgc2hvcnQgaGFu
ZDwvdGl0bGU+CisgICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKworLmNvbnRhaW5lcnsKKyAg
ICBwb3NpdGlvbjpyZWxhdGl2ZTsKKyAgICB3aWR0aDo2MDBweDsKKyAgICBoZWlnaHQ6NjAwcHg7
CisgICAgb3ZlcmZsb3c6aGlkZGVuOworfQorCisjYmFja2dyb3VuZCB7CisgICAgYmFja2dyb3Vu
ZDogcmVkOworICAgIGxlZnQ6LTE1cHg7CisgICAgcmlnaHQ6LTE1cHg7CisgICAgdG9wOi0xNXB4
OworICAgIGJvdHRvbTotMTVweDsKKyAgICBmaWx0ZXI6IGJsdXIoMTBweCk7CisgICAgcG9zaXRp
b246IGFic29sdXRlOworfQorCisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxw
PllvdSBzaG91bGQgc2VlIGEgcmVkIHJlY3RhbmdsZS48L3A+CisgICAgPGRpdiBjbGFzcz0iY29u
dGFpbmVyIj4KKyAgICAgICAgPGRpdiBpZD0iYmFja2dyb3VuZCI+PC9kaXY+CisgICAgPC9kaXY+
CisKKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>