<?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>177118</bug_id>
          
          <creation_ts>2017-09-18 19:03:39 -0700</creation_ts>
          <short_desc>WSL prepare() should cache the parsed standard library</short_desc>
          <delta_ts>2018-10-13 19:39:42 -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>WebGPU</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>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>176199</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>mmaxfield</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1350205</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-09-18 19:03:39 -0700</bug_when>
    <thetext>Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350206</commentid>
    <comment_count>1</comment_count>
      <attachid>321168</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-09-18 19:04:42 -0700</bug_when>
    <thetext>Created attachment 321168
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350221</commentid>
    <comment_count>2</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2017-09-18 19:55:58 -0700</bug_when>
    <thetext>https://en.wikipedia.org/wiki/Rent_Is_Too_Damn_High_Party</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350224</commentid>
    <comment_count>3</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2017-09-18 19:56:43 -0700</bug_when>
    <thetext>This should help a lot with https://bugs.webkit.org/show_bug.cgi?id=177116</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350235</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-09-18 20:19:40 -0700</bug_when>
    <thetext>Landed in https://trac.webkit.org/changeset/222199/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1353480</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-09-27 12:33:59 -0700</bug_when>
    <thetext>&lt;rdar://problem/34693495&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468990</commentid>
    <comment_count>6</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-10-13 19:39:42 -0700</bug_when>
    <thetext>Migrated to https://github.com/gpuweb/WHLSL/issues/184</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>321168</attachid>
            <date>2017-09-18 19:04:42 -0700</date>
            <delta_ts>2017-09-18 19:55:25 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>12856</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIyMjE5NSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDMyIEBACisyMDE3LTA5LTE4ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisK
KyAgICAgICAgV1NMIHByZXBhcmUoKSBzaG91bGQgY2FjaGUgdGhlIHBhcnNlZCBzdGFuZGFyZCBs
aWJyYXJ5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NzcxMTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisg
ICAgICAgIFRoZSBleGVjdXRpb24gdGltZSBvZiBUZXN0LmpzIGlzIHRvbyBkYW1uIGhpZ2ghCisg
ICAgICAgIAorICAgICAgICBTbyBJIG1hZGUgaXQgMnggZmFzdGVyIGJ5IGNhY2hpbmcgdGhlIHBh
cnNlZCBzdGFuZGFyZCBsaWJyYXJ5LgorCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvQWxsLmpzOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0Nsb25lUHJvZ3Jh
bS5qczogQWRkZWQuCisgICAgICAgIChjbG9uZVByb2dyYW0pOgorICAgICAgICAqIFdlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1ByZXBhcmUuanM6CisgICAgICAgIChsZXQucHJlcGFyZSk6CisgICAg
ICAgIChwcmVwYXJlKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9TdGF0ZW1lbnRDbG9uZXIuanM6IEFkZGVkLgorICAgICAgICAoU3RhdGVtZW50Q2xvbmVyLnBy
b3RvdHlwZS52aXNpdEZ1bmNEZWYpOgorICAgICAgICAoU3RhdGVtZW50Q2xvbmVyLnByb3RvdHlw
ZS52aXNpdE5hdGl2ZUZ1bmMpOgorICAgICAgICAoU3RhdGVtZW50Q2xvbmVyLnByb3RvdHlwZS52
aXNpdE5hdGl2ZVR5cGUpOgorICAgICAgICAoU3RhdGVtZW50Q2xvbmVyLnByb3RvdHlwZS52aXNp
dFR5cGVEZWYpOgorICAgICAgICAoU3RhdGVtZW50Q2xvbmVyLnByb3RvdHlwZS52aXNpdFN0cnVj
dFR5cGUpOgorICAgICAgICAoU3RhdGVtZW50Q2xvbmVyLnByb3RvdHlwZS52aXNpdENvbnN0ZXhw
clR5cGVQYXJhbWV0ZXIpOgorICAgICAgICAoU3RhdGVtZW50Q2xvbmVyLnByb3RvdHlwZS52aXNp
dFByb3RvY29sRGVjbCk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5o
dG1sOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanM6CisgICAgICAg
IChkb1Rlc3QpOgorCiAyMDE3LTA5LTE4ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9A
aWdhbGlhLmNvbT4KIAogICAgICAgICBbQ01ha2VdIFJlbmFtZSBXZWJLaXQgdGFyZ2V0IHRvIFdl
YktpdExlZ2FjeSBhbmQgcmVuYW1lIFdlYktpdDIgdGFyZ2V0IHRvIFdlYktpdApJbmRleDogVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qcwkocmV2aXNpb24gMjIyMTk1KQorKysgVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzCSh3b3JraW5nIGNvcHkpCkBAIC01NCw2ICs1
NCw3IEBAIGxvYWQoIkNoZWNrUmV0dXJucy5qcyIpOwogbG9hZCgiQ2hlY2tVbnJlYWNoYWJsZUNv
ZGUuanMiKTsKIGxvYWQoIkNoZWNrV3JhcHBlZC5qcyIpOwogbG9hZCgiQ2hlY2tlci5qcyIpOwor
bG9hZCgiQ2xvbmVQcm9ncmFtLmpzIik7CiBsb2FkKCJDb21tYUV4cHJlc3Npb24uanMiKTsKIGxv
YWQoIkNvbnN0ZXhwclR5cGVQYXJhbWV0ZXIuanMiKTsKIGxvYWQoIkNvbnRpbnVlLmpzIik7CkBA
IC0xMjksNiArMTMwLDcgQEAgbG9hZCgiUmV0dXJuLmpzIik7CiBsb2FkKCJSZXR1cm5DaGVja2Vy
LmpzIik7CiBsb2FkKCJSZXR1cm5FeGNlcHRpb24uanMiKTsKIGxvYWQoIlN0YW5kYXJkTGlicmFy
eS5qcyIpOworbG9hZCgiU3RhdGVtZW50Q2xvbmVyLmpzIik7CiBsb2FkKCJTdHJ1Y3RMYXlvdXRC
dWlsZGVyLmpzIik7CiBsb2FkKCJTdHJ1Y3RUeXBlLmpzIik7CiBsb2FkKCJTdWJzdGl0dXRpb24u
anMiKTsKSW5kZXg6IFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0Nsb25lUHJvZ3JhbS5q
cwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DbG9uZVByb2dy
YW0uanMJKG5vbmV4aXN0ZW50KQorKysgVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2xv
bmVQcm9ncmFtLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycg
QU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAor
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworLy8gVGhp
cyBpcyBvbmx5IGN1cnJlbnRseSB1c2VkIHRvIGNsb25lIHByb2dyYW1zIGp1c3QgYWZ0ZXIgcGFy
c2luZywgc28gaXQgZG9lc24ndCByZWFsbHkgbmVlZCB0byBiZQorLy8gYWJsZSB0byBoYW5kbGUg
YWxsIGFzcGVjdHMgb2Ygd2hhdCBSZXdyaXRlciB3b3VsZCBuZWVkIHRvIGRvLgorCitmdW5jdGlv
biBjbG9uZVByb2dyYW0ocHJvZ3JhbSkKK3sKKyAgICBsZXQgcmVzdWx0ID0gbmV3IFByb2dyYW0o
KTsKKyAgICBsZXQgY2xvbmVyID0gbmV3IFN0YXRlbWVudENsb25lcigpOworICAgIGZvciAobGV0
IHN0YXRlbWVudCBvZiBwcm9ncmFtLnRvcExldmVsU3RhdGVtZW50cykKKyAgICAgICAgcmVzdWx0
LmFkZChzdGF0ZW1lbnQudmlzaXQoY2xvbmVyKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwpJ
bmRleDogVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUHJlcGFyZS5qcwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpzCShyZXZpc2lvbiAy
MjIxOTUpCisrKyBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpzCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNCwzOSArMjQsNDQgQEAKICAqLwogInVzZSBzdHJpY3QiOwogCi1mdW5j
dGlvbiBwcmVwYXJlKG9yaWdpbiwgbGluZU51bWJlck9mZnNldCwgdGV4dCkKLXsKLSAgICBsZXQg
cHJvZ3JhbSA9IG5ldyBQcm9ncmFtKCk7Ci0gICAgCi0gICAgcGFyc2UocHJvZ3JhbSwgIi9pbnRl
cm5hbC9zdGRsaWIiLCAibmF0aXZlIiwgMjcsIHN0YW5kYXJkTGlicmFyeSk7Ci0gICAgcGFyc2Uo
cHJvZ3JhbSwgb3JpZ2luLCAidXNlciIsIGxpbmVOdW1iZXJPZmZzZXQsIHRleHQpOwotICAgIAot
ICAgIGxldCBuYW1lUmVzb2x2ZXIgPSBjcmVhdGVOYW1lUmVzb2x2ZXIocHJvZ3JhbSk7Ci0gICAg
cmVzb2x2ZU5hbWVzSW5UeXBlcyhwcm9ncmFtLCBuYW1lUmVzb2x2ZXIpOwotICAgIHJlc29sdmVO
YW1lc0luUHJvdG9jb2xzKHByb2dyYW0sIG5hbWVSZXNvbHZlcik7Ci0gICAgcmVzb2x2ZVR5cGVE
ZWZzSW5UeXBlcyhwcm9ncmFtKTsKLSAgICByZXNvbHZlVHlwZURlZnNJblByb3RvY29scyhwcm9n
cmFtKTsKLSAgICAvLyBGSVhNRTogTmVlZCB0byB2ZXJpZnkgdGhhdCBzdHJ1Y3RyZSBhcmUgbm90
IGN5Y2xpYy4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTc3MDQ0Ci0gICAgc3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycyhwcm9ncmFtKTsKLSAgICByZXNv
bHZlTmFtZXNJbkZ1bmN0aW9ucyhwcm9ncmFtLCBuYW1lUmVzb2x2ZXIpOwotICAgIHJlc29sdmVU
eXBlRGVmc0luRnVuY3Rpb25zKHByb2dyYW0pOwotICAgIAotICAgIGZsYXR0ZW5Qcm90b2NvbEV4
dGVuZHMocHJvZ3JhbSk7Ci0gICAgY2hlY2socHJvZ3JhbSk7Ci0gICAgY2hlY2tMaXRlcmFsVHlw
ZXMocHJvZ3JhbSk7Ci0gICAgcmVzb2x2ZVByb3BlcnRpZXMocHJvZ3JhbSk7Ci0gICAgZmluZEhp
Z2hab21iaWVzKHByb2dyYW0pOwotICAgIGNoZWNrTGl0ZXJhbFR5cGVzKHByb2dyYW0pOwotICAg
IGNoZWNrUHJvZ3JhbVdyYXBwZWQocHJvZ3JhbSk7Ci0gICAgY2hlY2tSZXR1cm5zKHByb2dyYW0p
OwotICAgIGNoZWNrVW5yZWFjaGFibGVDb2RlKHByb2dyYW0pOwotICAgIGNoZWNrTG9vcHMocHJv
Z3JhbSk7Ci0gICAgY2hlY2tSZWN1cnNpb24ocHJvZ3JhbSk7Ci0gICAgY2hlY2tQcm9ncmFtV3Jh
cHBlZChwcm9ncmFtKTsKLSAgICBmaW5kSGlnaFpvbWJpZXMocHJvZ3JhbSk7Ci0gICAgaW5saW5l
KHByb2dyYW0pOwotICAgIAotICAgIHJldHVybiBwcm9ncmFtOwotfQorbGV0IHByZXBhcmUgPSAo
KCkgPT4geworICAgIGxldCBzdGFuZGFyZFByb2dyYW07CisgICAgcmV0dXJuIChvcmlnaW4sIGxp
bmVOdW1iZXJPZmZzZXQsIHRleHQpID0+IHsKKyAgICAgICAgaWYgKCFzdGFuZGFyZFByb2dyYW0p
IHsKKyAgICAgICAgICAgIHN0YW5kYXJkUHJvZ3JhbSA9IG5ldyBQcm9ncmFtKCk7CisgICAgICAg
ICAgICBwYXJzZShzdGFuZGFyZFByb2dyYW0sICIvaW50ZXJuYWwvc3RkbGliIiwgIm5hdGl2ZSIs
IDI3LCBzdGFuZGFyZExpYnJhcnkpOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICBsZXQg
cHJvZ3JhbSA9IGNsb25lUHJvZ3JhbShzdGFuZGFyZFByb2dyYW0pOworICAgICAgICBwYXJzZShw
cm9ncmFtLCBvcmlnaW4sICJ1c2VyIiwgbGluZU51bWJlck9mZnNldCwgdGV4dCk7CisgICAgICAg
IAorICAgICAgICBsZXQgbmFtZVJlc29sdmVyID0gY3JlYXRlTmFtZVJlc29sdmVyKHByb2dyYW0p
OworICAgICAgICByZXNvbHZlTmFtZXNJblR5cGVzKHByb2dyYW0sIG5hbWVSZXNvbHZlcik7Cisg
ICAgICAgIHJlc29sdmVOYW1lc0luUHJvdG9jb2xzKHByb2dyYW0sIG5hbWVSZXNvbHZlcik7Cisg
ICAgICAgIHJlc29sdmVUeXBlRGVmc0luVHlwZXMocHJvZ3JhbSk7CisgICAgICAgIHJlc29sdmVU
eXBlRGVmc0luUHJvdG9jb2xzKHByb2dyYW0pOworICAgICAgICAvLyBGSVhNRTogTmVlZCB0byB2
ZXJpZnkgdGhhdCBzdHJ1Y3RyZSBhcmUgbm90IGN5Y2xpYy4KKyAgICAgICAgLy8gaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NzA0NAorICAgICAgICBzeW50aGVzaXpl
U3RydWN0QWNjZXNzb3JzKHByb2dyYW0pOworICAgICAgICByZXNvbHZlTmFtZXNJbkZ1bmN0aW9u
cyhwcm9ncmFtLCBuYW1lUmVzb2x2ZXIpOworICAgICAgICByZXNvbHZlVHlwZURlZnNJbkZ1bmN0
aW9ucyhwcm9ncmFtKTsKKyAgICAgICAgCisgICAgICAgIGZsYXR0ZW5Qcm90b2NvbEV4dGVuZHMo
cHJvZ3JhbSk7CisgICAgICAgIGNoZWNrKHByb2dyYW0pOworICAgICAgICBjaGVja0xpdGVyYWxU
eXBlcyhwcm9ncmFtKTsKKyAgICAgICAgcmVzb2x2ZVByb3BlcnRpZXMocHJvZ3JhbSk7CisgICAg
ICAgIGZpbmRIaWdoWm9tYmllcyhwcm9ncmFtKTsKKyAgICAgICAgY2hlY2tMaXRlcmFsVHlwZXMo
cHJvZ3JhbSk7CisgICAgICAgIGNoZWNrUHJvZ3JhbVdyYXBwZWQocHJvZ3JhbSk7CisgICAgICAg
IGNoZWNrUmV0dXJucyhwcm9ncmFtKTsKKyAgICAgICAgY2hlY2tVbnJlYWNoYWJsZUNvZGUocHJv
Z3JhbSk7CisgICAgICAgIGNoZWNrTG9vcHMocHJvZ3JhbSk7CisgICAgICAgIGNoZWNrUmVjdXJz
aW9uKHByb2dyYW0pOworICAgICAgICBjaGVja1Byb2dyYW1XcmFwcGVkKHByb2dyYW0pOworICAg
ICAgICBmaW5kSGlnaFpvbWJpZXMocHJvZ3JhbSk7CisgICAgICAgIGlubGluZShwcm9ncmFtKTsK
KyAgICAgICAgCisgICAgICAgIHJldHVybiBwcm9ncmFtOworICAgIH07Cit9KSgpOwogCkluZGV4
OiBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1lbnRDbG9uZXIuanMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhdGVtZW50Q2xvbmVyLmpz
CShub25leGlzdGVudCkKKysrIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YXRlbWVu
dENsb25lci5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDExMyBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBB
TkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisg
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworInVzZSBzdHJpY3QiOworCitjbGFzcyBT
dGF0ZW1lbnRDbG9uZXIgZXh0ZW5kcyBSZXdyaXRlciB7CisgICAgdmlzaXRGdW5jRGVmKG5vZGUp
CisgICAgeworICAgICAgICBsZXQgcmVzdWx0ID0gbmV3IEZ1bmNEZWYoCisgICAgICAgICAgICBu
b2RlLm9yaWdpbiwgbm9kZS5uYW1lLAorICAgICAgICAgICAgbm9kZS5yZXR1cm5UeXBlLnZpc2l0
KHRoaXMpLAorICAgICAgICAgICAgbm9kZS50eXBlUGFyYW1ldGVycy5tYXAodHlwZVBhcmFtZXRl
ciA9PiB0eXBlUGFyYW1ldGVyLnZpc2l0KHRoaXMpKSwKKyAgICAgICAgICAgIG5vZGUucGFyYW1l
dGVycy5tYXAocGFyYW1ldGVyID0+IHBhcmFtZXRlci52aXNpdCh0aGlzKSksCisgICAgICAgICAg
ICBub2RlLmJvZHkudmlzaXQodGhpcyksCisgICAgICAgICAgICBub2RlLmlzQ2FzdCwgbm9kZS5z
aGFkZXJUeXBlKTsKKyAgICAgICAgcmVzdWx0LmlzUmVzdHJpY3RlZCA9IG5vZGUuaXNSZXN0cmlj
dGVkOworICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIH0KKyAgICAKKyAgICB2aXNpdE5hdGl2
ZUZ1bmMobm9kZSkKKyAgICB7CisgICAgICAgIGxldCByZXN1bHQgPSBuZXcgTmF0aXZlRnVuYygK
KyAgICAgICAgICAgIG5vZGUub3JpZ2luLCBub2RlLm5hbWUsCisgICAgICAgICAgICBub2RlLnJl
dHVyblR5cGUudmlzaXQodGhpcyksCisgICAgICAgICAgICBub2RlLnR5cGVQYXJhbWV0ZXJzLm1h
cCh0eXBlUGFyYW1ldGVyID0+IHR5cGVQYXJhbWV0ZXIudmlzaXQodGhpcykpLAorICAgICAgICAg
ICAgbm9kZS5wYXJhbWV0ZXJzLm1hcChwYXJhbWV0ZXIgPT4gcGFyYW1ldGVyLnZpc2l0KHRoaXMp
KSwKKyAgICAgICAgICAgIG5vZGUuaXNDYXN0LCBub2RlLnNoYWRlclR5cGUpOworICAgICAgICBy
ZXN1bHQuaXNSZXN0cmljdGVkID0gbm9kZS5pc1Jlc3RyaWN0ZWQ7CisgICAgICAgIHJldHVybiBy
ZXN1bHQ7CisgICAgfQorICAgIAorICAgIHZpc2l0TmF0aXZlVHlwZShub2RlKQorICAgIHsKKyAg
ICAgICAgcmV0dXJuIG5ldyBOYXRpdmVUeXBlKAorICAgICAgICAgICAgbm9kZS5vcmlnaW4sIG5v
ZGUubmFtZSwgbm9kZS5pc1ByaW1pdGl2ZSwKKyAgICAgICAgICAgIG5vZGUudHlwZVBhcmFtZXRl
cnMubWFwKHR5cGVQYXJhbWV0ZXIgPT4gdHlwZVBhcmFtZXRlci52aXNpdCh0aGlzKSkpOworICAg
IH0KKyAgICAKKyAgICB2aXNpdFR5cGVEZWYobm9kZSkKKyAgICB7CisgICAgICAgIHJldHVybiBu
ZXcgVHlwZURlZigKKyAgICAgICAgICAgIG5vZGUub3JpZ2luLCBub2RlLm5hbWUsCisgICAgICAg
ICAgICBub2RlLnR5cGVQYXJhbWV0ZXJzLm1hcCh0eXBlUGFyYW1ldGVyID0+IHR5cGVQYXJhbWV0
ZXIudmlzaXQodGhpcykpLAorICAgICAgICAgICAgbm9kZS50eXBlLnZpc2l0KHRoaXMpKTsKKyAg
ICB9CisgICAgCisgICAgdmlzaXRTdHJ1Y3RUeXBlKG5vZGUpCisgICAgeworICAgICAgICBsZXQg
cmVzdWx0ID0gbmV3IFN0cnVjdFR5cGUoCisgICAgICAgICAgICBub2RlLm9yaWdpbiwgbm9kZS5u
YW1lLAorICAgICAgICAgICAgbm9kZS50eXBlUGFyYW1ldGVycy5tYXAodHlwZVBhcmFtZXRlciA9
PiB0eXBlUGFyYW1ldGVyLnZpc2l0KHRoaXMpKSk7CisgICAgICAgIGZvciAobGV0IGZpZWxkIG9m
IG5vZGUuZmllbGRzKQorICAgICAgICAgICAgcmVzdWx0LmFkZChmaWVsZC52aXNpdCh0aGlzKSk7
CisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgfQorICAgIAorICAgIHZpc2l0Q29uc3RleHBy
VHlwZVBhcmFtZXRlcihub2RlKQorICAgIHsKKyAgICAgICAgcmV0dXJuIG5ldyBDb25zdGV4cHJU
eXBlUGFyYW1ldGVyKG5vZGUub3JpZ2luLCBub2RlLm5hbWUsIG5vZGUudHlwZS52aXNpdCh0aGlz
KSk7CisgICAgfQorICAgIAorICAgIHZpc2l0UHJvdG9jb2xEZWNsKG5vZGUpCisgICAgeworICAg
ICAgICBsZXQgcmVzdWx0ID0gbmV3IFByb3RvY29sRGVjbChub2RlLm9yaWdpbiwgbm9kZS5uYW1l
KTsKKyAgICAgICAgZm9yIChsZXQgcHJvdG9jb2wgb2Ygbm9kZS5leHRlbmRzKQorICAgICAgICAg
ICAgcmVzdWx0LmFkZEV4dGVuZHMocHJvdG9jb2wudmlzaXQodGhpcykpOworICAgICAgICBmb3Ig
KGxldCBzaWduYXR1cmUgb2Ygbm9kZS5zaWduYXR1cmVzKQorICAgICAgICAgICAgcmVzdWx0LmFk
ZChzaWduYXR1cmUudmlzaXQodGhpcykpOworICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIH0K
KworICAgIHZpc2l0VHlwZVZhcmlhYmxlKG5vZGUpCisgICAgeworICAgICAgICByZXR1cm4gbmV3
IFR5cGVWYXJpYWJsZShub2RlLm9yaWdpbiwgbm9kZS5uYW1lLCBOb2RlLnZpc2l0KG5vZGUucHJv
dG9jb2wsIHRoaXMpKTsKKyAgICB9CisgICAgCisgICAgdmlzaXRQcm90b2NvbFJlZihub2RlKQor
ICAgIHsKKyAgICAgICAgcmV0dXJuIG5ldyBQcm90b2NvbFJlZihub2RlLm9yaWdpbiwgbm9kZS5u
YW1lKTsKKyAgICB9CisgICAgCisgICAgdmlzaXRCb29sTGl0ZXJhbChub2RlKQorICAgIHsKKyAg
ICAgICAgcmV0dXJuIG5ldyBCb29sTGl0ZXJhbChub2RlLm9yaWdpbiwgbm9kZS52YWx1ZSk7Cisg
ICAgfQorICAgIAorICAgIHZpc2l0VHlwZU9yVmFyaWFibGVSZWYobm9kZSkKKyAgICB7CisgICAg
ICAgIHJldHVybiBuZXcgVHlwZU9yVmFyaWFibGVSZWYobm9kZS5vcmlnaW4sIG5vZGUubmFtZSk7
CisgICAgfQorfQorCkluZGV4OiBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0Lmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5odG1s
CShyZXZpc2lvbiAyMjIxOTUpCisrKyBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTMxLDYgKzMxLDcgQEAKIDxzY3JpcHQgc3JjPSJDaGVj
a1VucmVhY2hhYmxlQ29kZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tXcmFwcGVk
LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja2VyLmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSJDbG9uZVByb2dyYW0uanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkNvbW1hRXhw
cmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ29uc3RleHByVHlwZVBhcmFtZXRl
ci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ29udGludWUuanMiPjwvc2NyaXB0PgpAQCAt
MTA3LDYgKzEwOCw3IEBACiA8c2NyaXB0IHNyYz0iUmV0dXJuQ2hlY2tlci5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iUmV0dXJuRXhjZXB0aW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJTdGFuZGFyZExpYnJhcnkuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IlN0YXRlbWVudENs
b25lci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3RydWN0TGF5b3V0QnVpbGRlci5qcyI+
PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3RydWN0VHlwZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iU3Vic3RpdHV0aW9uLmpzIj48L3NjcmlwdD4KSW5kZXg6IFRvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL1Rlc3QuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvVGVzdC5qcwkocmV2aXNpb24gMjIyMTk1KQorKysgVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVGVzdC5qcwkod29ya2luZyBjb3B5KQpAQCAtMzkxNCw5ICszOTE0LDkgQEAg
ZnVuY3Rpb24qIGRvVGVzdChvYmplY3QpCiAgICAgZm9yIChsZXQgcyBpbiBvYmplY3QpIHsKICAg
ICAgICAgaWYgKHMuc3RhcnRzV2l0aCgiVEVTVF8iKSAmJiBzLm1hdGNoKGZpbHRlcikpIHsKICAg
ICAgICAgICAgIHByaW50KHMgKyAiLi4uIik7CisgICAgICAgICAgICB5aWVsZDsKICAgICAgICAg
ICAgIG9iamVjdFtzXSgpOwogICAgICAgICAgICAgcHJpbnQoIiAgICBPSyEiKTsKLSAgICAgICAg
ICAgIHlpZWxkOwogICAgICAgICB9CiAgICAgfQogCg==
</data>
<flag name="review"
          id="341198"
          type_id="1"
          status="+"
          setter="mmaxfield"
    />
          </attachment>
      

    </bug>

</bugzilla>