<?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>194167</bug_id>
          
          <creation_ts>2019-02-01 11:08:12 -0800</creation_ts>
          <short_desc>[JSC] Unify CodeBlock IsoSubspaces</short_desc>
          <delta_ts>2019-02-04 17:34:50 -0800</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>
          
          <blocked>193606</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1501174</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-02-01 11:08:12 -0800</bug_when>
    <thetext>[JSC] Unify CodeBlock IsoSubspaces</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1501200</commentid>
    <comment_count>1</comment_count>
      <attachid>360881</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-02-01 11:50:09 -0800</bug_when>
    <thetext>Created attachment 360881
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1501203</commentid>
    <comment_count>2</comment_count>
      <attachid>360881</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-02-01 11:54:38 -0800</bug_when>
    <thetext>Comment on attachment 360881
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1501205</commentid>
    <comment_count>3</comment_count>
      <attachid>360881</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-02-01 11:55:18 -0800</bug_when>
    <thetext>Comment on attachment 360881
Patch

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

&gt; Source/JavaScriptCore/interpreter/Interpreter.cpp:1047
&gt; +    UnlinkedEvalCodeBlock* unlinkedCodeBlock = jsDynamicCast&lt;UnlinkedEvalCodeBlock*&gt;(vm, codeBlock-&gt;unlinkedCodeBlock());

Why not just codeBlock-&gt;unlinkedEvalCodeBlock()?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1501230</commentid>
    <comment_count>4</comment_count>
      <attachid>360881</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-02-01 13:09:55 -0800</bug_when>
    <thetext>Comment on attachment 360881
Patch

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

&gt;&gt; Source/JavaScriptCore/interpreter/Interpreter.cpp:1047
&gt;&gt; +    UnlinkedEvalCodeBlock* unlinkedCodeBlock = jsDynamicCast&lt;UnlinkedEvalCodeBlock*&gt;(vm, codeBlock-&gt;unlinkedCodeBlock());
&gt; 
&gt; Why not just codeBlock-&gt;unlinkedEvalCodeBlock()?

It sound OK. Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1501231</commentid>
    <comment_count>5</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-02-01 13:14:38 -0800</bug_when>
    <thetext>Committed r240864: &lt;https://trac.webkit.org/changeset/240864&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1501232</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-02-01 13:15:28 -0800</bug_when>
    <thetext>&lt;rdar://problem/47746857&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>360881</attachid>
            <date>2019-02-01 11:50:09 -0800</date>
            <delta_ts>2019-02-01 11:54:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-194167-20190201115009.patch</filename>
            <type>text/plain</type>
            <size>17082</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQwODYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
