<?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>238096</bug_id>
          
          <creation_ts>2022-03-18 14:16:57 -0700</creation_ts>
          <short_desc>Vector move constructor and move assignment operator are suboptimal when the vector has an inline buffer</short_desc>
          <delta_ts>2022-03-19 21:13:16 -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 Template Framework</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=237988</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1852832</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-18 14:16:57 -0700</bug_when>
    <thetext>The Vector move constructor and move assignment operator are suboptimal when the vector has an inline buffer, because it relies on Vector::swap().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852834</commentid>
    <comment_count>1</comment_count>
      <attachid>455133</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-18 14:18:24 -0700</bug_when>
    <thetext>Created attachment 455133
WIP Patch

Needs more testing and ASAN support.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852838</commentid>
    <comment_count>2</comment_count>
      <attachid>455135</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-18 14:29:55 -0700</bug_when>
    <thetext>Created attachment 455135
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852880</commentid>
    <comment_count>3</comment_count>
      <attachid>455148</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-18 16:26:19 -0700</bug_when>
    <thetext>Created attachment 455148
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852889</commentid>
    <comment_count>4</comment_count>
      <attachid>455151</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-18 16:42:59 -0700</bug_when>
    <thetext>Created attachment 455151
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852922</commentid>
    <comment_count>5</comment_count>
      <attachid>455155</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-18 18:17:52 -0700</bug_when>
    <thetext>Created attachment 455155
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852932</commentid>
    <comment_count>6</comment_count>
      <attachid>455158</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-18 19:32:45 -0700</bug_when>
    <thetext>Created attachment 455158
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852987</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-19 13:26:20 -0700</bug_when>
    <thetext>Small 0.4% progression on Speedometer on MacBook Air 10,1 (Apple Silicon) confirmed by A/B bots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853036</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-19 21:12:39 -0700</bug_when>
    <thetext>Committed r291540 (248646@main): &lt;https://commits.webkit.org/248646@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 455158.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853037</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-19 21:13:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/90532213&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455133</attachid>
            <date>2022-03-18 14:18:24 -0700</date>
            <delta_ts>2022-03-18 14:29:55 -0700</delta_ts>
            <desc>WIP Patch</desc>
            <filename>238096_Vector_better_move_constructor_wip.patch</filename>
            <type>text/plain</type>
            <size>11103</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oIGIvU291cmNlL1dURi93dGYvVmVj
dG9yLmgKaW5kZXggNDY3OWExOGRmMDE0Li5mZjJmMWIyMDQ1MjggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL1ZlY3Rvci5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oCkBAIC00MzUs
NiArNDM1LDIxIEBAIHB1YmxpYzoKIHByb3RlY3RlZDoKICAgICB1c2luZyBCYXNlOjptX3NpemU7
CiAKKyAgICBWZWN0b3JCdWZmZXIoVmVjdG9yQnVmZmVyPFQsIDAsIE1hbGxvYz4mJiBvdGhlcikK
KyAgICB7CisgICAgICAgIG1fYnVmZmVyID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwg
bnVsbHB0cik7CisgICAgICAgIG1fY2FwYWNpdHkgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fY2Fw
YWNpdHksIDApOworICAgICAgICBtX3NpemUgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fc2l6ZSwg
MCk7CisgICAgfQorCisgICAgdm9pZCBhZG9wdChWZWN0b3JCdWZmZXImJiBvdGhlcikKKyAgICB7
CisgICAgICAgIGRlYWxsb2NhdGVCdWZmZXIoYnVmZmVyKCkpOworICAgICAgICBtX2J1ZmZlciA9
IHN0ZDo6ZXhjaGFuZ2Uob3RoZXIubV9idWZmZXIsIG51bGxwdHIpOworICAgICAgICBtX2NhcGFj
aXR5ID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2NhcGFjaXR5LCAwKTsKKyAgICAgICAgbV9zaXpl
ID0gc3RkOjpleGNoYW5nZShvdGhlci5tX3NpemUsIDApOworICAgIH0KKwogcHJpdmF0ZToKICAg
ICBmcmllbmQgY2xhc3MgSlNDOjpMTEludE9mZnNldHNFeHRyYWN0b3I7CiAgICAgdXNpbmcgQmFz
ZTo6bV9idWZmZXI7CkBAIC01NTYsNiArNTcxLDM0IEBAIHB1YmxpYzoKIHByb3RlY3RlZDoKICAg
ICB1c2luZyBCYXNlOjptX3NpemU7CiAKKyAgICBWZWN0b3JCdWZmZXIoVmVjdG9yQnVmZmVyJiYg
b3RoZXIpCisgICAgICAgIDogQmFzZShpbmxpbmVCdWZmZXIoKSwgaW5saW5lQ2FwYWNpdHksIDAp
CisgICAgeworICAgICAgICBpZiAob3RoZXIuYnVmZmVyKCkgPT0gb3RoZXIuaW5saW5lQnVmZmVy
KCkpCisgICAgICAgICAgICBWZWN0b3JUeXBlT3BlcmF0aW9uczxUPjo6bW92ZShvdGhlci5pbmxp
bmVCdWZmZXIoKSwgb3RoZXIuaW5saW5lQnVmZmVyKCkgKyBvdGhlci5tX3NpemUsIGlubGluZUJ1
ZmZlcigpKTsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBtX2J1ZmZlciA9IHN0ZDo6ZXhj
aGFuZ2Uob3RoZXIubV9idWZmZXIsIG90aGVyLmlubGluZUJ1ZmZlcigpKTsKKyAgICAgICAgICAg
IG1fY2FwYWNpdHkgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fY2FwYWNpdHksIGlubGluZUNhcGFj
aXR5KTsKKyAgICAgICAgfQorICAgICAgICBtX3NpemUgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1f
c2l6ZSwgMCk7CisgICAgfQorCisgICAgdm9pZCBhZG9wdChWZWN0b3JCdWZmZXImJiBvdGhlcikK
KyAgICB7CisgICAgICAgIGlmIChidWZmZXIoKSAhPSBpbmxpbmVCdWZmZXIoKSkgeworICAgICAg
ICAgICAgZGVhbGxvY2F0ZUJ1ZmZlcihidWZmZXIoKSk7CisgICAgICAgICAgICBtX2J1ZmZlciA9
IGlubGluZUJ1ZmZlcigpOworICAgICAgICB9CisgICAgICAgIGlmIChvdGhlci5idWZmZXIoKSA9
PSBvdGhlci5pbmxpbmVCdWZmZXIoKSkgeworICAgICAgICAgICAgVmVjdG9yVHlwZU9wZXJhdGlv
bnM8VD46Om1vdmUob3RoZXIuaW5saW5lQnVmZmVyKCksIG90aGVyLmlubGluZUJ1ZmZlcigpICsg
b3RoZXIubV9zaXplLCBpbmxpbmVCdWZmZXIoKSk7CisgICAgICAgICAgICBtX2NhcGFjaXR5ID0g
b3RoZXIubV9jYXBhY2l0eTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG1fYnVmZmVy
ID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwgb3RoZXIuaW5saW5lQnVmZmVyKCkpOwor
ICAgICAgICAgICAgbV9jYXBhY2l0eSA9IHN0ZDo6ZXhjaGFuZ2Uob3RoZXIubV9jYXBhY2l0eSwg
aW5saW5lQ2FwYWNpdHkpOworICAgICAgICB9CisgICAgICAgIG1fc2l6ZSA9IHN0ZDo6ZXhjaGFu
Z2Uob3RoZXIubV9zaXplLCAwKTsKKyAgICB9CisKIHByaXZhdGU6CiAgICAgdXNpbmcgQmFzZTo6
bV9idWZmZXI7CiAgICAgdXNpbmcgQmFzZTo6bV9jYXBhY2l0eTsKQEAgLTk3NCwxNCArMTAxNywy
MyBAQCBWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNp
dHksIE1hbGxvYz4mIFZlY3RvcjxULCBpbmxpbgogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBULCBzaXpl
X3QgaW5saW5lQ2FwYWNpdHksIHR5cGVuYW1lIE92ZXJmbG93SGFuZGxlciwgc2l6ZV90IG1pbkNh
cGFjaXR5LCB0eXBlbmFtZSBNYWxsb2M+CiBpbmxpbmUgVmVjdG9yPFQsIGlubGluZUNhcGFjaXR5
LCBPdmVyZmxvd0hhbmRsZXIsIG1pbkNhcGFjaXR5LCBNYWxsb2M+OjpWZWN0b3IoVmVjdG9yPFQs
IGlubGluZUNhcGFjaXR5LCBPdmVyZmxvd0hhbmRsZXIsIG1pbkNhcGFjaXR5LCBNYWxsb2M+JiYg
b3RoZXIpCisgICAgOiBCYXNlKFdURk1vdmUob3RoZXIpKQogewotICAgIHN3YXAob3RoZXIpOwor
ICAgIGFzYW5TZXRJbml0aWFsQnVmZmVyU2l6ZVRvKG1fc2l6ZSk7CisgICAgb3RoZXIuYXNhblNl
dEluaXRpYWxCdWZmZXJTaXplVG8oMCk7CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHNpemVf
dCBpbmxpbmVDYXBhY2l0eSwgdHlwZW5hbWUgT3ZlcmZsb3dIYW5kbGVyLCBzaXplX3QgbWluQ2Fw
YWNpdHksIHR5cGVuYW1lIE1hbGxvYz4KIGlubGluZSBWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHks
IE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNpdHksIE1hbGxvYz4mIFZlY3RvcjxULCBpbmxpbmVD
YXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwgTWFsbG9jPjo6b3BlcmF0b3I9
KFZlY3RvcjxULCBpbmxpbmVDYXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwg
TWFsbG9jPiYmIG90aGVyKQogewotICAgIHN3YXAob3RoZXIpOworICAgIGlmIChtX3NpemUpCisg
ICAgICAgIFZlY3RvclR5cGVPcGVyYXRpb25zPFQ+OjpkZXN0cnVjdChiZWdpbigpLCBlbmQoKSk7
CisKKyAgICBCYXNlOjphZG9wdChXVEZNb3ZlKG90aGVyKSk7CisKKyAgICBhc2FuU2V0SW5pdGlh
bEJ1ZmZlclNpemVUbyhtX3NpemUpOworICAgIG90aGVyLmFzYW5TZXRJbml0aWFsQnVmZmVyU2l6
ZVRvKDApOworCiAgICAgcmV0dXJuICp0aGlzOwogfQogCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dURi9WZWN0b3IuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XVEYvVmVjdG9yLmNwcAppbmRleCAwYjE2NjcwYTQyMjEuLmRmYzFmMDU0ZTAwZiAxMDA2NDQK
LS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yLmNwcAorKysgYi9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9WZWN0b3IuY3BwCkBAIC0xNTEyLDQgKzE1MTIsMTg3
IEBAIFRFU1QoV1RGX1ZlY3RvciwgTWFwQ3VzdG9tUmV0dXJuVHlwZSkKICAgICBFWFBFQ1RfRkxP
QVRfRVEob3V0cHV0WzFdLCAyLjBmKTsKIH0KIAorVEVTVChXVEZfVmVjdG9yLCBNb3ZlQ29uc3Ry
dWN0b3IpCit7CisgICAgeworICAgICAgICBWZWN0b3I8U3RyaW5nPiBzdHJpbmdzKHsgImEiX3N0
ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNU
X0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmc+IHN0cmluZ3My
KFdURk1vdmUoc3RyaW5ncykpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBV
KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMFUpOworICAgICAgICBF
WFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQ
RUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5kYXRhKCksICJiIik7CisgICAgICAgIEVYUEVD
VF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCkuZGF0YSgpLCAiYyIpOworICAgICAgICBFWFBFQ1Rf
U1RSRVEoc3RyaW5nczJbM10udXRmOCgpLmRhdGEoKSwgImQiKTsKKyAgICAgICAgRVhQRUNUX1NU
UkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5kYXRhKCksICJlIik7CisgICAgfQorCisgICAgeworICAg
ICAgICBWZWN0b3I8U3RyaW5nLCAxMD4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9z
dHIsICJkIl9zdHIsICJlIl9zdHIgfSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUo
KSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAxMFUpOworICAg
ICAgICBWZWN0b3I8U3RyaW5nLCAxMD4gc3RyaW5nczIoV1RGTW92ZShzdHJpbmdzKSk7CisgICAg
ICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3Ry
aW5ncy5jYXBhY2l0eSgpLCAxMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgp
LCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxMFUpOworICAg
ICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAg
ICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5kYXRhKCksICJiIik7CisgICAgICAg
IEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCkuZGF0YSgpLCAiYyIpOworICAgICAgICBF
WFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRmOCgpLmRhdGEoKSwgImQiKTsKKyAgICAgICAgRVhQ
RUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5kYXRhKCksICJlIik7CisgICAgfQorCisgICAg
eworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwg
ImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Mu
c2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDVVKTsK
KyAgICAgICAgVmVjdG9yPFN0cmluZywgMj4gc3RyaW5nczIoV1RGTW92ZShzdHJpbmdzKSk7Cisg
ICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5ncy5jYXBhY2l0eSgpLCAyVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXpl
KCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDVVKTsKKyAg
ICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7CisgICAg
ICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOworICAgICAg
ICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAgICAgICAg
RVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAgICAgIEVY
UEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgIH0KK30KKwor
VEVTVChXVEZfVmVjdG9yLCBNb3ZlQXNzaWdubWVudE9wZXJhdG9yKQoreworICAgIHsKKyAgICAg
ICAgVmVjdG9yPFN0cmluZz4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJk
Il9zdHIsICJlIl9zdHIgfSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUp
OworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIFZl
Y3RvcjxTdHJpbmc+IHN0cmluZ3MyOworICAgICAgICBzdHJpbmdzMiA9IFdURk1vdmUoc3RyaW5n
cyk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBF
Q1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdz
Mi5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDVV
KTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7
CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOwor
ICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAg
ICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAg
ICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgIH0K
KworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9z
dHIsICJjIl9zdHIsICJkIl9zdHIsICJlIl9zdHIgfSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJp
bmdzLnNpemUoKSwgNVUpOworICAgICAgICBWZWN0b3I8U3RyaW5nPiBzdHJpbmdzMih7ICJmb28i
X3N0ciwgImJhciJfc3RyIH0pOworICAgICAgICBzdHJpbmdzMiA9IFdURk1vdmUoc3RyaW5ncyk7
CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBFQ1Rf
RVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5z
aXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDVVKTsK
KyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7Cisg
ICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOworICAg
ICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAgICAg
ICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAgICAg
IEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgIH0KKwor
ICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJf
c3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3Ry
aW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwg
MTBVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmluZ3MyOworICAgICAgICBzdHJp
bmdzMiA9IFdURk1vdmUoc3RyaW5ncyk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUo
KSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAxMFUpOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShz
dHJpbmdzMi5jYXBhY2l0eSgpLCAxMFUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJb
MF0udXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFd
LnV0ZjgoKS5kYXRhKCksICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51
dGY4KCkuZGF0YSgpLCAiYyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRm
OCgpLmRhdGEoKSwgImQiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0Zjgo
KS5kYXRhKCksICJlIik7CisgICAgfQorCisgICAgeworICAgICAgICBWZWN0b3I8U3RyaW5nLCAx
MD4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJkIl9zdHIsICJlIl9zdHIg
fSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUpOworICAgICAgICBFWFBF
Q1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAxMFUpOworICAgICAgICBWZWN0b3I8U3RyaW5nLCAx
MD4gc3RyaW5nczIoeyAiZm9vIl9zdHIsICJiYXIiX3N0ciB9KTsKKyAgICAgICAgc3RyaW5nczIg
PSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBV
KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAg
RVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5n
czIuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0
ZjgoKS5kYXRhKCksICJhIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4
KCkuZGF0YSgpLCAiYiIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgp
LmRhdGEoKSwgImMiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5k
YXRhKCksICJkIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0
YSgpLCAiZSIpOworICAgIH0KKworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMj4gc3Ry
aW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJkIl9zdHIsICJlIl9zdHIgfSk7Cisg
ICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5ncy5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmlu
Z3MyOworICAgICAgICBzdHJpbmdzMiA9IFdURk1vdmUoc3RyaW5ncyk7CisgICAgICAgIEVYUEVD
VF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBh
Y2l0eSgpLCAyVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXplKCksIDVVKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDVVKTsKKyAgICAgICAgRVhQRUNU
X1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7CisgICAgICAgIEVYUEVDVF9T
VFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOworICAgICAgICBFWFBFQ1RfU1RS
RVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVR
KHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShz
dHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgIH0KKworICAgIHsKKyAgICAgICAg
VmVjdG9yPFN0cmluZywgMj4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJk
Il9zdHIsICJlIl9zdHIgfSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUp
OworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIFZl
Y3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MyKHsgImZvbyJfc3RyLCAiYmFyIl9zdHIgfSk7CisgICAg
ICAgIHN0cmluZ3MyID0gV1RGTW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmlu
Z3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDJV
KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBF
Q1RfRVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3Ry
aW5nczJbMF0udXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmlu
Z3MyWzFdLnV0ZjgoKS5kYXRhKCksICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdz
MlsyXS51dGY4KCkuZGF0YSgpLCAiYyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJb
M10udXRmOCgpLmRhdGEoKSwgImQiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRd
LnV0ZjgoKS5kYXRhKCksICJlIik7CisgICAgfQorCisgICAgeworICAgICAgICBWZWN0b3I8U3Ry
aW5nLCAyPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwgImUi
X3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAgICAg
IEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDVVKTsKKyAgICAgICAgVmVjdG9yPFN0cmlu
ZywgMj4gc3RyaW5nczIoeyAiZm9vIl9zdHIsICJiYXIiX3N0ciwgImJheiJfc3RyIH0pOworICAg
ICAgICBzdHJpbmdzMiA9IFdURk1vdmUoc3RyaW5ncyk7CisgICAgICAgIEVYUEVDVF9FUShzdHJp
bmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAy
VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQ
RUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDVVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0
cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJp
bmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5n
czJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3My
WzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0
XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgIH0KKworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0
cmluZywgMj4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9zdHIgfSk7CisgICAgICAgIEVYUEVDVF9F
UShzdHJpbmdzLnNpemUoKSwgMlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0
eSgpLCAyVSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MyKHsgImZvbyJfc3Ry
LCAiYmFyIl9zdHIsICJiYXoiX3N0ciB9KTsKKyAgICAgICAgc3RyaW5nczIgPSBXVEZNb3ZlKHN0
cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAg
RVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOworICAgICAgICBFWFBFQ1RfRVEoc3Ry
aW5nczIuc2l6ZSgpLCAyVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgp
LCAyVSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAi
YSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIi
KTsKKyAgICB9Cit9CisKIH0gLy8gbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455135</attachid>
            <date>2022-03-18 14:29:55 -0700</date>
            <delta_ts>2022-03-18 16:26:16 -0700</delta_ts>
            <desc>WIP Patch</desc>
            <filename>238096_Vector_better_move_constructor_wip.patch</filename>
            <type>text/plain</type>
            <size>11194</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oIGIvU291cmNlL1dURi93dGYvVmVj
