<?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>163761</bug_id>
          
          <creation_ts>2016-10-20 15:19:08 -0700</creation_ts>
          <short_desc>[JSC] Drop isEnvironmentRecord type info flag and use JSType information instead</short_desc>
          <delta_ts>2016-10-20 18:36:04 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</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></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>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1242612</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-10-20 15:19:08 -0700</bug_when>
    <thetext>JSType already has information: WithScope, GlobalObject, ModuleLexicalEnvironment etc.
Instead of using a type info flag bit, just use these type info.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1242694</commentid>
    <comment_count>1</comment_count>
      <attachid>292297</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-10-20 17:53:08 -0700</bug_when>
    <thetext>Created attachment 292297
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1242697</commentid>
    <comment_count>2</comment_count>
      <attachid>292297</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2016-10-20 18:02:44 -0700</bug_when>
    <thetext>Comment on attachment 292297
Patch

r=me. Nice, we can always use more bits!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1242700</commentid>
    <comment_count>3</comment_count>
      <attachid>292297</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-10-20 18:06:45 -0700</bug_when>
    <thetext>Comment on attachment 292297
Patch

Thanks :D</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1242725</commentid>
    <comment_count>4</comment_count>
      <attachid>292297</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-20 18:35:59 -0700</bug_when>
    <thetext>Comment on attachment 292297
Patch

Clearing flags on attachment: 292297

Committed r207652: &lt;http://trac.webkit.org/changeset/207652&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1242726</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-20 18:36:04 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>292297</attachid>
            <date>2016-10-20 17:53:08 -0700</date>
            <delta_ts>2016-10-20 18:35:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163761-20161021094930.patch</filename>
            <type>text/plain</type>
            <size>21047</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA3NjI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