OTUxM2UyNWFkOWZmMWM5YTRhYTRmNmEyMTlmM2U3NjZkNTdmZGRhLi5jZTg4ZjlkNDViZmZmZmZl
NmQ5MmU0MjkwMGRlYjhhNjNjNmRiNmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NSBAQAorMjAxOS0wMi0wMSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFVuaWZ5IENvZGVCbG9jayBJc29TdWJzcGFjZXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NDE2NworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gd2UgbW92ZSBDb2Rl
QmxvY2sgaW50byBpdHMgSXNvU3Vic3BhY2UsIHdlIGNyZWF0ZSBJc29TdWJzcGFjZXMgZm9yIGVh
Y2ggc3ViY2xhc3Mgb2YgQ29kZUJsb2NrLgorICAgICAgICBCdXQgdGhpcyBpcyBub3QgbmVjZXNz
YXJ5IHNpbmNlLAorCisgICAgICAgIDEuIFRoZXkgZG8gbm90IG92ZXJyaWRlIHRoZSBjbGFzc0lu
Zm8gbWV0aG9kcy4KKyAgICAgICAgMi4gc2l6ZW9mKFByb2dyYW1Db2RlQmxvY2sgZXRjLikgPT0g
c2l6ZW9mKENvZGVCbG9jaykgc2luY2Ugc3ViY2xhc3NlcyBhZGRzIG5vIGFkZGl0aW9uYWwgZmll
bGRzLgorCisgICAgICAgIENyZWF0aW5nIElzb1N1YnNwYWNlIGZvciBlYWNoIHN1YmNsYXNzIGlz
IGNvc3RseSBpbiB0ZXJtcyBvZiBtZW1vcnkuIEVzcGVjaWFsbHksIElzb1N1YnNwYWNlIGZvcgor
ICAgICAgICBQcm9ncmFtQ29kZUJsb2NrIGlzLiBXZSB0eXBpY2FsbHkgY3JlYXRlIG9ubHkgb25l
IFByb2dyYW1Db2RlQmxvY2ssIGFuZCBpdCBtZWFucyB0aGUgcmVzdCBvZiB0aGUKKyAgICAgICAg
TWFya2VkQmxvY2sgKDE2S0IgLSBzaXplb2YoZm9vdGVyKSAtIHNpemVvZihQcm9ncmFtQ29kZUJs
b2NrKSkgaXMganVzdCB3YXN0ZWQuCisKKyAgICAgICAgVGhpcyBwYXRjaCB1bmlmaWVzIHRoZXNl
IElzb1N1YnNwYWNlcyBpbnRvIG9uZS4KKworICAgICAgICAqIGJ5dGVjb2RlL0NvZGVCbG9jay5j
cHA6CisgICAgICAgIChKU0M6OkNvZGVCbG9jazo6ZGVzdHJveSk6CisgICAgICAgICogYnl0ZWNv
ZGUvQ29kZUJsb2NrLmg6CisgICAgICAgICogYnl0ZWNvZGUvRXZhbENvZGVCbG9jay5jcHA6Cisg
ICAgICAgIChKU0M6OkV2YWxDb2RlQmxvY2s6OmRlc3Ryb3kpOiBEZWxldGVkLgorICAgICAgICAq
IGJ5dGVjb2RlL0V2YWxDb2RlQmxvY2suaDogV2UgZHJvcCBzb21lIHV0aWxpdHkgZnVuY3Rpb25z
IGluIEV2YWxDb2RlQmxvY2sgYW5kIHVzZSBVbmxpbmtlZEV2YWxDb2RlQmxvY2sncyBvbmUgZGly
ZWN0bHkuCisgICAgICAgICogYnl0ZWNvZGUvRnVuY3Rpb25Db2RlQmxvY2suY3BwOgorICAgICAg
ICAoSlNDOjpGdW5jdGlvbkNvZGVCbG9jazo6ZGVzdHJveSk6IERlbGV0ZWQuCisgICAgICAgICog
Ynl0ZWNvZGUvRnVuY3Rpb25Db2RlQmxvY2suaDoKKyAgICAgICAgKiBieXRlY29kZS9HbG9iYWxD
b2RlQmxvY2suaDoKKyAgICAgICAgKiBieXRlY29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNw
cDoKKyAgICAgICAgKEpTQzo6TW9kdWxlUHJvZ3JhbUNvZGVCbG9jazo6ZGVzdHJveSk6IERlbGV0
ZWQuCisgICAgICAgICogYnl0ZWNvZGUvTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5oOgorICAgICAg
ICAqIGJ5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwOgorICAgICAgICAoSlNDOjpQcm9ncmFt
Q29kZUJsb2NrOjpkZXN0cm95KTogRGVsZXRlZC4KKyAgICAgICAgKiBieXRlY29kZS9Qcm9ncmFt
Q29kZUJsb2NrLmg6CisgICAgICAgICogaW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIuY3BwOgorICAg
ICAgICAoSlNDOjpJbnRlcnByZXRlcjo6ZXhlY3V0ZSk6CisgICAgICAgICogcnVudGltZS9WTS5j
cHA6CisgICAgICAgIChKU0M6OlZNOjpWTSk6CisgICAgICAgICogcnVudGltZS9WTS5oOgorICAg
ICAgICAoSlNDOjpWTTo6Zm9yRWFjaENvZGVCbG9ja1NwYWNlKToKKwogMjAxOS0wMi0wMSAgWXVz
dWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIGZv
bGxvdy11cCBhZnRlciByMjQwODU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
Ynl0ZWNvZGUvQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9D
b2RlQmxvY2suY3BwCmluZGV4IDIyOGVjNTQyMjEzOTRiOGVhYzA3NDVmMWVkOTA5Y2ViZGI3Y2Iz
YzUuLmNkMTBhNDU4M2E3YTUwZjJlZjQ4NTNhMDlkYTNmYWY2M2Q1OWRlYWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwCkBAIC0xMzg1LDYgKzEzODUs
MTEgQEAgdm9pZCBDb2RlQmxvY2s6OmZpbmFsaXplVW5jb25kaXRpb25hbGx5KFZNJikKICAgICBW
TTo6U3BhY2VBbmRGaW5hbGl6ZXJTZXQ6OmZpbmFsaXplclNldEZvcigqc3Vic3BhY2UoKSkucmVt
b3ZlKHRoaXMpOwogfQogCit2b2lkIENvZGVCbG9jazo6ZGVzdHJveShKU0NlbGwqIGNlbGwpCit7
CisgICAgc3RhdGljX2Nhc3Q8Q29kZUJsb2NrKj4oY2VsbCktPn5Db2RlQmxvY2soKTsKK30KKwog
dm9pZCBDb2RlQmxvY2s6OmdldElDU3RhdHVzTWFwKGNvbnN0IENvbmN1cnJlbnRKU0xvY2tlciYs
IElDU3RhdHVzTWFwJiByZXN1bHQpCiB7CiAjaWYgRU5BQkxFKEpJVCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suaAppbmRleCA1ZmQ1ZjA3ZDFmYjY2ZTU2ODE1MTEy
ZWYwMDQzZTYzY2NjZDY0MzEyLi44ZDE3MWU0NTBkMTJjMGNiM2VkODZjZjBlNmQ0OWJkYzg5N2E2
ZjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2Nr
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5oCkBAIC0x
OTEsNiArMTkxLDcgQEAgY2xhc3MgQ29kZUJsb2NrIDogcHVibGljIEpTQ2VsbCB7CiAKICAgICBz
dGF0aWMgc2l6ZV90IGVzdGltYXRlZFNpemUoSlNDZWxsKiwgVk0mKTsKICAgICBzdGF0aWMgdm9p
ZCB2aXNpdENoaWxkcmVuKEpTQ2VsbCosIFNsb3RWaXNpdG9yJik7CisgICAgc3RhdGljIHZvaWQg
ZGVzdHJveShKU0NlbGwqKTsKICAgICB2b2lkIHZpc2l0Q2hpbGRyZW4oU2xvdFZpc2l0b3ImKTsK
ICAgICB2b2lkIGZpbmFsaXplVW5jb25kaXRpb25hbGx5KFZNJik7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNwcAppbmRleCAyZTkxZmM1YzM0
Mjk5Y2RhZWIzOGY3ZmNkMDkxMTk5ZGY1MzdiNGQ1Li5jZDgzN2JlOTI2ZjFiZTYxYmNiYWVhNjdm
OTU3MjU2NmExMTcwNTc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNv
ZGUvRXZhbENvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L0V2YWxDb2RlQmxvY2suY3BwCkBAIC0zNyw5ICszNyw0IEBAIGNvbnN0IENsYXNzSW5mbyBFdmFs
Q29kZUJsb2NrOjpzX2luZm8gPSB7CiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShFdmFsQ29kZUJs
b2NrKQogfTsKIAotdm9pZCBFdmFsQ29kZUJsb2NrOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKLXsK
LSAgICBzdGF0aWNfY2FzdDxFdmFsQ29kZUJsb2NrKj4oY2VsbCktPn5FdmFsQ29kZUJsb2NrKCk7
Ci19Ci0KIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2J5dGVjb2RlL0V2YWxDb2RlQmxvY2suaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9FdmFsQ29kZUJsb2NrLmgKaW5kZXggNjc3NWMzNjJiNWQ4MDUxNDlkZDUxYWMzMjEwZTAx
ZDc2NGZjOTNjNS4uNDBiYWIyNTEzOTMzODE3NmJkZjNiMTVjYjFhMWU0OTc4M2JlMDI1YSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V2YWxDb2RlQmxvY2suaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXZhbENvZGVCbG9jay5oCkBAIC00
MSw3ICs0MSw3IEBAIGNsYXNzIEV2YWxDb2RlQmxvY2sgZmluYWwgOiBwdWJsaWMgR2xvYmFsQ29k
ZUJsb2NrIHsKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZT4KICAgICBzdGF0aWMgSXNvU3Vic3BhY2Uq
IHN1YnNwYWNlRm9yKFZNJiB2bSkKICAgICB7Ci0gICAgICAgIHJldHVybiAmdm0uZXZhbENvZGVC
bG9ja1NwYWNlLnNwYWNlOworICAgICAgICByZXR1cm4gJnZtLmNvZGVCbG9ja1NwYWNlLnNwYWNl
OwogICAgIH0KIAogICAgIHN0YXRpYyBFdmFsQ29kZUJsb2NrKiBjcmVhdGUoVk0qIHZtLCBDb3B5
UGFyc2VkQmxvY2tUYWcsIEV2YWxDb2RlQmxvY2smIG90aGVyKQpAQCAtNjcsMTEgKzY3LDYgQEAg
Y2xhc3MgRXZhbENvZGVCbG9jayBmaW5hbCA6IHB1YmxpYyBHbG9iYWxDb2RlQmxvY2sgewogICAg
ICAgICByZXR1cm4gU3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBl
LCBUeXBlSW5mbyhDb2RlQmxvY2tUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSk7CiAgICAg
fQogCi0gICAgY29uc3QgSWRlbnRpZmllciYgdmFyaWFibGUodW5zaWduZWQgaW5kZXgpIHsgcmV0
dXJuIHVubGlua2VkRXZhbENvZGVCbG9jaygpLT52YXJpYWJsZShpbmRleCk7IH0KLSAgICB1bnNp
Z25lZCBudW1WYXJpYWJsZXMoKSB7IHJldHVybiB1bmxpbmtlZEV2YWxDb2RlQmxvY2soKS0+bnVt
VmFyaWFibGVzKCk7IH0KLSAgICBjb25zdCBJZGVudGlmaWVyJiBmdW5jdGlvbkhvaXN0aW5nQ2Fu
ZGlkYXRlKHVuc2lnbmVkIGluZGV4KSB7IHJldHVybiB1bmxpbmtlZEV2YWxDb2RlQmxvY2soKS0+
ZnVuY3Rpb25Ib2lzdGluZ0NhbmRpZGF0ZShpbmRleCk7IH0KLSAgICB1bnNpZ25lZCBudW1GdW5j
dGlvbkhvaXN0aW5nQ2FuZGlkYXRlcygpIHsgcmV0dXJuIHVubGlua2VkRXZhbENvZGVCbG9jaygp
LT5udW1GdW5jdGlvbkhvaXN0aW5nQ2FuZGlkYXRlcygpOyB9Ci0gICAgCiBwcml2YXRlOgogICAg
IEV2YWxDb2RlQmxvY2soVk0qIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgQ29weVBhcnNlZEJs
b2NrVGFnLCBFdmFsQ29kZUJsb2NrJiBvdGhlcikKICAgICAgICAgOiBHbG9iYWxDb2RlQmxvY2so
dm0sIHN0cnVjdHVyZSwgQ29weVBhcnNlZEJsb2NrLCBvdGhlcikKQEAgLTgzLDExICs3OCw3IEBA
IGNsYXNzIEV2YWxDb2RlQmxvY2sgZmluYWwgOiBwdWJsaWMgR2xvYmFsQ29kZUJsb2NrIHsKICAg
ICAgICAgOiBHbG9iYWxDb2RlQmxvY2sodm0sIHN0cnVjdHVyZSwgb3duZXJFeGVjdXRhYmxlLCB1
bmxpbmtlZENvZGVCbG9jaywgc2NvcGUsIFdURk1vdmUoc291cmNlUHJvdmlkZXIpLCAwLCAxKQog
ICAgIHsKICAgICB9Ci0gICAgCi0gICAgc3RhdGljIHZvaWQgZGVzdHJveShKU0NlbGwqKTsKLQot
cHJpdmF0ZToKLSAgICBVbmxpbmtlZEV2YWxDb2RlQmxvY2sqIHVubGlua2VkRXZhbENvZGVCbG9j
aygpIGNvbnN0IHsgcmV0dXJuIGpzQ2FzdDxVbmxpbmtlZEV2YWxDb2RlQmxvY2sqPih1bmxpbmtl
ZENvZGVCbG9jaygpKTsgfQogfTsKK3N0YXRpY19hc3NlcnQoc2l6ZW9mKEV2YWxDb2RlQmxvY2sp
ID09IHNpemVvZihDb2RlQmxvY2spLCAiU3ViY2xhc3NlcyBvZiBDb2RlQmxvY2sgc2hvdWxkIGJl
IHRoZSBzYW1lIHNpemUgdG8gc2hhcmUgSXNvU3Vic3BhY2UiKTsKIAogfSAvLyBuYW1lc3BhY2Ug
SlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRnVuY3Rpb25D
b2RlQmxvY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Z1bmN0aW9uQ29k
ZUJsb2NrLmNwcAppbmRleCBlODdmNTA0MjU2Njc5MDRlMGNkOWQ1MDEzNjhmYWM3OWQ3MzBkMWQ0
Li5hMWRkNTQwODg3ZmU4NjM3NDY3MzY1NGU3NmVkYTI1MDE5NTM5OTgzIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRnVuY3Rpb25Db2RlQmxvY2suY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9GdW5jdGlvbkNvZGVCbG9jay5jcHAKQEAg
LTM3LDkgKzM3LDQgQEAgY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29kZUJsb2NrOjpzX2luZm8g
PSB7CiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvbkNvZGVCbG9jaykKIH07CiAKLXZv
aWQgRnVuY3Rpb25Db2RlQmxvY2s6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQotewotICAgIHN0YXRp
Y19jYXN0PEZ1bmN0aW9uQ29kZUJsb2NrKj4oY2VsbCktPn5GdW5jdGlvbkNvZGVCbG9jaygpOwot
fQotCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9GdW5jdGlvbkNvZGVCbG9jay5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL0Z1bmN0aW9uQ29kZUJsb2NrLmgKaW5kZXggNmY1MDQyMjg4MmZmYWY1NTM2MGJkMTJm
MzI1YTJkMjNiZmRhNDgyNy4uNTU1NDBiZDBiMTk5YWUyMjlkY2ZiYzhhMWExNGY4OWY5MGNlZmY2
MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Z1bmN0aW9uQ29k
ZUJsb2NrLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Z1bmN0aW9uQ29k
ZUJsb2NrLmgKQEAgLTQyLDcgKzQyLDcgQEAgY2xhc3MgRnVuY3Rpb25Db2RlQmxvY2sgZmluYWwg
OiBwdWJsaWMgQ29kZUJsb2NrIHsKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZT4KICAgICBzdGF0aWMg
SXNvU3Vic3BhY2UqIHN1YnNwYWNlRm9yKFZNJiB2bSkKICAgICB7Ci0gICAgICAgIHJldHVybiAm
dm0uZnVuY3Rpb25Db2RlQmxvY2tTcGFjZS5zcGFjZTsKKyAgICAgICAgcmV0dXJuICZ2bS5jb2Rl
QmxvY2tTcGFjZS5zcGFjZTsKICAgICB9CiAKICAgICBzdGF0aWMgRnVuY3Rpb25Db2RlQmxvY2sq
IGNyZWF0ZShWTSogdm0sIENvcHlQYXJzZWRCbG9ja1RhZywgRnVuY3Rpb25Db2RlQmxvY2smIG90
aGVyKQpAQCAtNzksOCArNzksNyBAQCBjbGFzcyBGdW5jdGlvbkNvZGVCbG9jayBmaW5hbCA6IHB1
YmxpYyBDb2RlQmxvY2sgewogICAgICAgICA6IENvZGVCbG9jayh2bSwgc3RydWN0dXJlLCBvd25l
ckV4ZWN1dGFibGUsIHVubGlua2VkQ29kZUJsb2NrLCBzY29wZSwgV1RGTW92ZShzb3VyY2VQcm92
aWRlciksIHNvdXJjZU9mZnNldCwgZmlyc3RMaW5lQ29sdW1uT2Zmc2V0KQogICAgIHsKICAgICB9
Ci0gICAgCi0gICAgc3RhdGljIHZvaWQgZGVzdHJveShKU0NlbGwqKTsKIH07CitzdGF0aWNfYXNz
ZXJ0KHNpemVvZihGdW5jdGlvbkNvZGVCbG9jaykgPT0gc2l6ZW9mKENvZGVCbG9jayksICJTdWJj
bGFzc2VzIG9mIENvZGVCbG9jayBzaG91bGQgYmUgdGhlIHNhbWUgc2l6ZSB0byBzaGFyZSBJc29T
dWJzcGFjZSIpOwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ieXRlY29kZS9HbG9iYWxDb2RlQmxvY2suaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ieXRlY29kZS9HbG9iYWxDb2RlQmxvY2suaAppbmRleCBhYTI5Y2NhMzMyNDM1NzNjMjcw
MGUyODc4NjZlMTliOTU4NGEyYmJkLi5hN2EzMDY3Yjg2N2M3NzM5NGM2ZGE1ZjdkN2MyYzQwN2Jk
ODhmMDE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvR2xvYmFs
Q29kZUJsb2NrLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0dsb2JhbENv
ZGVCbG9jay5oCkBAIC01MCw1ICs1MCw2IEBAIGNsYXNzIEdsb2JhbENvZGVCbG9jayA6IHB1Ymxp
YyBDb2RlQmxvY2sgewogICAgIHsKICAgICB9CiB9Oworc3RhdGljX2Fzc2VydChzaXplb2YoR2xv
YmFsQ29kZUJsb2NrKSA9PSBzaXplb2YoQ29kZUJsb2NrKSwgIlN1YmNsYXNzZXMgb2YgQ29kZUJs
b2NrIHNob3VsZCBiZSB0aGUgc2FtZSBzaXplIHRvIHNoYXJlIElzb1N1YnNwYWNlIik7CiAKIH0g
Ly8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVj
b2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwCmluZGV4IGE5Zjc2YTJmNmY1OGUxY2U5
MGQ5OTVjODIzNmFkNjc5YmVmYmU4MDMuLjBlZWE0NWM4MjhlYTZiYTE3ZDdkZDQyODllOWQ0ODY2
NTQ1ZjdlNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Nb2R1
bGVQcm9ncmFtQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNv
ZGUvTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKQEAgLTM3LDkgKzM3LDQgQEAgY29uc3QgQ2xh
c3NJbmZvIE1vZHVsZVByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsKICAgICBDUkVBVEVfTUVU
SE9EX1RBQkxFKE1vZHVsZVByb2dyYW1Db2RlQmxvY2spCiB9OwogCi12b2lkIE1vZHVsZVByb2dy
YW1Db2RlQmxvY2s6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQotewotICAgIHN0YXRpY19jYXN0PE1v
ZHVsZVByb2dyYW1Db2RlQmxvY2sqPihjZWxsKS0+fk1vZHVsZVByb2dyYW1Db2RlQmxvY2soKTsK
LX0KLQogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2J5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suaAppbmRleCBhZTk5Zjc3ZDViNDM2
ODIwMDNjZTRiMDU3ZDk0OGM0M2FlMTU2MzUwLi5mNzQ3ODRlYmRmZDM0ZWI0MWFkOTllNWEzNzgw
ODZlYjE4YmI2ODk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
TW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmgKQEAgLTQyLDcgKzQyLDcgQEAgY2xhc3MgTW9k
dWxlUHJvZ3JhbUNvZGVCbG9jayBmaW5hbCA6IHB1YmxpYyBHbG9iYWxDb2RlQmxvY2sgewogICAg
IHRlbXBsYXRlPHR5cGVuYW1lPgogICAgIHN0YXRpYyBJc29TdWJzcGFjZSogc3Vic3BhY2VGb3Io
Vk0mIHZtKQogICAgIHsKLSAgICAgICAgcmV0dXJuICZ2bS5tb2R1bGVQcm9ncmFtQ29kZUJsb2Nr
U3BhY2Uuc3BhY2U7CisgICAgICAgIHJldHVybiAmdm0uY29kZUJsb2NrU3BhY2Uuc3BhY2U7CiAg
ICAgfQogCiAgICAgc3RhdGljIE1vZHVsZVByb2dyYW1Db2RlQmxvY2sqIGNyZWF0ZShWTSogdm0s
IENvcHlQYXJzZWRCbG9ja1RhZywgTW9kdWxlUHJvZ3JhbUNvZGVCbG9jayYgb3RoZXIpCkBAIC03
OSw4ICs3OSw3IEBAIGNsYXNzIE1vZHVsZVByb2dyYW1Db2RlQmxvY2sgZmluYWwgOiBwdWJsaWMg
R2xvYmFsQ29kZUJsb2NrIHsKICAgICAgICAgOiBHbG9iYWxDb2RlQmxvY2sodm0sIHN0cnVjdHVy
ZSwgb3duZXJFeGVjdXRhYmxlLCB1bmxpbmtlZENvZGVCbG9jaywgc2NvcGUsIFdURk1vdmUoc291
cmNlUHJvdmlkZXIpLCAwLCBmaXJzdExpbmVDb2x1bW5PZmZzZXQpCiAgICAgewogICAgIH0KLQot
ICAgIHN0YXRpYyB2b2lkIGRlc3Ryb3koSlNDZWxsKik7CiB9Oworc3RhdGljX2Fzc2VydChzaXpl
b2YoTW9kdWxlUHJvZ3JhbUNvZGVCbG9jaykgPT0gc2l6ZW9mKENvZGVCbG9jayksICJTdWJjbGFz
c2VzIG9mIENvZGVCbG9jayBzaG91bGQgYmUgdGhlIHNhbWUgc2l6ZSB0byBzaGFyZSBJc29TdWJz
cGFjZSIpOwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29kZS9Qcm9ncmFtQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ieXRlY29kZS9Qcm9ncmFtQ29kZUJsb2NrLmNwcAppbmRleCA3NDg1NTRlMGM5ZTE5MDRj
ODgyNWIyOGZiNWZkZmZjZjUyYWM1ZWVlLi42MDJhODYxMTQ2NDhlZjVmZDMwZWZmM2U0M2I2ZGM1
YTlmZDE2ZDI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvUHJv
Z3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1By
b2dyYW1Db2RlQmxvY2suY3BwCkBAIC0zNyw5ICszNyw0IEBAIGNvbnN0IENsYXNzSW5mbyBQcm9n
cmFtQ29kZUJsb2NrOjpzX2luZm8gPSB7CiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9ncmFt
Q29kZUJsb2NrKQogfTsKIAotdm9pZCBQcm9ncmFtQ29kZUJsb2NrOjpkZXN0cm95KEpTQ2VsbCog
Y2VsbCkKLXsKLSAgICBzdGF0aWNfY2FzdDxQcm9ncmFtQ29kZUJsb2NrKj4oY2VsbCktPn5Qcm9n
cmFtQ29kZUJsb2NrKCk7Ci19Ci0KIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Qcm9ncmFtQ29kZUJsb2NrLmgKaW5kZXggOGVhOWI0Y2Fh
MDQ0Mzk4MzFlYzE3YjFhY2RiZjhjOGQxZjg0ZThhZS4uYmU4OWI2ZGY0OTViN2YzZTI1ZWQzNDU3
NDUwNzAzYjA3M2IwZmE4MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVj
b2RlL1Byb2dyYW1Db2RlQmxvY2suaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNv
ZGUvUHJvZ3JhbUNvZGVCbG9jay5oCkBAIC00Miw3ICs0Miw3IEBAIGNsYXNzIFByb2dyYW1Db2Rl
QmxvY2sgZmluYWwgOiBwdWJsaWMgR2xvYmFsQ29kZUJsb2NrIHsKICAgICB0ZW1wbGF0ZTx0eXBl
bmFtZT4KICAgICBzdGF0aWMgSXNvU3Vic3BhY2UqIHN1YnNwYWNlRm9yKFZNJiB2bSkKICAgICB7
Ci0gICAgICAgIHJldHVybiAmdm0ucHJvZ3JhbUNvZGVCbG9ja1NwYWNlLnNwYWNlOworICAgICAg
ICByZXR1cm4gJnZtLmNvZGVCbG9ja1NwYWNlLnNwYWNlOwogICAgIH0KIAogICAgIHN0YXRpYyBQ
cm9ncmFtQ29kZUJsb2NrKiBjcmVhdGUoVk0qIHZtLCBDb3B5UGFyc2VkQmxvY2tUYWcsIFByb2dy
YW1Db2RlQmxvY2smIG90aGVyKQpAQCAtNzksOCArNzksNyBAQCBjbGFzcyBQcm9ncmFtQ29kZUJs
b2NrIGZpbmFsIDogcHVibGljIEdsb2JhbENvZGVCbG9jayB7CiAgICAgICAgIDogR2xvYmFsQ29k
ZUJsb2NrKHZtLCBzdHJ1Y3R1cmUsIG93bmVyRXhlY3V0YWJsZSwgdW5saW5rZWRDb2RlQmxvY2ss
IHNjb3BlLCBXVEZNb3ZlKHNvdXJjZVByb3ZpZGVyKSwgMCwgZmlyc3RMaW5lQ29sdW1uT2Zmc2V0
KQogICAgIHsKICAgICB9Ci0KLSAgICBzdGF0aWMgdm9pZCBkZXN0cm95KEpTQ2VsbCopOwogfTsK
K3N0YXRpY19hc3NlcnQoc2l6ZW9mKFByb2dyYW1Db2RlQmxvY2spID09IHNpemVvZihDb2RlQmxv
Y2spLCAiU3ViY2xhc3NlcyBvZiBDb2RlQmxvY2sgc2hvdWxkIGJlIHRoZSBzYW1lIHNpemUgdG8g
c2hhcmUgSXNvU3Vic3BhY2UiKTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0ludGVycHJldGVyLmNwcAppbmRleCA4ZTgyNTYw
MjhiMTAzN2RiMmIzMDdhY2QxN2QwNWI3ZjM1OGY0N2QwLi4wY2FiZTg0NDZhYWU2MjA1OWIxNDVh
MjRkODVhZjVkOTEyMWQxYWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50
ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRl
cnByZXRlci9JbnRlcnByZXRlci5jcHAKQEAgLTEwNDQsMTIgKzEwNDQsMTQgQEAgSlNWYWx1ZSBJ
bnRlcnByZXRlcjo6ZXhlY3V0ZShFdmFsRXhlY3V0YWJsZSogZXZhbCwgQ2FsbEZyYW1lKiBjYWxs
RnJhbWUsIEpTVmFsdWUKICAgICAgICAgICAgIHJldHVybiBjaGVja2VkUmV0dXJuKGNvbXBpbGVF
cnJvcik7CiAgICAgICAgIGNvZGVCbG9jayA9IGpzQ2FzdDxFdmFsQ29kZUJsb2NrKj4odGVtcENv
ZGVCbG9jayk7CiAgICAgfQorICAgIFVubGlua2VkRXZhbENvZGVCbG9jayogdW5saW5rZWRDb2Rl
QmxvY2sgPSBqc0R5bmFtaWNDYXN0PFVubGlua2VkRXZhbENvZGVCbG9jayo+KHZtLCBjb2RlQmxv
Y2stPnVubGlua2VkQ29kZUJsb2NrKCkpOworICAgIFJFTEVBU0VfQVNTRVJUKHVubGlua2VkQ29k
ZUJsb2NrKTsKIAogICAgIC8vIFdlIGNhbid0IGRlY2xhcmUgYSAidmFyIi8iZnVuY3Rpb24iIHRo
YXQgb3ZlcndyaXRlcyBhIGdsb2JhbCAibGV0Ii8iY29uc3QiLyJjbGFzcyIgaW4gYSBzbG9wcHkt
bW9kZSBldmFsLgogICAgIGlmICh2YXJpYWJsZU9iamVjdC0+aXNHbG9iYWxPYmplY3QoKSAmJiAh
ZXZhbC0+aXNTdHJpY3RNb2RlKCkgJiYgKG51bVZhcmlhYmxlcyB8fCBudW1Ub3BMZXZlbEZ1bmN0
aW9uRGVjbHMpKSB7CiAgICAgICAgIEpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50KiBnbG9iYWxM
ZXhpY2FsRW52aXJvbm1lbnQgPSBqc0Nhc3Q8SlNHbG9iYWxPYmplY3QqPih2YXJpYWJsZU9iamVj
dCktPmdsb2JhbExleGljYWxFbnZpcm9ubWVudCgpOwogICAgICAgICBmb3IgKHVuc2lnbmVkIGkg
PSAwOyBpIDwgbnVtVmFyaWFibGVzOyArK2kpIHsKLSAgICAgICAgICAgIGNvbnN0IElkZW50aWZp
ZXImIGlkZW50ID0gY29kZUJsb2NrLT52YXJpYWJsZShpKTsKKyAgICAgICAgICAgIGNvbnN0IElk
ZW50aWZpZXImIGlkZW50ID0gdW5saW5rZWRDb2RlQmxvY2stPnZhcmlhYmxlKGkpOwogICAgICAg
ICAgICAgUHJvcGVydHlTbG90IHNsb3QoZ2xvYmFsTGV4aWNhbEVudmlyb25tZW50LCBQcm9wZXJ0
eVNsb3Q6OkludGVybmFsTWV0aG9kVHlwZTo6Vk1JbnF1aXJ5KTsKICAgICAgICAgICAgIGlmIChK
U0dsb2JhbExleGljYWxFbnZpcm9ubWVudDo6Z2V0T3duUHJvcGVydHlTbG90KGdsb2JhbExleGlj
YWxFbnZpcm9ubWVudCwgY2FsbEZyYW1lLCBpZGVudCwgc2xvdCkpIHsKICAgICAgICAgICAgICAg
ICByZXR1cm4gY2hlY2tlZFJldHVybih0aHJvd1R5cGVFcnJvcihjYWxsRnJhbWUsIHRocm93U2Nv
cGUsIG1ha2VTdHJpbmcoIkNhbid0IGNyZWF0ZSBkdXBsaWNhdGUgZ2xvYmFsIHZhcmlhYmxlIGlu
IGV2YWw6ICciLCBTdHJpbmcoaWRlbnQuaW1wbCgpKSwgIiciKSkpOwpAQCAtMTA3NCw3ICsxMDc2
LDcgQEAgSlNWYWx1ZSBJbnRlcnByZXRlcjo6ZXhlY3V0ZShFdmFsRXhlY3V0YWJsZSogZXZhbCwg
Q2FsbEZyYW1lKiBjYWxsRnJhbWUsIEpTVmFsdWUKICAgICAgICAgICAgIHZhcmlhYmxlT2JqZWN0
LT5nbG9iYWxPYmplY3Qodm0pLT52YXJJbmplY3Rpb25XYXRjaHBvaW50KCktPmZpcmVBbGwodm0s
ICJFeGVjdXRlZCBldmFsLCBmaXJlZCBWYXJJbmplY3Rpb24gd2F0Y2hwb2ludCIpOwogCiAgICAg
ICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1WYXJpYWJsZXM7ICsraSkgewotICAgICAg
ICAgICAgY29uc3QgSWRlbnRpZmllciYgaWRlbnQgPSBjb2RlQmxvY2stPnZhcmlhYmxlKGkpOwor
ICAgICAgICAgICAgY29uc3QgSWRlbnRpZmllciYgaWRlbnQgPSB1bmxpbmtlZENvZGVCbG9jay0+
dmFyaWFibGUoaSk7CiAgICAgICAgICAgICBib29sIGhhc1Byb3BlcnR5ID0gdmFyaWFibGVPYmpl
Y3QtPmhhc1Byb3BlcnR5KGNhbGxGcmFtZSwgaWRlbnQpOwogICAgICAgICAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTih0aHJvd1Njb3BlLCBjaGVja2VkUmV0dXJuKHRocm93U2NvcGUuZXhjZXB0aW9u
KCkpKTsKICAgICAgICAgICAgIGlmICghaGFzUHJvcGVydHkpIHsKQEAgLTExMDgsNyArMTExMCw3
IEBAIEpTVmFsdWUgSW50ZXJwcmV0ZXI6OmV4ZWN1dGUoRXZhbEV4ZWN1dGFibGUqIGV2YWwsIENh
bGxGcmFtZSogY2FsbEZyYW1lLCBKU1ZhbHVlCiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAg
IGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1GdW5jdGlvbkhvaXN0aW5nQ2FuZGlkYXRlczsg
KytpKSB7Ci0gICAgICAgICAgICAgICAgY29uc3QgSWRlbnRpZmllciYgaWRlbnQgPSBjb2RlQmxv
Y2stPmZ1bmN0aW9uSG9pc3RpbmdDYW5kaWRhdGUoaSk7CisgICAgICAgICAgICAgICAgY29uc3Qg
SWRlbnRpZmllciYgaWRlbnQgPSB1bmxpbmtlZENvZGVCbG9jay0+ZnVuY3Rpb25Ib2lzdGluZ0Nh
bmRpZGF0ZShpKTsKICAgICAgICAgICAgICAgICBKU1ZhbHVlIHJlc29sdmVkU2NvcGUgPSBKU1Nj
b3BlOjpyZXNvbHZlU2NvcGVGb3JIb2lzdGluZ0Z1bmNEZWNsSW5FdmFsKGNhbGxGcmFtZSwgc2Nv
cGUsIGlkZW50KTsKICAgICAgICAgICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHRocm93U2Nv
cGUsIGNoZWNrZWRSZXR1cm4odGhyb3dTY29wZS5leGNlcHRpb24oKSkpOwogICAgICAgICAgICAg
ICAgIGlmICghcmVzb2x2ZWRTY29wZS5pc1VuZGVmaW5lZCgpKSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9WTS5jcHAKaW5kZXggY2I0MDBhMTdmNjUzMDFhYWUwYTU2ZDRmYWZjNzNmMjMwNDZj
ZmQ4MC4uZmE2YTNmYmQ3OTg2MWE0YWVjMDFhNTlmYTZjYTlkYjhlOTFhMjY1ZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNwcApAQCAtMzE3LDEwICszMTcsNyBAQCBWTTo6Vk0oVk1U
eXBlIHZtVHlwZSwgSGVhcFR5cGUgaGVhcFR5cGUpCiAgICAgLCBleGVjdXRhYmxlVG9Db2RlQmxv
Y2tFZGdlc1dpdGhDb25zdHJhaW50cyhleGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlU3BhY2UpCiAg
ICAgLCBleGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlc1dpdGhGaW5hbGl6ZXJzKGV4ZWN1dGFibGVU
b0NvZGVCbG9ja0VkZ2VTcGFjZSkKICAgICAsIGluZmVycmVkVmFsdWVzV2l0aEZpbmFsaXplcnMo
aW5mZXJyZWRWYWx1ZVNwYWNlKQotICAgICwgZXZhbENvZGVCbG9ja1NwYWNlIElTT19TVUJTUEFD
RV9JTklUKGhlYXAsIGRlc3RydWN0aWJsZUNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIEV2YWxDb2Rl
QmxvY2spCi0gICAgLCBmdW5jdGlvbkNvZGVCbG9ja1NwYWNlIElTT19TVUJTUEFDRV9JTklUKGhl
YXAsIGRlc3RydWN0aWJsZUNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIEZ1bmN0aW9uQ29kZUJsb2Nr
KQotICAgICwgbW9kdWxlUHJvZ3JhbUNvZGVCbG9ja1NwYWNlIElTT19TVUJTUEFDRV9JTklUKGhl
YXAsIGRlc3RydWN0aWJsZUNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIE1vZHVsZVByb2dyYW1Db2Rl
QmxvY2spCi0gICAgLCBwcm9ncmFtQ29kZUJsb2NrU3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQoaGVh
cCwgZGVzdHJ1Y3RpYmxlQ2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwgUHJvZ3JhbUNvZGVCbG9jaykK
KyAgICAsIGNvZGVCbG9ja1NwYWNlIElTT19TVUJTUEFDRV9JTklUKGhlYXAsIGRlc3RydWN0aWJs
ZUNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIENvZGVCbG9jaykKICAgICAsIGRpcmVjdEV2YWxFeGVj
dXRhYmxlU3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQoaGVhcCwgZGVzdHJ1Y3RpYmxlQ2VsbEhlYXBD
ZWxsVHlwZS5nZXQoKSwgRGlyZWN0RXZhbEV4ZWN1dGFibGUpCiAgICAgLCBmdW5jdGlvbkV4ZWN1
dGFibGVTcGFjZSBJU09fU1VCU1BBQ0VfSU5JVChoZWFwLCBkZXN0cnVjdGlibGVDZWxsSGVhcENl
bGxUeXBlLmdldCgpLCBGdW5jdGlvbkV4ZWN1dGFibGUpCiAgICAgLCBpbmRpcmVjdEV2YWxFeGVj
dXRhYmxlU3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQoaGVhcCwgZGVzdHJ1Y3RpYmxlQ2VsbEhlYXBD
ZWxsVHlwZS5nZXQoKSwgSW5kaXJlY3RFdmFsRXhlY3V0YWJsZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9WTS5oCmluZGV4IGI0MzVlMDI4ZDQzZjk1NTA5MmQ4M2I0N2I4MmJmOGFmYTBhZDExOGMu
LjRkNmYyYzYxNWMyNjYyZDY0MjM1MGQ0NjNkMDllZTYzODc5OWRlMjUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVk0uaApAQCAtNDE4LDIwICs0MTgsMTQgQEAgY2xhc3MgVk0gOiBwdWJsaWMg
VGhyZWFkU2FmZVJlZkNvdW50ZWQ8Vk0+LCBwdWJsaWMgRG91Ymx5TGlua2VkTGlzdE5vZGU8Vk0+
IHsKICAgICAgICAgfQogICAgIH07CiAgICAgCi0gICAgU3BhY2VBbmRGaW5hbGl6ZXJTZXQgZXZh
bENvZGVCbG9ja1NwYWNlOwotICAgIFNwYWNlQW5kRmluYWxpemVyU2V0IGZ1bmN0aW9uQ29kZUJs
b2NrU3BhY2U7Ci0gICAgU3BhY2VBbmRGaW5hbGl6ZXJTZXQgbW9kdWxlUHJvZ3JhbUNvZGVCbG9j
a1NwYWNlOwotICAgIFNwYWNlQW5kRmluYWxpemVyU2V0IHByb2dyYW1Db2RlQmxvY2tTcGFjZTsK
KyAgICBTcGFjZUFuZEZpbmFsaXplclNldCBjb2RlQmxvY2tTcGFjZTsKIAogICAgIHRlbXBsYXRl
PHR5cGVuYW1lIEZ1bmM+CiAgICAgdm9pZCBmb3JFYWNoQ29kZUJsb2NrU3BhY2UoY29uc3QgRnVu
YyYgZnVuYykKICAgICB7CiAgICAgICAgIC8vIFRoaXMgc2hvdWxkIG5vdCBpbmNsdWRlIHdlYkFz
c2VtYmx5Q29kZUJsb2NrU3BhY2UgYmVjYXVzZSB0aGlzIGlzIGFib3V0IHN1YnNjbGFzc2VzIG9m
CiAgICAgICAgIC8vIEpTQzo6Q29kZUJsb2NrLgotICAgICAgICBmdW5jKGV2YWxDb2RlQmxvY2tT
cGFjZSk7Ci0gICAgICAgIGZ1bmMoZnVuY3Rpb25Db2RlQmxvY2tTcGFjZSk7Ci0gICAgICAgIGZ1
bmMobW9kdWxlUHJvZ3JhbUNvZGVCbG9ja1NwYWNlKTsKLSAgICAgICAgZnVuYyhwcm9ncmFtQ29k
ZUJsb2NrU3BhY2UpOworICAgICAgICBmdW5jKGNvZGVCbG9ja1NwYWNlKTsKICAgICB9CiAKICAg
ICBzdHJ1Y3QgU2NyaXB0RXhlY3V0YWJsZVNwYWNlQW5kU2V0IHsK
</data>
<flag name="review"
          id="377580"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>