dG9yLmgKaW5kZXggNDY3OWExOGRmMDE0Li45NmY1MThkMTU3YjYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL1ZlY3Rvci5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oCkBAIC00MzUs
NiArNDM1LDIxIEBAIHB1YmxpYzoKIHByb3RlY3RlZDoKICAgICB1c2luZyBCYXNlOjptX3NpemU7
CiAKKyAgICBWZWN0b3JCdWZmZXIoVmVjdG9yQnVmZmVyPFQsIDAsIE1hbGxvYz4mJiBvdGhlcikK
KyAgICB7CisgICAgICAgIG1fYnVmZmVyID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwg
bnVsbHB0cik7CisgICAgICAgIG1fY2FwYWNpdHkgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fY2Fw
YWNpdHksIDApOworICAgICAgICBtX3NpemUgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fc2l6ZSwg
MCk7CisgICAgfQorCisgICAgdm9pZCBhZG9wdChWZWN0b3JCdWZmZXImJiBvdGhlcikKKyAgICB7
CisgICAgICAgIGRlYWxsb2NhdGVCdWZmZXIoYnVmZmVyKCkpOworICAgICAgICBtX2J1ZmZlciA9
IHN0ZDo6ZXhjaGFuZ2Uob3RoZXIubV9idWZmZXIsIG51bGxwdHIpOworICAgICAgICBtX2NhcGFj
aXR5ID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2NhcGFjaXR5LCAwKTsKKyAgICAgICAgbV9zaXpl
ID0gc3RkOjpleGNoYW5nZShvdGhlci5tX3NpemUsIDApOworICAgIH0KKwogcHJpdmF0ZToKICAg
ICBmcmllbmQgY2xhc3MgSlNDOjpMTEludE9mZnNldHNFeHRyYWN0b3I7CiAgICAgdXNpbmcgQmFz
ZTo6bV9idWZmZXI7CkBAIC01NTYsNiArNTcxLDM0IEBAIHB1YmxpYzoKIHByb3RlY3RlZDoKICAg
ICB1c2luZyBCYXNlOjptX3NpemU7CiAKKyAgICBWZWN0b3JCdWZmZXIoVmVjdG9yQnVmZmVyJiYg
b3RoZXIpCisgICAgICAgIDogQmFzZShpbmxpbmVCdWZmZXIoKSwgaW5saW5lQ2FwYWNpdHksIDAp
CisgICAgeworICAgICAgICBpZiAob3RoZXIuYnVmZmVyKCkgPT0gb3RoZXIuaW5saW5lQnVmZmVy
KCkpCisgICAgICAgICAgICBWZWN0b3JUeXBlT3BlcmF0aW9uczxUPjo6bW92ZShvdGhlci5pbmxp
bmVCdWZmZXIoKSwgb3RoZXIuaW5saW5lQnVmZmVyKCkgKyBvdGhlci5tX3NpemUsIGlubGluZUJ1
ZmZlcigpKTsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBtX2J1ZmZlciA9IHN0ZDo6ZXhj
aGFuZ2Uob3RoZXIubV9idWZmZXIsIG90aGVyLmlubGluZUJ1ZmZlcigpKTsKKyAgICAgICAgICAg
IG1fY2FwYWNpdHkgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fY2FwYWNpdHksIGlubGluZUNhcGFj
aXR5KTsKKyAgICAgICAgfQorICAgICAgICBtX3NpemUgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1f
c2l6ZSwgMCk7CisgICAgfQorCisgICAgdm9pZCBhZG9wdChWZWN0b3JCdWZmZXImJiBvdGhlcikK
KyAgICB7CisgICAgICAgIGlmIChidWZmZXIoKSAhPSBpbmxpbmVCdWZmZXIoKSkgeworICAgICAg
ICAgICAgZGVhbGxvY2F0ZUJ1ZmZlcihidWZmZXIoKSk7CisgICAgICAgICAgICBtX2J1ZmZlciA9
IGlubGluZUJ1ZmZlcigpOworICAgICAgICB9CisgICAgICAgIGlmIChvdGhlci5idWZmZXIoKSA9
PSBvdGhlci5pbmxpbmVCdWZmZXIoKSkgeworICAgICAgICAgICAgVmVjdG9yVHlwZU9wZXJhdGlv
bnM8VD46Om1vdmUob3RoZXIuaW5saW5lQnVmZmVyKCksIG90aGVyLmlubGluZUJ1ZmZlcigpICsg
b3RoZXIubV9zaXplLCBpbmxpbmVCdWZmZXIoKSk7CisgICAgICAgICAgICBtX2NhcGFjaXR5ID0g
b3RoZXIubV9jYXBhY2l0eTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG1fYnVmZmVy
ID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwgb3RoZXIuaW5saW5lQnVmZmVyKCkpOwor
ICAgICAgICAgICAgbV9jYXBhY2l0eSA9IHN0ZDo6ZXhjaGFuZ2Uob3RoZXIubV9jYXBhY2l0eSwg
aW5saW5lQ2FwYWNpdHkpOworICAgICAgICB9CisgICAgICAgIG1fc2l6ZSA9IHN0ZDo6ZXhjaGFu
Z2Uob3RoZXIubV9zaXplLCAwKTsKKyAgICB9CisKIHByaXZhdGU6CiAgICAgdXNpbmcgQmFzZTo6
bV9idWZmZXI7CiAgICAgdXNpbmcgQmFzZTo6bV9jYXBhY2l0eTsKQEAgLTk3NCwxNCArMTAxNywy
NiBAQCBWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNp
dHksIE1hbGxvYz4mIFZlY3RvcjxULCBpbmxpbgogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBULCBzaXpl
X3QgaW5saW5lQ2FwYWNpdHksIHR5cGVuYW1lIE92ZXJmbG93SGFuZGxlciwgc2l6ZV90IG1pbkNh
cGFjaXR5LCB0eXBlbmFtZSBNYWxsb2M+CiBpbmxpbmUgVmVjdG9yPFQsIGlubGluZUNhcGFjaXR5
LCBPdmVyZmxvd0hhbmRsZXIsIG1pbkNhcGFjaXR5LCBNYWxsb2M+OjpWZWN0b3IoVmVjdG9yPFQs
IGlubGluZUNhcGFjaXR5LCBPdmVyZmxvd0hhbmRsZXIsIG1pbkNhcGFjaXR5LCBNYWxsb2M+JiYg
b3RoZXIpCisgICAgOiBCYXNlKFdURk1vdmUob3RoZXIpKQogewotICAgIHN3YXAob3RoZXIpOwor
ICAgIGFzYW5TZXRJbml0aWFsQnVmZmVyU2l6ZVRvKG1fc2l6ZSk7CisgICAgb3RoZXIuYXNhblNl
dEluaXRpYWxCdWZmZXJTaXplVG8oMCk7CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHNpemVf
dCBpbmxpbmVDYXBhY2l0eSwgdHlwZW5hbWUgT3ZlcmZsb3dIYW5kbGVyLCBzaXplX3QgbWluQ2Fw
YWNpdHksIHR5cGVuYW1lIE1hbGxvYz4KIGlubGluZSBWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHks
IE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNpdHksIE1hbGxvYz4mIFZlY3RvcjxULCBpbmxpbmVD
YXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwgTWFsbG9jPjo6b3BlcmF0b3I9
KFZlY3RvcjxULCBpbmxpbmVDYXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwg
TWFsbG9jPiYmIG90aGVyKQogewotICAgIHN3YXAob3RoZXIpOworICAgIC8vIE1ha2UgaXQgcG9z
c2libGUgdG8gY29weSBpbmxpbmUgYnVmZmVycy4KKyAgICBhc2FuU2V0QnVmZmVyU2l6ZVRvRnVs
bENhcGFjaXR5KCk7CisKKyAgICBpZiAobV9zaXplKQorICAgICAgICBWZWN0b3JUeXBlT3BlcmF0
aW9uczxUPjo6ZGVzdHJ1Y3QoYmVnaW4oKSwgZW5kKCkpOworCisgICAgQmFzZTo6YWRvcHQoV1RG
TW92ZShvdGhlcikpOworCisgICAgYXNhblNldEluaXRpYWxCdWZmZXJTaXplVG8obV9zaXplKTsK
KyAgICBvdGhlci5hc2FuU2V0SW5pdGlhbEJ1ZmZlclNpemVUbygwKTsKKwogICAgIHJldHVybiAq
dGhpczsKIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVj
dG9yLmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3Rvci5jcHAKaW5kZXgg
MGIxNjY3MGE0MjIxLi5kZmMxZjA1NGUwMGYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV1RGL1ZlY3Rvci5jcHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
VEYvVmVjdG9yLmNwcApAQCAtMTUxMiw0ICsxNTEyLDE4NyBAQCBURVNUKFdURl9WZWN0b3IsIE1h
cEN1c3RvbVJldHVyblR5cGUpCiAgICAgRVhQRUNUX0ZMT0FUX0VRKG91dHB1dFsxXSwgMi4wZik7
CiB9CiAKK1RFU1QoV1RGX1ZlY3RvciwgTW92ZUNvbnN0cnVjdG9yKQoreworICAgIHsKKyAgICAg
ICAgVmVjdG9yPFN0cmluZz4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJk
Il9zdHIsICJlIl9zdHIgfSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUp
OworICAgICAgICBWZWN0b3I8U3RyaW5nPiBzdHJpbmdzMihXVEZNb3ZlKHN0cmluZ3MpKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShz
dHJpbmdzLmNhcGFjaXR5KCksIDBVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBd
LnV0ZjgoKS5kYXRhKCksICJhIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51
dGY4KCkuZGF0YSgpLCAiYiIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRm
OCgpLmRhdGEoKSwgImMiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0Zjgo
KS5kYXRhKCksICJkIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCku
ZGF0YSgpLCAiZSIpOworICAgIH0KKworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+
IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0p
OworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNU
X0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+
IHN0cmluZ3MyKFdURk1vdmUoc3RyaW5ncykpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5z
aXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMTBVKTsK
KyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1Rf
RVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmlu
Z3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdz
MlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJb
Ml0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNd
LnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51
dGY4KCkuZGF0YSgpLCAiZSIpOworICAgIH0KKworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmlu
ZywgMj4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJkIl9zdHIsICJlIl9z
dHIgfSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUpOworICAgICAgICBF
WFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmcs
IDI+IHN0cmluZ3MyKFdURk1vdmUoc3RyaW5ncykpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5n
cy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUp
OworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVD
VF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJp
bmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5n
czJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3My
WzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsz
XS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0u
dXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICB9Cit9CisKK1RFU1QoV1RGX1ZlY3RvciwgTW92ZUFz
c2lnbm1lbnRPcGVyYXRvcikKK3sKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmc+IHN0cmlu
Z3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0
cmluZ3MuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBWZWN0b3I8U3RyaW5nPiBzdHJpbmdzMjsK
KyAgICAgICAgc3RyaW5nczIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHko
KSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAg
IEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJF
UShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEo
c3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0
cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJp
bmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5n
czJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3Rv
cjxTdHJpbmc+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAi
ZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAg
ICAgVmVjdG9yPFN0cmluZz4gc3RyaW5nczIoeyAiZm9vIl9zdHIsICJiYXIiX3N0ciB9KTsKKyAg
ICAgICAgc3RyaW5nczIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3Ry
aW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwg
MFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVY
UEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShz
dHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3Ry
aW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmlu
Z3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdz
MlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJb
NF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxT
dHJpbmcsIDEwPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwg
ImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAg
ICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAgIFZlY3RvcjxT
dHJpbmcsIDEwPiBzdHJpbmdzMjsKKyAgICAgICAgc3RyaW5nczIgPSBXVEZNb3ZlKHN0cmluZ3Mp
OworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNU
X0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3My
LnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgMTBV
KTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7
CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOwor
ICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAg
ICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAg
ICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgIH0K
KworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmluZ3MoeyAiYSJfc3RyLCAi
YiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHko
KSwgMTBVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmluZ3MyKHsgImZvbyJfc3Ry
LCAiYmFyIl9zdHIgfSk7CisgICAgICAgIHN0cmluZ3MyID0gV1RGTW92ZShzdHJpbmdzKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShz
dHJpbmdzLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXpl
KCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDEwVSk7Cisg
ICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAg
ICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAg
ICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAg
IEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBF
WFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICB9CisKKyAg
ICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3Ry
LCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5n
cy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgNVUp
OworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdzMjsKKyAgICAgICAgc3RyaW5nczIg
PSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBV
KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOworICAgICAgICBF
WFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdz
Mi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4
KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgp
LmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5k
YXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0
YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEo
KSwgImUiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmlu
Z3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0
cmluZ3MuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdz
Mih7ICJmb28iX3N0ciwgImJhciJfc3RyIH0pOworICAgICAgICBzdHJpbmdzMiA9IFdURk1vdmUo
c3RyaW5ncyk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAg
ICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAyVSk7CisgICAgICAgIEVYUEVDVF9FUShz
dHJpbmdzMi5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5
KCksIDVVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCks
ICJhIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAi
YiIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMi
KTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7
CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOwor
ICAgIH0KKworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMj4gc3RyaW5ncyh7ICJhIl9z
dHIsICJiIl9zdHIsICJjIl9zdHIsICJkIl9zdHIsICJlIl9zdHIgfSk7CisgICAgICAgIEVYUEVD
VF9FUShzdHJpbmdzLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBh
Y2l0eSgpLCA1VSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MyKHsgImZvbyJf
c3RyLCAiYmFyIl9zdHIsICJiYXoiX3N0ciB9KTsKKyAgICAgICAgc3RyaW5nczIgPSBXVEZNb3Zl
KHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAg
ICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0
eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgp
LCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwg
ImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJj
Iik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIp
OworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsK
KyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MoeyAiYSJf
c3RyLCAiYiJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDJVKTsK
KyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOworICAgICAgICBWZWN0
b3I8U3RyaW5nLCAyPiBzdHJpbmdzMih7ICJmb28iX3N0ciwgImJhciJfc3RyLCAiYmF6Il9zdHIg
fSk7CisgICAgICAgIHN0cmluZ3MyID0gV1RGTW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNU
X0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFj
aXR5KCksIDJVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgMlUpOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgMlUpOworICAgICAgICBFWFBFQ1Rf
U1RSRVEoc3RyaW5nczJbMF0udXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NU
UkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5kYXRhKCksICJiIik7CisgICAgfQorfQorCiB9IC8vIG5h
bWVzcGFjZSBUZXN0V2ViS2l0QVBJCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455148</attachid>
            <date>2022-03-18 16:26:19 -0700</date>
            <delta_ts>2022-03-18 16:42:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238096-20220318162618.patch</filename>
            <type>text/plain</type>
            <size>15157</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQ0YjlhMWUwM2FkYWJhYWQwNjk2NWQ2
