<?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>176682</bug_id>
          
          <creation_ts>2017-09-10 20:57:22 -0700</creation_ts>
          <short_desc>WSL should support for loops</short_desc>
          <delta_ts>2018-10-13 16:48:35 -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>
          
          <blocked>176199</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>fpizlo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1347346</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2017-09-10 20:57:22 -0700</bug_when>
    <thetext>WSL should support for loops</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1347349</commentid>
    <comment_count>1</comment_count>
      <attachid>320417</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2017-09-10 21:32:34 -0700</bug_when>
    <thetext>Created attachment 320417
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1347480</commentid>
    <comment_count>2</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2017-09-11 10:48:01 -0700</bug_when>
    <thetext>Committed r221865: &lt;http://trac.webkit.org/changeset/221865&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1353497</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-09-27 12:34:52 -0700</bug_when>
    <thetext>&lt;rdar://problem/34693527&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468940</commentid>
    <comment_count>4</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-10-13 16:48:35 -0700</bug_when>
    <thetext>Migrated to https://github.com/gpuweb/WHLSL/issues/141</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>320417</attachid>
            <date>2017-09-10 21:32:34 -0700</date>
            <delta_ts>2017-09-10 21:46:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-176682-20170910213233.patch</filename>
            <type>text/plain</type>
            <size>23038</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxODQyCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOGFhM2Q4NjZjYzM0MjVkZDVhNWNhMGMwYTc1NzhmNTE1