M2M4YjIyOWQxZmQwNjJiYTcxMTAxOWM2MDIwYzE1MjRlNWE0MzU4Li4xMjY2ZmY5MDQyODZlNjhk
MjU1ZjZiOWUwMDk5Zjk3ZGI2Yjc1ZWMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NSBAQAorMjAxNi0xMC0yMCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBbSlNDXSBEcm9wIGlzRW52aXJvbm1lbnRSZWNvcmQgdHlwZSBpbmZv
IGZsYWcgYW5kIHVzZSBKU1R5cGUgaW5mb3JtYXRpb24gaW5zdGVhZAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYzNzYxCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiB3ZSBjYWxsIGEgZnVuY3Rpb24g
aW4gdGhlIGZvbGxvd2luZyBmb3JtLAorCisgICAgICAgICAgICB2YXIgY2hhckF0ID0gU3RyaW5n
LnByb3RvdHlwZS5jaGFyQXQ7CisgICAgICAgICAgICBjaGFyQXQoKTsgIC8vIHx0aGlzfCBiZWNv
bWVzIHRoZSBnbG9iYWwgb2JqZWN0LgorCisgICAgICAgIHdlIHNob3VsZCBzZWUgfHRoaXN8IGFz
IHVuZGVmaW5lZC9udWxsLiBJbiBTdHJpbmdQcm90b3R5cGUuY3BwLAorICAgICAgICB3ZSB1c2Ug
SXNFbnZpcm9ubWVudFJlY29yZCB0eXBlIGluZm8gZmxhZyB0byBjaGVjayB3aHRoZXIgdGhlCisg
ICAgICAgIGdpdmVuIHx0aGlzfCBpcyBhbiBlbnZpcm9ubWVudCByZWNvcmQuCisgICAgICAgIEhv
d2V2ZXIsIHR5cGUgaW5mbyBmbGFnIGlzIHByZWNpb3VzIHRoaW5nIGFuZCBvbmx5IFN0cmluZ1By
b3RvdHlwZS5jcHAKKyAgICAgICAgdXNlcyBJc0Vudmlyb25tZW50UmVjb3JkLiBJbiBhZGRpdGlv
biB0byB0aGF0LCBKU1R5cGUgc2hvdWxkCisgICAgICAgIGFscmVhZHkga25vd3Mgd2hldGhlciB0
aGUgZ2l2ZW4gb2JqZWN0IGlzIGFuIGVudmlyb25tZW50IHJlY29yZC4KKyAgICAgICAgU28gSXNF
bnZpcm9ubWVudFJlY29yZCB0eXBlIGluZm8gZmxhZyBzaG91bGQgYmUgZHJvcHBlZC4KKworICAg
ICAgICBUaGlzIHBhdGNoIGFkZHMgYSBuZXcgSlNUeXBlLCBTdHJpY3RFdmFsQWN0aXZhdGlvbi4g
QW5kIHdlIGFkZCBhIG5ldworICAgICAgICBtZXRob2QgSlNPYmplY3Q6OmlzRW52aXJvbm1lbnRS
ZWNvcmQoKS4gVGhpcyBtZXRob2QgdXNlcyBKU1R5cGUgdG8KKyAgICAgICAgcmV0dXJuIHRoZSBy
ZXN1bHQuIEFuZCB3ZSBkcm9wIElzRW52aXJvbm1lbnRSZWNvcmQgdHlwZSBpbmZvIGZsYWcuCisg
ICAgICAgIFRoaXMgcGF0Y2ggbWFrZXMgYSByb29tIGZvciBwdXR0aW5nIG9uZSBiaXQgZmxhZyB0
byB0aGUgb3V0IG9mIGxpbmUKKyAgICAgICAgdHlwZSBpbmZvIGZsYWcuIFByZXZpb3VzbHksIGl0
IGlzIGFscmVhZHkgZXhoYXVzdGVkLgorCisgICAgICAgICogbGxpbnQvTExJbnREYXRhLmNwcDoK
KyAgICAgICAgKEpTQzo6TExJbnQ6OkRhdGE6OnBlcmZvcm1Bc3NlcnRpb25zKToKKyAgICAgICAg
KiBsbGludC9Mb3dMZXZlbEludGVycHJldGVyLmFzbToKKyAgICAgICAgKiBydW50aW1lL0pTT2Jq
ZWN0Lmg6CisgICAgICAgIChKU0M6OkpTT2JqZWN0Ojppc1N0cmljdEV2YWxBY3RpdmF0aW9uKToK
KyAgICAgICAgKEpTQzo6SlNPYmplY3Q6OmlzRW52aXJvbm1lbnRSZWNvcmQpOgorICAgICAgICAq
IHJ1bnRpbWUvSlNTeW1ib2xUYWJsZU9iamVjdC5oOgorICAgICAgICAqIHJ1bnRpbWUvSlNUeXBl
Lmg6CisgICAgICAgICogcnVudGltZS9KU1R5cGVJbmZvLmg6CisgICAgICAgIChKU0M6OlR5cGVJ
bmZvOjpuZXdJbXB1cmVQcm9wZXJ0eUZpcmVzV2F0Y2hwb2ludHMpOgorICAgICAgICAoSlNDOjpU
eXBlSW5mbzo6aXNFbnZpcm9ubWVudFJlY29yZCk6IERlbGV0ZWQuCisgICAgICAgICogcnVudGlt
ZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5oOgorICAgICAgICAoSlNDOjpTdHJpY3RFdmFsQWN0aXZh
dGlvbjo6Y3JlYXRlU3RydWN0dXJlKToKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlw
ZS5jcHA6CisgICAgICAgIChKU0M6OmNoZWNrT2JqZWN0Q29lcmNpYmxlKToKKwogMjAxNi0xMC0y
MCAgQ2FpdGxpbiBQb3R0ZXIgIDxjYWl0cEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtKU0NdIGRp
c2FsbG93IHJlZmVyZW5jZXMgdG8gYGF3YWl0YCBpbiBBc3luY0Z1bmN0aW9uIGZvcm1hbCBwYXJh
bWV0ZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnREYXRh
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludERhdGEuY3BwCmluZGV4IGU1
MzI0Y2Q3NjE5MjM1YjlmMDY4ZGJkMTQzZGY2NjA2YzM0ZGJhYTAuLjNhMjExM2FkNDhhOGZlOTU1
YzI4ZjRmMThlMGU2M2E5N2MxMzQ3ZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9sbGludC9MTEludERhdGEuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9M
TEludERhdGEuY3BwCkBAIC0xNjEsNyArMTYxLDcgQEAgdm9pZCBEYXRhOjpwZXJmb3JtQXNzZXJ0
aW9ucyhWTSYgdm0pCiAgICAgU1RBVElDX0FTU0VSVChKU0Z1bmN0aW9uVHlwZSA9PSAyMyk7CiAg
ICAgU1RBVElDX0FTU0VSVChBcnJheVR5cGUgPT0gMzEpOwogICAgIFNUQVRJQ19BU1NFUlQoRGVy
aXZlZEFycmF5VHlwZSA9PSAzMik7Ci0gICAgU1RBVElDX0FTU0VSVChQcm94eU9iamVjdFR5cGUg
PT0gNDkpOworICAgIFNUQVRJQ19BU1NFUlQoUHJveHlPYmplY3RUeXBlID09IDUwKTsKICAgICBT
VEFUSUNfQVNTRVJUKEludDhBcnJheVR5cGUgPT0gMzMpOwogICAgIFNUQVRJQ19BU1NFUlQoSW50
MTZBcnJheVR5cGUgPT0gMzQpOwogICAgIFNUQVRJQ19BU1NFUlQoSW50MzJBcnJheVR5cGUgPT0g
MzUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50
ZXJwcmV0ZXIuYXNtIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJw
cmV0ZXIuYXNtCmluZGV4IGE1ZTI5ZGE5ZTFjOTFkMTZjNTQ5MGVkOTJkMGEwZmQxNWVjNTBiZjQu
LjU2MGRmM2VjYWI4MmRhODJiMjdmNDQzNjI0ZDBmZGU4ZTUwMWNlOWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVyLmFzbQorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlci5hc20KQEAgLTM1
MCw3ICszNTAsNyBAQCBjb25zdCBGaW5hbE9iamVjdFR5cGUgPSAyMQogY29uc3QgSlNGdW5jdGlv
blR5cGUgPSAyMwogY29uc3QgQXJyYXlUeXBlID0gMzEKIGNvbnN0IERlcml2ZWRBcnJheVR5cGUg
PSAzMgotY29uc3QgUHJveHlPYmplY3RUeXBlID0gNDkKK2NvbnN0IFByb3h5T2JqZWN0VHlwZSA9
IDUwCiAKICMgVGhlIHR5cGVkIGFycmF5IHR5cGVzIG5lZWQgdG8gYmUgbnVtYmVyZWQgaW4gYSBw
YXJ0aWN1bGFyIG9yZGVyIGJlY2F1c2Ugb2YgdGhlIG1hbnVhbGx5IHdyaXR0ZW4KICMgc3dpdGNo
IHN0YXRlbWVudCBpbiBnZXRfYnlfdmFsIGFuZCBwdXRfYnlfdmFsLgpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTT2JqZWN0LmgKaW5kZXggYjk2YTYzYzI0YjAwMTBlMWM0N2Q4YTBlMWY5
NjI0MDQ3ZTEyYjMwZC4uNjIyMGVjN2ExYmE4ZThhNzQ5ZGI0YjA2Y2Q0MjkzYTg4NWFmN2Y5MiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5oCkBAIC03MDYsMTIgKzcw
NiwxNSBAQCBjbGFzcyBKU09iamVjdCA6IHB1YmxpYyBKU0NlbGwgewogCiAgICAgSlNfRVhQT1JU
X1BSSVZBVEUgc3RhdGljIGJvb2wgZGVmaW5lT3duUHJvcGVydHkoSlNPYmplY3QqLCBFeGVjU3Rh
dGUqLCBQcm9wZXJ0eU5hbWUsIGNvbnN0IFByb3BlcnR5RGVzY3JpcHRvciYsIGJvb2wgc2hvdWxk
VGhyb3cpOwogCisgICAgYm9vbCBpc0Vudmlyb25tZW50UmVjb3JkKCkgY29uc3Q7CiAgICAgYm9v
bCBpc0dsb2JhbE9iamVjdCgpIGNvbnN0OwogICAgIGJvb2wgaXNKU0xleGljYWxFbnZpcm9ubWVu
dCgpIGNvbnN0OwogICAgIGJvb2wgaXNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQoKSBjb25zdDsK
LSAgICBib29sIGlzRXJyb3JJbnN0YW5jZSgpIGNvbnN0OworICAgIGJvb2wgaXNTdHJpY3RFdmFs
QWN0aXZhdGlvbigpIGNvbnN0OwogICAgIGJvb2wgaXNXaXRoU2NvcGUoKSBjb25zdDsKIAorICAg
IGJvb2wgaXNFcnJvckluc3RhbmNlKCkgY29uc3Q7CisKICAgICBKU19FWFBPUlRfUFJJVkFURSB2
b2lkIHNlYWwoVk0mKTsKICAgICBKU19FWFBPUlRfUFJJVkFURSB2b2lkIGZyZWV6ZShWTSYpOwog
ICAgIEpTX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBib29sIHByZXZlbnRFeHRlbnNpb25zKEpTT2Jq
ZWN0KiwgRXhlY1N0YXRlKik7CkBAIC0xMTc1LDYgKzExNzgsMTggQEAgaW5saW5lIGJvb2wgSlNP
YmplY3Q6OmlzR2xvYmFsTGV4aWNhbEVudmlyb25tZW50KCkgY29uc3QKICAgICByZXR1cm4gdHlw
ZSgpID09IEdsb2JhbExleGljYWxFbnZpcm9ubWVudFR5cGU7CiB9CiAKK2lubGluZSBib29sIEpT
T2JqZWN0Ojppc1N0cmljdEV2YWxBY3RpdmF0aW9uKCkgY29uc3QKK3sKKyAgICByZXR1cm4gdHlw
ZSgpID09IFN0cmljdEV2YWxBY3RpdmF0aW9uVHlwZTsKK30KKworaW5saW5lIGJvb2wgSlNPYmpl
Y3Q6OmlzRW52aXJvbm1lbnRSZWNvcmQoKSBjb25zdAoreworICAgIGJvb2wgcmVzdWx0ID0gR2xv
YmFsT2JqZWN0VHlwZSA8PSB0eXBlKCkgJiYgdHlwZSgpIDw9IFN0cmljdEV2YWxBY3RpdmF0aW9u
VHlwZTsKKyAgICBBU1NFUlQoKGlzR2xvYmFsT2JqZWN0KCkgfHwgaXNKU0xleGljYWxFbnZpcm9u
bWVudCgpIHx8IGlzR2xvYmFsTGV4aWNhbEVudmlyb25tZW50KCkgfHwgaXNTdHJpY3RFdmFsQWN0
aXZhdGlvbigpKSA9PSByZXN1bHQpOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKIGlubGluZSBi
b29sIEpTT2JqZWN0Ojppc0Vycm9ySW5zdGFuY2UoKSBjb25zdAogewogICAgIHJldHVybiB0eXBl
KCkgPT0gRXJyb3JJbnN0YW5jZVR5cGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmgKaW5kZXggZTY1ZjU0ZjJhMWUyMWRkZjMyMmQy
MDhjYjljNDViNDVkYzk4ODk2ZS4uOGEyOTllNTZlNDkwYjY5MmEzY2I3N2JlNGEyZDI0NTBmODM3
YjcyOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTeW1ib2xU
YWJsZU9iamVjdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3ltYm9s
VGFibGVPYmplY3QuaApAQCAtMzksNyArMzksNyBAQCBuYW1lc3BhY2UgSlNDIHsKIGNsYXNzIEpT
U3ltYm9sVGFibGVPYmplY3QgOiBwdWJsaWMgSlNTY29wZSB7CiBwdWJsaWM6CiAgICAgdHlwZWRl
ZiBKU1Njb3BlIEJhc2U7Ci0gICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdz
ID0gQmFzZTo6U3RydWN0dXJlRmxhZ3MgfCBJc0Vudmlyb25tZW50UmVjb3JkIHwgT3ZlcnJpZGVz
R2V0UHJvcGVydHlOYW1lczsKKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxh
Z3MgPSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IE92ZXJyaWRlc0dldFByb3BlcnR5TmFtZXM7CiAg
ICAgCiAgICAgU3ltYm9sVGFibGUqIHN5bWJvbFRhYmxlKCkgY29uc3QgeyByZXR1cm4gbV9zeW1i
b2xUYWJsZS5nZXQoKTsgfQogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNUeXBlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGUu
aAppbmRleCBhYTI0N2NiNTY5NmFkYTBiMmUzZWVmYzg4NTZhNDY2OWY3MDJmODM2Li5mOGJiN2Fm
YTA3MWM5OWU3ZjQyOTY1ZDZjYWI3NTk2MjQwM2FiZDJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1R5cGUuaApAQCAtNzcsMTAgKzc3LDE1IEBAIGVudW0gSlNUeXBlIDogdWludDhf
dCB7CiAgICAgRGF0YVZpZXdUeXBlLAogCiAgICAgR2V0dGVyU2V0dGVyVHlwZSwKKworICAgIC8v
IFN0YXJ0IGVudmlyb25tZW50IHJlY29yZCB0eXBlcy4KICAgICBHbG9iYWxPYmplY3RUeXBlLAog
ICAgIExleGljYWxFbnZpcm9ubWVudFR5cGUsCiAgICAgR2xvYmFsTGV4aWNhbEVudmlyb25tZW50
VHlwZSwKICAgICBNb2R1bGVFbnZpcm9ubWVudFR5cGUsCisgICAgU3RyaWN0RXZhbEFjdGl2YXRp
b25UeXBlLAorICAgIC8vIEVuZCBlbnZpcm9ubWVudCByZWNvcmQgdHlwZXMuCisKICAgICBSZWdF
eHBPYmplY3RUeXBlLAogICAgIFByb3h5T2JqZWN0VHlwZSwKICAgICBKU01hcFR5cGUsCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVJbmZvLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVJbmZvLmgKaW5kZXggNWMzMmYwM2U3NzUx
MDgzYjZlODg3MmM2ZGYzM2FmMjQ0MDdmZDhmOC4uZDI2NmU3MjNkZWQ1MWNjMThkNTQ0Yjg3Y2Q4
Mzk5N2QwZjA2NTFlZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNUeXBlSW5mby5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZUlu
Zm8uaApAQCAtNDgsNyArNDgsNiBAQCBzdGF0aWMgY29uc3QgdW5zaWduZWQgT3ZlcnJpZGVzR2V0
UHJvcGVydHlOYW1lcyA9IDEgPDwgOTsKIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBQcm9oaWJpdHNQ
cm9wZXJ0eUNhY2hpbmcgPSAxIDw8IDEwOwogc3RhdGljIGNvbnN0IHVuc2lnbmVkIEdldE93blBy
b3BlcnR5U2xvdElzSW1wdXJlID0gMSA8PCAxMTsKIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBOZXdJ
bXB1cmVQcm9wZXJ0eUZpcmVzV2F0Y2hwb2ludHMgPSAxIDw8IDEyOwotc3RhdGljIGNvbnN0IHVu
c2lnbmVkIElzRW52aXJvbm1lbnRSZWNvcmQgPSAxIDw8IDEzOwogc3RhdGljIGNvbnN0IHVuc2ln
bmVkIEdldE93blByb3BlcnR5U2xvdElzSW1wdXJlRm9yUHJvcGVydHlBYnNlbmNlID0gMSA8PCAx
NDsKIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBJbnRlcmNlcHRzR2V0T3duUHJvcGVydHlTbG90QnlJ
bmRleEV2ZW5XaGVuTGVuZ3RoSXNOb3RaZXJvID0gMSA8PCAxNTsKIApAQCAtOTAsNyArODksNiBA
QCBjbGFzcyBUeXBlSW5mbyB7CiAgICAgYm9vbCBnZXRPd25Qcm9wZXJ0eVNsb3RJc0ltcHVyZSgp
IGNvbnN0IHsgcmV0dXJuIGlzU2V0T25GbGFnczIoR2V0T3duUHJvcGVydHlTbG90SXNJbXB1cmUp
OyB9CiAgICAgYm9vbCBnZXRPd25Qcm9wZXJ0eVNsb3RJc0ltcHVyZUZvclByb3BlcnR5QWJzZW5j
ZSgpIGNvbnN0IHsgcmV0dXJuIGlzU2V0T25GbGFnczIoR2V0T3duUHJvcGVydHlTbG90SXNJbXB1
cmVGb3JQcm9wZXJ0eUFic2VuY2UpOyB9CiAgICAgYm9vbCBuZXdJbXB1cmVQcm9wZXJ0eUZpcmVz
V2F0Y2hwb2ludHMoKSBjb25zdCB7IHJldHVybiBpc1NldE9uRmxhZ3MyKE5ld0ltcHVyZVByb3Bl
cnR5RmlyZXNXYXRjaHBvaW50cyk7IH0KLSAgICBib29sIGlzRW52aXJvbm1lbnRSZWNvcmQoKSBj
b25zdCB7IHJldHVybiBpc1NldE9uRmxhZ3MyKElzRW52aXJvbm1lbnRSZWNvcmQpOyB9CiAgICAg
Ym9vbCBpbnRlcmNlcHRzR2V0T3duUHJvcGVydHlTbG90QnlJbmRleEV2ZW5XaGVuTGVuZ3RoSXNO
b3RaZXJvKCkgY29uc3QgeyByZXR1cm4gaXNTZXRPbkZsYWdzMihJbnRlcmNlcHRzR2V0T3duUHJv
cGVydHlTbG90QnlJbmRleEV2ZW5XaGVuTGVuZ3RoSXNOb3RaZXJvKTsgfQogCiAgICAgc3RhdGlj
IHB0cmRpZmZfdCBmbGFnc09mZnNldCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24uaAppbmRleCBkOGUyYzdhNjM1OWRkNjFiN2Nm
MjMyYzVmNTJkMDhjNjFkY2NiZjEzLi5kODAwZTk2OTc5ZDBiNjI5MGI2MWQyY2EyOWRkMzVhNWJl
Mjc4NTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpY3RF
dmFsQWN0aXZhdGlvbi5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmlj
dEV2YWxBY3RpdmF0aW9uLmgKQEAgLTMyLDcgKzMyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBjbGFz
cyBTdHJpY3RFdmFsQWN0aXZhdGlvbiA6IHB1YmxpYyBKU1Njb3BlIHsKIHB1YmxpYzoKICAgICB0
eXBlZGVmIEpTU2NvcGUgQmFzZTsKLSAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJl
RmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IElzRW52aXJvbm1lbnRSZWNvcmQgfCBPdmVy
cmlkZXNUb1RoaXM7CisgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0g
QmFzZTo6U3RydWN0dXJlRmxhZ3MgfCBPdmVycmlkZXNUb1RoaXM7CiAKICAgICBzdGF0aWMgU3Ry
aWN0RXZhbEFjdGl2YXRpb24qIGNyZWF0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTU2NvcGUqIGN1cnJl
bnRTY29wZSkKICAgICB7CkBAIC00Niw3ICs0Niw3IEBAIGNsYXNzIFN0cmljdEV2YWxBY3RpdmF0
aW9uIDogcHVibGljIEpTU2NvcGUgewogCiAgICAgc3RhdGljIFN0cnVjdHVyZSogY3JlYXRlU3Ry
dWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90
b3R5cGUpCiAgICAgewotICAgICAgICByZXR1cm4gU3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBUeXBlSW5mbyhPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyks
IGluZm8oKSk7CisgICAgICAgIHJldHVybiBTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2Jq
ZWN0LCBwcm90b3R5cGUsIFR5cGVJbmZvKFN0cmljdEV2YWxBY3RpdmF0aW9uVHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCkpOwogICAgIH0KICAgICAKICAgICBERUNMQVJFX0lORk87CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcAppbmRl
eCAxMmM0NGRhM2Q3ZTdkOTc1ZDViZmZjM2ZmYjc2NzYwN2M0NTcyY2JmLi42Y2E2NzgyOTc3YTcx
ZTZmOTliYjMyYjI2NzhkZDFhNzI1MzYxMTRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAKQEAgLTc0Niw3ICs3NDYsNyBAQCBzdGF0
aWMgaW5saW5lIGJvb2wgY2hlY2tPYmplY3RDb2VyY2libGUoSlNWYWx1ZSB0aGlzVmFsdWUpCiAg
ICAgaWYgKHRoaXNWYWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKQogICAgICAgICByZXR1cm4gZmFs
c2U7CiAKLSAgICBpZiAodGhpc1ZhbHVlLmlzQ2VsbCgpICYmIHRoaXNWYWx1ZS5hc0NlbGwoKS0+
c3RydWN0dXJlKCktPnR5cGVJbmZvKCkuaXNFbnZpcm9ubWVudFJlY29yZCgpKQorICAgIGlmICh0
aGlzVmFsdWUuaXNPYmplY3QoKSAmJiBhc09iamVjdCh0aGlzVmFsdWUpLT5pc0Vudmlyb25tZW50
UmVjb3JkKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIHJldHVybiB0cnVlOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDk3NWRjYjViNDRjMTgwYzNmZjQ5NjU5NjdjYzExMGJmYzcwZWFhZjcuLmIyMzg4MjA3MWNh
MmYzY2ExMmQwOTZkOGQxZjMxMjEwYWEyNTc5M2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAx
Ni0xMC0yMCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAg
ICBbSlNDXSBEcm9wIGlzRW52aXJvbm1lbnRSZWNvcmQgdHlwZSBpbmZvIGZsYWcgYW5kIHVzZSBK
U1R5cGUgaW5mb3JtYXRpb24gaW5zdGVhZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTYzNzYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBqcy9kb20vc2NyaXB0LXRlc3RzL3N0cmluZy1wcm90b3R5cGUt
c2NvcGVzLWluLXdvcmtlcnMuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAq
IGpzL2RvbS9zY3JpcHQtdGVzdHMvc3RyaW5nLXByb3RvdHlwZS1zY29wZXMuanM6IEFkZGVkLgor
ICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIGpzL2RvbS9zdHJpbmctcHJvdG90eXBlLXNjb3Bl
cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGpzL2RvbS9zdHJpbmctcHJvdG90eXBl
LXNjb3Blcy1pbi13b3JrZXJzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICoganMvZG9t
L3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLWluLXdvcmtlcnMuaHRtbDogQWRkZWQuCisgICAgICAg
ICoganMvZG9tL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLmh0bWw6IEFkZGVkLgorCiAyMDE2LTEw
LTIwICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIENSQVNIIGlu
IFdlYkNvcmU6Ok1lZGlhU291cmNlOjpzZWVrVG9UaW1lICsgMTg1CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9qcy9kb20vc2NyaXB0LXRlc3RzL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLWluLXdv
cmtlcnMuanMgYi9MYXlvdXRUZXN0cy9qcy9kb20vc2NyaXB0LXRlc3RzL3N0cmluZy1wcm90b3R5
cGUtc2NvcGVzLWluLXdvcmtlcnMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzRiMWExODdlNGQwZjMzMTMyZTUz
MDkzYWViOTQ4ZTZmZTg2Mzg5MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2pzL2Rv
bS9zY3JpcHQtdGVzdHMvc3RyaW5nLXByb3RvdHlwZS1zY29wZXMtaW4td29ya2Vycy5qcwpAQCAt
MCwwICsxLDE2IEBACitpbXBvcnRTY3JpcHRzKCcuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMnKTsKKworZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBjaGVja3Mgd2hldGhlciBTdHJpbmcu
cHJvdG90eXBlIG1ldGhvZHMgY29ycmVjdGx5IGhhbmRsZSB8dGhpc3wgaWYgfHRoaXN8IGJlY29t
ZXMgd29ya2VyIGdsb2JhbCBzY29wZS4iKTsKKwordmFyIGdsb2JhbCA9IHRoaXM7CitnbG9iYWwu
anNUZXN0SXNBc3luYyA9IHRydWU7CisKK3ZhciBlcnJvciA9IG51bGw7Cit0cnkgeworICAgIHZh
ciBjaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsKKyAgICBjaGFyQXQoKTsKK30gY2F0
Y2ggKGUpIHsKKyAgICBlcnJvciA9IGU7Cit9CitzaG91bGRCZShgU3RyaW5nKGVycm9yKWAsIGAi
VHlwZUVycm9yOiBUeXBlIGVycm9yImApOworZmluaXNoSlNUZXN0KCk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9qcy9kb20vc2NyaXB0LXRlc3RzL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLmpz
IGIvTGF5b3V0VGVzdHMvanMvZG9tL3NjcmlwdC10ZXN0cy9zdHJpbmctcHJvdG90eXBlLXNjb3Bl
cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5hNzZiN2ZmMWRjZDU2MGE5NmM4OGQyMTkyZWViMDJkNDlmZGZmODlj
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvanMvZG9tL3NjcmlwdC10ZXN0cy9zdHJp
bmctcHJvdG90eXBlLXNjb3Blcy5qcwpAQCAtMCwwICsxLDEwIEBACitkZXNjcmlwdGlvbigiVGhp
cyB0ZXN0IGNoZWNrcyB3aGV0aGVyIFN0cmluZy5wcm90b3R5cGUgbWV0aG9kcyBjb3JyZWN0bHkg
aGFuZGxlIHx0aGlzfCBpZiB8dGhpc3wgYmVjb21lcyB3aW5kb3cuIik7CisKK3ZhciBlcnJvciA9
IG51bGw7Cit0cnkgeworICAgIHZhciBjaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsK
KyAgICBjaGFyQXQoKTsKK30gY2F0Y2ggKGUpIHsKKyAgICBlcnJvciA9IGU7Cit9CitzaG91bGRC
ZShgU3RyaW5nKGVycm9yKWAsIGAiVHlwZUVycm9yOiBUeXBlIGVycm9yImApOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvanMvZG9tL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2pzL2RvbS9zdHJpbmctcHJvdG90eXBlLXNjb3Blcy1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uN2E5MDdmZGI1OWJiOGJiOTYxMzdmMDM4NTA0MTJlZjJjNDU0ZDM4Ywot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2pzL2RvbS9zdHJpbmctcHJvdG90eXBlLXNj
b3Blcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAorVGhpcyB0ZXN0IGNoZWNrcyB3aGV0
aGVyIFN0cmluZy5wcm90b3R5cGUgbWV0aG9kcyBjb3JyZWN0bHkgaGFuZGxlIHx0aGlzfCBpZiB8
dGhpc3wgYmVjb21lcyB3aW5kb3cuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQ
QVNTIFN0cmluZyhlcnJvcikgaXMgIlR5cGVFcnJvcjogVHlwZSBlcnJvciIKK1BBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9qcy9kb20vc3RyaW5nLXByb3RvdHlwZS1zY29wZXMtaW4td29ya2Vycy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9kb20vc3RyaW5nLXByb3RvdHlwZS1zY29wZXMtaW4td29y
a2Vycy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWYwNDlkNzE5YTc0MjdjNmQ1MGQxNTg0Zjc1
ODVjZTczZmFhYmFmZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2pzL2RvbS9zdHJp
bmctcHJvdG90eXBlLXNjb3Blcy1pbi13b3JrZXJzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEw
IEBACitbV29ya2VyXSBUaGlzIHRlc3QgY2hlY2tzIHdoZXRoZXIgU3RyaW5nLnByb3RvdHlwZSBt
ZXRob2RzIGNvcnJlY3RseSBoYW5kbGUgfHRoaXN8IGlmIHx0aGlzfCBiZWNvbWVzIHdvcmtlciBn
bG9iYWwgc2NvcGUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworU3RhcnRpbmcgd29y
a2VyOiAuL3NjcmlwdC10ZXN0cy9zdHJpbmctcHJvdG90eXBlLXNjb3Blcy1pbi13b3JrZXJzLmpz
CitQQVNTIFtXb3JrZXJdIFN0cmluZyhlcnJvcikgaXMgIlR5cGVFcnJvcjogVHlwZSBlcnJvciIK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9qcy9kb20vc3RyaW5nLXByb3RvdHlwZS1zY29wZXMtaW4td29y
a2Vycy5odG1sIGIvTGF5b3V0VGVzdHMvanMvZG9tL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLWlu
LXdvcmtlcnMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MDFmMzIyOGY4MzhjY2UwYzdjMjdlOWUxNDdmYTI0
MzBkMDg4ZmM3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvanMvZG9tL3N0cmluZy1w
cm90b3R5cGUtc2NvcGVzLWluLXdvcmtlcnMuaHRtbApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVzY3Jp
cHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0Pgord29ya2Vy
ID0gc3RhcnRXb3JrZXIoJy4vc2NyaXB0LXRlc3RzL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLWlu
LXdvcmtlcnMuanMnKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvanMvZG9tL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9qcy9kb20vc3RyaW5nLXByb3RvdHlwZS1zY29wZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43N2Q2
OWM4OGM5MTQ4MGRlNzM1YThlNjU4Mjk2YTg0ZTkyNmU2YjQxCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvanMvZG9tL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLmh0bWwKQEAgLTAsMCAr
MSwxMCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvc3RyaW5nLXByb3RvdHlwZS1zY29wZXMuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9DaGFuZ2VMb2cg
Yi9KU1Rlc3RzL0NoYW5nZUxvZwppbmRleCBkZDM3NTAyOTNjMGY1NzhmOTllZTFkNTExYzRlN2My
NzI3NWI5ZDZjLi41OWQxMTFjNWVmZWZjMTc2MDEwODIxM2NmYWU2YTZjYTQxMTJlM2I1IDEwMDY0
NAotLS0gYS9KU1Rlc3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3RzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDMzIEBACisyMDE2LTEwLTIwICBZdXN1a2UgU3V6dWtpICA8dXRhdGFuZS50ZWFAZ21haWwu
Y29tPgorCisgICAgICAgIFtKU0NdIERyb3AgaXNFbnZpcm9ubWVudFJlY29yZCB0eXBlIGluZm8g
ZmxhZyBhbmQgdXNlIEpTVHlwZSBpbmZvcm1hdGlvbiBpbnN0ZWFkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjM3NjEKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIG1vZHVsZXMvc3RyaW5nLXByb3RvdHlw
ZS1tb2R1bGUtc2NvcGUuanM6IEFkZGVkLgorICAgICAgICAoc2hvdWxkQmUpOgorICAgICAgICAo
Y2F0Y2gpOgorICAgICAgICAocmVmZXIpOgorICAgICAgICAqIHN0cmVzcy9zdHJpbmctcHJvdG90
eXBlLXNjb3Blcy1nbG9iYWwtbGV4aWNhbC1lbnZpcm9ubWVudC1zdHJpY3QuanM6IEFkZGVkLgor
ICAgICAgICAoc2hvdWxkQmUpOgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHN0cmVzcy9z
dHJpbmctcHJvdG90eXBlLXNjb3Blcy1nbG9iYWwtbGV4aWNhbC1lbnZpcm9ubWVudC5qczogQWRk
ZWQuCisgICAgICAgIChzaG91bGRCZSk6CisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogc3Ry
ZXNzL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLXN0cmljdC5qczogQWRkZWQuCisgICAgICAgIChz
aG91bGRCZSk6CisgICAgICAgIChjYXRjaCk6CisgICAgICAgICh0cnkucmVmZXIpOgorICAgICAg
ICAocmVmZXIpOgorICAgICAgICAqIHN0cmVzcy9zdHJpbmctcHJvdG90eXBlLXNjb3Blcy5qczog
QWRkZWQuCisgICAgICAgIChzaG91bGRCZSk6CisgICAgICAgIChjYXRjaCk6CisgICAgICAgICh0
cnkucmVmZXIpOgorICAgICAgICAocmVmZXIpOgorICAgICAgICAob2JqZWN0LnRvU3RyaW5nKToK
KyAgICAgICAgKHdpdGgpOgorCiAyMDE2LTEwLTIwICBDYWl0bGluIFBvdHRlciAgPGNhaXRwQGln
YWxpYS5jb20+CiAKICAgICAgICAgW0pTQ10gZGlzYWxsb3cgcmVmZXJlbmNlcyB0byBgYXdhaXRg
IGluIEFzeW5jRnVuY3Rpb24gZm9ybWFsIHBhcmFtZXRlcnMKZGlmZiAtLWdpdCBhL0pTVGVzdHMv
bW9kdWxlcy9zdHJpbmctcHJvdG90eXBlLW1vZHVsZS1zY29wZS5qcyBiL0pTVGVzdHMvbW9kdWxl
cy9zdHJpbmctcHJvdG90eXBlLW1vZHVsZS1zY29wZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMDRiODU4NTg3
OTA3MzUwMWI5Y2UyMjViZGQ1ODdhZjQ5NjY4YWNjCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy9tb2R1bGVzL3N0cmluZy1wcm90b3R5cGUtbW9kdWxlLXNjb3BlLmpzCkBAIC0wLDAgKzEsMTUg
QEAKK2Z1bmN0aW9uIHNob3VsZEJlKGFjdHVhbCwgZXhwZWN0ZWQpIHsKKyAgICBpZiAoYWN0dWFs
ICE9PSBleHBlY3RlZCkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgdmFsdWU6ICcgKyBh
Y3R1YWwpOworfQorCit2YXIgZXJyb3IgPSBudWxsOwordHJ5IHsKKyAgICB2YXIgY2hhckF0ID0g
U3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7CisgICAgY2hhckF0KCk7Cit9IGNhdGNoIChlKSB7Cisg
ICAgZXJyb3IgPSBlOworfQorc2hvdWxkQmUoU3RyaW5nKGVycm9yKSwgYFR5cGVFcnJvcjogVHlw
ZSBlcnJvcmApOworCitmdW5jdGlvbiByZWZlcigpIHsgY2hhckF0OyB9CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3N0cmVzcy9zdHJpbmctcHJvdG90eXBlLXNjb3Blcy1nbG9iYWwtbGV4aWNhbC1lbnZp
cm9ubWVudC1zdHJpY3QuanMgYi9KU1Rlc3RzL3N0cmVzcy9zdHJpbmctcHJvdG90eXBlLXNjb3Bl
cy1nbG9iYWwtbGV4aWNhbC1lbnZpcm9ubWVudC1zdHJpY3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjY1ZWQ0
YjU1NmNiZTQzYjM3YjhiMDQ5OGQzY2FjNGRiMWRiZmUxZQotLS0gL2Rldi9udWxsCisrKyBiL0pT
VGVzdHMvc3RyZXNzL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLWdsb2JhbC1sZXhpY2FsLWVudmly
b25tZW50LXN0cmljdC5qcwpAQCAtMCwwICsxLDE1IEBACisidXNlIHN0cmljdCI7CisKK2Z1bmN0
aW9uIHNob3VsZEJlKGFjdHVhbCwgZXhwZWN0ZWQpIHsKKyAgICBpZiAoYWN0dWFsICE9PSBleHBl
Y3RlZCkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgdmFsdWU6ICcgKyBhY3R1YWwpOwor
fQorCit2YXIgZXJyb3IgPSBudWxsOworbGV0IGNoYXJBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hh
ckF0OwordHJ5IHsKKyAgICBjaGFyQXQoKTsKK30gY2F0Y2ggKGUpIHsKKyAgICBlcnJvciA9IGU7
Cit9CitzaG91bGRCZShTdHJpbmcoZXJyb3IpLCBgVHlwZUVycm9yOiBUeXBlIGVycm9yYCk7CmRp
ZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9zdHJpbmctcHJvdG90eXBlLXNjb3Blcy1nbG9iYWwt
bGV4aWNhbC1lbnZpcm9ubWVudC5qcyBiL0pTVGVzdHMvc3RyZXNzL3N0cmluZy1wcm90b3R5cGUt
c2NvcGVzLWdsb2JhbC1sZXhpY2FsLWVudmlyb25tZW50LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhhNWNhMDEz
NmRkOWNmMzQ1OTEwZDA4ZjI4MmY4OGQxZTUyZGJmNzIKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rl
c3RzL3N0cmVzcy9zdHJpbmctcHJvdG90eXBlLXNjb3Blcy1nbG9iYWwtbGV4aWNhbC1lbnZpcm9u
bWVudC5qcwpAQCAtMCwwICsxLDEzIEBACitmdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVj
dGVkKSB7CisgICAgaWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCisgICAgICAgIHRocm93IG5ldyBF
cnJvcignYmFkIHZhbHVlOiAnICsgYWN0dWFsKTsKK30KKwordmFyIGVycm9yID0gbnVsbDsKK2xl
dCBjaGFyQXQgPSBTdHJpbmcucHJvdG90eXBlLmNoYXJBdDsKK3RyeSB7CisgICAgY2hhckF0KCk7
Cit9IGNhdGNoIChlKSB7CisgICAgZXJyb3IgPSBlOworfQorc2hvdWxkQmUoU3RyaW5nKGVycm9y
KSwgYFR5cGVFcnJvcjogVHlwZSBlcnJvcmApOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJlc3Mv
c3RyaW5nLXByb3RvdHlwZS1zY29wZXMtc3RyaWN0LmpzIGIvSlNUZXN0cy9zdHJlc3Mvc3RyaW5n
LXByb3RvdHlwZS1zY29wZXMtc3RyaWN0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI4MzA2NDY4NjkxMzdjODQw
NjliZDNkMGFjMzFkNDg4Mzg2OGEzNDQKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3N0cmVz
cy9zdHJpbmctcHJvdG90eXBlLXNjb3Blcy1zdHJpY3QuanMKQEAgLTAsMCArMSw1MSBAQAorInVz
ZSBzdHJpY3QiOworCitmdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKSB7CisgICAg
aWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCisgICAgICAgIHRocm93IG5ldyBFcnJvcignYmFkIHZh
bHVlOiAnICsgYWN0dWFsKTsKK30KKwordmFyIGVycm9yID0gbnVsbDsKK3RyeSB7CisgICAgZXZh
bChgCisgICAgdmFyIGNoYXJBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckF0OworICAgIGNoYXJB
dCgpOworICAgIGApOworfSBjYXRjaCAoZSkgeworICAgIGVycm9yID0gZTsKK30KK3Nob3VsZEJl
KFN0cmluZyhlcnJvciksIGBUeXBlRXJyb3I6IFR5cGUgZXJyb3JgKTsKKwordmFyIGVycm9yID0g
bnVsbDsKK3RyeSB7CisgICAgdmFyIGNoYXJBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckF0Owor
ICAgIGNoYXJBdCgpOworfSBjYXRjaCAoZSkgeworICAgIGVycm9yID0gZTsKK30KK3Nob3VsZEJl
KFN0cmluZyhlcnJvciksIGBUeXBlRXJyb3I6IFR5cGUgZXJyb3JgKTsKKwordmFyIGVycm9yID0g
bnVsbDsKK3RyeSB7CisgICAgbGV0IGNoYXJBdCA9IFN0cmluZy5wcm90b3R5cGUuY2hhckF0Owor
ICAgIGNoYXJBdCgpOworICAgIGZ1bmN0aW9uIHJlZmVyKCkgeyBjaGFyQXQ7IH0KK30gY2F0Y2gg
KGUpIHsKKyAgICBlcnJvciA9IGU7Cit9CitzaG91bGRCZShTdHJpbmcoZXJyb3IpLCBgVHlwZUVy
cm9yOiBUeXBlIGVycm9yYCk7CisKKyhmdW5jdGlvbiAoKSB7CisgICAgdmFyIGVycm9yID0gbnVs
bDsKKyAgICB2YXIgb2sgPSA0MjsKKyAgICB0cnkgeworICAgICAgICB2YXIgY2hhckF0ID0gU3Ry
aW5nLnByb3RvdHlwZS5jaGFyQXQ7CisgICAgICAgIGNoYXJBdCgpOworICAgIH0gY2F0Y2ggKGUp
IHsKKyAgICAgICAgZXJyb3IgPSBlOworICAgIH0KKworICAgIGZ1bmN0aW9uIHJlZmVyKCkgeyBj
aGFyQXQ7IH0gLy8gUmVmZXIgdGhlIGNoYXJBdCB2YXJpYWJsZS4KKyAgICBzaG91bGRCZShTdHJp
bmcoZXJyb3IpLCBgVHlwZUVycm9yOiBUeXBlIGVycm9yYCk7CisgICAgcmV0dXJuIG9rOworfSgp
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLmpz
IGIvSlNUZXN0cy9zdHJlc3Mvc3RyaW5nLXByb3RvdHlwZS1zY29wZXMuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
M2I2MWU3MTYzNTkxMmU0NTNhOWRkZWUwODE0NjBlYzc3ZWQ3Y2E3NwotLS0gL2Rldi9udWxsCisr
KyBiL0pTVGVzdHMvc3RyZXNzL3N0cmluZy1wcm90b3R5cGUtc2NvcGVzLmpzCkBAIC0wLDAgKzEs
NTQgQEAKK2Z1bmN0aW9uIHNob3VsZEJlKGFjdHVhbCwgZXhwZWN0ZWQpIHsKKyAgICBpZiAoYWN0
dWFsICE9PSBleHBlY3RlZCkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgdmFsdWU6ICcg
KyBhY3R1YWwpOworfQorCit2YXIgZXJyb3IgPSBudWxsOwordHJ5IHsKKyAgICBldmFsKGAKKyAg
ICB2YXIgY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7CisgICAgY2hhckF0KCk7Cisg
ICAgYCk7Cit9IGNhdGNoIChlKSB7CisgICAgZXJyb3IgPSBlOworfQorc2hvdWxkQmUoU3RyaW5n
KGVycm9yKSwgYFR5cGVFcnJvcjogVHlwZSBlcnJvcmApOworCit2YXIgZXJyb3IgPSBudWxsOwor
dHJ5IHsKKyAgICB2YXIgY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7CisgICAgY2hh
ckF0KCk7Cit9IGNhdGNoIChlKSB7CisgICAgZXJyb3IgPSBlOworfQorc2hvdWxkQmUoU3RyaW5n
KGVycm9yKSwgYFR5cGVFcnJvcjogVHlwZSBlcnJvcmApOworCit2YXIgZXJyb3IgPSBudWxsOwor
dHJ5IHsKKyAgICBsZXQgY2hhckF0ID0gU3RyaW5nLnByb3RvdHlwZS5jaGFyQXQ7CisgICAgY2hh
ckF0KCk7CisgICAgZnVuY3Rpb24gcmVmZXIoKSB7IGNoYXJBdDsgfQorfSBjYXRjaCAoZSkgewor
ICAgIGVycm9yID0gZTsKK30KK3Nob3VsZEJlKFN0cmluZyhlcnJvciksIGBUeXBlRXJyb3I6IFR5
cGUgZXJyb3JgKTsKKworKGZ1bmN0aW9uICgpIHsKKyAgICB2YXIgZXJyb3IgPSBudWxsOworICAg
IHZhciBvayA9IDQyOworICAgIHRyeSB7CisgICAgICAgIHZhciBjaGFyQXQgPSBTdHJpbmcucHJv
dG90eXBlLmNoYXJBdDsKKyAgICAgICAgY2hhckF0KCk7CisgICAgfSBjYXRjaCAoZSkgeworICAg
ICAgICBlcnJvciA9IGU7CisgICAgfQorCisgICAgZnVuY3Rpb24gcmVmZXIoKSB7IGNoYXJBdDsg
fSAvLyBSZWZlciB0aGUgY2hhckF0IHZhcmlhYmxlLgorICAgIHNob3VsZEJlKFN0cmluZyhlcnJv
ciksIGBUeXBlRXJyb3I6IFR5cGUgZXJyb3JgKTsKKyAgICByZXR1cm4gb2s7Cit9KCkpOworCit2
YXIgb2JqZWN0ID0geyBfX3Byb3RvX186IFN0cmluZy5wcm90b3R5cGUsIHRvU3RyaW5nKCkgeyBy
ZXR1cm4gIkNvY29hIjsgfSB9Oword2l0aCAob2JqZWN0KSB7CisgICAgc2hvdWxkQmUoY2hhckF0
KDApLCBgQ2ApOworfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>