NDY2OGIxM2Y1ZGU1ZDQ4NTUuLjZjNjE3YzFiYjdmZWM3MzFkNDQ4MjE4OTFmYTFmZTYzZDFmMDMy
ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjItMDMtMTggIENocmlzIER1bWV6ICA8Y2R1bWV6
QGFwcGxlLmNvbT4KKworICAgICAgICBWZWN0b3IgbW92ZSBjb25zdHJ1Y3RvciBhbmQgbW92ZSBh
c3NpZ25tZW50IG9wZXJhdG9yIGFyZSBzdWJvcHRpbWFsIHdoZW4gdGhlIHZlY3RvciBoYXMgYW4g
aW5saW5lIGJ1ZmZlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjM4MDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhlIG1vdmUgY29uc3RydWN0b3IgKGFuZCBtb3ZlIGFzc2lnbm1lbnQgb3BlcmF0b3Jz
KSBmb3IgVmVjdG9yIHdlcmUgaW1wbGVtZW50ZWQgdXNpbmcgVmVjdG9yOjpzd2FwKCksIHdoaWNo
CisgICAgICAgIGlzIGZpbmUgZm9yIHZlY3RvcnMgd2l0aCBvdXQgb2YgbGluZSBidWZmZXJzIGJl
Y2F1c2Ugd2UncmUganVzdCBzd2FwcGluZyBwb2ludGVycy4gSG93ZXZlciwgd2hlbiB0aGUgdmVj
dG9yCisgICAgICAgIGhhcyBpbmxpbmUgY2FwYWNpdHksIHRoaXMgaXMgc3Vib3B0aW1hbCBiZWNh
dXNlIGl0IGlzIG5vdCBjaGVhcCB0byBtb3ZlIGRhdGEgZnJvbSBvbmUgaW5saW5lIGJ1ZmZlciB0
byBhbm90aGVyCisgICAgICAgIGFuZCBtb3ZpbmcgYW55IGRhdGEgdG8gdGhlIHNvdXJjZSBidWZm
ZXIgaXMgdW5uZWNlc3NhcnkuCisKKyAgICAgICAgKiB3dGYvVmVjdG9yLmg6CisgICAgICAgIChX
VEY6OlZlY3RvckJ1ZmZlcjo6VmVjdG9yQnVmZmVyKToKKyAgICAgICAgKFdURjo6VmVjdG9yQnVm
ZmVyOjphZG9wdCk6CisgICAgICAgIChXVEY6Ok1hbGxvYz46OlZlY3Rvcik6CisgICAgICAgIChX
VEY6Oj0pOgorCiAyMDIyLTAzLTE4ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlh
LmNvbT4KIAogICAgICAgICBbR1N0cmVhbWVyXSBJbml0aWFsIGltcG9ydCBvZiB0aGUgR3N0V2Vi
UlRDIGJhY2tlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oIGIvU291cmNl
L1dURi93dGYvVmVjdG9yLmgKaW5kZXggNDY3OWExOGRmMDE0NWQyNDVlMTcyNDFjNzlmYzZkN2Jh
YWExYjI0YS4uOTM4YWMyMTlhZmViMzgwMDFlNTExMDJiM2ZjNzc2OWQyNjE1MGExOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvVmVjdG9yLmgKKysrIGIvU291cmNlL1dURi93dGYvVmVjdG9y
LmgKQEAgLTQzNSw2ICs0MzUsMjEgQEAgcHVibGljOgogcHJvdGVjdGVkOgogICAgIHVzaW5nIEJh
c2U6Om1fc2l6ZTsKIAorICAgIFZlY3RvckJ1ZmZlcihWZWN0b3JCdWZmZXI8VCwgMCwgTWFsbG9j
PiYmIG90aGVyKQorICAgIHsKKyAgICAgICAgbV9idWZmZXIgPSBzdGQ6OmV4Y2hhbmdlKG90aGVy
Lm1fYnVmZmVyLCBudWxscHRyKTsKKyAgICAgICAgbV9jYXBhY2l0eSA9IHN0ZDo6ZXhjaGFuZ2Uo
b3RoZXIubV9jYXBhY2l0eSwgMCk7CisgICAgICAgIG1fc2l6ZSA9IHN0ZDo6ZXhjaGFuZ2Uob3Ro
ZXIubV9zaXplLCAwKTsKKyAgICB9CisKKyAgICB2b2lkIGFkb3B0KFZlY3RvckJ1ZmZlciYmIG90
aGVyKQorICAgIHsKKyAgICAgICAgZGVhbGxvY2F0ZUJ1ZmZlcihidWZmZXIoKSk7CisgICAgICAg
IG1fYnVmZmVyID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwgbnVsbHB0cik7CisgICAg
ICAgIG1fY2FwYWNpdHkgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fY2FwYWNpdHksIDApOworICAg
ICAgICBtX3NpemUgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fc2l6ZSwgMCk7CisgICAgfQorCiBw
cml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBKU0M6OkxMSW50T2Zmc2V0c0V4dHJhY3RvcjsKICAg
ICB1c2luZyBCYXNlOjptX2J1ZmZlcjsKQEAgLTU1Niw2ICs1NzEsMzQgQEAgcHVibGljOgogcHJv
dGVjdGVkOgogICAgIHVzaW5nIEJhc2U6Om1fc2l6ZTsKIAorICAgIFZlY3RvckJ1ZmZlcihWZWN0
b3JCdWZmZXImJiBvdGhlcikKKyAgICAgICAgOiBCYXNlKGlubGluZUJ1ZmZlcigpLCBpbmxpbmVD
YXBhY2l0eSwgMCkKKyAgICB7CisgICAgICAgIGlmIChvdGhlci5idWZmZXIoKSA9PSBvdGhlci5p
bmxpbmVCdWZmZXIoKSkKKyAgICAgICAgICAgIFZlY3RvclR5cGVPcGVyYXRpb25zPFQ+Ojptb3Zl
KG90aGVyLmlubGluZUJ1ZmZlcigpLCBvdGhlci5pbmxpbmVCdWZmZXIoKSArIG90aGVyLm1fc2l6
ZSwgaW5saW5lQnVmZmVyKCkpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIG1fYnVmZmVy
ID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwgb3RoZXIuaW5saW5lQnVmZmVyKCkpOwor
ICAgICAgICAgICAgbV9jYXBhY2l0eSA9IHN0ZDo6ZXhjaGFuZ2Uob3RoZXIubV9jYXBhY2l0eSwg
aW5saW5lQ2FwYWNpdHkpOworICAgICAgICB9CisgICAgICAgIG1fc2l6ZSA9IHN0ZDo6ZXhjaGFu
Z2Uob3RoZXIubV9zaXplLCAwKTsKKyAgICB9CisKKyAgICB2b2lkIGFkb3B0KFZlY3RvckJ1ZmZl
ciYmIG90aGVyKQorICAgIHsKKyAgICAgICAgaWYgKGJ1ZmZlcigpICE9IGlubGluZUJ1ZmZlcigp
KSB7CisgICAgICAgICAgICBkZWFsbG9jYXRlQnVmZmVyKGJ1ZmZlcigpKTsKKyAgICAgICAgICAg
IG1fYnVmZmVyID0gaW5saW5lQnVmZmVyKCk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG90aGVy
LmJ1ZmZlcigpID09IG90aGVyLmlubGluZUJ1ZmZlcigpKSB7CisgICAgICAgICAgICBWZWN0b3JU
eXBlT3BlcmF0aW9uczxUPjo6bW92ZShvdGhlci5pbmxpbmVCdWZmZXIoKSwgb3RoZXIuaW5saW5l
QnVmZmVyKCkgKyBvdGhlci5tX3NpemUsIGlubGluZUJ1ZmZlcigpKTsKKyAgICAgICAgICAgIG1f
Y2FwYWNpdHkgPSBvdGhlci5tX2NhcGFjaXR5OworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgbV9idWZmZXIgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fYnVmZmVyLCBvdGhlci5pbmxpbmVC
dWZmZXIoKSk7CisgICAgICAgICAgICBtX2NhcGFjaXR5ID0gc3RkOjpleGNoYW5nZShvdGhlci5t
X2NhcGFjaXR5LCBpbmxpbmVDYXBhY2l0eSk7CisgICAgICAgIH0KKyAgICAgICAgbV9zaXplID0g
c3RkOjpleGNoYW5nZShvdGhlci5tX3NpemUsIDApOworICAgIH0KKwogcHJpdmF0ZToKICAgICB1
c2luZyBCYXNlOjptX2J1ZmZlcjsKICAgICB1c2luZyBCYXNlOjptX2NhcGFjaXR5OwpAQCAtOTc0
LDE0ICsxMDE3LDI0IEBAIFZlY3RvcjxULCBpbmxpbmVDYXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVy
LCBtaW5DYXBhY2l0eSwgTWFsbG9jPiYgVmVjdG9yPFQsIGlubGluCiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFQsIHNpemVfdCBpbmxpbmVDYXBhY2l0eSwgdHlwZW5hbWUgT3ZlcmZsb3dIYW5kbGVyLCBz
aXplX3QgbWluQ2FwYWNpdHksIHR5cGVuYW1lIE1hbGxvYz4KIGlubGluZSBWZWN0b3I8VCwgaW5s
aW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNpdHksIE1hbGxvYz46OlZlY3Rv
cihWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNpdHks
IE1hbGxvYz4mJiBvdGhlcikKKyAgICA6IEJhc2UoV1RGTW92ZShvdGhlcikpCiB7Ci0gICAgc3dh
cChvdGhlcik7CisgICAgYXNhblNldEluaXRpYWxCdWZmZXJTaXplVG8obV9zaXplKTsKIH0KIAog
dGVtcGxhdGU8dHlwZW5hbWUgVCwgc2l6ZV90IGlubGluZUNhcGFjaXR5LCB0eXBlbmFtZSBPdmVy
Zmxvd0hhbmRsZXIsIHNpemVfdCBtaW5DYXBhY2l0eSwgdHlwZW5hbWUgTWFsbG9jPgogaW5saW5l
IFZlY3RvcjxULCBpbmxpbmVDYXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwg
TWFsbG9jPiYgVmVjdG9yPFQsIGlubGluZUNhcGFjaXR5LCBPdmVyZmxvd0hhbmRsZXIsIG1pbkNh
cGFjaXR5LCBNYWxsb2M+OjpvcGVyYXRvcj0oVmVjdG9yPFQsIGlubGluZUNhcGFjaXR5LCBPdmVy
Zmxvd0hhbmRsZXIsIG1pbkNhcGFjaXR5LCBNYWxsb2M+JiYgb3RoZXIpCiB7Ci0gICAgc3dhcChv
dGhlcik7CisgICAgLy8gTWFrZSBpdCBwb3NzaWJsZSB0byBjb3B5IGlubGluZSBidWZmZXJzLgor
ICAgIGFzYW5TZXRCdWZmZXJTaXplVG9GdWxsQ2FwYWNpdHkoKTsKKworICAgIGlmIChtX3NpemUp
CisgICAgICAgIFZlY3RvclR5cGVPcGVyYXRpb25zPFQ+OjpkZXN0cnVjdChiZWdpbigpLCBlbmQo
KSk7CisKKyAgICBCYXNlOjphZG9wdChXVEZNb3ZlKG90aGVyKSk7CisKKyAgICBhc2FuU2V0SW5p
dGlhbEJ1ZmZlclNpemVUbyhtX3NpemUpOworCiAgICAgcmV0dXJuICp0aGlzOwogfQogCmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzAzOGRjNDNj
ZjQwOTQ1YjkwODk2ODc2YzM1Zjg4MGQ5NWM5MDc5My4uZTRkY2ZlYWRjMjAwYzUzMDQ4YWM0YmFi
ZTNkMWQzODJjYmUyNjlkMSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIyLTAzLTE4ICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgVmVjdG9yIG1vdmUgY29uc3RydWN0b3IgYW5kIG1v
dmUgYXNzaWdubWVudCBvcGVyYXRvciBhcmUgc3Vib3B0aW1hbCB3aGVuIHRoZSB2ZWN0b3IgaGFz
IGFuIGlubGluZSBidWZmZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzODA5NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEFkZCBBUEkgdGVzdCBjb3ZlcmFnZS4KKworICAgICAgICAqIFRlc3RXZWJLaXRB
UEkvVGVzdHMvV1RGL1ZlY3Rvci5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToK
KwogMjAyMi0wMy0xOCAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgW0dTdHJlYW1lcl0gSW5pdGlhbCBpbXBvcnQgb2YgdGhlIEdzdFdlYlJUQyBiYWNr
ZW5kCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9WZWN0b3IuY3Bw
IGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yLmNwcAppbmRleCAwYjE2Njcw
YTQyMjFjMGQ3ZTJiZDRkZWFjYzJlZDVkNzdlMzZkNGMyLi5lYWZiMWVmOWYwOTAxMjVhYmI1ZmZh
NTBhMWFjMmZmNDViOGI5NmI1IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dURi9WZWN0b3IuY3BwCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3Rv
ci5jcHAKQEAgLTE1MTIsNCArMTUxMiwyMzMgQEAgVEVTVChXVEZfVmVjdG9yLCBNYXBDdXN0b21S
ZXR1cm5UeXBlKQogICAgIEVYUEVDVF9GTE9BVF9FUShvdXRwdXRbMV0sIDIuMGYpOwogfQogCitU
RVNUKFdURl9WZWN0b3IsIE1vdmVDb25zdHJ1Y3RvcikKK3sKKyAgICB7CisgICAgICAgIFZlY3Rv
cjxTdHJpbmc+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAi
ZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAg
ICAgVmVjdG9yPFN0cmluZz4gc3RyaW5nczIoV1RGTW92ZShzdHJpbmdzKSk7CisgICAgICAgIEVY
UEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5j
YXBhY2l0eSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXplKCksIDVVKTsK
KyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDVVKTsKKyAgICAgICAgRVhQ
RUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7CisgICAgICAgIEVYUEVD
VF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOworICAgICAgICBFWFBFQ1Rf
U1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAgICAgICAgRVhQRUNUX1NU
UkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAgICAgIEVYUEVDVF9TVFJF
UShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgICAgICBzdHJpbmdzMi5hcHBl
bmQoImYiX3N0cik7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXplKCksIDZVKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDE2VSk7CisgICAgICAgIEVYUEVD
VF9TVFJFUShzdHJpbmdzMls1XS51dGY4KCkuZGF0YSgpLCAiZiIpOworICAgIH0KKworICAgIHsK
KyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAi
YyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5z
aXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMTBVKTsK
KyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmluZ3MyKFdURk1vdmUoc3RyaW5ncykpOwor
ICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VR
KHN0cmluZ3MuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNp
emUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgMTBVKTsK
KyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7Cisg
ICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOworICAg
ICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAgICAg
ICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAgICAg
IEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgICAgICBz
dHJpbmdzMi5hcHBlbmQoImYiX3N0cik7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXpl
KCksIDZVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDEwVSk7Cisg
ICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls1XS51dGY4KCkuZGF0YSgpLCAiZiIpOworICAg
IH0KKworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMj4gc3RyaW5ncyh7ICJhIl9zdHIs
ICJiIl9zdHIsICJjIl9zdHIsICJkIl9zdHIsICJlIl9zdHIgfSk7CisgICAgICAgIEVYUEVDVF9F
UShzdHJpbmdzLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0
eSgpLCA1VSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MyKFdURk1vdmUoc3Ry
aW5ncykpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAg
RVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOworICAgICAgICBFWFBFQ1RfRVEoc3Ry
aW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgp
LCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAi
YSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIi
KTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7
CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOwor
ICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAg
ICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5n
czIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAx
NlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYi
KTsKKyAgICB9Cit9CisKK1RFU1QoV1RGX1ZlY3RvciwgTW92ZUFzc2lnbm1lbnRPcGVyYXRvcikK
K3sKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmc+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJf
c3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3Ry
aW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwg
NVUpOworICAgICAgICBWZWN0b3I8U3RyaW5nPiBzdHJpbmdzMjsKKyAgICAgICAgc3RyaW5nczIg
PSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBV
KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMFUpOworICAgICAgICBF
WFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdz
Mi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4
KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgp
LmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5k
YXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0
YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEo
KSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAgICBFWFBF
Q1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5j
YXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRmOCgp
LmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmc+IHN0
cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOwor
ICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgVmVjdG9yPFN0
cmluZz4gc3RyaW5nczIoeyAiZm9vIl9zdHIsICJiYXIiX3N0ciB9KTsKKyAgICAgICAgc3RyaW5n
czIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCks
IDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMFUpOworICAgICAg
ICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJp
bmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51
dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRm
OCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0Zjgo
KS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCku
ZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRh
dGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAgICBF
WFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdz
Mi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRm
OCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcs
IDEwPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwgImUiX3N0
ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAgICAgIEVY
UEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmcs
IDEwPiBzdHJpbmdzMjsKKyAgICAgICAgc3RyaW5nczIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0
cmluZ3MuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUo
KSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgMTBVKTsKKyAg
ICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7CisgICAg
ICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOworICAgICAg
ICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAgICAgICAg
RVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAgICAgIEVY
UEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgICAgICBzdHJp
bmdzMi5hcHBlbmQoImYiX3N0cik7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXplKCks
IDZVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDEwVSk7CisgICAg
ICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls1XS51dGY4KCkuZGF0YSgpLCAiZiIpOworICAgIH0K
KworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmluZ3MoeyAiYSJfc3RyLCAi
YiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHko
KSwgMTBVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmluZ3MyKHsgImZvbyJfc3Ry
LCAiYmFyIl9zdHIgfSk7CisgICAgICAgIHN0cmluZ3MyID0gV1RGTW92ZShzdHJpbmdzKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShz
dHJpbmdzLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXpl
KCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDEwVSk7Cisg
ICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAg
ICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAg
ICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAg
IEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBF
WFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3Ry
aW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgp
LCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxMFUpOworICAg
ICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9
CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MoeyAiYSJfc3RyLCAi
YiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHko
KSwgNVUpOworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdzMjsKKyAgICAgICAgc3Ry
aW5nczIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXpl
KCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShz
dHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsw
XS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0u
dXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0
ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4
KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgp
LmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAg
ICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJp
bmdzMi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0u
dXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJp
bmcsIDI+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJf
c3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAg
RVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBWZWN0b3I8U3RyaW5n
LCAyPiBzdHJpbmdzMih7ICJmb28iX3N0ciwgImJhciJfc3RyIH0pOworICAgICAgICBzdHJpbmdz
MiA9IFdURk1vdmUoc3RyaW5ncyk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwg
MFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAyVSk7CisgICAgICAg
IEVYUEVDVF9FUShzdHJpbmdzMi5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmlu
Z3MyLmNhcGFjaXR5KCksIDVVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0
ZjgoKS5kYXRhKCksICJhIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4
KCkuZGF0YSgpLCAiYiIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgp
LmRhdGEoKSwgImMiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5k
YXRhKCksICJkIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0
YSgpLCAiZSIpOworICAgICAgICBzdHJpbmdzMi5hcHBlbmQoImYiX3N0cik7CisgICAgICAgIEVY
UEVDVF9FUShzdHJpbmdzMi5zaXplKCksIDZVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3My
LmNhcGFjaXR5KCksIDE2VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls1XS51dGY4
KCkuZGF0YSgpLCAiZiIpOworICAgIH0KKworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywg
Mj4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJkIl9zdHIsICJlIl9zdHIg
fSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUpOworICAgICAgICBFWFBF
Q1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+
IHN0cmluZ3MyKHsgImZvbyJfc3RyLCAiYmFyIl9zdHIsICJiYXoiX3N0ciB9KTsKKyAgICAgICAg
c3RyaW5nczIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5z
aXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOwor
ICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9F
UShzdHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdz
MlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJb
MV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJd
LnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51
dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRm
OCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShz
dHJpbmdzMi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJb
NV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxT
dHJpbmcsIDI+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyIH0pOworICAgICAgICBFWFBFQ1Rf
RVEoc3RyaW5ncy5zaXplKCksIDJVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNp
dHkoKSwgMlUpOworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdzMih7ICJmb28iX3N0
ciwgImJhciJfc3RyLCAiYmF6Il9zdHIgfSk7CisgICAgICAgIHN0cmluZ3MyID0gV1RGTW92ZShz
dHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAgICAg
IEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDJVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0
cmluZ3MyLnNpemUoKSwgMlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHko
KSwgMlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRmOCgpLmRhdGEoKSwg
ImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5kYXRhKCksICJi
Iik7CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiYyJfc3RyKTsKKyAgICAgICAgRVhQRUNUX0VR
KHN0cmluZ3MyLnNpemUoKSwgM1UpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNp
dHkoKSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRh
KCksICJjIik7CisgICAgfQorfQorCiB9IC8vIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455151</attachid>
            <date>2022-03-18 16:42:59 -0700</date>
            <delta_ts>2022-03-18 18:17:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238096-20220318164258.patch</filename>
            <type>text/plain</type>
            <size>14978</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQ0YjlhMWUwM2FkYWJhYWQwNjk2NWQ2
