<?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>42471</bug_id>
          
          <creation_ts>2010-07-16 11:03:20 -0700</creation_ts>
          <short_desc>ES5 allows use of reserved words as IdentifierName</short_desc>
          <delta_ts>2012-07-07 10:14:04 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Oliver Hunt">oliver</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          <cc>inimino</cc>
    
    <cc>joepeck</cc>
    
    <cc>mathias</cc>
    
    <cc>zherczeg</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>252609</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-07-16 11:03:20 -0700</bug_when>
    <thetext>ES5 allows use of reserved words as IdentifierName</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252612</commentid>
    <comment_count>1</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2010-07-16 11:05:14 -0700</bug_when>
    <thetext>Interesting. Example?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252617</commentid>
    <comment_count>2</comment_count>
      <attachid>61829</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-07-16 11:17:08 -0700</bug_when>
    <thetext>Created attachment 61829
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252619</commentid>
    <comment_count>3</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-07-16 11:18:13 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Interesting. Example?

a.var = 5;
a={var:5}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252623</commentid>
    <comment_count>4</comment_count>
      <attachid>61829</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2010-07-16 11:20:44 -0700</bug_when>
    <thetext>Comment on attachment 61829
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252629</commentid>
    <comment_count>5</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2010-07-16 11:35:39 -0700</bug_when>
    <thetext>*** Bug 32722 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252649</commentid>
    <comment_count>6</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2010-07-16 12:32:12 -0700</bug_when>
    <thetext>Thanks for duping Zoltan, and great to see this was fixed Oliver!

I notice Oliver&apos;s changelog says &quot;These tests are wrong, unsure how
to get sputnik tests corrected.&quot; Were they wrong for ES3, or just
wrong for ES5? It would be nice to have a list of the tests in sputnik
that are expected to fail going from ES3 to ES5.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252651</commentid>
    <comment_count>7</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-07-16 12:38:00 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Thanks for duping Zoltan, and great to see this was fixed Oliver!
&gt; 
&gt; I notice Oliver&apos;s changelog says &quot;These tests are wrong, unsure how
&gt; to get sputnik tests corrected.&quot; Were they wrong for ES3, or just
&gt; wrong for ES5? It would be nice to have a list of the tests in sputnik
&gt; that are expected to fail going from ES3 to ES5.

Sputnik is (afaict) intended to be an ES5 test suite based on other tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263018</commentid>
    <comment_count>8</comment_count>
      <attachid>61829</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-10 22:36:28 -0700</bug_when>
    <thetext>Comment on attachment 61829
Patch

Is this patch still current?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263085</commentid>
    <comment_count>9</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2010-08-11 00:14:30 -0700</bug_when>
    <thetext>Maybe http://trac.webkit.org/changeset/63566 ?

I close this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>339003</commentid>
    <comment_count>10</comment_count>
    <who name="Jeff Walden (remove +bwo to email)">jwalden+bwo</who>
    <bug_when>2011-01-24 07:32:52 -0800</bug_when>
    <thetext>*** Bug 32721 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61829</attachid>
            <date>2010-07-16 11:17:08 -0700</date>
            <delta_ts>2010-08-26 16:51:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-42471-20100716111707.patch</filename>
            <type>text/plain</type>
            <size>37088</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCBhZmNiMzQzOTJkZWYyMGI2OWU3ZWE4MTI3NmExMzM4OTRlNTE5YTUxLi41
