<?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>224268</bug_id>
          
          <creation_ts>2021-04-06 22:13:31 -0700</creation_ts>
          <short_desc>[JSC] WasmMemory caging should care about nullptr</short_desc>
          <delta_ts>2021-04-07 02:29:01 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1747769</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-04-06 22:13:31 -0700</bug_when>
    <thetext>[JSC] WasmMemory caging should care nullptr</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747776</commentid>
    <comment_count>1</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-04-06 23:15:51 -0700</bug_when>
    <thetext>&lt;rdar://problem/74654838&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747777</commentid>
    <comment_count>2</comment_count>
      <attachid>425358</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-04-06 23:16:21 -0700</bug_when>
    <thetext>Created attachment 425358
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747803</commentid>
    <comment_count>3</comment_count>
      <attachid>425358</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2021-04-07 01:13:04 -0700</bug_when>
    <thetext>Comment on attachment 425358
Patch

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

r=me

&gt; Source/JavaScriptCore/ChangeLog:3
&gt; +        [JSC] WasmMemory caging should care nullptr

&quot;care about nullptr&quot;?

&gt; Source/JavaScriptCore/ChangeLog:10
&gt; +           This checking size can include redzone for fast-memory, but this is OK: bound-check pass in LLInt (in upper tiers, we

&quot;bounds-check&quot;

&gt; JSTests/ChangeLog:3
&gt; +        [JSC] WasmMemory caging should care nullptr

&quot;care about&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747828</commentid>
    <comment_count>4</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-04-07 02:29:01 -0700</bug_when>
    <thetext>Committed r275597 (236242@main): &lt;https://commits.webkit.org/236242@main&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425358</attachid>
            <date>2021-04-06 23:16:21 -0700</date>
            <delta_ts>2021-04-07 01:13:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224268-20210406231620.patch</filename>
            <type>text/plain</type>
            <size>21813</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NTM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
ZDQ3ZDQ0OTIxNzZhNTVjZjE1MDUzODEzMzEwODI0YjA5ZmZlMGVjLi5mMzYxMWRjY2NmNTU5ZTIx
YmY3YzNmZjk2ZmFjYWYxNDJjODgyY2JlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MSBAQAorMjAyMS0wNC0wNiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFdhc21NZW1vcnkgY2FnaW5nIHNob3VsZCBjYXJlIG51bGxwdHIK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDI2OAor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzQ2NTQ4Mzg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgMS4gRml4IFdhc206Ok1lbW9yeUhhbmRsZTo6Ym91
bmRzQ2hlY2tpbmdTaXplLiBXZSBzaG91bGQganVzdCByZXR1cm4gbV9tYXBwZWRDYXBhY2l0eSBo
ZXJlIHNpbmNlIFVJTlQzMl9NQVggaXMgbm90IDRHQi4KKyAgICAgICAgICAgVGhpcyBjaGVja2lu
ZyBzaXplIGNhbiBpbmNsdWRlIHJlZHpvbmUgZm9yIGZhc3QtbWVtb3J5LCBidXQgdGhpcyBpcyBP
SzogYm91bmQtY2hlY2sgcGFzcyBpbiBMTEludCAoaW4gdXBwZXIgdGllcnMsIHdlCisgICAgICAg
ICAgIGRvIG5vdCB1c2UgYm91bmQtY2hlY2sgZm9yIGZhc3QtbWVtb3J5KSwgYW5kIGFjY2VzcyB0
byByZWR6b25lLCB0aGVuIGZhdWx0IG9jY3VycyBhbmQgc2lnbmFsIGhhbmRsZXIgY2FuIG1ha2Ug
aXQgZXJyb3IKKyAgICAgICAgICAgc2luY2Ugc2lnbmFsIGhhbmRsZXIgaXMgY2hlY2tpbmcgd2hl
dGhlciB0aGUgYWNjZXNzIGlzIHdpdGhpbiBNZW1vcnk6OmZhc3RNYXBwZWRCeXRlcyB3aGljaCBp
bmNsdWRlcyByZWR6b25lLgorICAgICAgICAyLiBGaXggY2FnaW5nIG9mIHdhc20gbWVtb3J5LWJh
c2UgcG9pbnRlciBpbiBMTEludC4gV2Ugc2hvdWxkIHVzZSBwb2ludGVyIHNpemVkIGxlbmd0aCBz
aW5jZSBpdCBjYW4gYmUgbGFyZ2VyIHRoYW4gNEdCLgorICAgICAgICAgICBBbmQgd2Ugc2hvdWxk
IGhhbmRsZSBudWxscHRyIGNhc2UgY29ycmVjdGx5OiBXYXNtOjpNZW1vcnlIYW5kbGUncyBtZW1v
cnkgY2FuIGJlIG51bGxwdHIgd2hlbiBtYXBwZWQgc2l6ZSBpcyB6ZXJvLgorICAgICAgICAgICBj
YWdpbmcgbmVlZHMgdG8gaGFuZGxlIHRoaXMgY2FzZSBhcyB3ZSBkbyBpbiBDYWdlZFB0cjo6Z2V0
TWF5QmVOdWxsLgorCisgICAgICAgICogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjRFLmg6
CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyQVJNNjRFOjp1bnRhZ0FycmF5UHRyTGVuZ3Ro
MzIpOgorICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHA6CisgICAgICAgIChKU0M6
OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNhZ2VUeXBlZEFycmF5U3RvcmFnZSk6CisgICAgICAgICog
bGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlcjY0LmFzbToKKyAgICAgICAgKiBsbGludC9XZWJBc3Nl
bWJseS5hc206CisgICAgICAgICogb2ZmbGluZWFzbS9hcm02NGUucmI6CisgICAgICAgICogb2Zm
bGluZWFzbS9hc3QucmI6CisgICAgICAgICogb2ZmbGluZWFzbS9pbnN0cnVjdGlvbnMucmI6Cisg
ICAgICAgICogcnVudGltZS9DYWdlZEJhcnJpZXJQdHIuaDoKKyAgICAgICAgKEpTQzo6Q2FnZWRC
YXJyaWVyUHRyOjpDYWdlZEJhcnJpZXJQdHIpOgorICAgICAgICAoSlNDOjpDYWdlZEJhcnJpZXJQ
dHI6OnNldCk6CisgICAgICAgIChKU0M6OkNhZ2VkQmFycmllclB0cjo6Z2V0IGNvbnN0KToKKyAg
ICAgICAgKEpTQzo6Q2FnZWRCYXJyaWVyUHRyOjpnZXRNYXlCZU51bGwgY29uc3QpOgorICAgICAg
ICAoSlNDOjpDYWdlZEJhcnJpZXJQdHI6OmF0IGNvbnN0KToKKyAgICAgICAgKEpTQzo6Q2FnZWRC
YXJyaWVyUHRyOjpzZXRXaXRob3V0QmFycmllcik6CisgICAgICAgICogd2FzbS9XYXNtSW5zdGFu
Y2UuaDoKKyAgICAgICAgKEpTQzo6V2FzbTo6SW5zdGFuY2U6OnVwZGF0ZUNhY2hlZE1lbW9yeSk6
CisgICAgICAgICogd2FzbS9XYXNtTWVtb3J5LmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6TWVt
b3J5SGFuZGxlOjpNZW1vcnlIYW5kbGUpOgorICAgICAgICAqIHdhc20vV2FzbU1lbW9yeS5oOgor
CiAyMDIxLTA0LTA1ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0pTQ10gU2hyaW5rIHNvbWUgb2YgVmVjdG9ycyBpbiBKU0MKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXggY2E4YTdlYzkyMDBi
ZDFmMzYyMWFjZWE0NWM4ZWU0OGJkMGJlNDU3Ny4uYzY0MjA0Nzk3YmNjMGNjYTRhZWMwMmIxOWYz
NmUzYjU2M2M3MTgwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAyMS0wNC0wNiAgWXVzdWtlIFN1
enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0NdIFdhc21NZW1vcnkgY2Fn
aW5nIHNob3VsZCBjYXJlIG51bGxwdHIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyNDI2OAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzQ2NTQ4Mzg+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWNjZXB0
IHNpemVfdCBzaW5jZSBXYXNtOjpNZW1vcnkncyBsZW5ndGggY2FuIGJlIGxhcmdlciB0aGFuIDRH
Qi4KKworICAgICAgICAqIHd0Zi9DYWdlZFB0ci5oOgorICAgICAgICAoV1RGOjpDYWdlZFB0cjo6
Q2FnZWRQdHIpOgorICAgICAgICAoV1RGOjpDYWdlZFB0cjo6Z2V0IGNvbnN0KToKKyAgICAgICAg
KFdURjo6Q2FnZWRQdHI6OmdldE1heUJlTnVsbCBjb25zdCk6CisgICAgICAgIChXVEY6OkNhZ2Vk
UHRyOjphdCBjb25zdCk6CisgICAgICAgIChXVEY6OkNhZ2VkUHRyOjpyZWNhZ2UpOgorICAgICAg
ICAqIHd0Zi9DYWdlZFVuaXF1ZVB0ci5oOgorICAgICAgICAoV1RGOjpDYWdlZFVuaXF1ZVB0cjo6
Q2FnZWRVbmlxdWVQdHIpOgorICAgICAgICAoV1RGOjpDYWdlZFVuaXF1ZVB0cjo6Y3JlYXRlKToK
KyAgICAgICAgKFdURjo6Q2FnZWRVbmlxdWVQdHI6OnRyeUNyZWF0ZSk6CisKIDIwMjEtMDQtMDYg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEVuYWJsZSBOU1VS
TFNlc3Npb24gV2ViU29ja2V0IGNvZGUgcGF0aCBieSBkZWZhdWx0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjRFLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNNjRFLmgKaW5kZXgg
ODFmOTNlMTJkNzQyMTgyYjUzNzZkYzYyMWFhNWYzOTQzN2U5YTVhNi4uYTI0NWU3N2U0M2U3MGMw
ZWFhMjQzOTY0M2FkYTFmYzAzNGNjNzQxZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTTY0RS5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk02NEUuaApAQCAtMTI4LDcgKzEyOCw3
IEBAIGNsYXNzIE1hY3JvQXNzZW1ibGVyQVJNNjRFIDogcHVibGljIE1hY3JvQXNzZW1ibGVyQVJN
NjQgewogICAgICAgICB9CiAgICAgfQogCi0gICAgQUxXQVlTX0lOTElORSB2b2lkIHVudGFnQXJy
YXlQdHIoQWRkcmVzcyBsZW5ndGgsIFJlZ2lzdGVySUQgdGFyZ2V0LCBib29sIHZhbGlkYXRlQXV0
aCkKKyAgICBBTFdBWVNfSU5MSU5FIHZvaWQgdW50YWdBcnJheVB0ckxlbmd0aDMyKEFkZHJlc3Mg
bGVuZ3RoLCBSZWdpc3RlcklEIHRhcmdldCwgYm9vbCB2YWxpZGF0ZUF1dGgpCiAgICAgewogICAg
ICAgICBhdXRvIGxlbmd0aEdQUiA9IGdldENhY2hlZERhdGFUZW1wUmVnaXN0ZXJJREFuZEludmFs
aWRhdGUoKTsKICAgICAgICAgbG9hZDMyKGxlbmd0aCwgbGVuZ3RoR1BSKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAKaW5kZXggNTY1ZmY0MTg0
ODc4ZDA5NmIyMTJiMDNiZDQ0ZmQzZDk3ZDc0MmY4ZS4uZGIyYmIyZWYyODFlNmE5MTBmYzcxYWMz
MGU3OWVkMjdmMGRlY2U4YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdTcGVjdWxhdGl2ZUpJVC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdT
cGVjdWxhdGl2ZUpJVC5jcHAKQEAgLTc0ODUsNyArNzQ4NSw3IEBAIHZvaWQgU3BlY3VsYXRpdmVK
SVQ6OmNhZ2VUeXBlZEFycmF5U3RvcmFnZShHUFJSZWcgYmFzZVJlZywgR1BSUmVnIHN0b3JhZ2VS
ZWcsIGJvCiB7CiAgICAgYXV0byB1bnRhZ0FycmF5UHRyID0gWyZdKCkgewogI2lmIENQVShBUk02
NEUpCi0gICAgICAgIG1faml0LnVudGFnQXJyYXlQdHIoTWFjcm9Bc3NlbWJsZXI6OkFkZHJlc3Mo
YmFzZVJlZywgSlNBcnJheUJ1ZmZlclZpZXc6Om9mZnNldE9mTGVuZ3RoKCkpLCBzdG9yYWdlUmVn
LCB2YWxpZGF0ZUF1dGgpOworICAgICAgICBtX2ppdC51bnRhZ0FycmF5UHRyTGVuZ3RoMzIoTWFj
cm9Bc3NlbWJsZXI6OkFkZHJlc3MoYmFzZVJlZywgSlNBcnJheUJ1ZmZlclZpZXc6Om9mZnNldE9m
TGVuZ3RoKCkpLCBzdG9yYWdlUmVnLCB2YWxpZGF0ZUF1dGgpOwogI2Vsc2UKICAgICAgICAgVU5V
U0VEX1BBUkFNKHZhbGlkYXRlQXV0aCk7CiAgICAgICAgIFVOVVNFRF9QQVJBTShiYXNlUmVnKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbEludGVycHJl
dGVyNjQuYXNtIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0
ZXI2NC5hc20KaW5kZXggMDdmY2Q2OTM5YTA1YjFhY2Y1NGZlNmYwYzIzZjZmYjkyMGMwOGY0Zi4u
NmM0MjcxYWM0NDMxZTRlZDZkODdhYmRhMjE1ZThiMWJiYmVmZWVkMyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc20KKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc20KQEAg
LTQ5Nyw2ICs0OTcsMzEgQEAgbWFjcm8gY2FnZWRQcmltaXRpdmUocHRyLCBsZW5ndGgsIHNjcmF0
Y2gsIHNjcmF0Y2gyKQogICAgIGVuZAogZW5kCiAKK21hY3JvIGNhZ2VkUHJpbWl0aXZlTWF5QmVO
dWxsKHB0ciwgbGVuZ3RoLCBzY3JhdGNoLCBzY3JhdGNoMikKKyAgICBpZiBBUk02NEUKKyAgICAg
ICAgY29uc3Qgc291cmNlID0gc2NyYXRjaDIKKyAgICAgICAgbW92ZSBwdHIsIHNjcmF0Y2gyCisg
ICAgICAgIHJlbW92ZUFycmF5UHRyVGFnIHNjcmF0Y2gyCisgICAgICAgIGJ0cHogc2NyYXRjaDIs
IC5udWxsQ2FzZQorICAgICAgICBtb3ZlIHB0ciwgc2NyYXRjaDIKKyAgICBlbHNlCisgICAgICAg
ICMgTm90ZSB0aGF0IHdlIG1heSBwcm9kdWNlIG5vbi1udWxscHRyIGZvciBudWxscHRyIGluIG5v
bi1BUk02NEUgYXJjaGl0ZWN0dXJlIHNpbmNlIHdlIGFkZCBHaWdhY2FnZSBvZmZzZXQuCisgICAg
ICAgICMgQnV0IHRoaXMgYmVoYXZpb3IgaXMgYWxpZ25lZCB0byBBc3NlbWJseUhlbHBlcnM6Ontj
YWdlQ29uZGl0aW9uYWxseUFuZFVudGFnLGNhZ2VXaXRob3V0VW50YWdnaW5nfSwgRlRMIGltcGxl
bWVudGF0aW9uIG9mIGNhZ2luZyBldGMuCisgICAgICAgIGNvbnN0IHNvdXJjZSA9IHB0cgorICAg
IGVuZAorICAgIGlmIEdJR0FDQUdFX0VOQUJMRUQKKyAgICAgICAgY2FnZVByaW1pdGl2ZShHaWdh
Y2FnZUNvbmZpZyArIEdpZ2FjYWdlOjpDb25maWc6OmJhc2VQdHJzICsgR2lnYWNhZ2VQcmltaXRp
dmVCYXNlUHRyT2Zmc2V0LCBjb25zdGV4cHIgR2lnYWNhZ2U6OnByaW1pdGl2ZUdpZ2FjYWdlTWFz
aywgc291cmNlLCBzY3JhdGNoKQorICAgICAgICBpZiBBUk02NEUKKyAgICAgICAgICAgIGNvbnN0
IG51bWJlck9mUEFDQml0cyA9IGNvbnN0ZXhwciBNYWNyb0Fzc2VtYmxlcjo6bnVtYmVyT2ZQQUNC
aXRzCisgICAgICAgICAgICBiZmlxIHNjcmF0Y2gyLCAwLCA2NCAtIG51bWJlck9mUEFDQml0cywg
cHRyCisgICAgICAgIGVuZAorICAgIGVuZAorICAgIGlmIEFSTTY0RQorICAgICAgICAubnVsbENh
c2U6CisgICAgICAgIHVudGFnQXJyYXlQdHIgbGVuZ3RoLCBwdHIKKyAgICBlbmQKK2VuZAorCiBt
YWNybyBsb2FkQ2FnZWRKU1ZhbHVlKHNvdXJjZSwgZGVzdCwgc2NyYXRjaE9yTGVuZ3RoKQogICAg
IGxvYWRwIHNvdXJjZSwgZGVzdAogICAgIGlmIEdJR0FDQUdFX0VOQUJMRUQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9XZWJBc3NlbWJseS5hc20gYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvbGxpbnQvV2ViQXNzZW1ibHkuYXNtCmluZGV4IDU1MTdiMjU3NzI4ZmQ1NGRm
NzQzY2Q5MmM5YTI3M2NjNmNhMTdmMjkuLjVjMmFhMWUxNzk5M2UyZjUwNmFhYWYzODVmNmVhMWYx
MDNjZmM1MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9XZWJBc3Nl
bWJseS5hc20KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L1dlYkFzc2VtYmx5LmFz
bQpAQCAtMjQ2LDggKzI0Niw4IEBAIGVuZAogCiBtYWNybyByZWxvYWRNZW1vcnlSZWdpc3RlcnNG
cm9tSW5zdGFuY2UoaW5zdGFuY2UsIHNjcmF0Y2gxLCBzY3JhdGNoMikKICAgICBsb2FkcCBXYXNt
OjpJbnN0YW5jZTo6bV9jYWNoZWRNZW1vcnlbaW5zdGFuY2VdLCBtZW1vcnlCYXNlCi0gICAgbG9h
ZGkgV2FzbTo6SW5zdGFuY2U6Om1fY2FjaGVkQm91bmRzQ2hlY2tpbmdTaXplW2luc3RhbmNlXSwg
Ym91bmRzQ2hlY2tpbmdTaXplCi0gICAgY2FnZWRQcmltaXRpdmUobWVtb3J5QmFzZSwgYm91bmRz
Q2hlY2tpbmdTaXplLCBzY3JhdGNoMSwgc2NyYXRjaDIpCisgICAgbG9hZHAgV2FzbTo6SW5zdGFu
Y2U6Om1fY2FjaGVkQm91bmRzQ2hlY2tpbmdTaXplW2luc3RhbmNlXSwgYm91bmRzQ2hlY2tpbmdT
aXplCisgICAgY2FnZWRQcmltaXRpdmVNYXlCZU51bGwobWVtb3J5QmFzZSwgYm91bmRzQ2hlY2tp
bmdTaXplLCBzY3JhdGNoMSwgc2NyYXRjaDIpICMgSWYgYm91bmRzQ2hlY2tpbmdTaXplIGlzIDAs
IHBvaW50ZXIgY2FuIGJlIGEgbnVsbHB0ci4KIGVuZAogCiBtYWNybyB0aHJvd0V4Y2VwdGlvbihl
eGNlcHRpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9h
cm02NGUucmIgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9hcm02NGUucmIKaW5k
ZXggMTIzYzRhMjc0OTJiMjMwMzUyNzgzNjMyYTg5NmQxMWYxOTJkNWNhYi4uMTZlMmViN2FjNjBj
YTY3OTc5Y2Y1NTM0M2Q0MTcwNDZhY2E5ODA1NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL29mZmxpbmVhc20vYXJtNjRlLnJiCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9v
ZmZsaW5lYXNtL2FybTY0ZS5yYgpAQCAtMTQ2LDYgKzE0Niw5IEBAIGRlZiBsb3dlckFSTTY0RQog
ICAgICAgICB3aGVuICJ1bnRhZ0FycmF5UHRyIgogICAgICAgICAgICAgcmFpc2UgaWYgb3BlcmFu
ZHMuc2l6ZSAhPSAyIG9yIG5vdCBvcGVyYW5kcy5lYWNoIHsgfG9wZXJhbmR8IG9wZXJhbmQuaXNf
YT8gUmVnaXN0ZXJJRCBvciBvcGVyYW5kLmlzX2E/IFRtcCB9CiAgICAgICAgICAgICBlbWl0QVJN
NjQoImF1dGRiICIsIG9wZXJhbmRzLCA6cHRyKQorICAgICAgICB3aGVuICJyZW1vdmVBcnJheVB0
clRhZyIKKyAgICAgICAgICAgIHJhaXNlIHVubGVzcyBvcGVyYW5kc1swXS5pc19hPyBSZWdpc3Rl
cklECisgICAgICAgICAgICBlbWl0QVJNNjRVbmZsaXBwZWQoInhwYWNkICIsIG9wZXJhbmRzLCA6
cHRyKQogICAgICAgICB3aGVuICJyZXQiCiAgICAgICAgICAgICAkYXNtLnB1dHMgInJldGFiIgog
ICAgICAgICBlbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFz
bS9hc3QucmIgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9hc3QucmIKaW5kZXgg
MzYxM2I2ZTBmMmFmMmI1NzI4MTRiYjQ5YmU2MmRjZWIxMDQyOWZhOC4uNDE5ODRmN2ZmYmQxOTBh
MTZjZjZlYTFmMjZhMmFjN2JmMjc5ZGJkOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL29mZmxpbmVhc20vYXN0LnJiCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5l
YXNtL2FzdC5yYgpAQCAtOTQ1LDcgKzk0NSw3IEBAIGRlZiBsb3dlckRlZmF1bHQKICAgICAgICAg
ICAgICRhc20ucHV0R2xvYmFsQW5ub3RhdGlvbgogICAgICAgICB3aGVuICJlbWl0IgogICAgICAg
ICAgICAgJGFzbS5wdXRzICIje29wZXJhbmRzWzBdLmR1bXB9IgotICAgICAgICB3aGVuICJ0YWdD
b2RlUHRyIiwgInRhZ1JldHVybkFkZHJlc3MiLCAidW50YWdSZXR1cm5BZGRyZXNzIiwgInJlbW92
ZUNvZGVQdHJUYWciLCAidW50YWdBcnJheVB0ciIKKyAgICAgICAgd2hlbiAidGFnQ29kZVB0ciIs
ICJ0YWdSZXR1cm5BZGRyZXNzIiwgInVudGFnUmV0dXJuQWRkcmVzcyIsICJyZW1vdmVDb2RlUHRy
VGFnIiwgInVudGFnQXJyYXlQdHIiLCAicmVtb3ZlQXJyYXlQdHJUYWciCiAgICAgICAgIGVsc2UK
ICAgICAgICAgICAgIHJhaXNlICJVbmhhbmRsZWQgb3Bjb2RlICN7b3Bjb2RlfSBhdCAje2NvZGVP
cmlnaW5TdHJpbmd9IgogICAgICAgICBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9vZmZsaW5lYXNtL2luc3RydWN0aW9ucy5yYiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9v
ZmZsaW5lYXNtL2luc3RydWN0aW9ucy5yYgppbmRleCBmNjA5N2RjNjY2ZTE4MTYxNmViNjM5NzBh
ZmQxZGVlNzYxMGZiNzA4Li45Y2JhNWQ2OGYzY2FkMzFjZmEyZDk2ZWE0YzliYmE4ZGZlOWRhOWIy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9pbnN0cnVjdGlv
bnMucmIKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vaW5zdHJ1Y3Rpb25z
LnJiCkBAIC0zMDcsNyArMzA3LDggQEAKICAgICAgInRhZ1JldHVybkFkZHJlc3MiLAogICAgICAi
dW50YWdSZXR1cm5BZGRyZXNzIiwKICAgICAgInJlbW92ZUNvZGVQdHJUYWciLAotICAgICAidW50
YWdBcnJheVB0ciIsICAgIAorICAgICAidW50YWdBcnJheVB0ciIsCisgICAgICJyZW1vdmVBcnJh
eVB0clRhZyIsCiAgICAgICJ0emNudGkiLAogICAgICAidHpjbnRxIiwKICAgICAgImx6Y250aSIs
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWdlZEJhcnJpZXJQ
dHIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NhZ2VkQmFycmllclB0ci5oCmlu
ZGV4IGM0ZjI2YzUyYWViOTE0NzczMzdiMzZiYjU0OGNmZWYyYTE3MjA4NGQuLjM4YmVmNTA2ZWQ5
MTdiZWFiNmVjYWZmNDc3MTIxY2I5YjI2YTQxZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0NhZ2VkQmFycmllclB0ci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NhZ2VkQmFycmllclB0ci5oCkBAIC00NSw3ICs0NSw3IEBAIGNsYXNzIENh
Z2VkQmFycmllclB0ciB7CiAgICAgQ2FnZWRCYXJyaWVyUHRyKCkgPSBkZWZhdWx0OwogICAgIAog
ICAgIHRlbXBsYXRlPHR5cGVuYW1lIFU+Ci0gICAgQ2FnZWRCYXJyaWVyUHRyKFZNJiB2bSwgSlND
ZWxsKiBjZWxsLCBVJiYgdmFsdWUsIHVuc2lnbmVkIHNpemUpCisgICAgQ2FnZWRCYXJyaWVyUHRy
KFZNJiB2bSwgSlNDZWxsKiBjZWxsLCBVJiYgdmFsdWUsIHNpemVfdCBzaXplKQogICAgIHsKICAg
ICAgICAgbV9iYXJyaWVyLnNldCh2bSwgY2VsbCwgQ2FnZWRUeXBlKHN0ZDo6Zm9yd2FyZDxVPih2
YWx1ZSksIHNpemUpKTsKICAgICB9CkBAIC01MywxOSArNTMsMTkgQEAgY2xhc3MgQ2FnZWRCYXJy
aWVyUHRyIHsKICAgICB2b2lkIGNsZWFyKCkgeyBtX2JhcnJpZXIuY2xlYXIoKTsgfQogICAgIAog
ICAgIHRlbXBsYXRlPHR5cGVuYW1lIFU+Ci0gICAgdm9pZCBzZXQoVk0mIHZtLCBKU0NlbGwqIGNl
bGwsIFUmJiB2YWx1ZSwgdW5zaWduZWQgc2l6ZSkKKyAgICB2b2lkIHNldChWTSYgdm0sIEpTQ2Vs
bCogY2VsbCwgVSYmIHZhbHVlLCBzaXplX3Qgc2l6ZSkKICAgICB7CiAgICAgICAgIG1fYmFycmll
ci5zZXQodm0sIGNlbGwsIENhZ2VkVHlwZShzdGQ6OmZvcndhcmQ8VT4odmFsdWUpLCBzaXplKSk7
CiAgICAgfQogICAgIAotICAgIFQqIGdldCh1bnNpZ25lZCBzaXplKSBjb25zdCB7IHJldHVybiBt
X2JhcnJpZXIuZ2V0KCkuZ2V0KHNpemUpOyB9Ci0gICAgVCogZ2V0TWF5QmVOdWxsKHVuc2lnbmVk
IHNpemUpIGNvbnN0IHsgcmV0dXJuIG1fYmFycmllci5nZXQoKS5nZXRNYXlCZU51bGwoc2l6ZSk7
IH0KKyAgICBUKiBnZXQoc2l6ZV90IHNpemUpIGNvbnN0IHsgcmV0dXJuIG1fYmFycmllci5nZXQo
KS5nZXQoc2l6ZSk7IH0KKyAgICBUKiBnZXRNYXlCZU51bGwoc2l6ZV90IHNpemUpIGNvbnN0IHsg
cmV0dXJuIG1fYmFycmllci5nZXQoKS5nZXRNYXlCZU51bGwoc2l6ZSk7IH0KICAgICBUKiBnZXRV
bnNhZmUoKSBjb25zdCB7IHJldHVybiBtX2JhcnJpZXIuZ2V0KCkuZ2V0VW5zYWZlKCk7IH0KIAog
ICAgIC8vIFdlIG5lZWQgdGhlIHRlbXBsYXRlIGhlcmUgc28gdGhhdCB0aGUgdHlwZSBvZiBVIGlz
IGRlZHVjZWQgYXQgdXNhZ2UgdGltZSByYXRoZXIgdGhhbiBjbGFzcyB0aW1lLiBVIHNob3VsZCBh
bHdheXMgYmUgVC4KICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBVID0gVD4KICAgICB0eXBlbmFtZSBz
dGQ6OmVuYWJsZV9pZjwhc3RkOjppc19zYW1lPHZvaWQsIFU+Ojp2YWx1ZSwgVD46OnR5cGUmCi0g
ICAgLyogVCYgKi8gYXQodW5zaWduZWQgaW5kZXgsIHVuc2lnbmVkIHNpemUpIGNvbnN0IHsgcmV0
dXJuIGdldChzaXplKVtpbmRleF07IH0KKyAgICAvKiBUJiAqLyBhdChzaXplX3QgaW5kZXgsIHNp
emVfdCBzaXplKSBjb25zdCB7IHJldHVybiBnZXQoc2l6ZSlbaW5kZXhdOyB9CiAKICAgICBib29s
IG9wZXJhdG9yPT0oY29uc3QgQ2FnZWRCYXJyaWVyUHRyJiBvdGhlcikgY29uc3QKICAgICB7CkBA
IC04Myw3ICs4Myw3IEBAIGNsYXNzIENhZ2VkQmFycmllclB0ciB7CiAgICAgfQogICAgIAogICAg
IHRlbXBsYXRlPHR5cGVuYW1lIFU+Ci0gICAgdm9pZCBzZXRXaXRob3V0QmFycmllcihVJiYgdmFs
dWUsIHVuc2lnbmVkIHNpemUpIHsgbV9iYXJyaWVyLnNldFdpdGhvdXRCYXJyaWVyKENhZ2VkVHlw
ZShzdGQ6OmZvcndhcmQ8VT4odmFsdWUpLCBzaXplKSk7IH0KKyAgICB2b2lkIHNldFdpdGhvdXRC
YXJyaWVyKFUmJiB2YWx1ZSwgc2l6ZV90IHNpemUpIHsgbV9iYXJyaWVyLnNldFdpdGhvdXRCYXJy
aWVyKENhZ2VkVHlwZShzdGQ6OmZvcndhcmQ8VT4odmFsdWUpLCBzaXplKSk7IH0KIAogICAgIFQq
IHJhd0JpdHMoKSBjb25zdAogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL1dhc21JbnN0YW5jZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUlu
c3RhbmNlLmgKaW5kZXggMzNlOTlhOGY5YTVjZTQ2MTgwYmUwNDBmYzQwYjhiMGZjZmVjZTdhMC4u
N2VjYzE0YTMzYjMzNmMxYzA2N2UyYTNiOThlMWJjY2MzNzAyMzNkOCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUluc3RhbmNlLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vV2FzbUluc3RhbmNlLmgKQEAgLTEwOSw2ICsxMDksNyBAQCBjbGFzcyBJ
bnN0YW5jZSA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxJbnN0YW5jZT4sIHB1YmxpYyBD
YW5NYWtlV2Vha1B0cjxJbgogICAgICAgICBpZiAobV9tZW1vcnkgIT0gbnVsbHB0cikgewogICAg
ICAgICAgICAgbV9jYWNoZWRNZW1vcnkgPSBDYWdlZFB0cjxHaWdhY2FnZTo6UHJpbWl0aXZlLCB2
b2lkLCB0YWdDYWdlZFB0cj4obWVtb3J5KCktPm1lbW9yeSgpLCBtZW1vcnkoKS0+Ym91bmRzQ2hl
Y2tpbmdTaXplKCkpOwogICAgICAgICAgICAgbV9jYWNoZWRCb3VuZHNDaGVja2luZ1NpemUgPSBt
ZW1vcnkoKS0+Ym91bmRzQ2hlY2tpbmdTaXplKCk7CisgICAgICAgICAgICBBU1NFUlQobWVtb3J5
KCktPm1lbW9yeSgpID09IGNhY2hlZE1lbW9yeSgpKTsKICAgICAgICAgfQogICAgIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU1lbW9yeS5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTWVtb3J5LmNwcAppbmRleCA5NjFjZTE2YTU4ZWY0
OWMzNGY3MDNiMjllNzVhNDczZDJjNDQzZjE1Li5mMzliNTNmOTZjNWRlNDk0NWEzZWM5ZDM2OWYy
NWE0NDZiOWE1ZTNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNt
TWVtb3J5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTWVtb3J5LmNw
cApAQCAtMjc5LDEzICsyNzksMTMgQEAgYm9vbCB0cnlBbGxvY2F0ZShjb25zdCBGdW5jJiBhbGxv
Y2F0ZSwgY29uc3QgV1RGOjpGdW5jdGlvbjx2b2lkKE1lbW9yeTo6Tm90aWZ5UHIKIAogCiBNZW1v
cnlIYW5kbGU6Ok1lbW9yeUhhbmRsZSh2b2lkKiBtZW1vcnksIHNpemVfdCBzaXplLCBzaXplX3Qg
bWFwcGVkQ2FwYWNpdHksIFBhZ2VDb3VudCBpbml0aWFsLCBQYWdlQ291bnQgbWF4aW11bSwgTWVt
b3J5U2hhcmluZ01vZGUgc2hhcmluZ01vZGUsIE1lbW9yeU1vZGUgbW9kZSkKLSAgICA6IG1fbWVt
b3J5KG1lbW9yeSwgbWFwcGVkQ2FwYWNpdHkpCisgICAgOiBtX3NoYXJpbmdNb2RlKHNoYXJpbmdN
b2RlKQorICAgICwgbV9tb2RlKG1vZGUpCisgICAgLCBtX21lbW9yeShtZW1vcnksIG1hcHBlZENh
cGFjaXR5KQogICAgICwgbV9zaXplKHNpemUpCiAgICAgLCBtX21hcHBlZENhcGFjaXR5KG1hcHBl
ZENhcGFjaXR5KQogICAgICwgbV9pbml0aWFsKGluaXRpYWwpCiAgICAgLCBtX21heGltdW0obWF4
aW11bSkKLSAgICAsIG1fc2hhcmluZ01vZGUoc2hhcmluZ01vZGUpCi0gICAgLCBtX21vZGUobW9k
ZSkKIHsKICNpZiBBU1NFUlRfRU5BQkxFRAogICAgIGlmIChzaGFyaW5nTW9kZSA9PSBNZW1vcnlT
aGFyaW5nTW9kZTo6RGVmYXVsdCAmJiBtb2RlID09IE1lbW9yeU1vZGU6OkJvdW5kc0NoZWNraW5n
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU1lbW9yeS5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU1lbW9yeS5oCmluZGV4IDBhOWIxOWNhNmNh
YTMyODhmZjcxNzY3ZDg0ZDQ3MWY1ZGY5ODg4ZDguLmY1YzU4ZmNmOTZmMmQ4NmIwNzVjZTU3OGQ1
NjY5N2FlNzRhNTYyNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dh
c21NZW1vcnkuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTWVtb3J5LmgK
QEAgLTYxLDEyICs2MSw3IEBAIGNsYXNzIE1lbW9yeUhhbmRsZSBmaW5hbCA6IHB1YmxpYyBUaHJl
YWRTYWZlUmVmQ291bnRlZDxNZW1vcnlIYW5kbGU+IHsKICAgICB2b2lkKiBtZW1vcnkoKSBjb25z
dDsKICAgICBzaXplX3Qgc2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fc2l6ZTsgfQogICAgIHNpemVf
dCBtYXBwZWRDYXBhY2l0eSgpIGNvbnN0IHsgcmV0dXJuIG1fbWFwcGVkQ2FwYWNpdHk7IH0KLSAg
ICBzaXplX3QgYm91bmRzQ2hlY2tpbmdTaXplKCkgY29uc3QKLSAgICB7Ci0gICAgICAgIGlmICht
X21vZGUgPT0gTWVtb3J5TW9kZTo6Qm91bmRzQ2hlY2tpbmcpCi0gICAgICAgICAgICByZXR1cm4g
bV9tYXBwZWRDYXBhY2l0eTsKLSAgICAgICAgcmV0dXJuIFVJTlQzMl9NQVg7Ci0gICAgfQorICAg
IHNpemVfdCBib3VuZHNDaGVja2luZ1NpemUoKSBjb25zdCB7IHJldHVybiBtX21hcHBlZENhcGFj
aXR5OyB9CiAgICAgUGFnZUNvdW50IGluaXRpYWwoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWw7
IH0KICAgICBQYWdlQ291bnQgbWF4aW11bSgpIGNvbnN0IHsgcmV0dXJuIG1fbWF4aW11bTsgfQog
ICAgIE1lbW9yeVNoYXJpbmdNb2RlIHNoYXJpbmdNb2RlKCkgY29uc3QgeyByZXR1cm4gbV9zaGFy
aW5nTW9kZTsgfQpAQCAtODEsMTQgKzc2LDE1IEBAIGNsYXNzIE1lbW9yeUhhbmRsZSBmaW5hbCA6
IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxNZW1vcnlIYW5kbGU+IHsKIAogcHJpdmF0ZToK
ICAgICB1c2luZyBDYWdlZE1lbW9yeSA9IENhZ2VkUHRyPEdpZ2FjYWdlOjpQcmltaXRpdmUsIHZv
aWQsIHRhZ0NhZ2VkUHRyPjsKKworICAgIExvY2sgbV9sb2NrOworICAgIE1lbW9yeVNoYXJpbmdN
b2RlIG1fc2hhcmluZ01vZGUgeyBNZW1vcnlTaGFyaW5nTW9kZTo6RGVmYXVsdCB9OworICAgIE1l
bW9yeU1vZGUgbV9tb2RlIHsgTWVtb3J5TW9kZTo6Qm91bmRzQ2hlY2tpbmcgfTsKICAgICBDYWdl
ZE1lbW9yeSBtX21lbW9yeTsKICAgICBzaXplX3QgbV9zaXplIHsgMCB9OwogICAgIHNpemVfdCBt
X21hcHBlZENhcGFjaXR5IHsgMCB9OwogICAgIFBhZ2VDb3VudCBtX2luaXRpYWw7CiAgICAgUGFn
ZUNvdW50IG1fbWF4aW11bTsKLSAgICBNZW1vcnlTaGFyaW5nTW9kZSBtX3NoYXJpbmdNb2RlIHsg
TWVtb3J5U2hhcmluZ01vZGU6OkRlZmF1bHQgfTsKLSAgICBNZW1vcnlNb2RlIG1fbW9kZSB7IE1l
bW9yeU1vZGU6OkJvdW5kc0NoZWNraW5nIH07Ci0gICAgTG9jayBtX2xvY2s7CiB9OwogCiBjbGFz
cyBNZW1vcnkgZmluYWwgOiBwdWJsaWMgUmVmQ291bnRlZDxNZW1vcnk+IHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XVEYvd3RmL0NhZ2VkUHRyLmggYi9Tb3VyY2UvV1RGL3d0Zi9DYWdlZFB0ci5oCmlu
ZGV4IDdmYTdjNjQzMmFlYWU5YjUwMTNlN2E3ZGM5OGJiZmU0MTgwNTI3ZTcuLjJiNTQ5NGFjOGI0
NGY4NDQxYTE3NzU1MjQ1MzUzNTRlNmY1NDJkZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3Rm
L0NhZ2VkUHRyLmgKKysrIGIvU291cmNlL1dURi93dGYvQ2FnZWRQdHIuaApAQCAtNDcsMTEgKzQ3
LDExIEBAIGNsYXNzIENhZ2VkUHRyIHsKICAgICAgICAgOiBtX3B0cihzaG91bGRUYWcgPyB0YWdB
cnJheVB0cjxUPihudWxscHRyLCAwKSA6IG51bGxwdHIpCiAgICAgeyB9CiAKLSAgICBDYWdlZFB0
cihUKiBwdHIsIHVuc2lnbmVkIHNpemUpCisgICAgQ2FnZWRQdHIoVCogcHRyLCBzaXplX3Qgc2l6
ZSkKICAgICAgICAgOiBtX3B0cihzaG91bGRUYWcgPyB0YWdBcnJheVB0cihwdHIsIHNpemUpIDog
cHRyKQogICAgIHsgfQogCi0gICAgVCogZ2V0KHVuc2lnbmVkIHNpemUpIGNvbnN0CisgICAgVCog
Z2V0KHNpemVfdCBzaXplKSBjb25zdAogICAgIHsKICAgICAgICAgQVNTRVJUKG1fcHRyKTsKICAg
ICAgICAgVCogcHRyID0gUHRyVHJhaXRzOjp1bndyYXAobV9wdHIpOwpAQCAtNjAsNyArNjAsNyBA
QCBjbGFzcyBDYWdlZFB0ciB7CiAgICAgICAgIHJldHVybiB1bnRhZ2dlZFB0cjsKICAgICB9CiAK
LSAgICBUKiBnZXRNYXlCZU51bGwodW5zaWduZWQgc2l6ZSkgY29uc3QKKyAgICBUKiBnZXRNYXlC
ZU51bGwoc2l6ZV90IHNpemUpIGNvbnN0CiAgICAgewogICAgICAgICBUKiBwdHIgPSBQdHJUcmFp
dHM6OnVud3JhcChtX3B0cik7CiAgICAgICAgIGlmICghcmVtb3ZlQXJyYXlQdHJUYWcocHRyKSkK
QEAgLTgwLDkgKzgwLDkgQEAgY2xhc3MgQ2FnZWRQdHIgewogICAgIC8vIFdlIG5lZWQgdGhlIHRl
bXBsYXRlIGhlcmUgc28gdGhhdCB0aGUgdHlwZSBvZiBVIGlzIGRlZHVjZWQgYXQgdXNhZ2UgdGlt
ZSByYXRoZXIgdGhhbiBjbGFzcyB0aW1lLiBVIHNob3VsZCBhbHdheXMgYmUgVC4KICAgICB0ZW1w
bGF0ZTx0eXBlbmFtZSBVID0gVD4KICAgICB0eXBlbmFtZSBzdGQ6OmVuYWJsZV9pZjwhc3RkOjpp
c19zYW1lPHZvaWQsIFU+Ojp2YWx1ZSwgVD46OnR5cGUmCi0gICAgLyogVCYgKi8gYXQodW5zaWdu
ZWQgaW5kZXgsIHVuc2lnbmVkIHNpemUpIGNvbnN0IHsgcmV0dXJuIGdldChzaXplKVtpbmRleF07
IH0KKyAgICAvKiBUJiAqLyBhdChzaXplX3QgaW5kZXgsIHNpemVfdCBzaXplKSBjb25zdCB7IHJl
dHVybiBnZXQoc2l6ZSlbaW5kZXhdOyB9CiAKLSAgICB2b2lkIHJlY2FnZSh1bnNpZ25lZCBvbGRT
aXplLCB1bnNpZ25lZCBuZXdTaXplKQorICAgIHZvaWQgcmVjYWdlKHNpemVfdCBvbGRTaXplLCBz
aXplX3QgbmV3U2l6ZSkKICAgICB7CiAgICAgICAgIGF1dG8gcHRyID0gZ2V0KG9sZFNpemUpOwog
ICAgICAgICBBU1NFUlQocHRyID09IGdldFVuc2FmZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvd3RmL0NhZ2VkVW5pcXVlUHRyLmggYi9Tb3VyY2UvV1RGL3d0Zi9DYWdlZFVuaXF1ZVB0ci5o
CmluZGV4IGI1ODQzZmVjZWFhY2I4ZTZiMmFkZDJjNGU4MTMwNzJjYzU3ZGI2YWIuLjMwMzJhYTY0
M2NiMWU0Y2E1MWQ3ZjIxYTAxZTA4ZWJmYWMwODZjYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYv
d3RmL0NhZ2VkVW5pcXVlUHRyLmgKKysrIGIvU291cmNlL1dURi93dGYvQ2FnZWRVbmlxdWVQdHIu
aApAQCAtMzYsNyArMzYsNyBAQCBjbGFzcyBDYWdlZFVuaXF1ZVB0ciA6IHB1YmxpYyBDYWdlZFB0
cjxraW5kLCBULCBzaG91bGRUYWc+IHsKICAgICB1c2luZyBCYXNlID0gQ2FnZWRQdHI8a2luZCwg
VCwgc2hvdWxkVGFnPjsKICAgICBDYWdlZFVuaXF1ZVB0cigpID0gZGVmYXVsdDsKIAotICAgIENh
Z2VkVW5pcXVlUHRyKFQqIHB0ciwgdW5zaWduZWQgc2l6ZSkKKyAgICBDYWdlZFVuaXF1ZVB0cihU
KiBwdHIsIHNpemVfdCBzaXplKQogICAgICAgICA6IEJhc2UocHRyLCBzaXplKQogICAgIHsgfQog
CkBAIC00Nyw3ICs0Nyw3IEBAIGNsYXNzIENhZ2VkVW5pcXVlUHRyIDogcHVibGljIENhZ2VkUHRy
PGtpbmQsIFQsIHNob3VsZFRhZz4gewogICAgIENhZ2VkVW5pcXVlUHRyKGNvbnN0IENhZ2VkVW5p
cXVlUHRyJikgPSBkZWxldGU7CiAgICAgCiAgICAgdGVtcGxhdGU8dHlwZW5hbWUuLi4gQXJndW1l
bnRzPgotICAgIHN0YXRpYyBDYWdlZFVuaXF1ZVB0ciBjcmVhdGUodW5zaWduZWQgbGVuZ3RoLCBB
cmd1bWVudHMmJi4uLiBhcmd1bWVudHMpCisgICAgc3RhdGljIENhZ2VkVW5pcXVlUHRyIGNyZWF0
ZShzaXplX3QgbGVuZ3RoLCBBcmd1bWVudHMmJi4uLiBhcmd1bWVudHMpCiAgICAgewogICAgICAg
ICBUKiByZXN1bHQgPSBzdGF0aWNfY2FzdDxUKj4oR2lnYWNhZ2U6Om1hbGxvYyhraW5kLCBzaXpl
b2YoVCkgKiBsZW5ndGgpKTsKICAgICAgICAgd2hpbGUgKGxlbmd0aC0tKQpAQCAtNTYsNyArNTYs
NyBAQCBjbGFzcyBDYWdlZFVuaXF1ZVB0ciA6IHB1YmxpYyBDYWdlZFB0cjxraW5kLCBULCBzaG91
bGRUYWc+IHsKICAgICB9CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZS4uLiBBcmd1bWVudHM+Ci0g
ICAgc3RhdGljIENhZ2VkVW5pcXVlUHRyIHRyeUNyZWF0ZSh1bnNpZ25lZCBsZW5ndGgsIEFyZ3Vt
ZW50cyYmLi4uIGFyZ3VtZW50cykKKyAgICBzdGF0aWMgQ2FnZWRVbmlxdWVQdHIgdHJ5Q3JlYXRl
KHNpemVfdCBsZW5ndGgsIEFyZ3VtZW50cyYmLi4uIGFyZ3VtZW50cykKICAgICB7CiAgICAgICAg
IFQqIHJlc3VsdCA9IHN0YXRpY19jYXN0PFQqPihHaWdhY2FnZTo6dHJ5TWFsbG9jKGtpbmQsIHNp
emVvZihUKSAqIGxlbmd0aCkpOwogICAgICAgICBpZiAoIXJlc3VsdCkKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZDVlM2RjOGE5YTgxZWJk
MzlkNTM3ZjNjZWI4OGZmYzhmNTRkOGQ0My4uNTU2YTU1YTE4MjJiMDA0MWZkNjAwODdiNjcwNThk
NmIyZDI3MjQ4YSAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAyMS0wNC0wNiAgWXVzdWtlIFN1enVraSAgPHlz
dXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0NdIFdhc21NZW1vcnkgY2FnaW5nIHNob3Vs
ZCBjYXJlIG51bGxwdHIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNDI2OAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzQ2NTQ4Mzg+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3YXNtL3N0cmVzcy80
Zy1tZW1vcnktY2FnZS5qczogQWRkZWQuCisgICAgICAgIChhc3luYyB0ZXN0KToKKyAgICAgICAg
KiB3YXNtL3N0cmVzcy9tb3JlLXRoYW4tNGctb2Zmc2V0LWFjY2Vzcy1vb20uanM6IEFkZGVkLgor
ICAgICAgICAoYXN5bmMgdGVzdCk6CisgICAgICAgICogd2FzbS9zdHJlc3MvbnVsbC1tZW1vcnkt
Y2FnZS1leHBsaWNpdC5qczogQWRkZWQuCisgICAgICAgIChhc3luYyB0ZXN0KToKKyAgICAgICAg
KiB3YXNtL3N0cmVzcy9udWxsLW1lbW9yeS1jYWdlLmpzOiBBZGRlZC4KKyAgICAgICAgKGFzeW5j
IHRlc3QpOgorCiAyMDIxLTA0LTA1ICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUu
Y29tPgogCiAgICAgICAgIERGRyBhcml0eSBmaXh1cCBub2RlcyBzaG91bGQgZXhpdCB0byB0aGUg
Y2FsbGVyJ3MgY2FsbCBvcGNvZGUKZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS9zdHJlc3MvNGct
bWVtb3J5LWNhZ2UuanMgYi9KU1Rlc3RzL3dhc20vc3RyZXNzLzRnLW1lbW9yeS1jYWdlLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmNjYTUyZjFjZWExOWJmYjNiMGFjMzVkZGViODM5M2U3OTAxOTg0NWMKLS0tIC9k
ZXYvbnVsbAorKysgYi9KU1Rlc3RzL3dhc20vc3RyZXNzLzRnLW1lbW9yeS1jYWdlLmpzCkBAIC0w
LDAgKzEsMTggQEAKK2ltcG9ydCB7IGluc3RhbnRpYXRlIH0gZnJvbSAiLi4vd2FidC13cmFwcGVy
LmpzIjsKK2ltcG9ydCAqIGFzIGFzc2VydCBmcm9tICIuLi9hc3NlcnQuanMiOworCitsZXQgd2F0
ID0gYAorKG1vZHVsZQorICAgIChtZW1vcnkgJG1lbTAgMSkKKyAgICAoZnVuYyAoZXhwb3J0ICJ0
ZXN0IikgKHBhcmFtICRzeiBpMzIpIChyZXN1bHQgaTMyKQorICAgICAgICAobG9jYWwuZ2V0ICRz
eikKKyAgICApCispCitgOworYXN5bmMgZnVuY3Rpb24gdGVzdCgpIHsKKyAgICBjb25zdCBpbnN0
YW5jZSA9IGF3YWl0IGluc3RhbnRpYXRlKHdhdCwge30sIHtyZWZlcmVuY2VfdHlwZXM6IHRydWV9
KTsKKyAgICBjb25zdCB7dGVzdH0gPSBpbnN0YW5jZS5leHBvcnRzOworICAgIGFzc2VydC5lcSh0
ZXN0KDQyKSwgNDIpOworfQorCithc3NlcnQuYXN5bmNUZXN0KHRlc3QoKSk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3dhc20vc3RyZXNzL21vcmUtdGhhbi00Zy1vZmZzZXQtYWNjZXNzLW9vbS5qcyBi
L0pTVGVzdHMvd2FzbS9zdHJlc3MvbW9yZS10aGFuLTRnLW9mZnNldC1hY2Nlc3Mtb29tLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjFkZGQ4MmQ4NDY5YzdhZGNjYWY5ZTcyNjAwNWM2OTFiNGJhMDAxZmIKLS0tIC9k
ZXYvbnVsbAorKysgYi9KU1Rlc3RzL3dhc20vc3RyZXNzL21vcmUtdGhhbi00Zy1vZmZzZXQtYWNj
ZXNzLW9vbS5qcwpAQCAtMCwwICsxLDIyIEBACitpbXBvcnQgeyBpbnN0YW50aWF0ZSB9IGZyb20g
Ii4uL3dhYnQtd3JhcHBlci5qcyI7CitpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAiLi4vYXNzZXJ0
LmpzIjsKKworbGV0IHdhdCA9IGAKKyhtb2R1bGUKKyAgICAobWVtb3J5ICRtZW0wIDEpCisgICAg
KGZ1bmMgKGV4cG9ydCAidGVzdCIpIChwYXJhbSAkc3ogaTMyKSAocmVzdWx0IGkzMikKKyAgICAg
ICAgKGkzMi5sb2FkIG9mZnNldD0weGZmMDAgKGxvY2FsLmdldCAkc3opKQorICAgICkKKykKK2A7
Cithc3luYyBmdW5jdGlvbiB0ZXN0KCkgeworICAgIGNvbnN0IGluc3RhbmNlID0gYXdhaXQgaW5z
dGFudGlhdGUod2F0LCB7fSwge3JlZmVyZW5jZV90eXBlczogdHJ1ZX0pOworICAgIGNvbnN0IHt0
ZXN0fSA9IGluc3RhbmNlLmV4cG9ydHM7CisgICAgLy8gSW4gZmFzdC1tZW1vcnkgY29uZmlndXJh
dGlvbiwgdGhpcyBwYXNzIGJvdW5kLWNoZWNraW5nIChleHBlY3RlZCkuCisgICAgLy8gQW5kIHRo
ZW4sIGFjY2Vzc2luZyB0byByZWR6b25lLCBhbmQgdGhpcyBjYXVzZXMgZmF1bHQuIEFuZCBzaWdu
YWwgaGFuZGxlciB0aHJvd3MgYW4gZXJyb3IgY29ycmVjdGx5LgorICAgIGFzc2VydC50aHJvd3Mo
KCkgPT4geworICAgICAgICB0ZXN0KDB4ZmZmZmZmZmYpOworICAgIH0sIFdlYkFzc2VtYmx5LlJ1
bnRpbWVFcnJvciwgYE91dCBvZiBib3VuZHMgbWVtb3J5IGFjY2Vzc2ApOworfQorCithc3NlcnQu
YXN5bmNUZXN0KHRlc3QoKSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3dhc20vc3RyZXNzL251bGwt
bWVtb3J5LWNhZ2UtZXhwbGljaXQuanMgYi9KU1Rlc3RzL3dhc20vc3RyZXNzL251bGwtbWVtb3J5
LWNhZ2UtZXhwbGljaXQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDg0MjdkNDk0MWY1NWUzMzliZmQ4ZDlhN2U5
OGVhM2M4ODVlZTBiNwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvd2FzbS9zdHJlc3MvbnVs
bC1tZW1vcnktY2FnZS1leHBsaWNpdC5qcwpAQCAtMCwwICsxLDE4IEBACitpbXBvcnQgeyBpbnN0
YW50aWF0ZSB9IGZyb20gIi4uL3dhYnQtd3JhcHBlci5qcyI7CitpbXBvcnQgKiBhcyBhc3NlcnQg
ZnJvbSAiLi4vYXNzZXJ0LmpzIjsKKworbGV0IHdhdCA9IGAKKyhtb2R1bGUKKyAgICAobWVtb3J5
IDAgMCkKKyAgICAoZnVuYyAoZXhwb3J0ICJ0ZXN0IikgKHBhcmFtICRzeiBpMzIpIChyZXN1bHQg
aTMyKQorICAgICAgICAobWVtb3J5Lmdyb3cgKGxvY2FsLmdldCAkc3opKQorICAgICkKKykKK2A7
Cithc3luYyBmdW5jdGlvbiB0ZXN0KCkgeworICAgIGNvbnN0IGluc3RhbmNlID0gYXdhaXQgaW5z
dGFudGlhdGUod2F0LCB7fSwge3JlZmVyZW5jZV90eXBlczogdHJ1ZX0pOworICAgIGNvbnN0IHt0
ZXN0fSA9IGluc3RhbmNlLmV4cG9ydHM7CisgICAgYXNzZXJ0LmVxKHRlc3QoNDIpLCAtMSk7Cit9
CisKK2Fzc2VydC5hc3luY1Rlc3QodGVzdCgpKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvd2FzbS9z
dHJlc3MvbnVsbC1tZW1vcnktY2FnZS5qcyBiL0pTVGVzdHMvd2FzbS9zdHJlc3MvbnVsbC1tZW1v
cnktY2FnZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MWZiZGI4NjE0ZjIzNGI0MzE3ZDJjODI3NTFjZGQxMDVk
NDBjOWQ1Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy93YXNtL3N0cmVzcy9udWxsLW1lbW9y
eS1jYWdlLmpzCkBAIC0wLDAgKzEsMTcgQEAKK2ltcG9ydCB7IGluc3RhbnRpYXRlIH0gZnJvbSAi
Li4vd2FidC13cmFwcGVyLmpzIjsKK2ltcG9ydCAqIGFzIGFzc2VydCBmcm9tICIuLi9hc3NlcnQu
anMiOworCitsZXQgd2F0ID0gYAorKG1vZHVsZQorICAgIChmdW5jIChleHBvcnQgInRlc3QiKSAo
cGFyYW0gJHN6IGkzMikgKHJlc3VsdCBpMzIpCisgICAgICAgIChsb2NhbC5nZXQgJHN6KQorICAg
ICkKKykKK2A7Cithc3luYyBmdW5jdGlvbiB0ZXN0KCkgeworICAgIGNvbnN0IGluc3RhbmNlID0g
YXdhaXQgaW5zdGFudGlhdGUod2F0LCB7fSwge3JlZmVyZW5jZV90eXBlczogdHJ1ZX0pOworICAg
IGNvbnN0IHt0ZXN0fSA9IGluc3RhbmNlLmV4cG9ydHM7CisgICAgYXNzZXJ0LmVxKHRlc3QoNDIp
LCA0Mik7Cit9CisKK2Fzc2VydC5hc3luY1Rlc3QodGVzdCgpKTsK
</data>
<flag name="review"
          id="445292"
          type_id="1"
          status="+"
          setter="mark.lam"
    />
          </attachment>
      

    </bug>

</bugzilla>