NDY2OGIxM2Y1ZGU1ZDQ4NTUuLjZjNjE3YzFiYjdmZWM3MzFkNDQ4MjE4OTFmYTFmZTYzZDFmMDMy
ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjItMDMtMTggIENocmlzIER1bWV6ICA8Y2R1bWV6
QGFwcGxlLmNvbT4KKworICAgICAgICBWZWN0b3IgbW92ZSBjb25zdHJ1Y3RvciBhbmQgbW92ZSBh
c3NpZ25tZW50IG9wZXJhdG9yIGFyZSBzdWJvcHRpbWFsIHdoZW4gdGhlIHZlY3RvciBoYXMgYW4g
aW5saW5lIGJ1ZmZlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjM4MDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhlIG1vdmUgY29uc3RydWN0b3IgKGFuZCBtb3ZlIGFzc2lnbm1lbnQgb3BlcmF0b3Jz
KSBmb3IgVmVjdG9yIHdlcmUgaW1wbGVtZW50ZWQgdXNpbmcgVmVjdG9yOjpzd2FwKCksIHdoaWNo
CisgICAgICAgIGlzIGZpbmUgZm9yIHZlY3RvcnMgd2l0aCBvdXQgb2YgbGluZSBidWZmZXJzIGJl
Y2F1c2Ugd2UncmUganVzdCBzd2FwcGluZyBwb2ludGVycy4gSG93ZXZlciwgd2hlbiB0aGUgdmVj
dG9yCisgICAgICAgIGhhcyBpbmxpbmUgY2FwYWNpdHksIHRoaXMgaXMgc3Vib3B0aW1hbCBiZWNh
dXNlIGl0IGlzIG5vdCBjaGVhcCB0byBtb3ZlIGRhdGEgZnJvbSBvbmUgaW5saW5lIGJ1ZmZlciB0
byBhbm90aGVyCisgICAgICAgIGFuZCBtb3ZpbmcgYW55IGRhdGEgdG8gdGhlIHNvdXJjZSBidWZm
ZXIgaXMgdW5uZWNlc3NhcnkuCisKKyAgICAgICAgKiB3dGYvVmVjdG9yLmg6CisgICAgICAgIChX
VEY6OlZlY3RvckJ1ZmZlcjo6VmVjdG9yQnVmZmVyKToKKyAgICAgICAgKFdURjo6VmVjdG9yQnVm
ZmVyOjphZG9wdCk6CisgICAgICAgIChXVEY6Ok1hbGxvYz46OlZlY3Rvcik6CisgICAgICAgIChX
VEY6Oj0pOgorCiAyMDIyLTAzLTE4ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlh
LmNvbT4KIAogICAgICAgICBbR1N0cmVhbWVyXSBJbml0aWFsIGltcG9ydCBvZiB0aGUgR3N0V2Vi
UlRDIGJhY2tlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oIGIvU291cmNl
L1dURi93dGYvVmVjdG9yLmgKaW5kZXggNDY3OWExOGRmMDE0NWQyNDVlMTcyNDFjNzlmYzZkN2Jh
YWExYjI0YS4uNzQzMzMxMzg2MmNhNDljZDA5MDEwYWY0ZmY2MGUyOWNlZDBmZDliZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvVmVjdG9yLmgKKysrIGIvU291cmNlL1dURi93dGYvVmVjdG9y
LmgKQEAgLTQzNSw2ICs0MzUsMjEgQEAgcHVibGljOgogcHJvdGVjdGVkOgogICAgIHVzaW5nIEJh
c2U6Om1fc2l6ZTsKIAorICAgIFZlY3RvckJ1ZmZlcihWZWN0b3JCdWZmZXI8VCwgMCwgTWFsbG9j
PiYmIG90aGVyKQorICAgIHsKKyAgICAgICAgbV9idWZmZXIgPSBzdGQ6OmV4Y2hhbmdlKG90aGVy
Lm1fYnVmZmVyLCBudWxscHRyKTsKKyAgICAgICAgbV9jYXBhY2l0eSA9IHN0ZDo6ZXhjaGFuZ2Uo
b3RoZXIubV9jYXBhY2l0eSwgMCk7CisgICAgICAgIG1fc2l6ZSA9IHN0ZDo6ZXhjaGFuZ2Uob3Ro
ZXIubV9zaXplLCAwKTsKKyAgICB9CisKKyAgICB2b2lkIGFkb3B0KFZlY3RvckJ1ZmZlciYmIG90
aGVyKQorICAgIHsKKyAgICAgICAgZGVhbGxvY2F0ZUJ1ZmZlcihidWZmZXIoKSk7CisgICAgICAg
IG1fYnVmZmVyID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwgbnVsbHB0cik7CisgICAg
ICAgIG1fY2FwYWNpdHkgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fY2FwYWNpdHksIDApOworICAg
ICAgICBtX3NpemUgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fc2l6ZSwgMCk7CisgICAgfQorCiBw
cml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBKU0M6OkxMSW50T2Zmc2V0c0V4dHJhY3RvcjsKICAg
ICB1c2luZyBCYXNlOjptX2J1ZmZlcjsKQEAgLTU1Niw2ICs1NzEsMzQgQEAgcHVibGljOgogcHJv
dGVjdGVkOgogICAgIHVzaW5nIEJhc2U6Om1fc2l6ZTsKIAorICAgIFZlY3RvckJ1ZmZlcihWZWN0
b3JCdWZmZXImJiBvdGhlcikKKyAgICAgICAgOiBCYXNlKGlubGluZUJ1ZmZlcigpLCBpbmxpbmVD
YXBhY2l0eSwgMCkKKyAgICB7CisgICAgICAgIGlmIChvdGhlci5idWZmZXIoKSA9PSBvdGhlci5p
bmxpbmVCdWZmZXIoKSkKKyAgICAgICAgICAgIFZlY3RvclR5cGVPcGVyYXRpb25zPFQ+Ojptb3Zl
KG90aGVyLmlubGluZUJ1ZmZlcigpLCBvdGhlci5pbmxpbmVCdWZmZXIoKSArIG90aGVyLm1fc2l6
ZSwgaW5saW5lQnVmZmVyKCkpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIG1fYnVmZmVy
ID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwgb3RoZXIuaW5saW5lQnVmZmVyKCkpOwor
ICAgICAgICAgICAgbV9jYXBhY2l0eSA9IHN0ZDo6ZXhjaGFuZ2Uob3RoZXIubV9jYXBhY2l0eSwg
aW5saW5lQ2FwYWNpdHkpOworICAgICAgICB9CisgICAgICAgIG1fc2l6ZSA9IHN0ZDo6ZXhjaGFu
Z2Uob3RoZXIubV9zaXplLCAwKTsKKyAgICB9CisKKyAgICB2b2lkIGFkb3B0KFZlY3RvckJ1ZmZl
ciYmIG90aGVyKQorICAgIHsKKyAgICAgICAgaWYgKGJ1ZmZlcigpICE9IGlubGluZUJ1ZmZlcigp
KSB7CisgICAgICAgICAgICBkZWFsbG9jYXRlQnVmZmVyKGJ1ZmZlcigpKTsKKyAgICAgICAgICAg
IG1fYnVmZmVyID0gaW5saW5lQnVmZmVyKCk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG90aGVy
LmJ1ZmZlcigpID09IG90aGVyLmlubGluZUJ1ZmZlcigpKSB7CisgICAgICAgICAgICBWZWN0b3JU
eXBlT3BlcmF0aW9uczxUPjo6bW92ZShvdGhlci5pbmxpbmVCdWZmZXIoKSwgb3RoZXIuaW5saW5l
QnVmZmVyKCkgKyBvdGhlci5tX3NpemUsIGlubGluZUJ1ZmZlcigpKTsKKyAgICAgICAgICAgIG1f
Y2FwYWNpdHkgPSBvdGhlci5tX2NhcGFjaXR5OworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgbV9idWZmZXIgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fYnVmZmVyLCBvdGhlci5pbmxpbmVC
dWZmZXIoKSk7CisgICAgICAgICAgICBtX2NhcGFjaXR5ID0gc3RkOjpleGNoYW5nZShvdGhlci5t
X2NhcGFjaXR5LCBpbmxpbmVDYXBhY2l0eSk7CisgICAgICAgIH0KKyAgICAgICAgbV9zaXplID0g
c3RkOjpleGNoYW5nZShvdGhlci5tX3NpemUsIDApOworICAgIH0KKwogcHJpdmF0ZToKICAgICB1
c2luZyBCYXNlOjptX2J1ZmZlcjsKICAgICB1c2luZyBCYXNlOjptX2NhcGFjaXR5OwpAQCAtOTc0
LDE0ICsxMDE3LDE2IEBAIFZlY3RvcjxULCBpbmxpbmVDYXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVy
LCBtaW5DYXBhY2l0eSwgTWFsbG9jPiYgVmVjdG9yPFQsIGlubGluCiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFQsIHNpemVfdCBpbmxpbmVDYXBhY2l0eSwgdHlwZW5hbWUgT3ZlcmZsb3dIYW5kbGVyLCBz
aXplX3QgbWluQ2FwYWNpdHksIHR5cGVuYW1lIE1hbGxvYz4KIGlubGluZSBWZWN0b3I8VCwgaW5s
aW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNpdHksIE1hbGxvYz46OlZlY3Rv
cihWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNpdHks
IE1hbGxvYz4mJiBvdGhlcikKKyAgICA6IEJhc2UoV1RGTW92ZShvdGhlcikpCiB7Ci0gICAgc3dh
cChvdGhlcik7CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHNpemVfdCBpbmxpbmVDYXBhY2l0
eSwgdHlwZW5hbWUgT3ZlcmZsb3dIYW5kbGVyLCBzaXplX3QgbWluQ2FwYWNpdHksIHR5cGVuYW1l
IE1hbGxvYz4KIGlubGluZSBWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxl
ciwgbWluQ2FwYWNpdHksIE1hbGxvYz4mIFZlY3RvcjxULCBpbmxpbmVDYXBhY2l0eSwgT3ZlcmZs
b3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwgTWFsbG9jPjo6b3BlcmF0b3I9KFZlY3RvcjxULCBpbmxp
bmVDYXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwgTWFsbG9jPiYmIG90aGVy
KQogewotICAgIHN3YXAob3RoZXIpOworICAgIGlmIChtX3NpemUpCisgICAgICAgIFZlY3RvclR5
cGVPcGVyYXRpb25zPFQ+OjpkZXN0cnVjdChiZWdpbigpLCBlbmQoKSk7CisgICAgQmFzZTo6YWRv
cHQoV1RGTW92ZShvdGhlcikpOwogICAgIHJldHVybiAqdGhpczsKIH0KIApkaWZmIC0tZ2l0IGEv
VG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGMwMzhkYzQzY2Y0MDk0NWI5
MDg5Njg3NmMzNWY4ODBkOTVjOTA3OTMuLmU0ZGNmZWFkYzIwMGM1MzA0OGFjNGJhYmUzZDFkMzgy
Y2JlMjY5ZDEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMi0wMy0xOCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBw
bGUuY29tPgorCisgICAgICAgIFZlY3RvciBtb3ZlIGNvbnN0cnVjdG9yIGFuZCBtb3ZlIGFzc2ln
bm1lbnQgb3BlcmF0b3IgYXJlIHN1Ym9wdGltYWwgd2hlbiB0aGUgdmVjdG9yIGhhcyBhbiBpbmxp
bmUgYnVmZmVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMzgwOTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBZGQgQVBJIHRlc3QgY292ZXJhZ2UuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dURi9WZWN0b3IuY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisKIDIwMjIt
MDMtMTggIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAg
IFtHU3RyZWFtZXJdIEluaXRpYWwgaW1wb3J0IG9mIHRoZSBHc3RXZWJSVEMgYmFja2VuZApkaWZm
IC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yLmNwcCBiL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3Rvci5jcHAKaW5kZXggMGIxNjY3MGE0MjIxYzBk
N2UyYmQ0ZGVhY2MyZWQ1ZDc3ZTM2ZDRjMi4uZWFmYjFlZjlmMDkwMTI1YWJiNWZmYTUwYTFhYzJm
ZjQ1YjhiOTZiNSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVj
dG9yLmNwcAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9WZWN0b3IuY3BwCkBA
IC0xNTEyLDQgKzE1MTIsMjMzIEBAIFRFU1QoV1RGX1ZlY3RvciwgTWFwQ3VzdG9tUmV0dXJuVHlw
ZSkKICAgICBFWFBFQ1RfRkxPQVRfRVEob3V0cHV0WzFdLCAyLjBmKTsKIH0KIAorVEVTVChXVEZf
VmVjdG9yLCBNb3ZlQ29uc3RydWN0b3IpCit7CisgICAgeworICAgICAgICBWZWN0b3I8U3RyaW5n
PiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9
KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAgICAgIFZlY3Rv
cjxTdHJpbmc+IHN0cmluZ3MyKFdURk1vdmUoc3RyaW5ncykpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHko
KSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAg
IEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJF
UShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEo
c3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0
cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJp
bmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5n
czJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9z
dHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVY
UEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEo
c3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAg
IFZlY3RvcjxTdHJpbmcsIDEwPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwg
ImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1
VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAg
IFZlY3RvcjxTdHJpbmcsIDEwPiBzdHJpbmdzMihXVEZNb3ZlKHN0cmluZ3MpKTsKKyAgICAgICAg
RVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdz
LmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXplKCksIDVV
KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAg
IEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBF
WFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQ
RUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVD
VF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1Rf
U1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIu
YXBwZW5kKCJmIl9zdHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7
CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxMFUpOworICAgICAgICBF
WFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAg
ICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3Ry
LCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5n
cy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgNVUp
OworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdzMihXVEZNb3ZlKHN0cmluZ3MpKTsK
KyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9F
UShzdHJpbmdzLmNhcGFjaXR5KCksIDJVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNp
emUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgNVUpOwor
ICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRmOCgpLmRhdGEoKSwgImEiKTsKKyAg
ICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5kYXRhKCksICJiIik7CisgICAg
ICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCkuZGF0YSgpLCAiYyIpOworICAgICAg
ICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRmOCgpLmRhdGEoKSwgImQiKTsKKyAgICAgICAg
RVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5kYXRhKCksICJlIik7CisgICAgICAgIHN0
cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUo
KSwgNlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgMTZVKTsKKyAg
ICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzVdLnV0ZjgoKS5kYXRhKCksICJmIik7CisgICAg
fQorfQorCitURVNUKFdURl9WZWN0b3IsIE1vdmVBc3NpZ25tZW50T3BlcmF0b3IpCit7CisgICAg
eworICAgICAgICBWZWN0b3I8U3RyaW5nPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMi
X3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6
ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDVVKTsKKyAg
ICAgICAgVmVjdG9yPFN0cmluZz4gc3RyaW5nczI7CisgICAgICAgIHN0cmluZ3MyID0gV1RGTW92
ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAg
ICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VR
KHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNp
dHkoKSwgNVUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRmOCgpLmRhdGEo
KSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5kYXRhKCks
ICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCkuZGF0YSgpLCAi
YyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRmOCgpLmRhdGEoKSwgImQi
KTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5kYXRhKCksICJlIik7
CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0
cmluZ3MyLnNpemUoKSwgNlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHko
KSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzVdLnV0ZjgoKS5kYXRhKCks
ICJmIik7CisgICAgfQorCisgICAgeworICAgICAgICBWZWN0b3I8U3RyaW5nPiBzdHJpbmdzKHsg
ImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAg
RVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmc+IHN0
cmluZ3MyKHsgImZvbyJfc3RyLCAiYmFyIl9zdHIgfSk7CisgICAgICAgIHN0cmluZ3MyID0gV1RG
TW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7Cisg
ICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDBVKTsKKyAgICAgICAgRVhQRUNU
X0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2Fw
YWNpdHkoKSwgNVUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRmOCgpLmRh
dGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5kYXRh
KCksICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCkuZGF0YSgp
LCAiYyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRmOCgpLmRhdGEoKSwg
ImQiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5kYXRhKCksICJl
Iik7CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsKKyAgICAgICAgRVhQRUNUX0VR
KHN0cmluZ3MyLnNpemUoKSwgNlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNp
dHkoKSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzVdLnV0ZjgoKS5kYXRh
KCksICJmIik7CisgICAgfQorCisgICAgeworICAgICAgICBWZWN0b3I8U3RyaW5nLCAxMD4gc3Ry
aW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJkIl9zdHIsICJlIl9zdHIgfSk7Cisg
ICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5ncy5jYXBhY2l0eSgpLCAxMFUpOworICAgICAgICBWZWN0b3I8U3RyaW5nLCAxMD4gc3Ry
aW5nczI7CisgICAgICAgIHN0cmluZ3MyID0gV1RGTW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQ
RUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNh
cGFjaXR5KCksIDEwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXplKCksIDVVKTsK
KyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAgIEVY
UEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBF
Q1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNU
X1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9T
VFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RS
RVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBw
ZW5kKCJmIl9zdHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7Cisg
ICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxMFUpOworICAgICAgICBFWFBF
Q1RfU1RSRVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7
CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDEwPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwg
ImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Mu
c2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDEwVSk7
CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDEwPiBzdHJpbmdzMih7ICJmb28iX3N0ciwgImJhciJf
c3RyIH0pOworICAgICAgICBzdHJpbmdzMiA9IFdURk1vdmUoc3RyaW5ncyk7CisgICAgICAgIEVY
UEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5j
YXBhY2l0eSgpLCAxMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7
CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxMFUpOworICAgICAgICBF
WFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQ
RUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5kYXRhKCksICJiIik7CisgICAgICAgIEVYUEVD
VF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCkuZGF0YSgpLCAiYyIpOworICAgICAgICBFWFBFQ1Rf
U1RSRVEoc3RyaW5nczJbM10udXRmOCgpLmRhdGEoKSwgImQiKTsKKyAgICAgICAgRVhQRUNUX1NU
UkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5kYXRhKCksICJlIik7CisgICAgICAgIHN0cmluZ3MyLmFw
cGVuZCgiZiJfc3RyKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNlUpOwor
ICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAgRVhQ
RUNUX1NUUkVRKHN0cmluZ3MyWzVdLnV0ZjgoKS5kYXRhKCksICJmIik7CisgICAgfQorCisgICAg
eworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwg
ImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Mu
c2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDVVKTsK
KyAgICAgICAgVmVjdG9yPFN0cmluZywgMj4gc3RyaW5nczI7CisgICAgICAgIHN0cmluZ3MyID0g
V1RGTW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7
CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDJVKTsKKyAgICAgICAgRVhQ
RUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIu
Y2FwYWNpdHkoKSwgNVUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRmOCgp
LmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5k
YXRhKCksICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCkuZGF0
YSgpLCAiYyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRmOCgpLmRhdGEo
KSwgImQiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5kYXRhKCks
ICJlIik7CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsKKyAgICAgICAgRVhQRUNU
X0VRKHN0cmluZ3MyLnNpemUoKSwgNlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2Fw
YWNpdHkoKSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzVdLnV0ZjgoKS5k
YXRhKCksICJmIik7CisgICAgfQorCisgICAgeworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBz
dHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsK
KyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9F
UShzdHJpbmdzLmNhcGFjaXR5KCksIDVVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMj4gc3Ry
aW5nczIoeyAiZm9vIl9zdHIsICJiYXIiX3N0ciB9KTsKKyAgICAgICAgc3RyaW5nczIgPSBXVEZN
b3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOworICAgICAgICBFWFBFQ1Rf
RVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBh
Y2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0
YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEo
KSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCks
ICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAi
ZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUi
KTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0
eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEo
KSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmlu
Z3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0
cmluZ3MuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdz
Mih7ICJmb28iX3N0ciwgImJhciJfc3RyLCAiYmF6Il9zdHIgfSk7CisgICAgICAgIHN0cmluZ3My
ID0gV1RGTW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAw
VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDJVKTsKKyAgICAgICAg
RVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5n
czIuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRm
OCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0Zjgo
KS5kYXRhKCksICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCku
ZGF0YSgpLCAiYyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRmOCgpLmRh
dGEoKSwgImQiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5kYXRh
KCksICJlIik7CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsKKyAgICAgICAgRVhQ
RUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIu
Y2FwYWNpdHkoKSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzVdLnV0Zjgo
KS5kYXRhKCksICJmIik7CisgICAgfQorCisgICAgeworICAgICAgICBWZWN0b3I8U3RyaW5nLCAy
PiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmlu
Z3Muc2l6ZSgpLCAyVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDJV
KTsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMj4gc3RyaW5nczIoeyAiZm9vIl9zdHIsICJiYXIi
X3N0ciwgImJheiJfc3RyIH0pOworICAgICAgICBzdHJpbmdzMiA9IFdURk1vdmUoc3RyaW5ncyk7
CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBFQ1Rf
RVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAyVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5z
aXplKCksIDJVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDJVKTsK
KyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7Cisg
ICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOworICAg
ICAgICBzdHJpbmdzMi5hcHBlbmQoImMiX3N0cik7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdz
Mi5zaXplKCksIDNVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDE2
VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCkuZGF0YSgpLCAiYyIp
OworICAgIH0KK30KKwogfSAvLyBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455155</attachid>
            <date>2022-03-18 18:17:52 -0700</date>
            <delta_ts>2022-03-18 19:32:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238096-20220318181751.patch</filename>
            <type>text/plain</type>
            <size>15115</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQ0YjlhMWUwM2FkYWJhYWQwNjk2NWQ2