NzAyNGQ5My4uZTNkNjBhN2MwNTE4MGQ4NGYyZWU4YjQ5ZTA1MzA5NWM3NWJhYTQyMiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQ2
IEBACiAyMDE3LTA5LTEwICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+
CiAKKyAgICAgICAgV1NMIHNob3VsZCBzdXBwb3J0IGZvciBsb29wcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc2NjgyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRm9sbG93cyB0aGUgcGF0dGVybiBvZiB0
aGUgZXhpc3RpbmcgaW5mcmFzdHJ1Y3R1cmUgb2Ygd2hpbGUgbG9vcHMuCisKKyAgICAgICAgKiBX
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9BbGwuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvQ2hlY2tlci5qczoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9F
dmFsdWF0b3IuanM6CisgICAgICAgIChFdmFsdWF0b3IucHJvdG90eXBlLnZpc2l0Rm9yTG9vcCk6
CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRm9yTG9vcC5qczogQ29waWVkIGZy
b20gVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTG9vcENoZWNrZXIuanMuCisgICAgICAg
IChGb3JMb29wKToKKyAgICAgICAgKEZvckxvb3AucHJvdG90eXBlLmdldCBvcmlnaW4pOgorICAg
ICAgICAoRm9yTG9vcC5wcm90b3R5cGUuZ2V0IGluaXRpYWxpemF0aW9uKToKKyAgICAgICAgKEZv
ckxvb3AucHJvdG90eXBlLmdldCBjb25kaXRpb24pOgorICAgICAgICAoRm9yTG9vcC5wcm90b3R5
cGUuZ2V0IGluY3JlbWVudCk6CisgICAgICAgIChGb3JMb29wLnByb3RvdHlwZS5nZXQgYm9keSk6
CisgICAgICAgIChGb3JMb29wLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgICogV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvTG9vcENoZWNrZXIuanM6CisgICAgICAgIChMb29wQ2hlY2tlci5w
cm90b3R5cGUudmlzaXRGb3JMb29wKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9OYW1lUmVzb2x2ZXIuanM6CisgICAgICAgIChOYW1lUmVzb2x2ZXIucHJvdG90eXBlLnZpc2l0
Rm9yTG9vcCk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUGFyc2UuanM6Cisg
ICAgICAgIChwYXJzZUZvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV0
dXJuQ2hlY2tlci5qczoKKyAgICAgICAgKFJldHVybkNoZWNrZXIucHJvdG90eXBlLl9pc0Jvb2xD
YXN0RnJvbUxpdGVyYWxUcnVlKToKKyAgICAgICAgKFJldHVybkNoZWNrZXIucHJvdG90eXBlLnZp
c2l0V2hpbGVMb29wKToKKyAgICAgICAgKFJldHVybkNoZWNrZXIucHJvdG90eXBlLnZpc2l0RG9X
aGlsZUxvb3ApOgorICAgICAgICAoUmV0dXJuQ2hlY2tlci5wcm90b3R5cGUudmlzaXRGb3JMb29w
KToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXdyaXRlci5qczoKKyAgICAg
ICAgKFJld3JpdGVyLnByb3RvdHlwZS52aXNpdEZvckxvb3ApOgorICAgICAgICAoUmV3cml0ZXIp
OgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuaHRtbDoKKyAgICAgICAg
KiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzOgorICAgICAgICAoVEVTVF9mb3JMb29w
KToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9WaXNpdG9yLmpzOgorICAgICAg
ICAoVmlzaXRvci5wcm90b3R5cGUudmlzaXRGb3JMb29wKToKKworMjAxNy0wOS0xMCAgTXlsZXMg
Qy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCiAgICAgICAgIFdTTCBzaG91bGQg
c3VwcG9ydCB3aGlsZSBsb29wcwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc2NTgxCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL0FsbC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qcwppbmRl
eCBlNzA1NmYwMjZhZDg2ODE0MTY4MzZhNWQ5MzAwOTZiZDBlYjNkNjE1Li40NjVhOGM1NjllOWQ4
NmQ2OWYyYzc3OTRjOGU5ZDlhYTA0OTVlNmQ3IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9BbGwuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
QWxsLmpzCkBAIC02Myw2ICs2Myw3IEBAIGxvYWQoIkVQdHIuanMiKTsKIGxvYWQoIkV2YWx1YXRp
b25Db21tb24uanMiKTsKIGxvYWQoIkV2YWx1YXRvci5qcyIpOwogbG9hZCgiRmllbGQuanMiKTsK
K2xvYWQoIkZvckxvb3AuanMiKTsKIGxvYWQoIkZ1bmMuanMiKTsKIGxvYWQoIkZ1bmNEZWYuanMi
KTsKIGxvYWQoIkZ1bmNJbnN0YW50aWF0b3IuanMiKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrZXIuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9DaGVja2VyLmpzCmluZGV4IDNmM2U1ZTI3ZjU3OTBiNDBlYmUzMTkyMTk5NGY2NzU2MmZk
ODAxZGYuLjdjYjVjZjQzYjQyYjZkZDkyOGY0OWY4ZjFkN2MxYjcxNjQwN2NhOGUgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrZXIuanMKKysrIGIvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qcwpAQCAtMjU3LDYgKzI1NywyMiBAQCBj
bGFzcyBDaGVja2VyIGV4dGVuZHMgVmlzaXRvciB7CiAgICAgICAgIGlmICghY29uZGl0aW9uYWxS
ZXN1bHRUeXBlLmVxdWFscyh0aGlzLl9wcm9ncmFtLmludHJpbnNpY3MuYm9vbCkpCiAgICAgICAg
ICAgICB0aHJvdyBuZXcgV0Vycm9yKCJEby1XaGlsZSBsb29wIGNvbmRpdGlvbmFsIGlzbid0IGEg
Ym9vbDogIiArIG5vZGUuY29uZGl0aW9uYWwpOwogICAgIH0KKworICAgIHZpc2l0Rm9yTG9vcChu
b2RlKQorICAgIHsKKyAgICAgICAgaWYgKG5vZGUuaW5pdGlhbGl6YXRpb24pCisgICAgICAgICAg
ICBub2RlLmluaXRpYWxpemF0aW9uLnZpc2l0KHRoaXMpOworICAgICAgICBpZiAobm9kZS5jb25k
aXRpb24pIHsKKyAgICAgICAgICAgIGxldCBjb25kaXRpb25SZXN1bHRUeXBlID0gbm9kZS5jb25k
aXRpb24udmlzaXQodGhpcyk7CisgICAgICAgICAgICBpZiAoIWNvbmRpdGlvblJlc3VsdFR5cGUp
CisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJGb3IgbG9vcCBjb25kaXRpb25hbCBo
YXMgbm8gdHlwZTogIiArIG5vZGUuY29uZGl0aW9uYWwpOworICAgICAgICAgICAgaWYgKCFjb25k
aXRpb25SZXN1bHRUeXBlLmVxdWFscyh0aGlzLl9wcm9ncmFtLmludHJpbnNpY3MuYm9vbCkpCisg
ICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdFcnJvcigiRm9yIGxvb3AgY29uZGl0aW9uYWwgaXNu
J3QgYSBib29sOiAiICsgbm9kZS5jb25kaXRpb25hbCk7CisgICAgICAgIH0KKyAgICAgICAgaWYg
KG5vZGUuaW5jcmVtZW50KQorICAgICAgICAgICAgbm9kZS5pbmNyZW1lbnQudmlzaXQodGhpcyk7
CisgICAgICAgIG5vZGUuYm9keS52aXNpdCh0aGlzKTsKKyAgICB9CiAgICAgCiAgICAgdmlzaXRD
b21tYUV4cHJlc3Npb24obm9kZSkKICAgICB7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9FdmFsdWF0b3IuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9FdmFsdWF0b3IuanMKaW5kZXggYzE3YmM4YjNhZDFhODJmNTNkYmE3YzkxNTFlZTc4NWY0Y2Ix
MGU4My4uOGU0MDUwYmY0MzI5Njg3ODkyZGY0MzFhNmViOGYwODhjYTU1NGNmNSAxMDA2NDQKLS0t
IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRXZhbHVhdG9yLmpzCisrKyBiL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0V2YWx1YXRvci5qcwpAQCAtMTkwLDYgKzE5MCwyMyBA
QCBjbGFzcyBFdmFsdWF0b3IgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAgICAgfSB3aGlsZSAobm9k
ZS5jb25kaXRpb25hbC52aXNpdCh0aGlzKS5sb2FkVmFsdWUoKSk7CiAgICAgfQogCisgICAgdmlz
aXRGb3JMb29wKG5vZGUpCisgICAgeworICAgICAgICBmb3IgKG5vZGUuaW5pdGlhbGl6YXRpb24g
PyBub2RlLmluaXRpYWxpemF0aW9uLnZpc2l0KHRoaXMpIDogdHJ1ZTsKKyAgICAgICAgICAgIG5v
ZGUuY29uZGl0aW9uID8gbm9kZS5jb25kaXRpb24udmlzaXQodGhpcykubG9hZFZhbHVlKCkgOiB0
cnVlOworICAgICAgICAgICAgbm9kZS5pbmNyZW1lbnQgPyBub2RlLmluY3JlbWVudC52aXNpdCh0
aGlzKSA6IHRydWUpIHsKKyAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAgICAgbm9kZS5i
b2R5LnZpc2l0KHRoaXMpOworICAgICAgICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAgICAg
ICAgIGlmIChlIGluc3RhbmNlb2YgQnJlYWspCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgQ29udGludWUpCisgICAgICAgICAgICAg
ICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgICAgIHRocm93IGU7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KKyAgICB9CisKICAgICB2aXNpdEJyZWFrKG5vZGUpCiAgICAgewogICAgICAg
ICB0aHJvdyBub2RlOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
Rm9yTG9vcC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0Zvckxvb3AuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOTNjNjMzYjdiYjNmM2RjMDMwMjQwOTVkN2NkZjY4YWZmNTY1YTY4MAotLS0gL2Rl
di9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0Zvckxvb3AuanMKQEAg
LTAsMCArMSw0OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAq
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAq
LworInVzZSBzdHJpY3QiOworCitjbGFzcyBGb3JMb29wIGV4dGVuZHMgTm9kZSB7CisgICAgY29u
c3RydWN0b3Iob3JpZ2luLCBpbml0aWFsaXphdGlvbiwgY29uZGl0aW9uLCBpbmNyZW1lbnQsIGJv
ZHkpCisgICAgeworICAgICAgICBzdXBlcigpOworICAgICAgICB0aGlzLl9vcmlnaW4gPSBvcmln
aW47CisgICAgICAgIHRoaXMuX2luaXRpYWxpemF0aW9uID0gaW5pdGlhbGl6YXRpb247CisgICAg
ICAgIHRoaXMuX2NvbmRpdGlvbiA9IGNvbmRpdGlvbjsKKyAgICAgICAgdGhpcy5faW5jcmVtZW50
ID0gaW5jcmVtZW50OworICAgICAgICB0aGlzLl9ib2R5ID0gYm9keTsKKyAgICB9CisKKyAgICBn
ZXQgb3JpZ2luKCkgeyByZXR1cm4gdGhpcy5fb3JpZ2luOyB9CisgICAgZ2V0IGluaXRpYWxpemF0
aW9uKCkgeyByZXR1cm4gdGhpcy5faW5pdGlhbGl6YXRpb247IH0KKyAgICBnZXQgY29uZGl0aW9u
KCkgeyByZXR1cm4gdGhpcy5fY29uZGl0aW9uOyB9CisgICAgZ2V0IGluY3JlbWVudCgpIHsgcmV0
dXJuIHRoaXMuX2luY3JlbWVudDsgfQorICAgIGdldCBib2R5KCkgeyByZXR1cm4gdGhpcy5fYm9k
eTsgfQorCisgICAgdG9TdHJpbmcoKQorICAgIHsKKyAgICAgICAgcmV0dXJuICJmb3IgKCIgKyAo
dGhpcy5pbml0aWFsaXphdGlvbiA/IHRoaXMuaW5pdGlhbGl6YXRpb24gOiAiICIpICsgIjsgIiAr
ICh0aGlzLmNvbmRpdGlvbiA/IHRoaXMuY29uZGl0aW9uIDogIiIpICsgIjsgIiArICh0aGlzLmlu
Y3JlbWVudCA/IHRoaXMuaW5jcmVtZW50IDogIiIpICsgIikgIiArIGJvZHk7CisgICAgfQorfTsK
KwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTG9vcENoZWNrZXIu
anMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Mb29wQ2hlY2tlci5qcwppbmRleCA3
ZWY5YTc0NzcxNWFjNjJiMmQxZjI3ODgzNDUzNWM0OTQ2OGUwZDMzLi4xYThlNzM1NWUyYzUyNGFh
ZWUyYTNjMDg5ZmM5NGM2YzIwYTI4NGYwIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9Mb29wQ2hlY2tlci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9Mb29wQ2hlY2tlci5qcwpAQCAtNjAsNiArNjAsMjIgQEAgY2xhc3MgTG9vcENoZWNrZXIg
ZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAgICAgLS10aGlzLl9sb29wRGVwdGg7CiAgICAgICAgIG5v
ZGUuY29uZGl0aW9uYWwudmlzaXQodGhpcyk7CiAgICAgfQorCisgICAgdmlzaXRGb3JMb29wKG5v
ZGUpCisgICAgeworICAgICAgICBpZiAobm9kZS5pbml0aWFsaXphdGlvbikKKyAgICAgICAgICAg
IG5vZGUuaW5pdGlhbGl6YXRpb24udmlzaXQodGhpcyk7CisgICAgICAgIGlmIChub2RlLmNvbmRp
dGlvbikKKyAgICAgICAgICAgIG5vZGUuY29uZGl0aW9uLnZpc2l0KHRoaXMpOworICAgICAgICBp
ZiAobm9kZS5pbmNyZW1lbnQpCisgICAgICAgICAgICBub2RlLmluY3JlbWVudC52aXNpdCh0aGlz
KTsKKyAgICAgICAgKyt0aGlzLl9sb29wRGVwdGg7CisgICAgICAgIG5vZGUuYm9keS52aXNpdCh0
aGlzKTsKKyAgICAgICAgaWYgKHRoaXMuX2xvb3BEZXB0aCA9PSAwKSB7CisgICAgICAgICAgICB0
aHJvdyBuZXcgRXJyb3IoIlRoZSBudW1iZXIgb2YgbmVzdGVkIGxvb3BzIGlzIG5lZ2F0aXZlISIp
OworICAgICAgICB9CisgICAgICAgIC0tdGhpcy5fbG9vcERlcHRoOworICAgIH0KICAgICAKICAg
ICB2aXNpdEJyZWFrKG5vZGUpCiAgICAgewpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvTmFtZVJlc29sdmVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTmFtZVJlc29sdmVyLmpzCmluZGV4IDk3Njg0ZjEwZWU4OWZjZTYwNWYyMTE2OGM0MGY3OWE1
ZTRkMmE0MzcuLmNiZjA3ZWUxYjkxZDE0YzUzMjNkMTNmMDQyMjkzMDhmOGMwN2YwMTcgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hbWVSZXNvbHZlci5qcworKysg
Yi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lUmVzb2x2ZXIuanMKQEAgLTExNCw2
ICsxMTQsMTggQEAgY2xhc3MgTmFtZVJlc29sdmVyIGV4dGVuZHMgVmlzaXRvciB7CiAgICAgICAg
IG5vZGUuYm9keS52aXNpdChuZXcgTmFtZVJlc29sdmVyKG5ldyBOYW1lQ29udGV4dCh0aGlzLl9u
YW1lQ29udGV4dCkpKTsKICAgICAgICAgbm9kZS5jb25kaXRpb25hbC52aXNpdCh0aGlzKTsKICAg
ICB9CisKKyAgICB2aXNpdEZvckxvb3Aobm9kZSkKKyAgICB7CisgICAgICAgIGxldCBuZXdSZXNv
bHZlciA9IG5ldyBOYW1lUmVzb2x2ZXIobmV3IE5hbWVDb250ZXh0KHRoaXMuX25hbWVDb250ZXh0
KSkKKyAgICAgICAgaWYgKG5vZGUuaW5pdGlhbGl6YXRpb24pCisgICAgICAgICAgICBub2RlLmlu
aXRpYWxpemF0aW9uLnZpc2l0KG5ld1Jlc29sdmVyKTsKKyAgICAgICAgaWYgKG5vZGUuY29uZGl0
aW9uKQorICAgICAgICAgICAgbm9kZS5jb25kaXRpb24udmlzaXQobmV3UmVzb2x2ZXIpOworICAg
ICAgICBpZiAobm9kZS5pbmNyZW1lbnQpCisgICAgICAgICAgICBub2RlLmluY3JlbWVudC52aXNp
dChuZXdSZXNvbHZlcik7CisgICAgICAgIG5vZGUuYm9keS52aXNpdChuZXdSZXNvbHZlcik7Cisg
ICAgfQogICAgIAogICAgIHZpc2l0UHJvdG9jb2xEZWNsKG5vZGUpCiAgICAgewpkaWZmIC0tZ2l0
IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUGFyc2UuanMgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9QYXJzZS5qcwppbmRleCBlZGE3YzdjNTJiMWRhZDc3NjlmMWJkODM2
MjFkZDk2MmMyMjljYzQ4Li5jNzQ0NmQxNDUyZDZkMjYwOGQzMGFjYTcxNmEwMzJiYzY5NDk3ZDJi
IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QYXJzZS5qcworKysg
Yi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QYXJzZS5qcwpAQCAtNTczLDYgKzU3Mywz
NyBAQCBmdW5jdGlvbiBwYXJzZShwcm9ncmFtLCBvcmlnaW4sIG9yaWdpbktpbmQsIGxpbmVOdW1i
ZXJPZmZzZXQsIHRleHQpCiAgICAgICAgIHJldHVybiBuZXcgV2hpbGVMb29wKG9yaWdpbiwgbmV3
IENhbGxFeHByZXNzaW9uKGNvbmRpdGlvbmFsLm9yaWdpbiwgImJvb2wiLCBbXSwgW2NvbmRpdGlv
bmFsXSksIGJvZHkpOwogICAgIH0KIAorICAgIGZ1bmN0aW9uIHBhcnNlRm9yKCkKKyAgICB7Cisg
ICAgICAgIGxldCBvcmlnaW4gPSBjb25zdW1lKCJmb3IiKTsKKyAgICAgICAgY29uc3VtZSgiKCIp
OworICAgICAgICBsZXQgaW5pdGlhbGl6YXRpb247CisgICAgICAgIGlmICh0cnlDb25zdW1lKCI7
IikpCisgICAgICAgICAgICBpbml0aWFsaXphdGlvbiA9IHVuZGVmaW5lZDsKKyAgICAgICAgZWxz
ZSB7CisgICAgICAgICAgICBpbml0aWFsaXphdGlvbiA9IGxleGVyLmJhY2t0cmFja2luZ1Njb3Bl
KHBhcnNlVmFyaWFibGVEZWNscyk7CisgICAgICAgICAgICBpZiAoIWluaXRpYWxpemF0aW9uKQor
ICAgICAgICAgICAgICAgIGluaXRpYWxpemF0aW9uID0gcGFyc2VFZmZlY3RmdWxTdGF0ZW1lbnQo
KTsKKyAgICAgICAgfQorICAgICAgICBsZXQgY29uZGl0aW9uID0gdHJ5Q29uc3VtZSgiOyIpOwor
ICAgICAgICBpZiAoY29uZGl0aW9uKQorICAgICAgICAgICAgY29uZGl0aW9uID0gdW5kZWZpbmVk
OworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGNvbmRpdGlvbiA9IHBhcnNlRXhwcmVzc2lv
bigpOworICAgICAgICAgICAgY29uc3VtZSgiOyIpOworICAgICAgICAgICAgY29uZGl0aW9uID0g
bmV3IENhbGxFeHByZXNzaW9uKGNvbmRpdGlvbi5vcmlnaW4sICJib29sIiwgW10sIFtjb25kaXRp
b25dKTsKKyAgICAgICAgfQorICAgICAgICBsZXQgaW5jcmVtZW50OworICAgICAgICBpZiAodHJ5
Q29uc3VtZSgiKSIpKQorICAgICAgICAgICAgaW5jcmVtZW50ID0gdW5kZWZpbmVkOworICAgICAg
ICBlbHNlIHsKKyAgICAgICAgICAgIGluY3JlbWVudCA9IHBhcnNlRXhwcmVzc2lvbigpOworICAg
ICAgICAgICAgY29uc3VtZSgiKSIpOworICAgICAgICB9CisgICAgICAgIGxldCBib2R5ID0gcGFy
c2VTdGF0ZW1lbnQoKTsKKyAgICAgICAgcmV0dXJuIG5ldyBGb3JMb29wKG9yaWdpbiwgaW5pdGlh
bGl6YXRpb24sIGNvbmRpdGlvbiwgaW5jcmVtZW50LCBib2R5KTsKKyAgICB9CisKICAgICBmdW5j
dGlvbiBwYXJzZURvKCkKICAgICB7CiAgICAgICAgIGxldCBvcmlnaW4gPSBjb25zdW1lKCJkbyIp
OwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV0dXJuQ2hlY2tl
ci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1JldHVybkNoZWNrZXIuanMKaW5k
ZXggMmYwNDhiNzBiNzEwZjk5ZmNhNzZhNzEyODRmNjU4MGViMWQ2YmUyNS4uMWRhNGRjMTkyMmRl
NzBiMzM0OWM1NjRkNTQ2YzE5YTM5YTZlNTY4YiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvUmV0dXJuQ2hlY2tlci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9SZXR1cm5DaGVja2VyLmpzCkBAIC03NCwyNCArNzQsMzAgQEAgY2xhc3MgUmV0
dXJuQ2hlY2tlciBleHRlbmRzIFZpc2l0b3IgewogICAgICAgICByZXR1cm4gdGhpcy5yZXR1cm5T
dHlsZS5IYXNudFJldHVybmVkWWV0OwogICAgIH0KIAorICAgIF9pc0Jvb2xDYXN0RnJvbUxpdGVy
YWxUcnVlKG5vZGUpCisgICAgeworICAgICAgICByZXR1cm4gbm9kZS5pc0Nhc3QgJiYgbm9kZS5y
ZXR1cm5UeXBlIGluc3RhbmNlb2YgVHlwZVJlZiAmJiBub2RlLnJldHVyblR5cGUuZXF1YWxzKHRo
aXMuX3Byb2dyYW0uaW50cmluc2ljcy5ib29sKSAmJiBub2RlLmFyZ3VtZW50TGlzdC5sZW5ndGgg
PT0gMSAmJiBub2RlLmFyZ3VtZW50TGlzdFswXS5saXN0Lmxlbmd0aCA9PSAxICYmIG5vZGUuYXJn
dW1lbnRMaXN0WzBdLmxpc3RbMF0gaW5zdGFuY2VvZiBCb29sTGl0ZXJhbCAmJiBub2RlLmFyZ3Vt
ZW50TGlzdFswXS5saXN0WzBdLnZhbHVlOworICAgIH0KKwogICAgIHZpc2l0V2hpbGVMb29wKG5v
ZGUpCiAgICAgewotICAgICAgICBpZiAobm9kZS5jb25kaXRpb25hbCBpbnN0YW5jZW9mIENhbGxF
eHByZXNzaW9uICYmIG5vZGUuY29uZGl0aW9uYWwuaXNDYXN0ICYmIG5vZGUuY29uZGl0aW9uYWwu
cmV0dXJuVHlwZSBpbnN0YW5jZW9mIFR5cGVSZWYgJiYgbm9kZS5jb25kaXRpb25hbC5yZXR1cm5U
eXBlLmVxdWFscyh0aGlzLl9wcm9ncmFtLmludHJpbnNpY3MuYm9vbCkgJiYgbm9kZS5jb25kaXRp
b25hbC5hcmd1bWVudExpc3QubGVuZ3RoID09IDEgJiYgbm9kZS5jb25kaXRpb25hbC5hcmd1bWVu
dExpc3RbMF0ubGlzdC5sZW5ndGggPT0gMSAmJiBub2RlLmNvbmRpdGlvbmFsLmFyZ3VtZW50TGlz
dFswXS5saXN0WzBdIGluc3RhbmNlb2YgQm9vbExpdGVyYWwgJiYgbm9kZS5jb25kaXRpb25hbC5h
cmd1bWVudExpc3RbMF0ubGlzdFswXS52YWx1ZSkgewotICAgICAgICAgICAgc3dpdGNoIChub2Rl
LmJvZHkudmlzaXQodGhpcykpIHsKKyAgICAgICAgbm9kZS5jb25kaXRpb25hbC52aXNpdCh0aGlz
KTsKKyAgICAgICAgbGV0IGJvZHlSZXR1cm4gPSBub2RlLmJvZHkudmlzaXQodGhpcyk7CisgICAg
ICAgIGlmIChub2RlLmNvbmRpdGlvbmFsIGluc3RhbmNlb2YgQ2FsbEV4cHJlc3Npb24gJiYgdGhp
cy5faXNCb29sQ2FzdEZyb21MaXRlcmFsVHJ1ZShub2RlLmNvbmRpdGlvbmFsKSkgeworICAgICAg
ICAgICAgc3dpdGNoIChib2R5UmV0dXJuKSB7CiAgICAgICAgICAgICBjYXNlIHRoaXMucmV0dXJu
U3R5bGUuRGVmaW5pdGVseVJldHVybnM6CiAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmV0
dXJuU3R5bGUuRGVmaW5pdGVseVJldHVybnM7CiAgICAgICAgICAgICBjYXNlIHRoaXMucmV0dXJu
U3R5bGUuRGVmaW5pdGVseURvZXNudFJldHVybjoKICAgICAgICAgICAgIGNhc2UgdGhpcy5yZXR1
cm5TdHlsZS5IYXNudFJldHVybmVkWWV0OgogICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJl
dHVyblN0eWxlLkhhc250UmV0dXJuZWRZZXQ7CiAgICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxz
ZQotICAgICAgICAgICAgbm9kZS5jb25kaXRpb25hbC52aXNpdCh0aGlzKTsKKyAgICAgICAgfQog
ICAgICAgICByZXR1cm4gdGhpcy5yZXR1cm5TdHlsZS5IYXNudFJldHVybmVkWWV0OwogICAgIH0K
IAogICAgIHZpc2l0RG9XaGlsZUxvb3Aobm9kZSkKICAgICB7Ci0gICAgICAgIGxldCByZXN1bHQ7
CisgICAgICAgIGxldCByZXN1bHQgPSB0aGlzLnJldHVyblN0eWxlLkhhc250UmV0dXJuZWRZZXQ7
CiAgICAgICAgIHN3aXRjaCAobm9kZS5ib2R5LnZpc2l0KHRoaXMpKSB7CiAgICAgICAgIGNhc2Ug
dGhpcy5yZXR1cm5TdHlsZS5EZWZpbml0ZWx5UmV0dXJuczoKICAgICAgICAgICAgIHJlc3VsdCA9
IHRoaXMucmV0dXJuU3R5bGUuRGVmaW5pdGVseVJldHVybnM7CkBAIC0xMDIsNiArMTA4LDI2IEBA
IGNsYXNzIFJldHVybkNoZWNrZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAgICAgbm9kZS5jb25k
aXRpb25hbC52aXNpdCh0aGlzKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CisKKyAg
ICB2aXNpdEZvckxvb3Aobm9kZSkKKyAgICB7CisgICAgICAgIGlmIChub2RlLmluaXRpYWxpemF0
aW9uKQorICAgICAgICAgICAgbm9kZS5pbml0aWFsaXphdGlvbi52aXNpdCh0aGlzKTsKKyAgICAg
ICAgaWYgKG5vZGUuY29uZGl0aW9uKQorICAgICAgICAgICAgbm9kZS5jb25kaXRpb24udmlzaXQo
dGhpcyk7CisgICAgICAgIGlmIChub2RlLmluY3JlbWVudCkKKyAgICAgICAgICAgIG5vZGUuaW5j
cmVtZW50LnZpc2l0KHRoaXMpOworICAgICAgICBsZXQgYm9keVJldHVybiA9IG5vZGUuYm9keS52
aXNpdCh0aGlzKTsKKyAgICAgICAgaWYgKG5vZGUuY29uZGl0aW9uID09PSB1bmRlZmluZWQgfHwg
dGhpcy5faXNCb29sQ2FzdEZyb21MaXRlcmFsVHJ1ZShub2RlLmNvbmRpdGlvbikpIHsKKyAgICAg
ICAgICAgIHN3aXRjaCAoYm9keVJldHVybikgeworICAgICAgICAgICAgY2FzZSB0aGlzLnJldHVy
blN0eWxlLkRlZmluaXRlbHlSZXR1cm5zOgorICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJl
dHVyblN0eWxlLkRlZmluaXRlbHlSZXR1cm5zOworICAgICAgICAgICAgY2FzZSB0aGlzLnJldHVy
blN0eWxlLkRlZmluaXRlbHlEb2VzbnRSZXR1cm46CisgICAgICAgICAgICBjYXNlIHRoaXMucmV0
dXJuU3R5bGUuSGFzbnRSZXR1cm5lZFlldDoKKyAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5y
ZXR1cm5TdHlsZS5IYXNudFJldHVybmVkWWV0OworICAgICAgICAgICAgfQorICAgICAgICB9Cisg
ICAgfQogICAgIAogICAgIHZpc2l0UmV0dXJuKG5vZGUpCiAgICAgewpkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanMgYi9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9SZXdyaXRlci5qcwppbmRleCBkZjI1Y2Q2ZDllZjkyODQzNmE2MGNjY2Fk
YTEzNTRkYWYyYmFkMTRiLi4wNTNiMWFiYThiNGNhOWU0YjllZWVlN2MxZjYzODk1NjEzMmNkMWQw
IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXdyaXRlci5qcwor
KysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXdyaXRlci5qcwpAQCAtMzAzLDUg
KzMwMywxNCBAQCBjbGFzcyBSZXdyaXRlciBleHRlbmRzIFZpc2l0b3JCYXNlIHsKICAgICB7CiAg
ICAgICAgIHJldHVybiBuZXcgRG9XaGlsZUxvb3Aobm9kZS5vcmlnaW4sIG5vZGUuYm9keS52aXNp
dCh0aGlzKSwgbm9kZS5jb25kaXRpb25hbC52aXNpdCh0aGlzKSk7CiAgICAgfQorCisgICAgdmlz
aXRGb3JMb29wKG5vZGUpCisgICAgeworICAgICAgICByZXR1cm4gbmV3IEZvckxvb3Aobm9kZS5v
cmlnaW4sCisgICAgICAgICAgICBub2RlLmluaXRpYWxpemF0aW9uID8gbm9kZS5pbml0aWFsaXph
dGlvbi52aXNpdCh0aGlzKSA6IHVuZGVmaW5lZCwKKyAgICAgICAgICAgIG5vZGUuY29uZGl0aW9u
ID8gbm9kZS5jb25kaXRpb24udmlzaXQodGhpcykgOiB1bmRlZmluZWQsCisgICAgICAgICAgICBu
b2RlLmluY3JlbWVudCA/IG5vZGUuaW5jcmVtZW50LnZpc2l0KHRoaXMpIDogdW5kZWZpbmVkLAor
ICAgICAgICAgICAgbm9kZS5ib2R5LnZpc2l0KHRoaXMpKTsKKyAgICB9CiB9CiAKZGlmZiAtLWdp
dCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuaHRtbCBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuaHRtbAppbmRleCBlNzdhYjE5OGYwNTkzMzNmNzM4Mjhl
Njc1YjUzYzdmN2NmMDc1YTg1Li5lODRlYTFmZjlkY2JlNWQ3YzBmYjI0YjJlOThjMzMzYzIwODM1
ZTUyIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0Lmh0bWwK
KysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5odG1sCkBAIC0zOSw2ICsz
OSw3IEBACiA8c2NyaXB0IHNyYz0iRXZhbHVhdGlvbkNvbW1vbi5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0iRXZhbHVhdG9yLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJGaWVsZC5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iRm9yTG9vcC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iRnVuYy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iRnVuY0RlZi5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iRnVuY0luc3RhbnRpYXRvci5qcyI+PC9zY3JpcHQ+CmRpZmYgLS1naXQg
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvVGVzdC5qcwppbmRleCBmOWNiMWM0ZDg4MWE5MDA5MDhiYjNlZTY0NGFi
NjYxODUzN2YzYjkwLi44ZGNjODI2ZjYzNTBmMzRhN2ZjYTFkYWVhMTQwZjRmNmVkZTA0YzhmIDEw
MDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzCisrKyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMKQEAgLTE1OTcsNiArMTU5NywxODUg
QEAgZnVuY3Rpb24gVEVTVF9kb1doaWxlKCkKICAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVu
Y3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCA5KV0pLCAxOSk7CiB9
CiAKK2Z1bmN0aW9uIFRFU1RfZm9yTG9vcCgpCit7CisgICAgbGV0IHByb2dyYW0gPSBkb1ByZXAo
YAorICAgICAgICBpbnQgZm9vKGludCB4KQorICAgICAgICB7CisgICAgICAgICAgICBpbnQgc3Vt
ID0gMDsKKyAgICAgICAgICAgIGludCBpOworICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IHg7
IGkgPSBpICsgMSkgeworICAgICAgICAgICAgICAgIHN1bSA9IHN1bSArIGk7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICByZXR1cm4gc3VtOworICAgICAgICB9CisgICAgYCk7CisgICAgY2hl
Y2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQo
cHJvZ3JhbSwgMyldKSwgMyk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHBy
b2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgNCldKSwgNik7CisgICAgY2hlY2tJ
bnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJv
Z3JhbSwgNSldKSwgMTApOworICAgIHByb2dyYW0gPSBkb1ByZXAoYAorICAgICAgICBpbnQgZm9v
KGludCB4KQorICAgICAgICB7CisgICAgICAgICAgICBpbnQgc3VtID0gMDsKKyAgICAgICAgICAg
IGZvciAoaW50IGkgPSAwOyBpIDwgeDsgaSA9IGkgKyAxKSB7CisgICAgICAgICAgICAgICAgc3Vt
ID0gc3VtICsgaTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldHVybiBzdW07CisgICAg
ICAgIH0KKyAgICBgKTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3Jh
bSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCAzKV0pLCAzKTsKKyAgICBjaGVja0ludChw
cm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFt
LCA0KV0pLCA2KTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwg
ImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCA1KV0pLCAxMCk7CisgICAgcHJvZ3JhbSA9IGRv
UHJlcChgCisgICAgICAgIGludCBmb28oaW50IHgpCisgICAgICAgIHsKKyAgICAgICAgICAgIGlu
dCBzdW0gPSAwOworICAgICAgICAgICAgaW50IGkgPSAxMDA7CisgICAgICAgICAgICBmb3IgKGlu
dCBpID0gMDsgaSA8IHg7IGkgPSBpICsgMSkgeworICAgICAgICAgICAgICAgIHN1bSA9IHN1bSAr
IGk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICByZXR1cm4gc3VtOworICAgICAgICB9Cisg
ICAgYCk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28i
LCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgMyldKSwgMyk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwg
Y2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgNCldKSwg
Nik7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBb
XSwgW21ha2VJbnQocHJvZ3JhbSwgNSldKSwgMTApOworICAgIHByb2dyYW0gPSBkb1ByZXAoYAor
ICAgICAgICBpbnQgZm9vKGludCB4KQorICAgICAgICB7CisgICAgICAgICAgICBpbnQgc3VtID0g
MDsKKyAgICAgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgeDsgaSA9IGkgKyAxKSB7CisgICAg
ICAgICAgICAgICAgaWYgKGkgPT0gNCkKKyAgICAgICAgICAgICAgICAgICAgY29udGludWU7Cisg
ICAgICAgICAgICAgICAgc3VtID0gc3VtICsgaTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IHJldHVybiBzdW07CisgICAgICAgIH0KKyAgICBgKTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBj
YWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCAzKV0pLCAz
KTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtd
LCBbbWFrZUludChwcm9ncmFtLCA0KV0pLCA2KTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxs
RnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCA1KV0pLCA2KTsK
KyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBb
bWFrZUludChwcm9ncmFtLCA2KV0pLCAxMSk7CisgICAgcHJvZ3JhbSA9IGRvUHJlcChgCisgICAg
ICAgIGludCBmb28oaW50IHgpCisgICAgICAgIHsKKyAgICAgICAgICAgIGludCBzdW0gPSAwOwor
ICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCB4OyBpID0gaSArIDEpIHsKKyAgICAgICAg
ICAgICAgICBpZiAoaSA9PSA1KQorICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
ICAgICAgICBzdW0gPSBzdW0gKyBpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0dXJu
IHN1bTsKKyAgICAgICAgfQorICAgIGApOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5j
dGlvbihwcm9ncmFtLCAiZm9vIiwgW10sIFttYWtlSW50KHByb2dyYW0sIDMpXSksIDMpOworICAg
IGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiZm9vIiwgW10sIFttYWtl
SW50KHByb2dyYW0sIDQpXSksIDYpOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlv
bihwcm9ncmFtLCAiZm9vIiwgW10sIFttYWtlSW50KHByb2dyYW0sIDUpXSksIDEwKTsKKyAgICBj
aGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBbbWFrZUlu
dChwcm9ncmFtLCA2KV0pLCAxMCk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9u
KHByb2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgNyldKSwgMTApOworICAgIHBy
b2dyYW0gPSBkb1ByZXAoYAorICAgICAgICBpbnQgZm9vKGludCB4KQorICAgICAgICB7CisgICAg
ICAgICAgICBpbnQgc3VtID0gMDsKKyAgICAgICAgICAgIGZvciAoaW50IGkgPSAwOyA7IGkgPSBp
ICsgMSkgeworICAgICAgICAgICAgICAgIGlmIChpID49IHgpCisgICAgICAgICAgICAgICAgICAg
IGJyZWFrOworICAgICAgICAgICAgICAgIHN1bSA9IHN1bSArIGk7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICByZXR1cm4gc3VtOworICAgICAgICB9CisgICAgYCk7CisgICAgY2hlY2tJbnQo
cHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJvZ3Jh
bSwgMyldKSwgMyk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0s
ICJmb28iLCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgNCldKSwgNik7CisgICAgY2hlY2tJbnQocHJv
Z3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJvZ3JhbSwg
NSldKSwgMTApOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAi
Zm9vIiwgW10sIFttYWtlSW50KHByb2dyYW0sIDYpXSksIDE1KTsKKyAgICBjaGVja0ludChwcm9n
cmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCA3
KV0pLCAyMSk7CisgICAgcHJvZ3JhbSA9IGRvUHJlcChgCisgICAgICAgIGludCBmb28oaW50IHgp
CisgICAgICAgIHsKKyAgICAgICAgICAgIGludCBzdW0gPSAwOworICAgICAgICAgICAgaW50IGkg
PSAwOworICAgICAgICAgICAgZm9yICggOyA7IGkgPSBpICsgMSkgeworICAgICAgICAgICAgICAg
IGlmIChpID49IHgpCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAg
IHN1bSA9IHN1bSArIGk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICByZXR1cm4gc3VtOwor
ICAgICAgICB9CisgICAgYCk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHBy
b2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgMyldKSwgMyk7CisgICAgY2hlY2tJ
bnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJv
Z3JhbSwgNCldKSwgNik7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dy
YW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgNSldKSwgMTApOworICAgIGNoZWNrSW50
KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiZm9vIiwgW10sIFttYWtlSW50KHByb2dy
YW0sIDYpXSksIDE1KTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3Jh
bSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCA3KV0pLCAyMSk7CisgICAgcHJvZ3JhbSA9
IGRvUHJlcChgCisgICAgICAgIGludCBmb28oaW50IHgpCisgICAgICAgIHsKKyAgICAgICAgICAg
IGludCBzdW0gPSAwOworICAgICAgICAgICAgaW50IGkgPSAwOworICAgICAgICAgICAgZm9yICgg
OyA7ICkgeworICAgICAgICAgICAgICAgIGlmIChpID49IHgpCisgICAgICAgICAgICAgICAgICAg
IGJyZWFrOworICAgICAgICAgICAgICAgIHN1bSA9IHN1bSArIGk7CisgICAgICAgICAgICAgICAg
aSA9IGkgKyAxOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0dXJuIHN1bTsKKyAgICAg
ICAgfQorICAgIGApOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFt
LCAiZm9vIiwgW10sIFttYWtlSW50KHByb2dyYW0sIDMpXSksIDMpOworICAgIGNoZWNrSW50KHBy
b2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiZm9vIiwgW10sIFttYWtlSW50KHByb2dyYW0s
IDQpXSksIDYpOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAi
Zm9vIiwgW10sIFttYWtlSW50KHByb2dyYW0sIDUpXSksIDEwKTsKKyAgICBjaGVja0ludChwcm9n
cmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCA2
KV0pLCAxNSk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJm
b28iLCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgNyldKSwgMjEpOworICAgIGNoZWNrRmFpbCgKKyAg
ICAgICAgKCkgPT4gZG9QcmVwKGAKKyAgICAgICAgICAgIHZvaWQgZm9vKGludCB4KQorICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgIGZvciAoaW50IGkgPSAwOyA7IGkgPSBpICsgMSkgewor
ICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICAgICAgeCA9IGk7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICBgKSwKKyAgICAgICAgKGUp
ID0+IGUgaW5zdGFuY2VvZiBXVHlwZUVycm9yKTsKKyAgICBwcm9ncmFtID0gZG9QcmVwKGAKKyAg
ICAgICAgaW50IGZvbyhpbnQgeCkKKyAgICAgICAgeworICAgICAgICAgICAgZm9yICggOyA7ICkg
eworICAgICAgICAgICAgICAgIHJldHVybiA3OworICAgICAgICAgICAgfQorICAgICAgICB9Cisg
ICAgYCk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28i
LCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgMyldKSwgNyk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwg
Y2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgNCldKSwg
Nyk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBb
XSwgW21ha2VJbnQocHJvZ3JhbSwgNSldKSwgNyk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2Fs
bEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBbXSwgW21ha2VJbnQocHJvZ3JhbSwgNildKSwgNyk7
CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28iLCBbXSwg
W21ha2VJbnQocHJvZ3JhbSwgNyldKSwgNyk7CisgICAgY2hlY2tGYWlsKAorICAgICAgICAoKSA9
PiBkb1ByZXAoYAorICAgICAgICAgICAgaW50IGZvbyhpbnQgeCkKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICBmb3IgKCA7IHggPCAxMDsgKSB7CisgICAgICAgICAgICAgICAgICAgIHJl
dHVybiA3OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgYCksCisg
ICAgICAgIChlKSA9PiBlIGluc3RhbmNlb2YgV1R5cGVFcnJvcik7CisgICAgcHJvZ3JhbSA9IGRv
UHJlcChgCisgICAgICAgIGludCBmb28oaW50IHgpCisgICAgICAgIHsKKyAgICAgICAgICAgIGZv
ciAoIDsgdHJ1ZTsgKSB7CisgICAgICAgICAgICAgICAgcmV0dXJuIDc7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KKyAgICBgKTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24o
cHJvZ3JhbSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCAzKV0pLCA3KTsKKyAgICBjaGVj
a0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBbbWFrZUludChw
cm9ncmFtLCA0KV0pLCA3KTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJv
Z3JhbSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCA1KV0pLCA3KTsKKyAgICBjaGVja0lu
dChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9n
cmFtLCA2KV0pLCA3KTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3Jh
bSwgImZvbyIsIFtdLCBbbWFrZUludChwcm9ncmFtLCA3KV0pLCA3KTsKK30KKwogbGV0IGZpbHRl
ciA9IC8uKi87IC8vIHJ1biBldmVyeXRoaW5nIGJ5IGRlZmF1bHQKIGlmICh0aGlzWyJhcmd1bWVu
dHMiXSkgewogICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7
CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9WaXNpdG9yLmpzIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmlzaXRvci5qcwppbmRleCAxYjVkNDE2MmNi
MmUyZmYzNjc2MTRkZTU5NjNkZjA3MDhkZDU2ODMzLi45ZGE1MzM2OTBhMWM3ODllMDY2ZGM2MzQw
M2Q3NGM5MzQyZTM4NWU1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9WaXNpdG9yLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3Iu
anMKQEAgLTIyNyw2ICsyMjcsMTcgQEAgY2xhc3MgVmlzaXRvciBleHRlbmRzIFZpc2l0b3JCYXNl
IHsKICAgICAgICAgbm9kZS5ib2R5LnZpc2l0KHRoaXMpOwogICAgICAgICBub2RlLmNvbmRpdGlv
bmFsLnZpc2l0KHRoaXMpOwogICAgIH0KKyAgICAKKyAgICB2aXNpdEZvckxvb3Aobm9kZSkKKyAg
ICB7CisgICAgICAgIGlmIChub2RlLmluaXRpYWxpemF0aW9uKQorICAgICAgICAgICAgbm9kZS5p
bml0aWFsaXphdGlvbi52aXNpdCh0aGlzKTsKKyAgICAgICAgaWYgKG5vZGUuY29uZGl0aW9uKQor
ICAgICAgICAgICAgbm9kZS5jb25kaXRpb24udmlzaXQodGhpcyk7CisgICAgICAgIGlmIChub2Rl
LmluY3JlbWVudCkKKyAgICAgICAgICAgIG5vZGUuaW5jcmVtZW50LnZpc2l0KHRoaXMpOworICAg
ICAgICBub2RlLmJvZHkudmlzaXQodGhpcyk7CisgICAgfQogCiAgICAgdmlzaXRSZXR1cm4obm9k
ZSkKICAgICB7Cg==
</data>
<flag name="review"
          id="340516"
          type_id="1"
          status="+"
          setter="fpizlo"
    />
          </attachment>
      

    </bug>

</bugzilla>