YTA0Mjk0NmZlNTdiMWFmMDQ5MGRiMGE0OWFiZGY5YjAwMzU4ODZmIDEwMDY0NAotLS0gYS9KYXZh
U2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjcgQEAKKzIwMTAtMDctMTYgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFUzUgYWxs
b3dzIHVzZSBvZiByZXNlcnZlZCB3b3JkcyBhcyBJZGVudGlmaWVyTmFtZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDI0NzEKKworICAgICAgICBNb2Rp
ZnkgdGhlIGxleGVyIHRvIGFsbG93IHVzIHRvIGF2b2lkIGlkZW50aWZ5aW5nIHJlc2VydmVkCisg
ICAgICAgIHdvcmRzIGluIHRob3NlIGNvbnRleHRzIHdoZXJlIHRoZXkgYXJlIHZhbGlkIGlkZW50
aWZpZXJzLCBhbmQKKyAgICAgICAgd2Uga25vdyBpdCdzIHNhZmUuICBBZGRpdGlvbmFsbHkgdGFn
IHRoZSByZXNlcnZlZCB3b3JkIHRva2VucworICAgICAgICBzbyB3ZSBjYW4gZWFzaWx5IGlkZW50
aWZ5IHRoZW0gaW4gdGhvc2UgY2FzZXMgd2hlcmUgd2UgY2FuJ3QKKyAgICAgICAgZ3VhcmFudGVl
IHRoYXQgd2UndmUgc2tpcHBlZCByZXNlcnZlZCB3b3JkIGlkZW50aWZpY2F0aW9uLgorCisgICAg
ICAgICogcGFyc2VyL0pTUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6SlNQYXJzZXI6Om5leHQp
OgorICAgICAgICAoSlNDOjpKU1BhcnNlcjo6cGFyc2VQcm9wZXJ0eSk6CisgICAgICAgIChKU0M6
OkpTUGFyc2VyOjpwYXJzZU1lbWJlckV4cHJlc3Npb24pOgorICAgICAgICAqIHBhcnNlci9KU1Bh
cnNlci5oOgorICAgICAgICAoSlNDOjopOgorICAgICAgICAqIHBhcnNlci9MZXhlci5jcHA6Cisg
ICAgICAgIChKU0M6OkxleGVyOjpsZXgpOgorICAgICAgICAqIHBhcnNlci9MZXhlci5oOgorICAg
ICAgICAoSlNDOjpMZXhlcjo6KToKKwogMjAxMC0wNy0xNSAgVmljdG9yIFdhbmcgIDx2aWN0b3J3
QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBMZXZpbi4KZGlmZiAt
LWdpdCBhL0phdmFTY3JpcHRDb3JlL3BhcnNlci9KU1BhcnNlci5jcHAgYi9KYXZhU2NyaXB0Q29y
ZS9wYXJzZXIvSlNQYXJzZXIuY3BwCmluZGV4IDFmYjFhOTE4N2RkMjZhYjY4MzJjMDZiYWVlMDk4
MjVjNzEyYWIxOGYuLjEzMDEzYzcwY2U3YWYyYTk0MDUxNjQ1NTc4YTM3ZDE3NmYwY2UzYjAgMTAw
NjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3BhcnNlci9KU1BhcnNlci5jcHAKKysrIGIvSmF2YVNj
cmlwdENvcmUvcGFyc2VyL0pTUGFyc2VyLmNwcApAQCAtODUsMTIgKzg1LDEyIEBAIHByaXZhdGU6
CiAgICAgfTsKIAogICAgIGNvbnN0IEpTVG9rZW4mIHRva2VuKCkgeyByZXR1cm4gbV90b2tlbjsg
fQotICAgIHZvaWQgbmV4dCgpCisgICAgdm9pZCBuZXh0KExleGVyOjpMZXhUeXBlIGxleFR5cGUg
PSBMZXhlcjo6SWRlbnRpZnlSZXNlcnZlZFdvcmRzKQogICAgIHsKICAgICAgICAgbV9sYXN0TGlu
ZSA9IHRva2VuKCkubV9pbmZvLmxpbmU7CiAgICAgICAgIG1fbGFzdFRva2VuRW5kID0gdG9rZW4o
KS5tX2luZm8uZW5kT2Zmc2V0OwogICAgICAgICBtX2xleGVyLT5zZXRMYXN0TGluZU51bWJlciht
X2xhc3RMaW5lKTsKLSAgICAgICAgbV90b2tlbi5tX3R5cGUgPSBtX2xleGVyLT5sZXgoJm1fdG9r
ZW4ubV9kYXRhLCAmbV90b2tlbi5tX2luZm8pOworICAgICAgICBtX3Rva2VuLm1fdHlwZSA9IG1f
bGV4ZXItPmxleCgmbV90b2tlbi5tX2RhdGEsICZtX3Rva2VuLm1faW5mbywgbGV4VHlwZSk7CiAg
ICAgICAgIG1fdG9rZW5Db3VudCsrOwogICAgIH0KIApAQCAtMTA5MSwxMSArMTA5MSwxMiBAQCB0
ZW1wbGF0ZSA8Ym9vbCBjb21wbGV0ZSwgY2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVQcm9wZXJ0eSBK
U1BhcnNlcjo6cGFyc2VQcm9wZXJ0eQogewogICAgIGJvb2wgd2FzSWRlbnQgPSBmYWxzZTsKICAg
ICBzd2l0Y2ggKHRva2VuKCkubV90eXBlKSB7CisgICAgbmFtZWRQcm9wZXJ0eToKICAgICBjYXNl
IElERU5UOgogICAgICAgICB3YXNJZGVudCA9IHRydWU7CiAgICAgY2FzZSBTVFJJTkc6IHsKICAg
ICAgICAgY29uc3QgSWRlbnRpZmllciogaWRlbnQgPSB0b2tlbigpLm1fZGF0YS5pZGVudDsKLSAg
ICAgICAgbmV4dCgpOworICAgICAgICBuZXh0KExleGVyOjpJZ25vcmVSZXNlcnZlZFdvcmRzKTsK
ICAgICAgICAgaWYgKG1hdGNoKENPTE9OKSkgewogICAgICAgICAgICAgbmV4dCgpOwogICAgICAg
ICAgICAgVHJlZUV4cHJlc3Npb24gbm9kZSA9IHBhcnNlQXNzaWdubWVudEV4cHJlc3Npb24oY29u
dGV4dCk7CkBAIC0xMTI5LDcgKzExMzAsOCBAQCB0ZW1wbGF0ZSA8Ym9vbCBjb21wbGV0ZSwgY2xh
c3MgVHJlZUJ1aWxkZXI+IFRyZWVQcm9wZXJ0eSBKU1BhcnNlcjo6cGFyc2VQcm9wZXJ0eQogICAg
ICAgICByZXR1cm4gY29udGV4dC50ZW1wbGF0ZSBjcmVhdGVQcm9wZXJ0eTxjb21wbGV0ZT4obV9n
bG9iYWxEYXRhLCBwcm9wZXJ0eU5hbWUsIG5vZGUsIFByb3BlcnR5Tm9kZTo6Q29uc3RhbnQpOwog
ICAgIH0KICAgICBkZWZhdWx0OgotICAgICAgICBmYWlsKCk7CisgICAgICAgIGZhaWxJZkZhbHNl
KHRva2VuKCkubV90eXBlICYgS2V5d29yZFRva2VuRmxhZyk7CisgICAgICAgIGdvdG8gbmFtZWRQ
cm9wZXJ0eTsKICAgICB9CiB9CiAKQEAgLTE0MTAsNyArMTQxMiw3IEBAIHRlbXBsYXRlIDxjbGFz
cyBUcmVlQnVpbGRlcj4gVHJlZUV4cHJlc3Npb24gSlNQYXJzZXI6OnBhcnNlTWVtYmVyRXhwcmVz
c2lvbihUcmVlCiAgICAgICAgIH0KICAgICAgICAgY2FzZSBET1Q6IHsKICAgICAgICAgICAgIGlu
dCBleHByZXNzaW9uRW5kID0gbGFzdFRva2VuRW5kKCk7Ci0gICAgICAgICAgICBuZXh0KCk7Cisg
ICAgICAgICAgICBuZXh0KExleGVyOjpJZ25vcmVSZXNlcnZlZFdvcmRzKTsKICAgICAgICAgICAg
IG1hdGNoT3JGYWlsKElERU5UKTsKICAgICAgICAgICAgIGJhc2UgPSBjb250ZXh0LmNyZWF0ZURv
dEFjY2VzcyhiYXNlLCAqdG9rZW4oKS5tX2RhdGEuaWRlbnQsIGV4cHJlc3Npb25TdGFydCwgZXhw
cmVzc2lvbkVuZCwgdG9rZW5FbmQoKSk7CiAgICAgICAgICAgICBuZXh0KCk7CmRpZmYgLS1naXQg
YS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvSlNQYXJzZXIuaCBiL0phdmFTY3JpcHRDb3JlL3BhcnNl
ci9KU1BhcnNlci5oCmluZGV4IDYwZjI4NGNjOTNiOTY5NzMxYzY5MDFhMmEwYmE4NWY0NTljOTc3
MDAuLmI1YTIxZDliZDc5ZWUzNjhhMThmYTY1MmQ5NjRmNTYxYjRhMTE4MTYgMTAwNjQ0Ci0tLSBh
L0phdmFTY3JpcHRDb3JlL3BhcnNlci9KU1BhcnNlci5oCisrKyBiL0phdmFTY3JpcHRDb3JlL3Bh
cnNlci9KU1BhcnNlci5oCkBAIC0zNCwxNiArMzQsMTcgQEAgY2xhc3MgU291cmNlQ29kZTsKIAog
ZW51bSB7CiAgICAgVW5hcnlPcFRva2VuRmxhZyA9IDY0LAotICAgIEJpbmFyeU9wVG9rZW5QcmVj
ZWRlbmNlU2hpZnQgPSA3LAorICAgIEtleXdvcmRUb2tlbkZsYWcgPSAxMjgsCisgICAgQmluYXJ5
T3BUb2tlblByZWNlZGVuY2VTaGlmdCA9IDgsCiAgICAgQmluYXJ5T3BUb2tlbkFsbG93c0luUHJl
Y2VkZW5jZUFkZGl0aW9uYWxTaGlmdCA9IDQsCi0gICAgQmluYXJ5T3BUb2tlblByZWNlZGVuY2VN
YXNrID0gMTUgPDwgQmluYXJ5T3BUb2tlblByZWNlZGVuY2VTaGlmdAorICAgIEJpbmFyeU9wVG9r
ZW5QcmVjZWRlbmNlTWFzayA9IDE1IDw8IEJpbmFyeU9wVG9rZW5QcmVjZWRlbmNlU2hpZnQsCiB9
OwogCiAjZGVmaW5lIEJJTkFSWV9PUF9QUkVDRURFTkNFKHByZWMpICgoKHByZWMpIDw8IEJpbmFy
eU9wVG9rZW5QcmVjZWRlbmNlU2hpZnQpIHwgKChwcmVjKSA8PCAoQmluYXJ5T3BUb2tlblByZWNl
ZGVuY2VTaGlmdCArIEJpbmFyeU9wVG9rZW5BbGxvd3NJblByZWNlZGVuY2VBZGRpdGlvbmFsU2hp
ZnQpKSkKICNkZWZpbmUgSU5fT1BfUFJFQ0VERU5DRShwcmVjKSAoKHByZWMpIDw8IChCaW5hcnlP
cFRva2VuUHJlY2VkZW5jZVNoaWZ0ICsgQmluYXJ5T3BUb2tlbkFsbG93c0luUHJlY2VkZW5jZUFk
ZGl0aW9uYWxTaGlmdCkpCiAKIGVudW0gSlNUb2tlblR5cGUgewotICAgIE5VTExUT0tFTiwKKyAg
ICBOVUxMVE9LRU4gPSBLZXl3b3JkVG9rZW5GbGFnLAogICAgIFRSVUVUT0tFTiwKICAgICBGQUxT
RVRPS0VOLAogICAgIEJSRUFLLApAQCAtNjksNyArNzAsNyBAQCBlbnVtIEpTVG9rZW5UeXBlIHsK
ICAgICBGSU5BTExZLAogICAgIERFQlVHR0VSLAogICAgIEVMU0UsCi0gICAgT1BFTkJSQUNFLAor
ICAgIE9QRU5CUkFDRSA9IDAsCiAgICAgQ0xPU0VCUkFDRSwKICAgICBPUEVOUEFSRU4sCiAgICAg
Q0xPU0VQQVJFTiwKQEAgLTEwNiw5ICsxMDcsOSBAQCBlbnVtIEpTVG9rZW5UeXBlIHsKICAgICBU
SUxERSA9IDMgfCBVbmFyeU9wVG9rZW5GbGFnLAogICAgIEFVVE9QTFVTUExVUyA9IDQgfCBVbmFy
eU9wVG9rZW5GbGFnLAogICAgIEFVVE9NSU5VU01JTlVTID0gNSB8IFVuYXJ5T3BUb2tlbkZsYWcs
Ci0gICAgVFlQRU9GID0gNiB8IFVuYXJ5T3BUb2tlbkZsYWcsCi0gICAgVk9JRFRPS0VOID0gNyB8
IFVuYXJ5T3BUb2tlbkZsYWcsCi0gICAgREVMRVRFVE9LRU4gPSA4IHwgVW5hcnlPcFRva2VuRmxh
ZywKKyAgICBUWVBFT0YgPSA2IHwgVW5hcnlPcFRva2VuRmxhZyB8IEtleXdvcmRUb2tlbkZsYWcs
CisgICAgVk9JRFRPS0VOID0gNyB8IFVuYXJ5T3BUb2tlbkZsYWcgfCBLZXl3b3JkVG9rZW5GbGFn
LAorICAgIERFTEVURVRPS0VOID0gOCB8IFVuYXJ5T3BUb2tlbkZsYWcgfCBLZXl3b3JkVG9rZW5G
bGFnLAogICAgIE9SID0gMCB8IEJJTkFSWV9PUF9QUkVDRURFTkNFKDEpLAogICAgIEFORCA9IDEg
fCBCSU5BUllfT1BfUFJFQ0VERU5DRSgyKSwKICAgICBCSVRPUiA9IDIgfCBCSU5BUllfT1BfUFJF
Q0VERU5DRSgzKSwKQEAgLTEyMiw4ICsxMjMsOCBAQCBlbnVtIEpTVG9rZW5UeXBlIHsKICAgICBH
VCA9IDEwIHwgQklOQVJZX09QX1BSRUNFREVOQ0UoNyksCiAgICAgTEUgPSAxMSB8IEJJTkFSWV9P
UF9QUkVDRURFTkNFKDcpLAogICAgIEdFID0gMTIgfCBCSU5BUllfT1BfUFJFQ0VERU5DRSg3KSwK
LSAgICBJTlNUQU5DRU9GID0gMTMgfCBCSU5BUllfT1BfUFJFQ0VERU5DRSg3KSwKLSAgICBJTlRP
S0VOID0gMTQgfCBJTl9PUF9QUkVDRURFTkNFKDcpLAorICAgIElOU1RBTkNFT0YgPSAxMyB8IEJJ
TkFSWV9PUF9QUkVDRURFTkNFKDcpIHwgS2V5d29yZFRva2VuRmxhZywKKyAgICBJTlRPS0VOID0g
MTQgfCBJTl9PUF9QUkVDRURFTkNFKDcpIHwgS2V5d29yZFRva2VuRmxhZywKICAgICBMU0hJRlQg
PSAxNSB8IEJJTkFSWV9PUF9QUkVDRURFTkNFKDgpLAogICAgIFJTSElGVCA9IDE2IHwgQklOQVJZ
X09QX1BSRUNFREVOQ0UoOCksCiAgICAgVVJTSElGVCA9IDE3IHwgQklOQVJZX09QX1BSRUNFREVO
Q0UoOCksCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwIGIvSmF2
YVNjcmlwdENvcmUvcGFyc2VyL0xleGVyLmNwcAppbmRleCBiNjM4N2U3YzI5ZTY0N2E3NDhhMDMz
NDc5N2MzZDYyZjU3YjE4NDMwLi5kN2ExMjJlNjNkYzVlMjA1NzQ2ODNiMDE5YzcxOTExNjgyOTc2
M2QwIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwCisrKyBiL0ph
dmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKQEAgLTQ4MSw3ICs0ODEsNyBAQCBBTFdBWVNf
SU5MSU5FIGJvb2wgTGV4ZXI6OnBhcnNlU3RyaW5nKEpTVG9rZW5EYXRhKiBsdmFscCkKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAotSlNUb2tlblR5cGUgTGV4ZXI6OmxleChKU1Rva2VuRGF0YSogbHZh
bHAsIEpTVG9rZW5JbmZvKiBsbG9jcCkKK0pTVG9rZW5UeXBlIExleGVyOjpsZXgoSlNUb2tlbkRh
dGEqIGx2YWxwLCBKU1Rva2VuSW5mbyogbGxvY3AsIExleFR5cGUgbGV4VHlwZSkKIHsKICAgICBB
U1NFUlQoIW1fZXJyb3IpOwogICAgIEFTU0VSVChtX2J1ZmZlcjguaXNFbXB0eSgpKTsKQEAgLTEw
MjIsOSArMTAyMiwxMSBAQCBkb25lSWRlbnRpZmllck9yS2V5d29yZDogewogICAgIG1fYXRMaW5l
U3RhcnQgPSBmYWxzZTsKICAgICBtX2RlbGltaXRlZCA9IGZhbHNlOwogICAgIG1fYnVmZmVyMTYu
cmVzaXplKDApOwotICAgIGNvbnN0IEhhc2hFbnRyeSogZW50cnkgPSBtX2tleXdvcmRUYWJsZS5l
bnRyeShtX2dsb2JhbERhdGEsICpsdmFscC0+aWRlbnQpOwotICAgIHRva2VuID0gZW50cnkgPyBz
dGF0aWNfY2FzdDxKU1Rva2VuVHlwZT4oZW50cnktPmxleGVyVmFsdWUoKSkgOiBJREVOVDsKLQor
ICAgIGlmIChsZXhUeXBlID09IElkZW50aWZ5UmVzZXJ2ZWRXb3JkcykgeworICAgICAgICBjb25z
dCBIYXNoRW50cnkqIGVudHJ5ID0gbV9rZXl3b3JkVGFibGUuZW50cnkobV9nbG9iYWxEYXRhLCAq
bHZhbHAtPmlkZW50KTsKKyAgICAgICAgdG9rZW4gPSBlbnRyeSA/IHN0YXRpY19jYXN0PEpTVG9r
ZW5UeXBlPihlbnRyeS0+bGV4ZXJWYWx1ZSgpKSA6IElERU5UOworICAgIH0gZWxzZQorICAgICAg
ICB0b2tlbiA9IElERU5UOwogICAgIC8vIEZhbGwgdGhyb3VnaCBpbnRvIHJldHVyblRva2VuLgog
fQogCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuaCBiL0phdmFTY3Jp
cHRDb3JlL3BhcnNlci9MZXhlci5oCmluZGV4IGMzMGVlMWRjMDFlYjViMTkzNmYwZjBkNmM2NTM5
ZjFhYzEzOTJjYjQuLjRmN2FmNDQwOGYyNDI2MTFkYmMxOWYzMDZhZjMwNTY0MWNlZDI5NWIgMTAw
NjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5oCisrKyBiL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9MZXhlci5oCkBAIC01MCw3ICs1MCw4IEBAIG5hbWVzcGFjZSBKU0MgewogICAg
ICAgICB2b2lkIHNldElzUmVwYXJzaW5nKCkgeyBtX2lzUmVwYXJzaW5nID0gdHJ1ZTsgfQogCiAg
ICAgICAgIC8vIEZ1bmN0aW9ucyBmb3IgdGhlIHBhcnNlciBpdHNlbGYuCi0gICAgICAgIEpTVG9r
ZW5UeXBlIGxleChKU1Rva2VuRGF0YSogbHZhbHAsIEpTVG9rZW5JbmZvKiBsbG9jcCk7CisgICAg
ICAgIGVudW0gTGV4VHlwZSB7IElkZW50aWZ5UmVzZXJ2ZWRXb3JkcywgSWdub3JlUmVzZXJ2ZWRX
b3JkcyB9OworICAgICAgICBKU1Rva2VuVHlwZSBsZXgoSlNUb2tlbkRhdGEqIGx2YWxwLCBKU1Rv
a2VuSW5mbyogbGxvY3AsIExleFR5cGUpOwogICAgICAgICBpbnQgbGluZU51bWJlcigpIGNvbnN0
IHsgcmV0dXJuIG1fbGluZU51bWJlcjsgfQogICAgICAgICB2b2lkIHNldExhc3RMaW5lTnVtYmVy
KGludCBsYXN0TGluZU51bWJlcikgeyBtX2xhc3RMaW5lTnVtYmVyID0gbGFzdExpbmVOdW1iZXI7
IH0KICAgICAgICAgaW50IGxhc3RMaW5lTnVtYmVyKCkgY29uc3QgeyByZXR1cm4gbV9sYXN0TGlu
ZU51bWJlcjsgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IGU3NjI0MDkyNjA1YmE4M2JkZTczYzU1NDZjMWFjNTBkY2E1Y2Q5
MTcuLjg2YzE2MjdmMWY5MGIyZTFjYmE5NTY1YmExZDIzNDlmNjA0MDNhY2YgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAxMC0wNy0xNiAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVTNSBhbGxv
d3MgdXNlIG9mIHJlc2VydmVkIHdvcmRzIGFzIElkZW50aWZpZXJOYW1lCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MjQ3MQorCisgICAgICAgIEFkZCB0
ZXN0cyB0byBjaGVjayBmb3IgY29ycmVjdCBoYW5kbGluZyBvZiByZXNlcnZlZCB3b3JkcyB3aXRo
CisgICAgICAgIHRoZSBFUzUgc2VtYW50aWNzLgorCisgICAgICAgICogZmFzdC9qcy9yZXNlcnZl
ZC13b3Jkcy1hcy1wcm9wZXJ0eS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
anMvcmVzZXJ2ZWQtd29yZHMtYXMtcHJvcGVydHkuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC9qcy9zY3JpcHQtdGVzdHMvcmVzZXJ2ZWQtd29yZHMtYXMtcHJvcGVydHkuanM6IEFkZGVkLgor
ICAgICAgICAoKToKKyAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTFfRXhw
cmVzc2lvbnMvMTEuMV9QcmltYXJ5X0V4cHJlc3Npb25zLzExLjEuNV9PYmplY3RfSW5pdGlhbGl6
ZXIvUzExLjEuNV9BNC4xLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2pzL3NwdXRuaWsv
Q29uZm9ybWFuY2UvMTFfRXhwcmVzc2lvbnMvMTEuMV9QcmltYXJ5X0V4cHJlc3Npb25zLzExLjEu
NV9PYmplY3RfSW5pdGlhbGl6ZXIvUzExLjEuNV9BNC4yLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
ICBUaGVzZSB0ZXN0cyBhcmUgd3JvbmcsIHVuc3VyZSBob3cgdG8gZ2V0IHNwdXRuaWsgdGVzdHMg
Y29ycmVjdGVkLgorCiAyMDEwLTA3LTE1ICBSb2IgQnVpcyAgPHJ3bGJ1aXNAZ21haWwuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9qcy9yZXNlcnZlZC13b3Jkcy1hcy1wcm9wZXJ0eS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L2pzL3Jlc2VydmVkLXdvcmRzLWFzLXByb3BlcnR5LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44ZmVkMjg4MTQ4NGM4NDAzMmI4ZDU2ZjdhMDc2MjNhZWFhYzUyZDQzCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9yZXNlcnZlZC13b3Jkcy1hcy1wcm9w
ZXJ0eS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzMzUgQEAKK1Rlc3RzIHRvIGVuc3VyZSB0aGF0
IHdlIGNhbiB1c2UgRVMgcmVzZXJ2ZWQgd29yZHMgYXMgcHJvcGVydHkgbmFtZXMuCisKK09uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHZhciB0cnVlIHRocmV3IGV4Y2VwdGlvbiBT
eW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3ZhciB0cnVlfSkgdGhy
ZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gZyh0
cnVlKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChm
dW5jdGlvbigpe2Z1bmN0aW9uIGcodHJ1ZSl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJv
cjogUGFyc2UgZXJyb3IuCitQQVNTIHRyeXt9Y2F0Y2godHJ1ZSl7fSB0aHJldyBleGNlcHRpb24g
U3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt0cnl7fWNhdGNoKHRy
dWUpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBm
dW5jdGlvbiB0cnVlKCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9y
LgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiB0cnVlKCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBT
eW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHZhciBmYWxzZSB0aHJldyBleGNlcHRpb24g
U3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt2YXIgZmFsc2V9KSB0
aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5jdGlvbiBn
KGZhbHNlKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNT
IChmdW5jdGlvbigpe2Z1bmN0aW9uIGcoZmFsc2Upe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4
RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB0cnl7fWNhdGNoKGZhbHNlKXt9IHRocmV3IGV4Y2Vw
dGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3RyeXt9Y2F0
Y2goZmFsc2Upe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgor
UEFTUyBmdW5jdGlvbiBmYWxzZSgpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJz
ZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZmFsc2UoKXt9fSkgdGhyZXcgZXhj
ZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdmFyIG51bGwgdGhyZXcgZXhj
ZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dmFyIG51
bGx9KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5j
dGlvbiBnKG51bGwpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4K
K1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyhudWxsKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5
bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdHJ5e31jYXRjaChudWxsKXt9IHRocmV3IGV4
Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3RyeXt9
Y2F0Y2gobnVsbCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3Iu
CitQQVNTIGZ1bmN0aW9uIG51bGwoKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFy
c2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe2Z1bmN0aW9uIG51bGwoKXt9fSkgdGhyZXcgZXhj
ZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdmFyIGJyZWFrIHRocmV3IGV4
Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3ZhciBi
cmVha30pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1
bmN0aW9uIGcoYnJlYWspe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJv
ci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyhicmVhayl7fX0pIHRocmV3IGV4Y2VwdGlv
biBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHRyeXt9Y2F0Y2goYnJlYWspe30gdGhy
ZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7
dHJ5e31jYXRjaChicmVhayl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2Ug
ZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGJyZWFrKCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJy
b3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBicmVhaygpe319KSB0
aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB2YXIgY2FzZSB0
aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24o
KXt2YXIgY2FzZX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQ
QVNTIGZ1bmN0aW9uIGcoY2FzZSl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNl
IGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBnKGNhc2Upe319KSB0aHJldyBleGNl
cHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB0cnl7fWNhdGNoKGNhc2Upe30g
dGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9u
KCl7dHJ5e31jYXRjaChjYXNlKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJz
ZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gY2FzZSgpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVy
cm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gY2FzZSgpe319KSB0
aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB2YXIgY2F0Y2gg
dGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9u
KCl7dmFyIGNhdGNofSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4K
K1BBU1MgZnVuY3Rpb24gZyhjYXRjaCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBh
cnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBnKGNhdGNoKXt9fSkgdGhyZXcg
ZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdHJ5e31jYXRjaChjYXRj
aCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVu
Y3Rpb24oKXt0cnl7fWNhdGNoKGNhdGNoKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9y
OiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gY2F0Y2goKXt9IHRocmV3IGV4Y2VwdGlvbiBT
eW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe2Z1bmN0aW9uIGNhdGNo
KCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHZh
ciBjb250aW51ZSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFT
UyAoZnVuY3Rpb24oKXt2YXIgY29udGludWV9KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6
IFBhcnNlIGVycm9yLgorUEFTUyBmdW5jdGlvbiBnKGNvbnRpbnVlKXt9IHRocmV3IGV4Y2VwdGlv
biBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe2Z1bmN0aW9uIGco
Y29udGludWUpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgor
UEFTUyB0cnl7fWNhdGNoKGNvbnRpbnVlKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjog
UGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3RyeXt9Y2F0Y2goY29udGludWUpe319KSB0
aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5jdGlvbiBj
b250aW51ZSgpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BB
U1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gY29udGludWUoKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5
bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdmFyIGRlYnVnZ2VyIHRocmV3IGV4Y2VwdGlv
biBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3ZhciBkZWJ1Z2dl
cn0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0
aW9uIGcoZGVidWdnZXIpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJv
ci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyhkZWJ1Z2dlcil7fX0pIHRocmV3IGV4Y2Vw
dGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHRyeXt9Y2F0Y2goZGVidWdnZXIp
e30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0
aW9uKCl7dHJ5e31jYXRjaChkZWJ1Z2dlcil7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJv
cjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGRlYnVnZ2VyKCl7fSB0aHJldyBleGNlcHRp
b24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBk
ZWJ1Z2dlcigpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgor
UEFTUyB2YXIgZGVmYXVsdCB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9y
LgorUEFTUyAoZnVuY3Rpb24oKXt2YXIgZGVmYXVsdH0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhF
cnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGcoZGVmYXVsdCl7fSB0aHJldyBleGNl
cHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlv
biBnKGRlZmF1bHQpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9y
LgorUEFTUyB0cnl7fWNhdGNoKGRlZmF1bHQpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9y
OiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dHJ5e31jYXRjaChkZWZhdWx0KXt9fSkg
dGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24g
ZGVmYXVsdCgpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BB
U1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZGVmYXVsdCgpe319KSB0aHJldyBleGNlcHRpb24gU3lu
dGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB2YXIgZGVsZXRlIHRocmV3IGV4Y2VwdGlvbiBT
eW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3ZhciBkZWxldGV9KSB0
aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5jdGlvbiBn
KGRlbGV0ZSl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFT
UyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBnKGRlbGV0ZSl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50
YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHRyeXt9Y2F0Y2goZGVsZXRlKXt9IHRocmV3IGV4
Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3RyeXt9
Y2F0Y2goZGVsZXRlKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJv
ci4KK1BBU1MgZnVuY3Rpb24gZGVsZXRlKCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6
IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBkZWxldGUoKXt9fSkgdGhy
ZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdmFyIGRvIHRocmV3
IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3Zh
ciBkb30pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1
bmN0aW9uIGcoZG8pe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4K
K1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyhkbyl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50
YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHRyeXt9Y2F0Y2goZG8pe30gdGhyZXcgZXhjZXB0
aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dHJ5e31jYXRj
aChkbyl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNT
IGZ1bmN0aW9uIGRvKCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9y
LgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBkbygpe319KSB0aHJldyBleGNlcHRpb24gU3lu
dGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB2YXIgZWxzZSB0aHJldyBleGNlcHRpb24gU3lu
dGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt2YXIgZWxzZX0pIHRocmV3
IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGcoZWxz
ZSl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVu
Y3Rpb24oKXtmdW5jdGlvbiBnKGVsc2Upe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6
IFBhcnNlIGVycm9yLgorUEFTUyB0cnl7fWNhdGNoKGVsc2Upe30gdGhyZXcgZXhjZXB0aW9uIFN5
bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dHJ5e31jYXRjaChlbHNl
KXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVu
Y3Rpb24gZWxzZSgpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4K
K1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZWxzZSgpe319KSB0aHJldyBleGNlcHRpb24gU3lu
dGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB2YXIgZmluYWxseSB0aHJldyBleGNlcHRpb24g
U3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt2YXIgZmluYWxseX0p
IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9u
IGcoZmluYWxseSl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgor
UEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBnKGZpbmFsbHkpe319KSB0aHJldyBleGNlcHRpb24g
U3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB0cnl7fWNhdGNoKGZpbmFsbHkpe30gdGhy
ZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7
dHJ5e31jYXRjaChmaW5hbGx5KXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJz
ZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gZmluYWxseSgpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRh
eEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZmluYWxseSgp
e319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB2YXIg
Zm9yIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5j
dGlvbigpe3ZhciBmb3J9KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9y
LgorUEFTUyBmdW5jdGlvbiBnKGZvcil7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBh
cnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBnKGZvcil7fX0pIHRocmV3IGV4
Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHRyeXt9Y2F0Y2goZm9yKXt9
IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlv
bigpe3RyeXt9Y2F0Y2goZm9yKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJz
ZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gZm9yKCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJy
b3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBmb3IoKXt9fSkgdGhy
ZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdmFyIGZ1bmN0aW9u
IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlv
bigpe3ZhciBmdW5jdGlvbn0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJy
b3IuCitQQVNTIGZ1bmN0aW9uIGcoZnVuY3Rpb24pe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVy
cm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyhmdW5jdGlvbil7
fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHRyeXt9
Y2F0Y2goZnVuY3Rpb24pe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJv
ci4KK1BBU1MgKGZ1bmN0aW9uKCl7dHJ5e31jYXRjaChmdW5jdGlvbil7fX0pIHRocmV3IGV4Y2Vw
dGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGZ1bmN0aW9uKCl7
fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rp
b24oKXtmdW5jdGlvbiBmdW5jdGlvbigpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6
IFBhcnNlIGVycm9yLgorUEFTUyB2YXIgaWYgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQ
YXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dmFyIGlmfSkgdGhyZXcgZXhjZXB0aW9uIFN5
bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gZyhpZil7fSB0aHJldyBleGNl
cHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlv
biBnKGlmKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BB
U1MgdHJ5e31jYXRjaChpZil7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVy
cm9yLgorUEFTUyAoZnVuY3Rpb24oKXt0cnl7fWNhdGNoKGlmKXt9fSkgdGhyZXcgZXhjZXB0aW9u
IFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gaWYoKXt9IHRocmV3IGV4
Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe2Z1bmN0
aW9uIGlmKCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQ
QVNTIHZhciBpbiB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFT
UyAoZnVuY3Rpb24oKXt2YXIgaW59KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNl
IGVycm9yLgorUEFTUyBmdW5jdGlvbiBnKGluKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJv
cjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe2Z1bmN0aW9uIGcoaW4pe319KSB0aHJl
dyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB0cnl7fWNhdGNoKGlu
KXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5j
dGlvbigpe3RyeXt9Y2F0Y2goaW4pe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBh
cnNlIGVycm9yLgorUEFTUyBmdW5jdGlvbiBpbigpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVy
cm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gaW4oKXt9fSkgdGhy
ZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdmFyIGluc3RhbmNl
b2YgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0
aW9uKCl7dmFyIGluc3RhbmNlb2Z9KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNl
IGVycm9yLgorUEFTUyBmdW5jdGlvbiBnKGluc3RhbmNlb2Ype30gdGhyZXcgZXhjZXB0aW9uIFN5
bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyhpbnN0
YW5jZW9mKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BB
U1MgdHJ5e31jYXRjaChpbnN0YW5jZW9mKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjog
UGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3RyeXt9Y2F0Y2goaW5zdGFuY2VvZil7fX0p
IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9u
IGluc3RhbmNlb2YoKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3Iu
CitQQVNTIChmdW5jdGlvbigpe2Z1bmN0aW9uIGluc3RhbmNlb2YoKXt9fSkgdGhyZXcgZXhjZXB0
aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdmFyIG5ldyB0aHJldyBleGNlcHRp
b24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt2YXIgbmV3fSkg
dGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24g
ZyhuZXcpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1Mg
KGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyhuZXcpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJy
b3I6IFBhcnNlIGVycm9yLgorUEFTUyB0cnl7fWNhdGNoKG5ldyl7fSB0aHJldyBleGNlcHRpb24g
U3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt0cnl7fWNhdGNoKG5l
dyl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1
bmN0aW9uIG5ldygpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4K
K1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gbmV3KCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50
YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHZhciByZXR1cm4gdGhyZXcgZXhjZXB0aW9uIFN5
bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dmFyIHJldHVybn0pIHRo
cmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGco
cmV0dXJuKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNT
IChmdW5jdGlvbigpe2Z1bmN0aW9uIGcocmV0dXJuKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRh
eEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdHJ5e31jYXRjaChyZXR1cm4pe30gdGhyZXcgZXhj
ZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dHJ5e31j
YXRjaChyZXR1cm4pe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9y
LgorUEFTUyBmdW5jdGlvbiByZXR1cm4oKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjog
UGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe2Z1bmN0aW9uIHJldHVybigpe319KSB0aHJl
dyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB2YXIgc3dpdGNoIHRo
cmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigp
e3ZhciBzd2l0Y2h9KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgor
UEFTUyBmdW5jdGlvbiBnKHN3aXRjaCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBh
cnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBnKHN3aXRjaCl7fX0pIHRocmV3
IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHRyeXt9Y2F0Y2goc3dp
dGNoKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChm
dW5jdGlvbigpe3RyeXt9Y2F0Y2goc3dpdGNoKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVy
cm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gc3dpdGNoKCl7fSB0aHJldyBleGNlcHRp
b24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBz
d2l0Y2goKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BB
U1MgdmFyIHRoaXMgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BB
U1MgKGZ1bmN0aW9uKCl7dmFyIHRoaXN9KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBh
cnNlIGVycm9yLgorUEFTUyBmdW5jdGlvbiBnKHRoaXMpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRh
eEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyh0aGlzKXt9
fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdHJ5e31j
YXRjaCh0aGlzKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQ
QVNTIChmdW5jdGlvbigpe3RyeXt9Y2F0Y2godGhpcyl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50
YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIHRoaXMoKXt9IHRocmV3IGV4Y2Vw
dGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe2Z1bmN0aW9u
IHRoaXMoKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BB
U1MgdmFyIHRocm93IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQ
QVNTIChmdW5jdGlvbigpe3ZhciB0aHJvd30pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjog
UGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGcodGhyb3cpe30gdGhyZXcgZXhjZXB0aW9uIFN5
bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyh0aHJv
dyl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHRy
eXt9Y2F0Y2godGhyb3cpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJv
ci4KK1BBU1MgKGZ1bmN0aW9uKCl7dHJ5e31jYXRjaCh0aHJvdyl7fX0pIHRocmV3IGV4Y2VwdGlv
biBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIHRocm93KCl7fSB0aHJl
dyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtm
dW5jdGlvbiB0aHJvdygpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVy
cm9yLgorUEFTUyB2YXIgdHJ5IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJy
b3IuCitQQVNTIChmdW5jdGlvbigpe3ZhciB0cnl9KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJy
b3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5jdGlvbiBnKHRyeSl7fSB0aHJldyBleGNlcHRpb24g
U3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBnKHRy
eSl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHRy
eXt9Y2F0Y2godHJ5KXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3Iu
CitQQVNTIChmdW5jdGlvbigpe3RyeXt9Y2F0Y2godHJ5KXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5
bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gdHJ5KCl7fSB0aHJldyBleGNl
cHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlv
biB0cnkoKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BB
U1MgdmFyIHR5cGVvZiB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgor
UEFTUyAoZnVuY3Rpb24oKXt2YXIgdHlwZW9mfSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9y
OiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gZyh0eXBlb2Ype30gdGhyZXcgZXhjZXB0aW9u
IFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyh0
eXBlb2Ype319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFT
UyB0cnl7fWNhdGNoKHR5cGVvZil7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNl
IGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt0cnl7fWNhdGNoKHR5cGVvZil7fX0pIHRocmV3IGV4
Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIHR5cGVvZigp
e30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0
aW9uKCl7ZnVuY3Rpb24gdHlwZW9mKCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjog
UGFyc2UgZXJyb3IuCitQQVNTIHZhciB2YXIgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQ
YXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dmFyIHZhcn0pIHRocmV3IGV4Y2VwdGlvbiBT
eW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGcodmFyKXt9IHRocmV3IGV4
Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe2Z1bmN0
aW9uIGcodmFyKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4K
K1BBU1MgdHJ5e31jYXRjaCh2YXIpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJz
ZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dHJ5e31jYXRjaCh2YXIpe319KSB0aHJldyBleGNl
cHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5jdGlvbiB2YXIoKXt9IHRo
cmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigp
e2Z1bmN0aW9uIHZhcigpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVy
cm9yLgorUEFTUyB2YXIgdm9pZCB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVy
cm9yLgorUEFTUyAoZnVuY3Rpb24oKXt2YXIgdm9pZH0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhF
cnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGcodm9pZCl7fSB0aHJldyBleGNlcHRp
b24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBn
KHZvaWQpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFT
UyB0cnl7fWNhdGNoKHZvaWQpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBl
cnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dHJ5e31jYXRjaCh2b2lkKXt9fSkgdGhyZXcgZXhjZXB0
aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gdm9pZCgpe30gdGhy
ZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7
ZnVuY3Rpb24gdm9pZCgpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVy
cm9yLgorUEFTUyB2YXIgd2hpbGUgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBl
cnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dmFyIHdoaWxlfSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRh
eEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gZyh3aGlsZSl7fSB0aHJldyBleGNl
cHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlv
biBnKHdoaWxlKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4K
K1BBU1MgdHJ5e31jYXRjaCh3aGlsZSl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBh
cnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt0cnl7fWNhdGNoKHdoaWxlKXt9fSkgdGhyZXcg
ZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gd2hpbGUo
KXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5j
dGlvbigpe2Z1bmN0aW9uIHdoaWxlKCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjog
UGFyc2UgZXJyb3IuCitQQVNTIHZhciB3aXRoIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjog
UGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3ZhciB3aXRofSkgdGhyZXcgZXhjZXB0aW9u
IFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gZyh3aXRoKXt9IHRocmV3
IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe2Z1
bmN0aW9uIGcod2l0aCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJy
b3IuCitQQVNTIHRyeXt9Y2F0Y2god2l0aCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6
IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt0cnl7fWNhdGNoKHdpdGgpe319KSB0aHJl
dyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5jdGlvbiB3aXRo
KCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVu
Y3Rpb24oKXtmdW5jdGlvbiB3aXRoKCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjog
UGFyc2UgZXJyb3IuCitQQVNTIHZhciBjbGFzcyB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6
IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt2YXIgY2xhc3N9KSB0aHJldyBleGNlcHRp
b24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5jdGlvbiBnKGNsYXNzKXt9IHRo
cmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigp
e2Z1bmN0aW9uIGcoY2xhc3Mpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNl
IGVycm9yLgorUEFTUyB0cnl7fWNhdGNoKGNsYXNzKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhF
cnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3RyeXt9Y2F0Y2goY2xhc3Mpe319
KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5jdGlv
biBjbGFzcygpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BB
U1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gY2xhc3MoKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRh
eEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdmFyIGNvbnN0IHRocmV3IGV4Y2VwdGlvbiBTeW50
YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3ZhciBjb25zdH0pIHRocmV3
IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGcoY29u
c3Qpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1
bmN0aW9uKCl7ZnVuY3Rpb24gZyhjb25zdCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJv
cjogUGFyc2UgZXJyb3IuCitQQVNTIHRyeXt9Y2F0Y2goY29uc3Qpe30gdGhyZXcgZXhjZXB0aW9u
IFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dHJ5e31jYXRjaChj
b25zdCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNT
IGZ1bmN0aW9uIGNvbnN0KCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVy
cm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBjb25zdCgpe319KSB0aHJldyBleGNlcHRp
b24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB2YXIgZW51bSB0aHJldyBleGNlcHRp
b24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt2YXIgZW51bX0p
IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9u
IGcoZW51bSl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFT
UyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBnKGVudW0pe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4
RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB0cnl7fWNhdGNoKGVudW0pe30gdGhyZXcgZXhjZXB0
aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7dHJ5e31jYXRj
aChlbnVtKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BB
U1MgZnVuY3Rpb24gZW51bSgpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBl
cnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZW51bSgpe319KSB0aHJldyBleGNlcHRp
b24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB2YXIgZXhwb3J0IHRocmV3IGV4Y2Vw
dGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3ZhciBleHBv
cnR9KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5j
dGlvbiBnKGV4cG9ydCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9y
LgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBnKGV4cG9ydCl7fX0pIHRocmV3IGV4Y2VwdGlv
biBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHRyeXt9Y2F0Y2goZXhwb3J0KXt9IHRo
cmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigp
e3RyeXt9Y2F0Y2goZXhwb3J0KXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJz
ZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gZXhwb3J0KCl7fSB0aHJldyBleGNlcHRpb24gU3ludGF4
RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXtmdW5jdGlvbiBleHBvcnQoKXt9
fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdmFyIGV4
dGVuZHMgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1
bmN0aW9uKCl7dmFyIGV4dGVuZHN9KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNl
IGVycm9yLgorUEFTUyBmdW5jdGlvbiBnKGV4dGVuZHMpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRh
eEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyhleHRlbmRz
KXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgdHJ5
e31jYXRjaChleHRlbmRzKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJy
b3IuCitQQVNTIChmdW5jdGlvbigpe3RyeXt9Y2F0Y2goZXh0ZW5kcyl7fX0pIHRocmV3IGV4Y2Vw
dGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1bmN0aW9uIGV4dGVuZHMoKXt9
IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlv
bigpe2Z1bmN0aW9uIGV4dGVuZHMoKXt9fSkgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQ
YXJzZSBlcnJvci4KK1BBU1MgdmFyIGltcG9ydCB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6
IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt2YXIgaW1wb3J0fSkgdGhyZXcgZXhjZXB0
aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgZnVuY3Rpb24gZyhpbXBvcnQpe30g
dGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9u
KCl7ZnVuY3Rpb24gZyhpbXBvcnQpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBh
cnNlIGVycm9yLgorUEFTUyB0cnl7fWNhdGNoKGltcG9ydCl7fSB0aHJldyBleGNlcHRpb24gU3lu
dGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt0cnl7fWNhdGNoKGltcG9y
dCl7fX0pIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIGZ1
bmN0aW9uIGltcG9ydCgpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJv
ci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gaW1wb3J0KCl7fX0pIHRocmV3IGV4Y2VwdGlv
biBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIHZhciBzdXBlciB0aHJldyBleGNlcHRp
b24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyAoZnVuY3Rpb24oKXt2YXIgc3VwZXJ9
KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyBmdW5jdGlv
biBnKHN1cGVyKXt9IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQ
QVNTIChmdW5jdGlvbigpe2Z1bmN0aW9uIGcoc3VwZXIpe319KSB0aHJldyBleGNlcHRpb24gU3lu
dGF4RXJyb3I6IFBhcnNlIGVycm9yLgorUEFTUyB0cnl7fWNhdGNoKHN1cGVyKXt9IHRocmV3IGV4
Y2VwdGlvbiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IuCitQQVNTIChmdW5jdGlvbigpe3RyeXt9
Y2F0Y2goc3VwZXIpe319KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFBhcnNlIGVycm9y
LgorUEFTUyBmdW5jdGlvbiBzdXBlcigpe30gdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQ
YXJzZSBlcnJvci4KK1BBU1MgKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gc3VwZXIoKXt9fSkgdGhyZXcg
ZXhjZXB0aW9uIFN5bnRheEVycm9yOiBQYXJzZSBlcnJvci4KK1BBU1MgKG9iaj0oe3RydWU6IHRy
dWUsZmFsc2U6IHRydWUsbnVsbDogdHJ1ZSxicmVhazogdHJ1ZSxjYXNlOiB0cnVlLGNhdGNoOiB0
cnVlLGNvbnRpbnVlOiB0cnVlLGRlYnVnZ2VyOiB0cnVlLGRlZmF1bHQ6IHRydWUsZGVsZXRlOiB0
cnVlLGRvOiB0cnVlLGVsc2U6IHRydWUsZmluYWxseTogdHJ1ZSxmb3I6IHRydWUsZnVuY3Rpb246
IHRydWUsaWY6IHRydWUsaW46IHRydWUsaW5zdGFuY2VvZjogdHJ1ZSxuZXc6IHRydWUscmV0dXJu
OiB0cnVlLHN3aXRjaDogdHJ1ZSx0aGlzOiB0cnVlLHRocm93OiB0cnVlLHRyeTogdHJ1ZSx0eXBl
b2Y6IHRydWUsdmFyOiB0cnVlLHZvaWQ6IHRydWUsd2hpbGU6IHRydWUsd2l0aDogdHJ1ZSxjbGFz
czogdHJ1ZSxjb25zdDogdHJ1ZSxlbnVtOiB0cnVlLGV4cG9ydDogdHJ1ZSxleHRlbmRzOiB0cnVl
LGltcG9ydDogdHJ1ZSxzdXBlcjogdHJ1ZSwgcGFyc2VkOiB0cnVlIH0pKS5wYXJzZWQgaXMgdHJ1
ZQorUEFTUyAoeyB0cnVlOiB0cnVlfSkudHJ1ZSBpcyB0cnVlCitQQVNTICh7IGZhbHNlOiB0cnVl
fSkuZmFsc2UgaXMgdHJ1ZQorUEFTUyAoeyBudWxsOiB0cnVlfSkubnVsbCBpcyB0cnVlCitQQVNT
ICh7IGJyZWFrOiB0cnVlfSkuYnJlYWsgaXMgdHJ1ZQorUEFTUyAoeyBjYXNlOiB0cnVlfSkuY2Fz
ZSBpcyB0cnVlCitQQVNTICh7IGNhdGNoOiB0cnVlfSkuY2F0Y2ggaXMgdHJ1ZQorUEFTUyAoeyBj
b250aW51ZTogdHJ1ZX0pLmNvbnRpbnVlIGlzIHRydWUKK1BBU1MgKHsgZGVidWdnZXI6IHRydWV9
KS5kZWJ1Z2dlciBpcyB0cnVlCitQQVNTICh7IGRlZmF1bHQ6IHRydWV9KS5kZWZhdWx0IGlzIHRy
dWUKK1BBU1MgKHsgZGVsZXRlOiB0cnVlfSkuZGVsZXRlIGlzIHRydWUKK1BBU1MgKHsgZG86IHRy
dWV9KS5kbyBpcyB0cnVlCitQQVNTICh7IGVsc2U6IHRydWV9KS5lbHNlIGlzIHRydWUKK1BBU1Mg
KHsgZmluYWxseTogdHJ1ZX0pLmZpbmFsbHkgaXMgdHJ1ZQorUEFTUyAoeyBmb3I6IHRydWV9KS5m
b3IgaXMgdHJ1ZQorUEFTUyAoeyBmdW5jdGlvbjogdHJ1ZX0pLmZ1bmN0aW9uIGlzIHRydWUKK1BB
U1MgKHsgaWY6IHRydWV9KS5pZiBpcyB0cnVlCitQQVNTICh7IGluOiB0cnVlfSkuaW4gaXMgdHJ1
ZQorUEFTUyAoeyBpbnN0YW5jZW9mOiB0cnVlfSkuaW5zdGFuY2VvZiBpcyB0cnVlCitQQVNTICh7
IG5ldzogdHJ1ZX0pLm5ldyBpcyB0cnVlCitQQVNTICh7IHJldHVybjogdHJ1ZX0pLnJldHVybiBp
cyB0cnVlCitQQVNTICh7IHN3aXRjaDogdHJ1ZX0pLnN3aXRjaCBpcyB0cnVlCitQQVNTICh7IHRo
aXM6IHRydWV9KS50aGlzIGlzIHRydWUKK1BBU1MgKHsgdGhyb3c6IHRydWV9KS50aHJvdyBpcyB0
cnVlCitQQVNTICh7IHRyeTogdHJ1ZX0pLnRyeSBpcyB0cnVlCitQQVNTICh7IHR5cGVvZjogdHJ1
ZX0pLnR5cGVvZiBpcyB0cnVlCitQQVNTICh7IHZhcjogdHJ1ZX0pLnZhciBpcyB0cnVlCitQQVNT
ICh7IHZvaWQ6IHRydWV9KS52b2lkIGlzIHRydWUKK1BBU1MgKHsgd2hpbGU6IHRydWV9KS53aGls
ZSBpcyB0cnVlCitQQVNTICh7IHdpdGg6IHRydWV9KS53aXRoIGlzIHRydWUKK1BBU1MgKHsgY2xh
c3M6IHRydWV9KS5jbGFzcyBpcyB0cnVlCitQQVNTICh7IGNvbnN0OiB0cnVlfSkuY29uc3QgaXMg
dHJ1ZQorUEFTUyAoeyBlbnVtOiB0cnVlfSkuZW51bSBpcyB0cnVlCitQQVNTICh7IGV4cG9ydDog
dHJ1ZX0pLmV4cG9ydCBpcyB0cnVlCitQQVNTICh7IGV4dGVuZHM6IHRydWV9KS5leHRlbmRzIGlz
IHRydWUKK1BBU1MgKHsgaW1wb3J0OiB0cnVlfSkuaW1wb3J0IGlzIHRydWUKK1BBU1MgKHsgc3Vw
ZXI6IHRydWV9KS5zdXBlciBpcyB0cnVlCitQQVNTICh7Z2V0IHRydWUoKXt9LHNldCB0cnVlKCl7
fSxnZXQgZmFsc2UoKXt9LHNldCBmYWxzZSgpe30sZ2V0IG51bGwoKXt9LHNldCBudWxsKCl7fSxn
ZXQgYnJlYWsoKXt9LHNldCBicmVhaygpe30sZ2V0IGNhc2UoKXt9LHNldCBjYXNlKCl7fSxnZXQg
Y2F0Y2goKXt9LHNldCBjYXRjaCgpe30sZ2V0IGNvbnRpbnVlKCl7fSxzZXQgY29udGludWUoKXt9
LGdldCBkZWJ1Z2dlcigpe30sc2V0IGRlYnVnZ2VyKCl7fSxnZXQgZGVmYXVsdCgpe30sc2V0IGRl
ZmF1bHQoKXt9LGdldCBkZWxldGUoKXt9LHNldCBkZWxldGUoKXt9LGdldCBkbygpe30sc2V0IGRv
KCl7fSxnZXQgZWxzZSgpe30sc2V0IGVsc2UoKXt9LGdldCBmaW5hbGx5KCl7fSxzZXQgZmluYWxs
eSgpe30sZ2V0IGZvcigpe30sc2V0IGZvcigpe30sZ2V0IGZ1bmN0aW9uKCl7fSxzZXQgZnVuY3Rp
b24oKXt9LGdldCBpZigpe30sc2V0IGlmKCl7fSxnZXQgaW4oKXt9LHNldCBpbigpe30sZ2V0IGlu
c3RhbmNlb2YoKXt9LHNldCBpbnN0YW5jZW9mKCl7fSxnZXQgbmV3KCl7fSxzZXQgbmV3KCl7fSxn
ZXQgcmV0dXJuKCl7fSxzZXQgcmV0dXJuKCl7fSxnZXQgc3dpdGNoKCl7fSxzZXQgc3dpdGNoKCl7
fSxnZXQgdGhpcygpe30sc2V0IHRoaXMoKXt9LGdldCB0aHJvdygpe30sc2V0IHRocm93KCl7fSxn
ZXQgdHJ5KCl7fSxzZXQgdHJ5KCl7fSxnZXQgdHlwZW9mKCl7fSxzZXQgdHlwZW9mKCl7fSxnZXQg
dmFyKCl7fSxzZXQgdmFyKCl7fSxnZXQgdm9pZCgpe30sc2V0IHZvaWQoKXt9LGdldCB3aGlsZSgp
e30sc2V0IHdoaWxlKCl7fSxnZXQgd2l0aCgpe30sc2V0IHdpdGgoKXt9LGdldCBjbGFzcygpe30s
c2V0IGNsYXNzKCl7fSxnZXQgY29uc3QoKXt9LHNldCBjb25zdCgpe30sZ2V0IGVudW0oKXt9LHNl
dCBlbnVtKCl7fSxnZXQgZXhwb3J0KCl7fSxzZXQgZXhwb3J0KCl7fSxnZXQgZXh0ZW5kcygpe30s
c2V0IGV4dGVuZHMoKXt9LGdldCBpbXBvcnQoKXt9LHNldCBpbXBvcnQoKXt9LGdldCBzdXBlcigp
e30sc2V0IHN1cGVyKCl7fSwgcGFyc2VkOiB0cnVlIH0pLnBhcnNlZCBpcyB0cnVlCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9qcy9yZXNlcnZlZC13b3Jkcy1hcy1wcm9wZXJ0eS5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9qcy9yZXNlcnZlZC13b3Jkcy1hcy1wcm9wZXJ0eS5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjk5NWNjOGU3OTI5YTMxMDMwYjc0YjNkY2QzZjAzNDk1Nzk1ODdmNDYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3Jlc2VydmVkLXdvcmRzLWFzLXByb3BlcnR5Lmh0
bWwKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
cmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRp
b24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10
ZXN0cy9yZXNlcnZlZC13b3Jkcy1hcy1wcm9wZXJ0eS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0icmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3NjcmlwdC10ZXN0cy9yZXNlcnZlZC13
b3Jkcy1hcy1wcm9wZXJ0eS5qcyBiL0xheW91dFRlc3RzL2Zhc3QvanMvc2NyaXB0LXRlc3RzL3Jl
c2VydmVkLXdvcmRzLWFzLXByb3BlcnR5LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJkOWY2NjZiMjQwMDQ1ODBm
YjBiMjY2MmY2M2NmN2YyYmY5ZjRlZDgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2pzL3NjcmlwdC10ZXN0cy9yZXNlcnZlZC13b3Jkcy1hcy1wcm9wZXJ0eS5qcwpAQCAtMCww
ICsxLDM4IEBACitkZXNjcmlwdGlvbigiVGVzdHMgdG8gZW5zdXJlIHRoYXQgd2UgY2FuIHVzZSBF
UyByZXNlcnZlZCB3b3JkcyBhcyBwcm9wZXJ0eSBuYW1lcy4iKTsKKwordmFyIHJlc2VydmVkV29y
ZHMgPSBbInRydWUiLCAiZmFsc2UiLCAibnVsbCIsICJicmVhayIsICJjYXNlIiwgImNhdGNoIiwg
ImNvbnRpbnVlIiwgImRlYnVnZ2VyIiwgImRlZmF1bHQiLCAiZGVsZXRlIiwgImRvIiwgImVsc2Ui
LCAiZmluYWxseSIsICJmb3IiLAorICAgICAgICAgICAgICAgICAgICAgImZ1bmN0aW9uIiwgImlm
IiwgImluIiwgImluc3RhbmNlb2YiLCAibmV3IiwgInJldHVybiIsICJzd2l0Y2giLCAidGhpcyIs
ICJ0aHJvdyIsICJ0cnkiLCAidHlwZW9mIiwgInZhciIsICJ2b2lkIiwgIndoaWxlIiwgIndpdGgi
LAorICAgICAgICAgICAgICAgICAgICAgImNsYXNzIiwgImNvbnN0IiwgImVudW0iLCAiZXhwb3J0
IiwgImV4dGVuZHMiLCAiaW1wb3J0IiwgInN1cGVyIl07CisKK2Z1bmN0aW9uIHBhcnNlU2hvdWxk
VGhyb3coc3RyKSB7CisgICAgc2hvdWxkVGhyb3coc3RyKTsKKyAgICBzaG91bGRUaHJvdygiKGZ1
bmN0aW9uKCl7IitzdHIrIn0pIik7Cit9CisKK2ZvciAodmFyIGkgPSAwOyBpIDwgcmVzZXJ2ZWRX
b3Jkcy5sZW5ndGg7IGkrKykgeworICAgIHBhcnNlU2hvdWxkVGhyb3coInZhciAiICsgcmVzZXJ2
ZWRXb3Jkc1tpXSk7CisgICAgcGFyc2VTaG91bGRUaHJvdygiZnVuY3Rpb24gZygiICsgcmVzZXJ2
ZWRXb3Jkc1tpXSArICIpe30iKTsKKyAgICBwYXJzZVNob3VsZFRocm93KCJ0cnl7fWNhdGNoKCIg
KyByZXNlcnZlZFdvcmRzW2ldICsgIil7fSIpOworICAgIHBhcnNlU2hvdWxkVGhyb3coImZ1bmN0
aW9uICIgKyByZXNlcnZlZFdvcmRzW2ldICsgIigpe30iKTsKK30KKwordmFyIGxpdGVyYWwgPSAi
KHsiOworZm9yICh2YXIgaSA9IDA7IGkgPCByZXNlcnZlZFdvcmRzLmxlbmd0aDsgaSsrKQorICAg
IGxpdGVyYWwgKz0gcmVzZXJ2ZWRXb3Jkc1tpXSArICI6IHRydWUsIjsgCitsaXRlcmFsICs9ICIg
cGFyc2VkOiB0cnVlIH0pIjsKKwordmFyIG9iajsKK3Nob3VsZEJlVHJ1ZSgiKG9iaj0iICsgbGl0
ZXJhbCArICIpLnBhcnNlZCIpOworZm9yICh2YXIgaSA9IDA7IGkgPCByZXNlcnZlZFdvcmRzLmxl
bmd0aDsgaSsrKQorICAgICBzaG91bGRCZVRydWUoIih7ICIgKyByZXNlcnZlZFdvcmRzW2ldICsg
IjogdHJ1ZX0pLiIrcmVzZXJ2ZWRXb3Jkc1tpXSk7CisKK3ZhciBhY2Nlc3NvckxpdGVyYWwgPSAi
KHsiOworZm9yICh2YXIgaSA9IDA7IGkgPCByZXNlcnZlZFdvcmRzLmxlbmd0aDsgaSsrKSB7Cisg
ICAgYWNjZXNzb3JMaXRlcmFsICs9ICJnZXQgIiArIHJlc2VydmVkV29yZHNbaV0gKyAiKCl7fSwi
OworICAgIGFjY2Vzc29yTGl0ZXJhbCArPSAic2V0ICIgKyByZXNlcnZlZFdvcmRzW2ldICsgIigp
e30sIjsgCit9CithY2Nlc3NvckxpdGVyYWwgKz0gIiBwYXJzZWQ6IHRydWUgfSkiOworCitzaG91
bGRCZVRydWUoYWNjZXNzb3JMaXRlcmFsICsgIi5wYXJzZWQiKTsKKwordmFyIHN1Y2Nlc3NmdWxs
eVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3NwdXRuaWsv
Q29uZm9ybWFuY2UvMTFfRXhwcmVzc2lvbnMvMTEuMV9QcmltYXJ5X0V4cHJlc3Npb25zLzExLjEu
NV9PYmplY3RfSW5pdGlhbGl6ZXIvUzExLjEuNV9BNC4xLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMV9FeHByZXNzaW9ucy8xMS4xX1ByaW1h
cnlfRXhwcmVzc2lvbnMvMTEuMS41X09iamVjdF9Jbml0aWFsaXplci9TMTEuMS41X0E0LjEtZXhw
ZWN0ZWQudHh0CmluZGV4IDRlZmJhZThhYTVhYzIzYTFjNDg5M2ZjZTJiNjk1ZWQxOTdiZmI2Zjcu
LmZjNjA3NGZlNWI4MWE5ZGE1NTU5YjM2MDBhZWQ0ZjIzOWFlYjE3YTIgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvanMvc3B1dG5pay9Db25mb3JtYW5jZS8xMV9FeHByZXNzaW9ucy8xMS4x
X1ByaW1hcnlfRXhwcmVzc2lvbnMvMTEuMS41X09iamVjdF9Jbml0aWFsaXplci9TMTEuMS41X0E0
LjEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvanMvc3B1dG5pay9Db25mb3Jt
YW5jZS8xMV9FeHByZXNzaW9ucy8xMS4xX1ByaW1hcnlfRXhwcmVzc2lvbnMvMTEuMS41X09iamVj
dF9Jbml0aWFsaXplci9TMTEuMS41X0E0LjEtZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsNiBAQAot
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDc3OiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IKIFMxMS4x
LjVfQTQuMQogCi1QQVNTIEV4cGVjdGVkIHBhcnNpbmcgZmFpbHVyZQorRkFJTCBObyBlcnJvciBk
ZXRlY3RlZAogCiBURVNUIENPTVBMRVRFCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
anMvc3B1dG5pay9Db25mb3JtYW5jZS8xMV9FeHByZXNzaW9ucy8xMS4xX1ByaW1hcnlfRXhwcmVz
c2lvbnMvMTEuMS41X09iamVjdF9Jbml0aWFsaXplci9TMTEuMS41X0E0LjItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzExX0V4cHJlc3Npb25z
LzExLjFfUHJpbWFyeV9FeHByZXNzaW9ucy8xMS4xLjVfT2JqZWN0X0luaXRpYWxpemVyL1MxMS4x
LjVfQTQuMi1leHBlY3RlZC50eHQKaW5kZXggMWU1MzRlYTU3M2JhMWJkNGE5YjNkNGM4NjNlYTU5
NjMxNzI1YmJjYy4uMTk1MjBlM2MxYzAxYWIzNWFmMjE3Y2U2Y2RlM2MzNDkyOGY0ZWFjMyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9qcy9zcHV0bmlrL0NvbmZvcm1hbmNlLzExX0V4cHJl
c3Npb25zLzExLjFfUHJpbWFyeV9FeHByZXNzaW9ucy8xMS4xLjVfT2JqZWN0X0luaXRpYWxpemVy
L1MxMS4xLjVfQTQuMi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9zcHV0
bmlrL0NvbmZvcm1hbmNlLzExX0V4cHJlc3Npb25zLzExLjFfUHJpbWFyeV9FeHByZXNzaW9ucy8x
MS4xLjVfT2JqZWN0X0luaXRpYWxpemVyL1MxMS4xLjVfQTQuMi1leHBlY3RlZC50eHQKQEAgLTEs
NyArMSw2IEBACi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgNzc6IFN5bnRheEVycm9yOiBQYXJzZSBl
cnJvcgogUzExLjEuNV9BNC4yCiAKLVBBU1MgRXhwZWN0ZWQgcGFyc2luZyBmYWlsdXJlCitGQUlM
IE5vIGVycm9yIGRldGVjdGVkCiAKIFRFU1QgQ09NUExFVEUKIAo=
</data>
<flag name="review"
          id="49923"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>