NDY2OGIxM2Y1ZGU1ZDQ4NTUuLjZjNjE3YzFiYjdmZWM3MzFkNDQ4MjE4OTFmYTFmZTYzZDFmMDMy
ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjItMDMtMTggIENocmlzIER1bWV6ICA8Y2R1bWV6
QGFwcGxlLmNvbT4KKworICAgICAgICBWZWN0b3IgbW92ZSBjb25zdHJ1Y3RvciBhbmQgbW92ZSBh
c3NpZ25tZW50IG9wZXJhdG9yIGFyZSBzdWJvcHRpbWFsIHdoZW4gdGhlIHZlY3RvciBoYXMgYW4g
aW5saW5lIGJ1ZmZlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjM4MDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhlIG1vdmUgY29uc3RydWN0b3IgKGFuZCBtb3ZlIGFzc2lnbm1lbnQgb3BlcmF0b3Jz
KSBmb3IgVmVjdG9yIHdlcmUgaW1wbGVtZW50ZWQgdXNpbmcgVmVjdG9yOjpzd2FwKCksIHdoaWNo
CisgICAgICAgIGlzIGZpbmUgZm9yIHZlY3RvcnMgd2l0aCBvdXQgb2YgbGluZSBidWZmZXJzIGJl
Y2F1c2Ugd2UncmUganVzdCBzd2FwcGluZyBwb2ludGVycy4gSG93ZXZlciwgd2hlbiB0aGUgdmVj
dG9yCisgICAgICAgIGhhcyBpbmxpbmUgY2FwYWNpdHksIHRoaXMgaXMgc3Vib3B0aW1hbCBiZWNh
dXNlIGl0IGlzIG5vdCBjaGVhcCB0byBtb3ZlIGRhdGEgZnJvbSBvbmUgaW5saW5lIGJ1ZmZlciB0
byBhbm90aGVyCisgICAgICAgIGFuZCBtb3ZpbmcgYW55IGRhdGEgdG8gdGhlIHNvdXJjZSBidWZm
ZXIgaXMgdW5uZWNlc3NhcnkuCisKKyAgICAgICAgKiB3dGYvVmVjdG9yLmg6CisgICAgICAgIChX
VEY6OlZlY3RvckJ1ZmZlcjo6VmVjdG9yQnVmZmVyKToKKyAgICAgICAgKFdURjo6VmVjdG9yQnVm
ZmVyOjphZG9wdCk6CisgICAgICAgIChXVEY6Ok1hbGxvYz46OlZlY3Rvcik6CisgICAgICAgIChX
VEY6Oj0pOgorCiAyMDIyLTAzLTE4ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlh
LmNvbT4KIAogICAgICAgICBbR1N0cmVhbWVyXSBJbml0aWFsIGltcG9ydCBvZiB0aGUgR3N0V2Vi
UlRDIGJhY2tlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oIGIvU291cmNl
L1dURi93dGYvVmVjdG9yLmgKaW5kZXggNDY3OWExOGRmMDE0NWQyNDVlMTcyNDFjNzlmYzZkN2Jh
YWExYjI0YS4uOTU2YzRiODFhZmZjM2Y5YzVlNjAzYjUxM2Y1OWNkNjc3NzI0MTFjYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvVmVjdG9yLmgKKysrIGIvU291cmNlL1dURi93dGYvVmVjdG9y
LmgKQEAgLTQzNSw2ICs0MzUsMjEgQEAgcHVibGljOgogcHJvdGVjdGVkOgogICAgIHVzaW5nIEJh
c2U6Om1fc2l6ZTsKIAorICAgIFZlY3RvckJ1ZmZlcihWZWN0b3JCdWZmZXI8VCwgMCwgTWFsbG9j
PiYmIG90aGVyKQorICAgIHsKKyAgICAgICAgbV9idWZmZXIgPSBzdGQ6OmV4Y2hhbmdlKG90aGVy
Lm1fYnVmZmVyLCBudWxscHRyKTsKKyAgICAgICAgbV9jYXBhY2l0eSA9IHN0ZDo6ZXhjaGFuZ2Uo
b3RoZXIubV9jYXBhY2l0eSwgMCk7CisgICAgICAgIG1fc2l6ZSA9IHN0ZDo6ZXhjaGFuZ2Uob3Ro
ZXIubV9zaXplLCAwKTsKKyAgICB9CisKKyAgICB2b2lkIGFkb3B0KFZlY3RvckJ1ZmZlciYmIG90
aGVyKQorICAgIHsKKyAgICAgICAgZGVhbGxvY2F0ZUJ1ZmZlcihidWZmZXIoKSk7CisgICAgICAg
IG1fYnVmZmVyID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwgbnVsbHB0cik7CisgICAg
ICAgIG1fY2FwYWNpdHkgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fY2FwYWNpdHksIDApOworICAg
ICAgICBtX3NpemUgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fc2l6ZSwgMCk7CisgICAgfQorCiBw
cml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBKU0M6OkxMSW50T2Zmc2V0c0V4dHJhY3RvcjsKICAg
ICB1c2luZyBCYXNlOjptX2J1ZmZlcjsKQEAgLTU1Niw2ICs1NzEsMzQgQEAgcHVibGljOgogcHJv
dGVjdGVkOgogICAgIHVzaW5nIEJhc2U6Om1fc2l6ZTsKIAorICAgIFZlY3RvckJ1ZmZlcihWZWN0
b3JCdWZmZXImJiBvdGhlcikKKyAgICAgICAgOiBCYXNlKGlubGluZUJ1ZmZlcigpLCBpbmxpbmVD
YXBhY2l0eSwgMCkKKyAgICB7CisgICAgICAgIGlmIChvdGhlci5idWZmZXIoKSA9PSBvdGhlci5p
bmxpbmVCdWZmZXIoKSkKKyAgICAgICAgICAgIFZlY3RvclR5cGVPcGVyYXRpb25zPFQ+Ojptb3Zl
KG90aGVyLmlubGluZUJ1ZmZlcigpLCBvdGhlci5pbmxpbmVCdWZmZXIoKSArIG90aGVyLm1fc2l6
ZSwgaW5saW5lQnVmZmVyKCkpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIG1fYnVmZmVy
ID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwgb3RoZXIuaW5saW5lQnVmZmVyKCkpOwor
ICAgICAgICAgICAgbV9jYXBhY2l0eSA9IHN0ZDo6ZXhjaGFuZ2Uob3RoZXIubV9jYXBhY2l0eSwg
aW5saW5lQ2FwYWNpdHkpOworICAgICAgICB9CisgICAgICAgIG1fc2l6ZSA9IHN0ZDo6ZXhjaGFu
Z2Uob3RoZXIubV9zaXplLCAwKTsKKyAgICB9CisKKyAgICB2b2lkIGFkb3B0KFZlY3RvckJ1ZmZl
ciYmIG90aGVyKQorICAgIHsKKyAgICAgICAgaWYgKGJ1ZmZlcigpICE9IGlubGluZUJ1ZmZlcigp
KSB7CisgICAgICAgICAgICBkZWFsbG9jYXRlQnVmZmVyKGJ1ZmZlcigpKTsKKyAgICAgICAgICAg
IG1fYnVmZmVyID0gaW5saW5lQnVmZmVyKCk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG90aGVy
LmJ1ZmZlcigpID09IG90aGVyLmlubGluZUJ1ZmZlcigpKSB7CisgICAgICAgICAgICBWZWN0b3JU
eXBlT3BlcmF0aW9uczxUPjo6bW92ZShvdGhlci5pbmxpbmVCdWZmZXIoKSwgb3RoZXIuaW5saW5l
QnVmZmVyKCkgKyBvdGhlci5tX3NpemUsIGlubGluZUJ1ZmZlcigpKTsKKyAgICAgICAgICAgIG1f
Y2FwYWNpdHkgPSBvdGhlci5tX2NhcGFjaXR5OworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgbV9idWZmZXIgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fYnVmZmVyLCBvdGhlci5pbmxpbmVC
dWZmZXIoKSk7CisgICAgICAgICAgICBtX2NhcGFjaXR5ID0gc3RkOjpleGNoYW5nZShvdGhlci5t
X2NhcGFjaXR5LCBpbmxpbmVDYXBhY2l0eSk7CisgICAgICAgIH0KKyAgICAgICAgbV9zaXplID0g
c3RkOjpleGNoYW5nZShvdGhlci5tX3NpemUsIDApOworICAgIH0KKwogcHJpdmF0ZToKICAgICB1
c2luZyBCYXNlOjptX2J1ZmZlcjsKICAgICB1c2luZyBCYXNlOjptX2NhcGFjaXR5OwpAQCAtOTc0
LDE0ICsxMDE3LDIzIEBAIFZlY3RvcjxULCBpbmxpbmVDYXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVy
LCBtaW5DYXBhY2l0eSwgTWFsbG9jPiYgVmVjdG9yPFQsIGlubGluCiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFQsIHNpemVfdCBpbmxpbmVDYXBhY2l0eSwgdHlwZW5hbWUgT3ZlcmZsb3dIYW5kbGVyLCBz
aXplX3QgbWluQ2FwYWNpdHksIHR5cGVuYW1lIE1hbGxvYz4KIGlubGluZSBWZWN0b3I8VCwgaW5s
aW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNpdHksIE1hbGxvYz46OlZlY3Rv
cihWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNpdHks
IE1hbGxvYz4mJiBvdGhlcikKKyAgICA6IEJhc2UoV1RGTW92ZShvdGhlcikpCiB7Ci0gICAgc3dh
cChvdGhlcik7CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHNpemVfdCBpbmxpbmVDYXBhY2l0
eSwgdHlwZW5hbWUgT3ZlcmZsb3dIYW5kbGVyLCBzaXplX3QgbWluQ2FwYWNpdHksIHR5cGVuYW1l
IE1hbGxvYz4KIGlubGluZSBWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxl
ciwgbWluQ2FwYWNpdHksIE1hbGxvYz4mIFZlY3RvcjxULCBpbmxpbmVDYXBhY2l0eSwgT3ZlcmZs
b3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwgTWFsbG9jPjo6b3BlcmF0b3I9KFZlY3RvcjxULCBpbmxp
bmVDYXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwgTWFsbG9jPiYmIG90aGVy
KQogewotICAgIHN3YXAob3RoZXIpOworICAgIGlmIChtX3NpemUpCisgICAgICAgIFZlY3RvclR5
cGVPcGVyYXRpb25zPFQ+OjpkZXN0cnVjdChiZWdpbigpLCBlbmQoKSk7CisKKyAgICAvLyBNYWtl
IGl0IHBvc3NpYmxlIHRvIGNvcHkgaW5saW5lIGJ1ZmZlci4KKyAgICBhc2FuU2V0QnVmZmVyU2l6
ZVRvRnVsbENhcGFjaXR5KCk7CisKKyAgICBCYXNlOjphZG9wdChXVEZNb3ZlKG90aGVyKSk7CisK
KyAgICBhc2FuU2V0SW5pdGlhbEJ1ZmZlclNpemVUbyhtX3NpemUpOworCiAgICAgcmV0dXJuICp0
aGlzOwogfQogCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cK
aW5kZXggYzAzOGRjNDNjZjQwOTQ1YjkwODk2ODc2YzM1Zjg4MGQ5NWM5MDc5My4uZTRkY2ZlYWRj
MjAwYzUzMDQ4YWM0YmFiZTNkMWQzODJjYmUyNjlkMSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdl
TG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIyLTAzLTE4ICBD
aHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgVmVjdG9yIG1vdmUgY29u
c3RydWN0b3IgYW5kIG1vdmUgYXNzaWdubWVudCBvcGVyYXRvciBhcmUgc3Vib3B0aW1hbCB3aGVu
IHRoZSB2ZWN0b3IgaGFzIGFuIGlubGluZSBidWZmZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzODA5NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBBUEkgdGVzdCBjb3ZlcmFnZS4KKworICAgICAg
ICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3Rvci5jcHA6CisgICAgICAgIChUZXN0V2Vi
S2l0QVBJOjpURVNUKToKKwogMjAyMi0wMy0xOCAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5k
QGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dTdHJlYW1lcl0gSW5pdGlhbCBpbXBvcnQgb2YgdGhl
IEdzdFdlYlJUQyBiYWNrZW5kCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dURi9WZWN0b3IuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9yLmNw
cAppbmRleCAwYjE2NjcwYTQyMjFjMGQ3ZTJiZDRkZWFjYzJlZDVkNzdlMzZkNGMyLi5lYWZiMWVm
OWYwOTAxMjVhYmI1ZmZhNTBhMWFjMmZmNDViOGI5NmI1IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dURi9WZWN0b3IuY3BwCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV1RGL1ZlY3Rvci5jcHAKQEAgLTE1MTIsNCArMTUxMiwyMzMgQEAgVEVTVChXVEZfVmVj
dG9yLCBNYXBDdXN0b21SZXR1cm5UeXBlKQogICAgIEVYUEVDVF9GTE9BVF9FUShvdXRwdXRbMV0s
IDIuMGYpOwogfQogCitURVNUKFdURl9WZWN0b3IsIE1vdmVDb25zdHJ1Y3RvcikKK3sKKyAgICB7
CisgICAgICAgIFZlY3RvcjxTdHJpbmc+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJf
c3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXpl
KCksIDVVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gc3RyaW5nczIoV1RGTW92ZShzdHJpbmdz
KSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBF
Q1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdz
Mi5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDVV
KTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7
CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOwor
ICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAg
ICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAg
ICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgICAg
ICBzdHJpbmdzMi5hcHBlbmQoImYiX3N0cik7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5z
aXplKCksIDZVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDE2VSk7
CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls1XS51dGY4KCkuZGF0YSgpLCAiZiIpOwor
ICAgIH0KKworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmluZ3MoeyAiYSJf
c3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBF
Q1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2Fw
YWNpdHkoKSwgMTBVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmluZ3MyKFdURk1v
dmUoc3RyaW5ncykpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAgRVhQRUNU
X0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2Fw
YWNpdHkoKSwgMTBVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5k
YXRhKCksICJhIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0
YSgpLCAiYiIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEo
KSwgImMiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCks
ICJkIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAi
ZSIpOworICAgICAgICBzdHJpbmdzMi5hcHBlbmQoImYiX3N0cik7CisgICAgICAgIEVYUEVDVF9F
UShzdHJpbmdzMi5zaXplKCksIDZVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFj
aXR5KCksIDEwVSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls1XS51dGY4KCkuZGF0
YSgpLCAiZiIpOworICAgIH0KKworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMj4gc3Ry
aW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJkIl9zdHIsICJlIl9zdHIgfSk7Cisg
ICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5ncy5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmlu
Z3MyKFdURk1vdmUoc3RyaW5ncykpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCks
IDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOworICAgICAg
ICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJp
bmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51
dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRm
OCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0Zjgo
KS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCku
ZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRh
dGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAgICBF
WFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdz
Mi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRm
OCgpLmRhdGEoKSwgImYiKTsKKyAgICB9Cit9CisKK1RFU1QoV1RGX1ZlY3RvciwgTW92ZUFzc2ln
bm1lbnRPcGVyYXRvcikKK3sKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmc+IHN0cmluZ3Mo
eyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAg
ICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmlu
Z3MuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBWZWN0b3I8U3RyaW5nPiBzdHJpbmdzMjsKKyAg
ICAgICAgc3RyaW5nczIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3Ry
aW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwg
MFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVY
UEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShz
dHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3Ry
aW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmlu
Z3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdz
MlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJb
NF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIp
OworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVD
VF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3Ry
aW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZl
Y3RvcjxTdHJpbmc+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3Ry
LCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAg
ICAgICAgVmVjdG9yPFN0cmluZz4gc3RyaW5nczIoeyAiZm9vIl9zdHIsICJiYXIiX3N0ciB9KTsK
KyAgICAgICAgc3RyaW5nczIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHko
KSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAg
IEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJF
UShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEo
c3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0
cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJp
bmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5n
czJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9z
dHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVY
UEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEo
c3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAg
IFZlY3RvcjxTdHJpbmcsIDEwPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwg
ImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1
VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAg
IFZlY3RvcjxTdHJpbmcsIDEwPiBzdHJpbmdzMjsKKyAgICAgICAgc3RyaW5nczIgPSBXVEZNb3Zl
KHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAg
ICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAgRVhQRUNUX0VR
KHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNp
dHkoKSwgMTBVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRh
KCksICJhIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgp
LCAiYiIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMl0udXRmOCgpLmRhdGEoKSwg
ImMiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzNdLnV0ZjgoKS5kYXRhKCksICJk
Iik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls0XS51dGY4KCkuZGF0YSgpLCAiZSIp
OworICAgICAgICBzdHJpbmdzMi5hcHBlbmQoImYiX3N0cik7CisgICAgICAgIEVYUEVDVF9FUShz
dHJpbmdzMi5zaXplKCksIDZVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5
KCksIDEwVSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMls1XS51dGY4KCkuZGF0YSgp
LCAiZiIpOworICAgIH0KKworICAgIHsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmlu
Z3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0
cmluZ3MuY2FwYWNpdHkoKSwgMTBVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMTA+IHN0cmlu
Z3MyKHsgImZvbyJfc3RyLCAiYmFyIl9zdHIgfSk7CisgICAgICAgIHN0cmluZ3MyID0gV1RGTW92
ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAg
ICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAgIEVYUEVDVF9F
UShzdHJpbmdzMi5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFj
aXR5KCksIDEwVSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0
YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEo
KSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCks
ICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAi
ZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUi
KTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0
eSgpLCAxMFUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEo
KSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmlu
Z3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0
cmluZ3MuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdz
MjsKKyAgICAgICAgc3RyaW5nczIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1Rf
RVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNp
dHkoKSwgMlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAg
ICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9T
VFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RS
RVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVR
KHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShz
dHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3Ry
aW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJm
Il9zdHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAg
IEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RS
RVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAg
ICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3Ry
LCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCks
IDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgNVUpOworICAgICAg
ICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdzMih7ICJmb28iX3N0ciwgImJhciJfc3RyIH0pOwor
ICAgICAgICBzdHJpbmdzMiA9IFdURk1vdmUoc3RyaW5ncyk7CisgICAgICAgIEVYUEVDVF9FUShz
dHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgp
LCAyVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXplKCksIDVVKTsKKyAgICAgICAg
RVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDVVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVR
KHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRhKCksICJhIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShz
dHJpbmdzMlsxXS51dGY4KCkuZGF0YSgpLCAiYiIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3Ry
aW5nczJbMl0udXRmOCgpLmRhdGEoKSwgImMiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmlu
Z3MyWzNdLnV0ZjgoKS5kYXRhKCksICJkIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdz
Mls0XS51dGY4KCkuZGF0YSgpLCAiZSIpOworICAgICAgICBzdHJpbmdzMi5hcHBlbmQoImYiX3N0
cik7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5zaXplKCksIDZVKTsKKyAgICAgICAgRVhQ
RUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDE2VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShz
dHJpbmdzMls1XS51dGY4KCkuZGF0YSgpLCAiZiIpOworICAgIH0KKworICAgIHsKKyAgICAgICAg
VmVjdG9yPFN0cmluZywgMj4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJk
Il9zdHIsICJlIl9zdHIgfSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUp
OworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIFZl
Y3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MyKHsgImZvbyJfc3RyLCAiYmFyIl9zdHIsICJiYXoiX3N0
ciB9KTsKKyAgICAgICAgc3RyaW5nczIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBF
Q1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2Fw
YWNpdHkoKSwgMlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7Cisg
ICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVD
VF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1Rf
U1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NU
UkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJF
UShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEo
c3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5k
KCJmIl9zdHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAg
ICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1Rf
U1RSRVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7Cisg
ICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyIH0pOwor
ICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDJVKTsKKyAgICAgICAgRVhQRUNUX0VR
KHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJp
bmdzMih7ICJmb28iX3N0ciwgImJhciJfc3RyLCAiYmF6Il9zdHIgfSk7CisgICAgICAgIHN0cmlu
Z3MyID0gV1RGTW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgp
LCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDJVKTsKKyAgICAg
ICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgMlUpOworICAgICAgICBFWFBFQ1RfRVEoc3Ry
aW5nczIuY2FwYWNpdHkoKSwgMlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0u
dXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0
ZjgoKS5kYXRhKCksICJiIik7CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiYyJfc3RyKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgM1UpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5nczIuY2FwYWNpdHkoKSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3My
WzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgfQorfQorCiB9IC8vIG5hbWVzcGFjZSBUZXN0
V2ViS2l0QVBJCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455158</attachid>
            <date>2022-03-18 19:32:45 -0700</date>
            <delta_ts>2022-03-19 21:12:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238096-20220318193245.patch</filename>
            <type>text/plain</type>
            <size>15161</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQ0YjlhMWUwM2FkYWJhYWQwNjk2NWQ2
