<?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>204067</bug_id>
          
          <creation_ts>2019-11-11 06:03:44 -0800</creation_ts>
          <short_desc>RegExpBuiltinExec should create &quot;groups&quot; property unconditionally</short_desc>
          <delta_ts>2019-11-15 16:59:27 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>Minor</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>202475</blocked>
    
    <blocked>204264</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Shvayka">ashvayka</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ross.kirsling</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>1589177</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-11-11 06:03:44 -0800</bug_when>
    <thetext>Test case:
  /\d/.exec(&quot;1&quot;).hasOwnProperty(&quot;groups&quot;)

Expected:
  true

Actual:
  false

Also, &quot;groups&quot; object should have `null` [[Prototype]].

Discussion: https://github.com/tc39/proposal-regexp-named-groups/issues/34
ECMA262: https://tc39.es/ecma262/#sec-regexpbuiltinexec (step 24)
Test262:
  https://test262.report/browse/built-ins/RegExp/named-groups/groups-object-undefined.js
  https://test262.report/browse/built-ins/RegExp/named-groups/groups-object.js</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589181</commentid>
    <comment_count>1</comment_count>
      <attachid>383266</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-11-11 06:45:43 -0800</bug_when>
    <thetext>Created attachment 383266
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589184</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2019-11-11 07:11:28 -0800</bug_when>
    <thetext>I am adding this bug as a blocker of RegExp Match Indices proposal (https://bugs.webkit.org/show_bug.cgi?id=202475), because &quot;indices&quot; property should be created after &quot;groups&quot; (order is observable), and the way we currently add properties in RegExpMatchesArray.cpp/createStructureImpl will make that unnecessarily tricky.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589607</commentid>
    <comment_count>3</comment_count>
      <attachid>383266</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-11-12 13:26:24 -0800</bug_when>
    <thetext>Comment on attachment 383266
Patch

Nice!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589628</commentid>
    <comment_count>4</comment_count>
      <attachid>383266</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-11-12 14:09:44 -0800</bug_when>
    <thetext>Comment on attachment 383266
Patch

Clearing flags on attachment: 383266

Committed r252374: &lt;https://trac.webkit.org/changeset/252374&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589629</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-11-12 14:09:45 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589630</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-11-12 14:10:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/57130089&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383266</attachid>
            <date>2019-11-11 06:45:43 -0800</date>
            <delta_ts>2019-11-12 14:09:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-204067-20191111164542.patch</filename>
            <type>text/plain</type>
            <size>15824</size>
            <attacher name="Alexey Shvayka">ashvayka</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNTIzMjEpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEyIEBACisyMDE5LTExLTExICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBSZWdFeHBCdWlsdGluRXhlYyBzaG91bGQgY3JlYXRlICJn
cm91cHMiIHByb3BlcnR5IHVuY29uZGl0aW9uYWxseQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA0MDY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sOiBNYXJr
IDQgdGVzdCBjYXNlcyBhcyBwYXNzaW5nLgorCiAyMDE5LTExLTA4ICBHdWlsbGF1bWUgRW1vbnQg
IDxndWlqZW1vbnRAaWdhbGlhLmNvbT4KIAogICAgICAgICBUZW1wb3JhcmlseSBza2lwIGFub3Ro
ZXIgYnJva2VuIHRlc3Qgb24gTUlQUyBkdWUgdG8gT1NSIGV4aXQgdG8gTExJbnQKSW5kZXg6IEpT
VGVzdHMvdGVzdDI2Mi9leHBlY3RhdGlvbnMueWFtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKU1Rlc3RzL3Rl
c3QyNjIvZXhwZWN0YXRpb25zLnlhbWwJKHJldmlzaW9uIDI1MjMxMykKKysrIEpTVGVzdHMvdGVz
dDI2Mi9leHBlY3RhdGlvbnMueWFtbAkod29ya2luZyBjb3B5KQpAQCAtMTE4MywxMiArMTE4Myw2
IEBAIHRlc3QvYnVpbHQtaW5zL1JlZ0V4cC9uYW1lZC1ncm91cHMvZ3JvdXAKIHRlc3QvYnVpbHQt
aW5zL1JlZ0V4cC9uYW1lZC1ncm91cHMvZ3JvdXBzLW9iamVjdC1zdWJjbGFzcy5qczoKICAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMOCwqtiw4LCuywgw4LCqyQ8
YT7DgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0
ZWQgU2FtZVZhbHVlKMOCwqtiw4LCuywgw4LCqyQ8YT7DgsK7KSB0byBiZSB0cnVlJwotdGVzdC9i
dWlsdC1pbnMvUmVnRXhwL25hbWVkLWdyb3Vwcy9ncm91cHMtb2JqZWN0LXVuZGVmaW5lZC5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgdHJ1ZSBidXQgZ290IGZhbHNlJwot
ICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgdHJ1ZSBidXQgZ290IGZhbHNl
JwotdGVzdC9idWlsdC1pbnMvUmVnRXhwL25hbWVkLWdyb3Vwcy9ncm91cHMtb2JqZWN0LmpzOgot
ICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCq251bGzDgsK7
LCDDgsKrW29iamVjdCBPYmplY3Rdw4LCuykgdG8gYmUgdHJ1ZScKLSAgc3RyaWN0IG1vZGU6ICdU
ZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjDgsKrbnVsbMOCwrssIMOCwqtbb2JqZWN0
IE9iamVjdF3DgsK7KSB0byBiZSB0cnVlJwogdGVzdC9idWlsdC1pbnMvUmVnRXhwL25hbWVkLWdy
b3Vwcy9zdHJpbmctcmVwbGFjZS1ub2NhcHR1cmVzLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUow4LCqyQ8c25kPiQ8ZnN0PmNkw4LCuywgw4LCqyQ8JDxm
c3Q+Y2TDgsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMOCwqskPHNuZD4kPGZzdD5jZMOCwrssIMOCwqskPCQ8ZnN0PmNkw4LC
uykgdG8gYmUgdHJ1ZScKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjUy
MzEzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDM4IEBACisyMDE5LTExLTExICBBbGV4ZXkgU2h2YXlrYSAgPHNodmFpa2FsZXNo
QGdtYWlsLmNvbT4KKworICAgICAgICBSZWdFeHBCdWlsdGluRXhlYyBzaG91bGQgY3JlYXRlICJn
cm91cHMiIHByb3BlcnR5IHVuY29uZGl0aW9uYWxseQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA0MDY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQWZ0ZXIgUmVnRXhwIG5hbWVkIGNhcHR1cmUgZ3JvdXBz
IHdlcmUgaW5pdGlhbGx5IGltcGxlbWVudGVkIGluIEpTQywgdGhlIHNwZWMgd2FzIGNoYW5nZWQK
KyAgICAgICAgdG8gdW5jb25kaXRpb25hbGx5IGNyZWF0ZSAiZ3JvdXBzIiBwcm9wZXJ0eS4KKyAg
ICAgICAgKGh0dHBzOi8vZ2l0aHViLmNvbS90YzM5L3Byb3Bvc2FsLXJlZ2V4cC1uYW1lZC1ncm91
cHMvaXNzdWVzLzM0KQorCisgICAgICAgIFRoaXMgcGF0Y2ggaW1wbGVtZW50cyB0aGUgY2hhbmdl
ICh0aGF0IHdhcyBzaGlwcGVkIGJ5IFY4KSwgcmVkdWNpbmcgbnVtYmVyIG9mIHN0cnVjdHVyZXMK
KyAgICAgICAgd2UgdXNlIGZvciBSZWdFeHBNYXRjaGVzQXJyYXksIGFuZCBhbHNvIHNldHMgW1tQ
cm90b3R5cGVdXSBvZiAiZ3JvdXBzIiBvYmplY3QgdG8gYG51bGxgLgorICAgICAgICAoc3RlcCAy
NCBvZiBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLXJlZ2V4cGJ1aWx0aW5leGVjKQorCisg
ICAgICAgICogZGZnL0RGR0Fic3RyYWN0SW50ZXJwcmV0ZXJJbmxpbmVzLmg6CisgICAgICAgIChK
U0M6OkRGRzo6QWJzdHJhY3RJbnRlcnByZXRlcjxBYnN0cmFjdFN0YXRlVHlwZT46OmV4ZWN1dGVF
ZmZlY3RzKToKKyAgICAgICAgKiBkZmcvREZHU3RyZW5ndGhSZWR1Y3Rpb25QaGFzZS5jcHA6Cisg
ICAgICAgIChKU0M6OkRGRzo6U3RyZW5ndGhSZWR1Y3Rpb25QaGFzZTo6aGFuZGxlTm9kZSk6Cisg
ICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHA6CisgICAgICAgIChKU0M6OkpTR2xv
YmFsT2JqZWN0Ojppbml0KToKKyAgICAgICAgKEpTQzo6SlNHbG9iYWxPYmplY3Q6OmZpcmVXYXRj
aHBvaW50QW5kTWFrZUFsbEFycmF5U3RydWN0dXJlc1Nsb3dQdXQpOgorICAgICAgICAoSlNDOjpK
U0dsb2JhbE9iamVjdDo6dmlzaXRDaGlsZHJlbik6CisgICAgICAgICogcnVudGltZS9KU0dsb2Jh
bE9iamVjdC5oOgorICAgICAgICAoSlNDOjpKU0dsb2JhbE9iamVjdDo6cmVnRXhwTWF0Y2hlc0Fy
cmF5U3RydWN0dXJlIGNvbnN0KToKKyAgICAgICAgKEpTQzo6SlNHbG9iYWxPYmplY3Q6OnJlZ0V4
cE1hdGNoZXNBcnJheVdpdGhHcm91cHNTdHJ1Y3R1cmUgY29uc3QpOiBEZWxldGVkLgorICAgICAg
ICAqIHJ1bnRpbWUvUmVnRXhwTWF0Y2hlc0FycmF5LmNwcDoKKyAgICAgICAgKEpTQzo6Y3JlYXRl
U3RydWN0dXJlSW1wbCk6CisgICAgICAgIChKU0M6OmNyZWF0ZVJlZ0V4cE1hdGNoZXNBcnJheVdp
dGhHcm91cHNTdHJ1Y3R1cmUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpjcmVhdGVSZWdFeHBN
YXRjaGVzQXJyYXlXaXRoR3JvdXBzU2xvd1B1dFN0cnVjdHVyZSk6IERlbGV0ZWQuCisgICAgICAg
ICogcnVudGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuaDoKKyAgICAgICAgKEpTQzo6Y3JlYXRlUmVn
RXhwTWF0Y2hlc0FycmF5KToKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6
CisgICAgICAgIChKU0M6OnJlcGxhY2VVc2luZ1JlZ0V4cFNlYXJjaCk6CisKIDIwMTktMTEtMDkg
IFRhZGV1IFphZ2FsbG8gIDx0emFnYWxsb0BhcHBsZS5jb20+CiAKICAgICAgICAgW1dlYkFzc2Vt
Ymx5XSBJbXByb3ZlIGJ5dGVjb2RlIGR1bXBpbmcKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHQWJzdHJhY3RJbnRlcnByZXRlcklubGluZXMuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3RyYWN0SW50ZXJwcmV0ZXJJbmxpbmVzLmgJKHJl
dmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJhY3RJ
bnRlcnByZXRlcklubGluZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjM1Niw3ICsyMzU2LDYgQEAg
Ym9vbCBBYnN0cmFjdEludGVycHJldGVyPEFic3RyYWN0U3RhdGVUeQogICAgICAgICAgICAgICAg
ICAgICBtX2dyYXBoLndhdGNocG9pbnRzKCkuYWRkTGF6aWx5KGdsb2JhbE9iamVjdC0+aGF2aW5n
QUJhZFRpbWVXYXRjaHBvaW50KCkpOwogICAgICAgICAgICAgICAgICAgICBSZWdpc3RlcmVkU3Ry
dWN0dXJlU2V0IHN0cnVjdHVyZVNldDsKICAgICAgICAgICAgICAgICAgICAgc3RydWN0dXJlU2V0
LmFkZChtX2dyYXBoLnJlZ2lzdGVyU3RydWN0dXJlKGdsb2JhbE9iamVjdC0+cmVnRXhwTWF0Y2hl
c0FycmF5U3RydWN0dXJlKCkpKTsKLSAgICAgICAgICAgICAgICAgICAgc3RydWN0dXJlU2V0LmFk
ZChtX2dyYXBoLnJlZ2lzdGVyU3RydWN0dXJlKGdsb2JhbE9iamVjdC0+cmVnRXhwTWF0Y2hlc0Fy
cmF5V2l0aEdyb3Vwc1N0cnVjdHVyZSgpKSk7CiAgICAgICAgICAgICAgICAgICAgIHNldEZvck5v
ZGUobm9kZSwgc3RydWN0dXJlU2V0KTsKICAgICAgICAgICAgICAgICAgICAgZm9yTm9kZShub2Rl
KS5tZXJnZShTcGVjT3RoZXIpOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3RyZW5ndGhSZWR1Y3Rpb25QaGFzZS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTdHJlbmd0aFJlZHVjdGlv
blBoYXNlLmNwcAkocmV2aXNpb24gMjUyMzEzKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdTdHJlbmd0aFJlZHVjdGlvblBoYXNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjA2LDEy
ICs2MDYsNyBAQCBwcml2YXRlOgogCiAgICAgICAgICAgICAgICAgbV9ncmFwaC53YXRjaHBvaW50
cygpLmFkZExhemlseShnbG9iYWxPYmplY3QtPmhhdmluZ0FCYWRUaW1lV2F0Y2hwb2ludCgpKTsK
IAotICAgICAgICAgICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlOwotICAgICAgICAgICAgICAg
IGlmICgobV9ub2RlLT5vcCgpID09IFJlZ0V4cEV4ZWMgfHwgbV9ub2RlLT5vcCgpID09IFJlZ0V4
cEV4ZWNOb25HbG9iYWxPclN0aWNreSkgJiYgcmVnRXhwLT5oYXNOYW1lZENhcHR1cmVzKCkpCi0g
ICAgICAgICAgICAgICAgICAgIHN0cnVjdHVyZSA9IGdsb2JhbE9iamVjdC0+cmVnRXhwTWF0Y2hl
c0FycmF5V2l0aEdyb3Vwc1N0cnVjdHVyZSgpOwotICAgICAgICAgICAgICAgIGVsc2UKLSAgICAg
ICAgICAgICAgICAgICAgc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5yZWdFeHBNYXRjaGVzQXJy
YXlTdHJ1Y3R1cmUoKTsKLQorICAgICAgICAgICAgICAgIFN0cnVjdHVyZSogc3RydWN0dXJlID0g
Z2xvYmFsT2JqZWN0LT5yZWdFeHBNYXRjaGVzQXJyYXlTdHJ1Y3R1cmUoKTsKICAgICAgICAgICAg
ICAgICBpZiAoc3RydWN0dXJlLT5pbmRleGluZ1R5cGUoKSAhPSBBcnJheVdpdGhDb250aWd1b3Vz
KSB7CiAgICAgICAgICAgICAgICAgICAgIC8vIFRoaXMgaXMgZnVydGhlciBwcm90ZWN0aW9uIGFn
YWluc3QgYSByYWNlIHdpdGggaGF2ZUFCYWRUaW1lLgogICAgICAgICAgICAgICAgICAgICBpZiAo
dmVyYm9zZSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2Jq
ZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ds
b2JhbE9iamVjdC5jcHAJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzA4LDcgKzcw
OCw2IEBAIHZvaWQgSlNHbG9iYWxPYmplY3Q6OmluaXQoVk0mIHZtKQogICAgIG1fcmVnRXhwUHJv
dG90eXBlLnNldCh2bSwgdGhpcywgUmVnRXhwUHJvdG90eXBlOjpjcmVhdGUodm0sIHRoaXMsIFJl
Z0V4cFByb3RvdHlwZTo6Y3JlYXRlU3RydWN0dXJlKHZtLCB0aGlzLCBtX29iamVjdFByb3RvdHlw
ZS5nZXQoKSkpKTsKICAgICBtX3JlZ0V4cFN0cnVjdHVyZS5zZXQodm0sIHRoaXMsIFJlZ0V4cE9i
amVjdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCB0aGlzLCBtX3JlZ0V4cFByb3RvdHlwZS5nZXQoKSkp
OwogICAgIG1fcmVnRXhwTWF0Y2hlc0FycmF5U3RydWN0dXJlLnNldCh2bSwgdGhpcywgY3JlYXRl
UmVnRXhwTWF0Y2hlc0FycmF5U3RydWN0dXJlKHZtLCB0aGlzKSk7Ci0gICAgbV9yZWdFeHBNYXRj
aGVzQXJyYXlXaXRoR3JvdXBzU3RydWN0dXJlLnNldCh2bSwgdGhpcywgY3JlYXRlUmVnRXhwTWF0
Y2hlc0FycmF5V2l0aEdyb3Vwc1N0cnVjdHVyZSh2bSwgdGhpcykpOwogCiAgICAgbV9tb2R1bGVS
ZWNvcmRTdHJ1Y3R1cmUuaW5pdExhdGVyKAogICAgICAgICBbXSAoY29uc3QgSW5pdGlhbGl6ZXI8
U3RydWN0dXJlPiYgaW5pdCkgewpAQCAtMTU1Nyw4ICsxNTU2LDYgQEAgdm9pZCBKU0dsb2JhbE9i
amVjdDo6ZmlyZVdhdGNocG9pbnRBbmRNYQogICAgIFN0cnVjdHVyZSogc2xvd1B1dFN0cnVjdHVy
ZTsKICAgICBzbG93UHV0U3RydWN0dXJlID0gY3JlYXRlUmVnRXhwTWF0Y2hlc0FycmF5U2xvd1B1
dFN0cnVjdHVyZSh2bSwgdGhpcyk7CiAgICAgbV9yZWdFeHBNYXRjaGVzQXJyYXlTdHJ1Y3R1cmUu
c2V0KHZtLCB0aGlzLCBzbG93UHV0U3RydWN0dXJlKTsKLSAgICBzbG93UHV0U3RydWN0dXJlID0g
Y3JlYXRlUmVnRXhwTWF0Y2hlc0FycmF5V2l0aEdyb3Vwc1Nsb3dQdXRTdHJ1Y3R1cmUodm0sIHRo
aXMpOwotICAgIG1fcmVnRXhwTWF0Y2hlc0FycmF5V2l0aEdyb3Vwc1N0cnVjdHVyZS5zZXQodm0s
IHRoaXMsIHNsb3dQdXRTdHJ1Y3R1cmUpOwogICAgIHNsb3dQdXRTdHJ1Y3R1cmUgPSBDbG9uZWRB
cmd1bWVudHM6OmNyZWF0ZVNsb3dQdXRTdHJ1Y3R1cmUodm0sIHRoaXMsIG1fb2JqZWN0UHJvdG90
eXBlLmdldCgpKTsKICAgICBtX2Nsb25lZEFyZ3VtZW50c1N0cnVjdHVyZS5zZXQodm0sIHRoaXMs
IHNsb3dQdXRTdHJ1Y3R1cmUpOwogCkBAIC0xODE4LDcgKzE4MTUsNiBAQCB2b2lkIEpTR2xvYmFs
T2JqZWN0Ojp2aXNpdENoaWxkcmVuKEpTQ2VsCiAgICAgdmlzaXRvci5hcHBlbmQodGhpc09iamVj
dC0+bV9hc3luY0dlbmVyYXRvclN0cnVjdHVyZSk7CiAgICAgdGhpc09iamVjdC0+bV9pdGVyYXRv
clJlc3VsdE9iamVjdFN0cnVjdHVyZS52aXNpdCh2aXNpdG9yKTsKICAgICB2aXNpdG9yLmFwcGVu
ZCh0aGlzT2JqZWN0LT5tX3JlZ0V4cE1hdGNoZXNBcnJheVN0cnVjdHVyZSk7Ci0gICAgdmlzaXRv
ci5hcHBlbmQodGhpc09iamVjdC0+bV9yZWdFeHBNYXRjaGVzQXJyYXlXaXRoR3JvdXBzU3RydWN0
dXJlKTsKICAgICB0aGlzT2JqZWN0LT5tX21vZHVsZVJlY29yZFN0cnVjdHVyZS52aXNpdCh2aXNp
dG9yKTsKICAgICB0aGlzT2JqZWN0LT5tX21vZHVsZU5hbWVzcGFjZU9iamVjdFN0cnVjdHVyZS52
aXNpdCh2aXNpdG9yKTsKICAgICB0aGlzT2JqZWN0LT5tX3Byb3h5T2JqZWN0U3RydWN0dXJlLnZp
c2l0KHZpc2l0b3IpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9i
YWxPYmplY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0dsb2JhbE9iamVjdC5oCShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNzYsNyArMzc2
LDYgQEAgcHVibGljOgogICAgIFdyaXRlQmFycmllcjxTdHJ1Y3R1cmU+IG1fYXN5bmNHZW5lcmF0
b3JTdHJ1Y3R1cmU7CiAgICAgTGF6eVByb3BlcnR5PEpTR2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmU+
IG1faXRlcmF0b3JSZXN1bHRPYmplY3RTdHJ1Y3R1cmU7CiAgICAgV3JpdGVCYXJyaWVyPFN0cnVj
dHVyZT4gbV9yZWdFeHBNYXRjaGVzQXJyYXlTdHJ1Y3R1cmU7Ci0gICAgV3JpdGVCYXJyaWVyPFN0
cnVjdHVyZT4gbV9yZWdFeHBNYXRjaGVzQXJyYXlXaXRoR3JvdXBzU3RydWN0dXJlOwogICAgIExh
enlQcm9wZXJ0eTxKU0dsb2JhbE9iamVjdCwgU3RydWN0dXJlPiBtX21vZHVsZVJlY29yZFN0cnVj
dHVyZTsKICAgICBMYXp5UHJvcGVydHk8SlNHbG9iYWxPYmplY3QsIFN0cnVjdHVyZT4gbV9tb2R1
bGVOYW1lc3BhY2VPYmplY3RTdHJ1Y3R1cmU7CiAgICAgTGF6eVByb3BlcnR5PEpTR2xvYmFsT2Jq
ZWN0LCBTdHJ1Y3R1cmU+IG1fcHJveHlPYmplY3RTdHJ1Y3R1cmU7CkBAIC03NTQsNyArNzUzLDYg
QEAgcHVibGljOgogICAgIFN0cnVjdHVyZSogc3RyaW5nT2JqZWN0U3RydWN0dXJlKCkgY29uc3Qg
eyByZXR1cm4gbV9zdHJpbmdPYmplY3RTdHJ1Y3R1cmUuZ2V0KCk7IH0KICAgICBTdHJ1Y3R1cmUq
IGl0ZXJhdG9yUmVzdWx0T2JqZWN0U3RydWN0dXJlKCkgY29uc3QgeyByZXR1cm4gbV9pdGVyYXRv
clJlc3VsdE9iamVjdFN0cnVjdHVyZS5nZXQodGhpcyk7IH0KICAgICBTdHJ1Y3R1cmUqIHJlZ0V4
cE1hdGNoZXNBcnJheVN0cnVjdHVyZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVnRXhwTWF0Y2hlc0Fy
cmF5U3RydWN0dXJlLmdldCgpOyB9Ci0gICAgU3RydWN0dXJlKiByZWdFeHBNYXRjaGVzQXJyYXlX
aXRoR3JvdXBzU3RydWN0dXJlKCkgY29uc3QgeyByZXR1cm4gbV9yZWdFeHBNYXRjaGVzQXJyYXlX
aXRoR3JvdXBzU3RydWN0dXJlLmdldCgpOyB9CiAgICAgU3RydWN0dXJlKiBtb2R1bGVSZWNvcmRT
dHJ1Y3R1cmUoKSBjb25zdCB7IHJldHVybiBtX21vZHVsZVJlY29yZFN0cnVjdHVyZS5nZXQodGhp
cyk7IH0KICAgICBTdHJ1Y3R1cmUqIG1vZHVsZU5hbWVzcGFjZU9iamVjdFN0cnVjdHVyZSgpIGNv
bnN0IHsgcmV0dXJuIG1fbW9kdWxlTmFtZXNwYWNlT2JqZWN0U3RydWN0dXJlLmdldCh0aGlzKTsg
fQogICAgIFN0cnVjdHVyZSogcHJveHlPYmplY3RTdHJ1Y3R1cmUoKSBjb25zdCB7IHJldHVybiBt
X3Byb3h5T2JqZWN0U3RydWN0dXJlLmdldCh0aGlzKTsgfQpJbmRleDogU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvUmVnRXhwTWF0Y2hlc0FycmF5LmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuY3BwCShyZXZpc2lv
biAyNTIzMTMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBNYXRjaGVz
QXJyYXkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MCw5ICs3MCw3IEBAIEpTQXJyYXkqIGNyZWF0
ZUVtcHR5UmVnRXhwTWF0Y2hlc0FycmF5KEoKICAgICByZXR1cm4gYXJyYXk7CiB9CiAKLWVudW0g
Y2xhc3MgU2hvdWxkQ3JlYXRlR3JvdXBzIHsgTm8sIFllcyB9OwotCi1zdGF0aWMgU3RydWN0dXJl
KiBjcmVhdGVTdHJ1Y3R1cmVJbXBsKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgSW5kZXhpbmdUeXBlIGluZGV4aW5nVHlwZSwgU2hvdWxkQ3JlYXRlR3JvdXBzIHNob3VsZENy
ZWF0ZUdyb3VwcyA9IFNob3VsZENyZWF0ZUdyb3Vwczo6Tm8pCitzdGF0aWMgU3RydWN0dXJlKiBj
cmVhdGVTdHJ1Y3R1cmVJbXBsKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SW5kZXhpbmdUeXBlIGluZGV4aW5nVHlwZSkKIHsKICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9
IGdsb2JhbE9iamVjdC0+YXJyYXlTdHJ1Y3R1cmVGb3JJbmRleGluZ1R5cGVEdXJpbmdBbGxvY2F0
aW9uKGluZGV4aW5nVHlwZSk7CiAgICAgUHJvcGVydHlPZmZzZXQgb2Zmc2V0OwpAQCAtODAsMTQg
Kzc4LDggQEAgc3RhdGljIFN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlSW1wbChWTQogICAgIEFT
U0VSVChvZmZzZXQgPT0gUmVnRXhwTWF0Y2hlc0FycmF5SW5kZXhQcm9wZXJ0eU9mZnNldCk7CiAg
ICAgc3RydWN0dXJlID0gU3RydWN0dXJlOjphZGRQcm9wZXJ0eVRyYW5zaXRpb24odm0sIHN0cnVj
dHVyZSwgdm0ucHJvcGVydHlOYW1lcy0+aW5wdXQsIDAsIG9mZnNldCk7CiAgICAgQVNTRVJUKG9m
ZnNldCA9PSBSZWdFeHBNYXRjaGVzQXJyYXlJbnB1dFByb3BlcnR5T2Zmc2V0KTsKLSAgICBzd2l0
Y2ggKHNob3VsZENyZWF0ZUdyb3VwcykgewotICAgIGNhc2UgU2hvdWxkQ3JlYXRlR3JvdXBzOjpZ
ZXM6Ci0gICAgICAgIHN0cnVjdHVyZSA9IFN0cnVjdHVyZTo6YWRkUHJvcGVydHlUcmFuc2l0aW9u
KHZtLCBzdHJ1Y3R1cmUsIHZtLnByb3BlcnR5TmFtZXMtPmdyb3VwcywgMCwgb2Zmc2V0KTsKLSAg
ICAgICAgQVNTRVJUKG9mZnNldCA9PSBSZWdFeHBNYXRjaGVzQXJyYXlHcm91cHNQcm9wZXJ0eU9m
ZnNldCk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgU2hvdWxkQ3JlYXRlR3JvdXBzOjpObzoK
LSAgICAgICAgYnJlYWs7Ci0gICAgfQorICAgIHN0cnVjdHVyZSA9IFN0cnVjdHVyZTo6YWRkUHJv
cGVydHlUcmFuc2l0aW9uKHZtLCBzdHJ1Y3R1cmUsIHZtLnByb3BlcnR5TmFtZXMtPmdyb3Vwcywg
MCwgb2Zmc2V0KTsKKyAgICBBU1NFUlQob2Zmc2V0ID09IFJlZ0V4cE1hdGNoZXNBcnJheUdyb3Vw
c1Byb3BlcnR5T2Zmc2V0KTsKICAgICByZXR1cm4gc3RydWN0dXJlOwogfQogCkBAIC0xMDEsMTQg
KzkzLDQgQEAgU3RydWN0dXJlKiBjcmVhdGVSZWdFeHBNYXRjaGVzQXJyYXlTbG93UAogICAgIHJl
dHVybiBjcmVhdGVTdHJ1Y3R1cmVJbXBsKHZtLCBnbG9iYWxPYmplY3QsIEFycmF5V2l0aFNsb3dQ
dXRBcnJheVN0b3JhZ2UpOwogfQogCi1TdHJ1Y3R1cmUqIGNyZWF0ZVJlZ0V4cE1hdGNoZXNBcnJh
eVdpdGhHcm91cHNTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQotewotICAgIHJldHVybiBjcmVhdGVTdHJ1Y3R1cmVJbXBsKHZtLCBnbG9iYWxPYmplY3QsIEFy
cmF5V2l0aENvbnRpZ3VvdXMsIFNob3VsZENyZWF0ZUdyb3Vwczo6WWVzKTsKLX0KLQotU3RydWN0
dXJlKiBjcmVhdGVSZWdFeHBNYXRjaGVzQXJyYXlXaXRoR3JvdXBzU2xvd1B1dFN0cnVjdHVyZShW
TSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCi17Ci0gICAgcmV0dXJuIGNyZWF0
ZVN0cnVjdHVyZUltcGwodm0sIGdsb2JhbE9iamVjdCwgQXJyYXlXaXRoU2xvd1B1dEFycmF5U3Rv
cmFnZSwgU2hvdWxkQ3JlYXRlR3JvdXBzOjpZZXMpOwotfQotCiB9IC8vIG5hbWVzcGFjZSBKU0MK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE1hdGNoZXNBcnJheS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE1hdGNo
ZXNBcnJheS5oCShyZXZpc2lvbiAyNTIzMTMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuaAkod29ya2luZyBjb3B5KQpAQCAtMjQsNiArMjQsNyBA
QAogI2luY2x1ZGUgIkpTQXJyYXkuaCIKICNpbmNsdWRlICJKU0NJbmxpbmVzLmgiCiAjaW5jbHVk
ZSAiSlNHbG9iYWxPYmplY3QuaCIKKyNpbmNsdWRlICJPYmplY3RDb25zdHJ1Y3Rvci5oIgogI2lu
Y2x1ZGUgIlJlZ0V4cElubGluZXMuaCIKICNpbmNsdWRlICJSZWdFeHBPYmplY3QuaCIKIApAQCAt
ODIsMTggKzgzLDEzIEBAIEFMV0FZU19JTkxJTkUgSlNBcnJheSogY3JlYXRlUmVnRXhwTWF0Y2gK
ICAgICAKICAgICB1bnNpZ25lZCBudW1TdWJwYXR0ZXJucyA9IHJlZ0V4cC0+bnVtU3VicGF0dGVy
bnMoKTsKICAgICBib29sIGhhc05hbWVkQ2FwdHVyZXMgPSByZWdFeHAtPmhhc05hbWVkQ2FwdHVy
ZXMoKTsKLSAgICBKU09iamVjdCogZ3JvdXBzID0gbnVsbHB0cjsKKyAgICBKU09iamVjdCogZ3Jv
dXBzID0gaGFzTmFtZWRDYXB0dXJlcyA/IGNvbnN0cnVjdEVtcHR5T2JqZWN0KHZtLCBnbG9iYWxP
YmplY3QtPm51bGxQcm90b3R5cGVPYmplY3RTdHJ1Y3R1cmUoKSkgOiBudWxscHRyOwogICAgIFN0
cnVjdHVyZSogbWF0Y2hTdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPnJlZ0V4cE1hdGNoZXNBcnJh
eVN0cnVjdHVyZSgpOwotICAgIGlmIChoYXNOYW1lZENhcHR1cmVzKSB7Ci0gICAgICAgIGdyb3Vw
cyA9IEpTRmluYWxPYmplY3Q6OmNyZWF0ZSh2bSwgSlNGaW5hbE9iamVjdDo6Y3JlYXRlU3RydWN0
dXJlKHZtLCBnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+b2JqZWN0UHJvdG90eXBlKCksIDAp
KTsKLSAgICAgICAgbWF0Y2hTdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPnJlZ0V4cE1hdGNoZXNB
cnJheVdpdGhHcm91cHNTdHJ1Y3R1cmUoKTsKLSAgICB9CiAKICAgICBhdXRvIHNldFByb3BlcnRp
ZXMgPSBbJl0gKCkgewogICAgICAgICBhcnJheS0+cHV0RGlyZWN0KHZtLCBSZWdFeHBNYXRjaGVz
QXJyYXlJbmRleFByb3BlcnR5T2Zmc2V0LCBqc051bWJlcihyZXN1bHQuc3RhcnQpKTsKICAgICAg
ICAgYXJyYXktPnB1dERpcmVjdCh2bSwgUmVnRXhwTWF0Y2hlc0FycmF5SW5wdXRQcm9wZXJ0eU9m
ZnNldCwgaW5wdXQpOwotICAgICAgICBpZiAoaGFzTmFtZWRDYXB0dXJlcykKLSAgICAgICAgICAg
IGFycmF5LT5wdXREaXJlY3Qodm0sIFJlZ0V4cE1hdGNoZXNBcnJheUdyb3Vwc1Byb3BlcnR5T2Zm
c2V0LCBncm91cHMpOworICAgICAgICBhcnJheS0+cHV0RGlyZWN0KHZtLCBSZWdFeHBNYXRjaGVz
QXJyYXlHcm91cHNQcm9wZXJ0eU9mZnNldCwgaGFzTmFtZWRDYXB0dXJlcyA/IGdyb3VwcyA6IGpz
VW5kZWZpbmVkKCkpOwogCiAgICAgICAgIEFTU0VSVCghYXJyYXktPmJ1dHRlcmZseSgpLT5pbmRl
eGluZ0hlYWRlcigpLT5wcmVDYXBhY2l0eShtYXRjaFN0cnVjdHVyZSkpOwogICAgICAgICBhdXRv
IGNhcGFjaXR5ID0gbWF0Y2hTdHJ1Y3R1cmUtPm91dE9mTGluZUNhcGFjaXR5KCk7CkBAIC0xNTUs
NyArMTUxLDcgQEAgQUxXQVlTX0lOTElORSBKU0FycmF5KiBjcmVhdGVSZWdFeHBNYXRjaAogCiAg
ICAgLy8gV2UgaW5pdGlhbGl6ZSB0aGUgZ3JvdXBzIG9iamVjdCBsYXRlIGFzIGl0IGNvdWxkIGFs
bG9jYXRlLCB3aGljaCB3aXRoIHRoZSBjdXJyZW50IEFQSSBjb3VsZCBjYXVzZQogICAgIC8vIGFs
bG9jYXRpb25zLgotICAgIGlmIChncm91cHMpIHsKKyAgICBpZiAoaGFzTmFtZWRDYXB0dXJlcykg
ewogICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAxOyBpIDw9IG51bVN1YnBhdHRlcm5zOyArK2kp
IHsKICAgICAgICAgICAgIFN0cmluZyBncm91cE5hbWUgPSByZWdFeHAtPmdldENhcHR1cmVHcm91
cE5hbWUoaSk7CiAgICAgICAgICAgICBpZiAoIWdyb3VwTmFtZS5pc0VtcHR5KCkpCkBAIC0xNzks
NyArMTc1LDUgQEAgaW5saW5lIEpTQXJyYXkqIGNyZWF0ZVJlZ0V4cE1hdGNoZXNBcnJheQogSlNB
cnJheSogY3JlYXRlRW1wdHlSZWdFeHBNYXRjaGVzQXJyYXkoSlNHbG9iYWxPYmplY3QqLCBKU1N0
cmluZyosIFJlZ0V4cCopOwogU3RydWN0dXJlKiBjcmVhdGVSZWdFeHBNYXRjaGVzQXJyYXlTdHJ1
Y3R1cmUoVk0mLCBKU0dsb2JhbE9iamVjdCopOwogU3RydWN0dXJlKiBjcmVhdGVSZWdFeHBNYXRj
aGVzQXJyYXlTbG93UHV0U3RydWN0dXJlKFZNJiwgSlNHbG9iYWxPYmplY3QqKTsKLVN0cnVjdHVy
ZSogY3JlYXRlUmVnRXhwTWF0Y2hlc0FycmF5V2l0aEdyb3Vwc1N0cnVjdHVyZShWTSYsIEpTR2xv
YmFsT2JqZWN0Kik7Ci1TdHJ1Y3R1cmUqIGNyZWF0ZVJlZ0V4cE1hdGNoZXNBcnJheVdpdGhHcm91
cHNTbG93UHV0U3RydWN0dXJlKFZNJiwgSlNHbG9iYWxPYmplY3QqKTsKIAogfSAvLyBuYW1lc3Bh
Y2UgSlNDCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5
cGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmlu
Z1Byb3RvdHlwZS5jcHAJKHJldmlzaW9uIDI1MjMxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5LDYgKzM5
LDcgQEAKICNpbmNsdWRlICJKU0dsb2JhbE9iamVjdEZ1bmN0aW9ucy5oIgogI2luY2x1ZGUgIkpT
U3RyaW5nSXRlcmF0b3IuaCIKICNpbmNsdWRlICJMb29rdXAuaCIKKyNpbmNsdWRlICJPYmplY3RD
b25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUgIk9iamVjdFByb3RvdHlwZS5oIgogI2luY2x1ZGUgIlBh
cnNlSW50LmgiCiAjaW5jbHVkZSAiUHJvcGVydHlOYW1lQXJyYXkuaCIKQEAgLTU3MSwxMSArNTcy
LDcgQEAgc3RhdGljIEFMV0FZU19JTkxJTkUgSlNTdHJpbmcqIHJlcGxhY2VVcwogICAgICAgICAg
ICAgICAgIE9VVF9PRl9NRU1PUlkoZ2xvYmFsT2JqZWN0LCBzY29wZSk7CiAKICAgICAgICAgICAg
IGNhY2hlZENhbGwuY2xlYXJBcmd1bWVudHMoKTsKLQotICAgICAgICAgICAgSlNPYmplY3QqIGdy
b3VwcyA9IG51bGxwdHI7Ci0KLSAgICAgICAgICAgIGlmIChoYXNOYW1lZENhcHR1cmVzKQotICAg
ICAgICAgICAgICAgIGdyb3VwcyA9IEpTRmluYWxPYmplY3Q6OmNyZWF0ZSh2bSwgSlNGaW5hbE9i
amVjdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCBnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+b2Jq
ZWN0UHJvdG90eXBlKCksIDApKTsKKyAgICAgICAgICAgIEpTT2JqZWN0KiBncm91cHMgPSBoYXNO
YW1lZENhcHR1cmVzID8gY29uc3RydWN0RW1wdHlPYmplY3Qodm0sIGdsb2JhbE9iamVjdC0+bnVs
bFByb3RvdHlwZU9iamVjdFN0cnVjdHVyZSgpKSA6IG51bGxwdHI7CiAKICAgICAgICAgICAgIGZv
ciAodW5zaWduZWQgaSA9IDA7IGkgPCByZWdFeHAtPm51bVN1YnBhdHRlcm5zKCkgKyAxOyArK2kp
IHsKICAgICAgICAgICAgICAgICBpbnQgbWF0Y2hTdGFydCA9IG92ZWN0b3JbaSAqIDJdOwpAQCAt
NjM2LDEwICs2MzMsNyBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBKU1N0cmluZyogcmVwbGFjZVVz
CiAgICAgICAgICAgICAgICAgICAgIE9VVF9PRl9NRU1PUlkoZ2xvYmFsT2JqZWN0LCBzY29wZSk7
CiAKICAgICAgICAgICAgICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwotICAgICAgICAg
ICAgICAgIEpTT2JqZWN0KiBncm91cHMgPSBudWxscHRyOwotCi0gICAgICAgICAgICAgICAgaWYg
KGhhc05hbWVkQ2FwdHVyZXMpCi0gICAgICAgICAgICAgICAgICAgIGdyb3VwcyA9IEpTRmluYWxP
YmplY3Q6OmNyZWF0ZSh2bSwgSlNGaW5hbE9iamVjdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCBnbG9i
YWxPYmplY3QsIGdsb2JhbE9iamVjdC0+b2JqZWN0UHJvdG90eXBlKCksIDApKTsKKyAgICAgICAg
ICAgICAgICBKU09iamVjdCogZ3JvdXBzID0gaGFzTmFtZWRDYXB0dXJlcyA/IGNvbnN0cnVjdEVt
cHR5T2JqZWN0KHZtLCBnbG9iYWxPYmplY3QtPm51bGxQcm90b3R5cGVPYmplY3RTdHJ1Y3R1cmUo
KSkgOiBudWxscHRyOwogCiAgICAgICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8
IHJlZ0V4cC0+bnVtU3VicGF0dGVybnMoKSArIDE7ICsraSkgewogICAgICAgICAgICAgICAgICAg
ICBpbnQgbWF0Y2hTdGFydCA9IG92ZWN0b3JbaSAqIDJdOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>