NDY2OGIxM2Y1ZGU1ZDQ4NTUuLjZjNjE3YzFiYjdmZWM3MzFkNDQ4MjE4OTFmYTFmZTYzZDFmMDMy
ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjItMDMtMTggIENocmlzIER1bWV6ICA8Y2R1bWV6
QGFwcGxlLmNvbT4KKworICAgICAgICBWZWN0b3IgbW92ZSBjb25zdHJ1Y3RvciBhbmQgbW92ZSBh
c3NpZ25tZW50IG9wZXJhdG9yIGFyZSBzdWJvcHRpbWFsIHdoZW4gdGhlIHZlY3RvciBoYXMgYW4g
aW5saW5lIGJ1ZmZlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjM4MDk2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhlIG1vdmUgY29uc3RydWN0b3IgKGFuZCBtb3ZlIGFzc2lnbm1lbnQgb3BlcmF0b3Jz
KSBmb3IgVmVjdG9yIHdlcmUgaW1wbGVtZW50ZWQgdXNpbmcgVmVjdG9yOjpzd2FwKCksIHdoaWNo
CisgICAgICAgIGlzIGZpbmUgZm9yIHZlY3RvcnMgd2l0aCBvdXQgb2YgbGluZSBidWZmZXJzIGJl
Y2F1c2Ugd2UncmUganVzdCBzd2FwcGluZyBwb2ludGVycy4gSG93ZXZlciwgd2hlbiB0aGUgdmVj
dG9yCisgICAgICAgIGhhcyBpbmxpbmUgY2FwYWNpdHksIHRoaXMgaXMgc3Vib3B0aW1hbCBiZWNh
dXNlIGl0IGlzIG5vdCBjaGVhcCB0byBtb3ZlIGRhdGEgZnJvbSBvbmUgaW5saW5lIGJ1ZmZlciB0
byBhbm90aGVyCisgICAgICAgIGFuZCBtb3ZpbmcgYW55IGRhdGEgdG8gdGhlIHNvdXJjZSBidWZm
ZXIgaXMgdW5uZWNlc3NhcnkuCisKKyAgICAgICAgKiB3dGYvVmVjdG9yLmg6CisgICAgICAgIChX
VEY6OlZlY3RvckJ1ZmZlcjo6VmVjdG9yQnVmZmVyKToKKyAgICAgICAgKFdURjo6VmVjdG9yQnVm
ZmVyOjphZG9wdCk6CisgICAgICAgIChXVEY6Ok1hbGxvYz46OlZlY3Rvcik6CisgICAgICAgIChX
VEY6Oj0pOgorCiAyMDIyLTAzLTE4ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlh
LmNvbT4KIAogICAgICAgICBbR1N0cmVhbWVyXSBJbml0aWFsIGltcG9ydCBvZiB0aGUgR3N0V2Vi
UlRDIGJhY2tlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oIGIvU291cmNl
L1dURi93dGYvVmVjdG9yLmgKaW5kZXggNDY3OWExOGRmMDE0NWQyNDVlMTcyNDFjNzlmYzZkN2Jh
YWExYjI0YS4uYzA1MGE4M2Q3ZWM5MjJmN2YyNmUwOGFlZjNmNmIxMmY2MDJjOWZmZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvVmVjdG9yLmgKKysrIGIvU291cmNlL1dURi93dGYvVmVjdG9y
LmgKQEAgLTQzNSw2ICs0MzUsMjEgQEAgcHVibGljOgogcHJvdGVjdGVkOgogICAgIHVzaW5nIEJh
c2U6Om1fc2l6ZTsKIAorICAgIFZlY3RvckJ1ZmZlcihWZWN0b3JCdWZmZXI8VCwgMCwgTWFsbG9j
PiYmIG90aGVyKQorICAgIHsKKyAgICAgICAgbV9idWZmZXIgPSBzdGQ6OmV4Y2hhbmdlKG90aGVy
Lm1fYnVmZmVyLCBudWxscHRyKTsKKyAgICAgICAgbV9jYXBhY2l0eSA9IHN0ZDo6ZXhjaGFuZ2Uo
b3RoZXIubV9jYXBhY2l0eSwgMCk7CisgICAgICAgIG1fc2l6ZSA9IHN0ZDo6ZXhjaGFuZ2Uob3Ro
ZXIubV9zaXplLCAwKTsKKyAgICB9CisKKyAgICB2b2lkIGFkb3B0KFZlY3RvckJ1ZmZlciYmIG90
aGVyKQorICAgIHsKKyAgICAgICAgZGVhbGxvY2F0ZUJ1ZmZlcihidWZmZXIoKSk7CisgICAgICAg
IG1fYnVmZmVyID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwgbnVsbHB0cik7CisgICAg
ICAgIG1fY2FwYWNpdHkgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fY2FwYWNpdHksIDApOworICAg
ICAgICBtX3NpemUgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fc2l6ZSwgMCk7CisgICAgfQorCiBw
cml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBKU0M6OkxMSW50T2Zmc2V0c0V4dHJhY3RvcjsKICAg
ICB1c2luZyBCYXNlOjptX2J1ZmZlcjsKQEAgLTU1Niw2ICs1NzEsMzQgQEAgcHVibGljOgogcHJv
dGVjdGVkOgogICAgIHVzaW5nIEJhc2U6Om1fc2l6ZTsKIAorICAgIFZlY3RvckJ1ZmZlcihWZWN0
b3JCdWZmZXImJiBvdGhlcikKKyAgICAgICAgOiBCYXNlKGlubGluZUJ1ZmZlcigpLCBpbmxpbmVD
YXBhY2l0eSwgMCkKKyAgICB7CisgICAgICAgIGlmIChvdGhlci5idWZmZXIoKSA9PSBvdGhlci5p
bmxpbmVCdWZmZXIoKSkKKyAgICAgICAgICAgIFZlY3RvclR5cGVPcGVyYXRpb25zPFQ+Ojptb3Zl
KG90aGVyLmlubGluZUJ1ZmZlcigpLCBvdGhlci5pbmxpbmVCdWZmZXIoKSArIG90aGVyLm1fc2l6
ZSwgaW5saW5lQnVmZmVyKCkpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIG1fYnVmZmVy
ID0gc3RkOjpleGNoYW5nZShvdGhlci5tX2J1ZmZlciwgb3RoZXIuaW5saW5lQnVmZmVyKCkpOwor
ICAgICAgICAgICAgbV9jYXBhY2l0eSA9IHN0ZDo6ZXhjaGFuZ2Uob3RoZXIubV9jYXBhY2l0eSwg
aW5saW5lQ2FwYWNpdHkpOworICAgICAgICB9CisgICAgICAgIG1fc2l6ZSA9IHN0ZDo6ZXhjaGFu
Z2Uob3RoZXIubV9zaXplLCAwKTsKKyAgICB9CisKKyAgICB2b2lkIGFkb3B0KFZlY3RvckJ1ZmZl
ciYmIG90aGVyKQorICAgIHsKKyAgICAgICAgaWYgKGJ1ZmZlcigpICE9IGlubGluZUJ1ZmZlcigp
KSB7CisgICAgICAgICAgICBkZWFsbG9jYXRlQnVmZmVyKGJ1ZmZlcigpKTsKKyAgICAgICAgICAg
IG1fYnVmZmVyID0gaW5saW5lQnVmZmVyKCk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG90aGVy
LmJ1ZmZlcigpID09IG90aGVyLmlubGluZUJ1ZmZlcigpKSB7CisgICAgICAgICAgICBWZWN0b3JU
eXBlT3BlcmF0aW9uczxUPjo6bW92ZShvdGhlci5pbmxpbmVCdWZmZXIoKSwgb3RoZXIuaW5saW5l
QnVmZmVyKCkgKyBvdGhlci5tX3NpemUsIGlubGluZUJ1ZmZlcigpKTsKKyAgICAgICAgICAgIG1f
Y2FwYWNpdHkgPSBvdGhlci5tX2NhcGFjaXR5OworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgbV9idWZmZXIgPSBzdGQ6OmV4Y2hhbmdlKG90aGVyLm1fYnVmZmVyLCBvdGhlci5pbmxpbmVC
dWZmZXIoKSk7CisgICAgICAgICAgICBtX2NhcGFjaXR5ID0gc3RkOjpleGNoYW5nZShvdGhlci5t
X2NhcGFjaXR5LCBpbmxpbmVDYXBhY2l0eSk7CisgICAgICAgIH0KKyAgICAgICAgbV9zaXplID0g
c3RkOjpleGNoYW5nZShvdGhlci5tX3NpemUsIDApOworICAgIH0KKwogcHJpdmF0ZToKICAgICB1
c2luZyBCYXNlOjptX2J1ZmZlcjsKICAgICB1c2luZyBCYXNlOjptX2NhcGFjaXR5OwpAQCAtOTc0
LDE0ICsxMDE3LDI0IEBAIFZlY3RvcjxULCBpbmxpbmVDYXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVy
LCBtaW5DYXBhY2l0eSwgTWFsbG9jPiYgVmVjdG9yPFQsIGlubGluCiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFQsIHNpemVfdCBpbmxpbmVDYXBhY2l0eSwgdHlwZW5hbWUgT3ZlcmZsb3dIYW5kbGVyLCBz
aXplX3QgbWluQ2FwYWNpdHksIHR5cGVuYW1lIE1hbGxvYz4KIGlubGluZSBWZWN0b3I8VCwgaW5s
aW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNpdHksIE1hbGxvYz46OlZlY3Rv
cihWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxlciwgbWluQ2FwYWNpdHks
IE1hbGxvYz4mJiBvdGhlcikKKyAgICA6IEJhc2UoV1RGTW92ZShvdGhlcikpCiB7Ci0gICAgc3dh
cChvdGhlcik7CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHNpemVfdCBpbmxpbmVDYXBhY2l0
eSwgdHlwZW5hbWUgT3ZlcmZsb3dIYW5kbGVyLCBzaXplX3QgbWluQ2FwYWNpdHksIHR5cGVuYW1l
IE1hbGxvYz4KIGlubGluZSBWZWN0b3I8VCwgaW5saW5lQ2FwYWNpdHksIE92ZXJmbG93SGFuZGxl
ciwgbWluQ2FwYWNpdHksIE1hbGxvYz4mIFZlY3RvcjxULCBpbmxpbmVDYXBhY2l0eSwgT3ZlcmZs
b3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwgTWFsbG9jPjo6b3BlcmF0b3I9KFZlY3RvcjxULCBpbmxp
bmVDYXBhY2l0eSwgT3ZlcmZsb3dIYW5kbGVyLCBtaW5DYXBhY2l0eSwgTWFsbG9jPiYmIG90aGVy
KQogewotICAgIHN3YXAob3RoZXIpOworICAgIGlmIChtX3NpemUpCisgICAgICAgIFZlY3RvclR5
cGVPcGVyYXRpb25zPFQ+OjpkZXN0cnVjdChiZWdpbigpLCBlbmQoKSk7CisKKyAgICAvLyBNYWtl
IGl0IHBvc3NpYmxlIHRvIGNvcHkgaW5saW5lIGJ1ZmZlci4KKyAgICBhc2FuU2V0QnVmZmVyU2l6
ZVRvRnVsbENhcGFjaXR5KCk7CisgICAgb3RoZXIuYXNhblNldEJ1ZmZlclNpemVUb0Z1bGxDYXBh
Y2l0eSgpOworCisgICAgQmFzZTo6YWRvcHQoV1RGTW92ZShvdGhlcikpOworCisgICAgYXNhblNl
dEluaXRpYWxCdWZmZXJTaXplVG8obV9zaXplKTsKKwogICAgIHJldHVybiAqdGhpczsKIH0KIApk
aWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGMwMzhk
YzQzY2Y0MDk0NWI5MDg5Njg3NmMzNWY4ODBkOTVjOTA3OTMuLmU0ZGNmZWFkYzIwMGM1MzA0OGFj
NGJhYmUzZDFkMzgyY2JlMjY5ZDEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9U
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMi0wMy0xOCAgQ2hyaXMgRHVtZXog
IDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIFZlY3RvciBtb3ZlIGNvbnN0cnVjdG9yIGFu
ZCBtb3ZlIGFzc2lnbm1lbnQgb3BlcmF0b3IgYXJlIHN1Ym9wdGltYWwgd2hlbiB0aGUgdmVjdG9y
IGhhcyBhbiBpbmxpbmUgYnVmZmVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzgwOTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBBZGQgQVBJIHRlc3QgY292ZXJhZ2UuCisKKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dURi9WZWN0b3IuY3BwOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVT
VCk6CisKIDIwMjItMDMtMTggIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgogCiAgICAgICAgIFtHU3RyZWFtZXJdIEluaXRpYWwgaW1wb3J0IG9mIHRoZSBHc3RXZWJSVEMg
YmFja2VuZApkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvVmVjdG9y
LmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1ZlY3Rvci5jcHAKaW5kZXggMGIx
NjY3MGE0MjIxYzBkN2UyYmQ0ZGVhY2MyZWQ1ZDc3ZTM2ZDRjMi4uZWFmYjFlZjlmMDkwMTI1YWJi
NWZmYTUwYTFhYzJmZjQ1YjhiOTZiNSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XVEYvVmVjdG9yLmNwcAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9W
ZWN0b3IuY3BwCkBAIC0xNTEyLDQgKzE1MTIsMjMzIEBAIFRFU1QoV1RGX1ZlY3RvciwgTWFwQ3Vz
dG9tUmV0dXJuVHlwZSkKICAgICBFWFBFQ1RfRkxPQVRfRVEob3V0cHV0WzFdLCAyLjBmKTsKIH0K
IAorVEVTVChXVEZfVmVjdG9yLCBNb3ZlQ29uc3RydWN0b3IpCit7CisgICAgeworICAgICAgICBW
ZWN0b3I8U3RyaW5nPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0
ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7Cisg
ICAgICAgIFZlY3RvcjxTdHJpbmc+IHN0cmluZ3MyKFdURk1vdmUoc3RyaW5ncykpOworICAgICAg
ICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmlu
Z3MuY2FwYWNpdHkoKSwgMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1
VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAg
IEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBF
WFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQ
RUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVD
VF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1Rf
U1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIu
YXBwZW5kKCJmIl9zdHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7
CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBF
WFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAg
ICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDEwPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0
ciwgImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmlu
Z3Muc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDEw
VSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDEwPiBzdHJpbmdzMihXVEZNb3ZlKHN0cmluZ3Mp
KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVD
VF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdz
Mi5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDEw
VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIp
OworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsK
KyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7Cisg
ICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAg
ICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAg
ICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIu
c2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxMFUp
OworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsK
KyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDI+IHN0cmluZ3MoeyAiYSJf
c3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJfc3RyIH0pOworICAgICAgICBFWFBF
Q1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2Fw
YWNpdHkoKSwgNVUpOworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdzMihXVEZNb3Zl
KHN0cmluZ3MpKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAg
ICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDJVKTsKKyAgICAgICAgRVhQRUNUX0VR
KHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNp
dHkoKSwgNVUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRmOCgpLmRhdGEo
KSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5kYXRhKCks
ICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCkuZGF0YSgpLCAi
YyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRmOCgpLmRhdGEoKSwgImQi
KTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5kYXRhKCksICJlIik7
CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0
cmluZ3MyLnNpemUoKSwgNlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHko
KSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzVdLnV0ZjgoKS5kYXRhKCks
ICJmIik7CisgICAgfQorfQorCitURVNUKFdURl9WZWN0b3IsIE1vdmVBc3NpZ25tZW50T3BlcmF0
b3IpCit7CisgICAgeworICAgICAgICBWZWN0b3I8U3RyaW5nPiBzdHJpbmdzKHsgImEiX3N0ciwg
ImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VR
KHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5
KCksIDVVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZz4gc3RyaW5nczI7CisgICAgICAgIHN0cmlu
Z3MyID0gV1RGTW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgp
LCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDBVKTsKKyAgICAg
ICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEoc3Ry
aW5nczIuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0u
dXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0
ZjgoKS5kYXRhKCksICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4
KCkuZGF0YSgpLCAiYyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRmOCgp
LmRhdGEoKSwgImQiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5k
YXRhKCksICJlIik7CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsKKyAgICAgICAg
RVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5n
czIuY2FwYWNpdHkoKSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzVdLnV0
ZjgoKS5kYXRhKCksICJmIik7CisgICAgfQorCisgICAgeworICAgICAgICBWZWN0b3I8U3RyaW5n
PiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9
KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAgICAgIFZlY3Rv
cjxTdHJpbmc+IHN0cmluZ3MyKHsgImZvbyJfc3RyLCAiYmFyIl9zdHIgfSk7CisgICAgICAgIHN0
cmluZ3MyID0gV1RGTW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6
ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDBVKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5nczIuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJb
MF0udXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFd
LnV0ZjgoKS5kYXRhKCksICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51
dGY4KCkuZGF0YSgpLCAiYyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRm
OCgpLmRhdGEoKSwgImQiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0Zjgo
KS5kYXRhKCksICJlIik7CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsKKyAgICAg
ICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNlUpOworICAgICAgICBFWFBFQ1RfRVEoc3Ry
aW5nczIuY2FwYWNpdHkoKSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzVd
LnV0ZjgoKS5kYXRhKCksICJmIik7CisgICAgfQorCisgICAgeworICAgICAgICBWZWN0b3I8U3Ry
aW5nLCAxMD4gc3RyaW5ncyh7ICJhIl9zdHIsICJiIl9zdHIsICJjIl9zdHIsICJkIl9zdHIsICJl
Il9zdHIgfSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgNVUpOworICAgICAg
ICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAxMFUpOworICAgICAgICBWZWN0b3I8U3Ry
aW5nLCAxMD4gc3RyaW5nczI7CisgICAgICAgIHN0cmluZ3MyID0gV1RGTW92ZShzdHJpbmdzKTsK
KyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9F
UShzdHJpbmdzLmNhcGFjaXR5KCksIDEwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5z
aXplKCksIDVVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFjaXR5KCksIDEwVSk7
CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlswXS51dGY4KCkuZGF0YSgpLCAiYSIpOwor
ICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0udXRmOCgpLmRhdGEoKSwgImIiKTsKKyAg
ICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0ZjgoKS5kYXRhKCksICJjIik7CisgICAg
ICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4KCkuZGF0YSgpLCAiZCIpOworICAgICAg
ICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgpLmRhdGEoKSwgImUiKTsKKyAgICAgICAg
c3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6
ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxMFUpOwor
ICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0udXRmOCgpLmRhdGEoKSwgImYiKTsKKyAg
ICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDEwPiBzdHJpbmdzKHsgImEiX3N0
ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNU
X0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFj
aXR5KCksIDEwVSk7CisgICAgICAgIFZlY3RvcjxTdHJpbmcsIDEwPiBzdHJpbmdzMih7ICJmb28i
X3N0ciwgImJhciJfc3RyIH0pOworICAgICAgICBzdHJpbmdzMiA9IFdURk1vdmUoc3RyaW5ncyk7
CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAgICAgICBFWFBFQ1Rf
RVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAxMFUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIu
c2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzMi5jYXBhY2l0eSgpLCAxMFUp
OworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMF0udXRmOCgpLmRhdGEoKSwgImEiKTsK
KyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzFdLnV0ZjgoKS5kYXRhKCksICJiIik7Cisg
ICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCkuZGF0YSgpLCAiYyIpOworICAg
ICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10udXRmOCgpLmRhdGEoKSwgImQiKTsKKyAgICAg
ICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0ZjgoKS5kYXRhKCksICJlIik7CisgICAgICAg
IHN0cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNp
emUoKSwgNlUpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgMTBVKTsK
KyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzVdLnV0ZjgoKS5kYXRhKCksICJmIik7Cisg
ICAgfQorCisgICAgeworICAgICAgICBWZWN0b3I8U3RyaW5nLCAyPiBzdHJpbmdzKHsgImEiX3N0
ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwgImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNU
X0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFj
aXR5KCksIDVVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMj4gc3RyaW5nczI7CisgICAgICAg
IHN0cmluZ3MyID0gV1RGTW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Mu
c2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDJVKTsK
KyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBFQ1Rf
RVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5n
czJbMF0udXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3My
WzFdLnV0ZjgoKS5kYXRhKCksICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsy
XS51dGY4KCkuZGF0YSgpLCAiYyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbM10u
dXRmOCgpLmRhdGEoKSwgImQiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRdLnV0
ZjgoKS5kYXRhKCksICJlIik7CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNlUpOworICAgICAgICBFWFBFQ1RfRVEo
c3RyaW5nczIuY2FwYWNpdHkoKSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3My
WzVdLnV0ZjgoKS5kYXRhKCksICJmIik7CisgICAgfQorCisgICAgeworICAgICAgICBWZWN0b3I8
U3RyaW5nLCAyPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciwgImMiX3N0ciwgImQiX3N0ciwg
ImUiX3N0ciB9KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCA1VSk7CisgICAg
ICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDVVKTsKKyAgICAgICAgVmVjdG9yPFN0
cmluZywgMj4gc3RyaW5nczIoeyAiZm9vIl9zdHIsICJiYXIiX3N0ciB9KTsKKyAgICAgICAgc3Ry
aW5nczIgPSBXVEZNb3ZlKHN0cmluZ3MpOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXpl
KCksIDBVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgMlUpOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9FUShz
dHJpbmdzMi5jYXBhY2l0eSgpLCA1VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsw
XS51dGY4KCkuZGF0YSgpLCAiYSIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbMV0u
dXRmOCgpLmRhdGEoKSwgImIiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzJdLnV0
ZjgoKS5kYXRhKCksICJjIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlszXS51dGY4
KCkuZGF0YSgpLCAiZCIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNF0udXRmOCgp
LmRhdGEoKSwgImUiKTsKKyAgICAgICAgc3RyaW5nczIuYXBwZW5kKCJmIl9zdHIpOworICAgICAg
ICBFWFBFQ1RfRVEoc3RyaW5nczIuc2l6ZSgpLCA2VSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJp
bmdzMi5jYXBhY2l0eSgpLCAxNlUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJbNV0u
dXRmOCgpLmRhdGEoKSwgImYiKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFZlY3RvcjxTdHJp
bmcsIDI+IHN0cmluZ3MoeyAiYSJfc3RyLCAiYiJfc3RyLCAiYyJfc3RyLCAiZCJfc3RyLCAiZSJf
c3RyIH0pOworICAgICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5zaXplKCksIDVVKTsKKyAgICAgICAg
RVhQRUNUX0VRKHN0cmluZ3MuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBWZWN0b3I8U3RyaW5n
LCAyPiBzdHJpbmdzMih7ICJmb28iX3N0ciwgImJhciJfc3RyLCAiYmF6Il9zdHIgfSk7CisgICAg
ICAgIHN0cmluZ3MyID0gV1RGTW92ZShzdHJpbmdzKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmlu
Z3Muc2l6ZSgpLCAwVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNhcGFjaXR5KCksIDJV
KTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNVUpOworICAgICAgICBFWFBF
Q1RfRVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgNVUpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3Ry
aW5nczJbMF0udXRmOCgpLmRhdGEoKSwgImEiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmlu
Z3MyWzFdLnV0ZjgoKS5kYXRhKCksICJiIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdz
MlsyXS51dGY4KCkuZGF0YSgpLCAiYyIpOworICAgICAgICBFWFBFQ1RfU1RSRVEoc3RyaW5nczJb
M10udXRmOCgpLmRhdGEoKSwgImQiKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzRd
LnV0ZjgoKS5kYXRhKCksICJlIik7CisgICAgICAgIHN0cmluZ3MyLmFwcGVuZCgiZiJfc3RyKTsK
KyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLnNpemUoKSwgNlUpOworICAgICAgICBFWFBFQ1Rf
RVEoc3RyaW5nczIuY2FwYWNpdHkoKSwgMTZVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmlu
Z3MyWzVdLnV0ZjgoKS5kYXRhKCksICJmIik7CisgICAgfQorCisgICAgeworICAgICAgICBWZWN0
b3I8U3RyaW5nLCAyPiBzdHJpbmdzKHsgImEiX3N0ciwgImIiX3N0ciB9KTsKKyAgICAgICAgRVhQ
RUNUX0VRKHN0cmluZ3Muc2l6ZSgpLCAyVSk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLmNh
cGFjaXR5KCksIDJVKTsKKyAgICAgICAgVmVjdG9yPFN0cmluZywgMj4gc3RyaW5nczIoeyAiZm9v
Il9zdHIsICJiYXIiX3N0ciwgImJheiJfc3RyIH0pOworICAgICAgICBzdHJpbmdzMiA9IFdURk1v
dmUoc3RyaW5ncyk7CisgICAgICAgIEVYUEVDVF9FUShzdHJpbmdzLnNpemUoKSwgMFUpOworICAg
ICAgICBFWFBFQ1RfRVEoc3RyaW5ncy5jYXBhY2l0eSgpLCAyVSk7CisgICAgICAgIEVYUEVDVF9F
UShzdHJpbmdzMi5zaXplKCksIDJVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNhcGFj
aXR5KCksIDJVKTsKKyAgICAgICAgRVhQRUNUX1NUUkVRKHN0cmluZ3MyWzBdLnV0ZjgoKS5kYXRh
KCksICJhIik7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsxXS51dGY4KCkuZGF0YSgp
LCAiYiIpOworICAgICAgICBzdHJpbmdzMi5hcHBlbmQoImMiX3N0cik7CisgICAgICAgIEVYUEVD
VF9FUShzdHJpbmdzMi5zaXplKCksIDNVKTsKKyAgICAgICAgRVhQRUNUX0VRKHN0cmluZ3MyLmNh
cGFjaXR5KCksIDE2VSk7CisgICAgICAgIEVYUEVDVF9TVFJFUShzdHJpbmdzMlsyXS51dGY4KCku
ZGF0YSgpLCAiYyIpOworICAgIH0KK30KKwogfSAvLyBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>