<?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>272637</bug_id>
          
          <creation_ts>2024-04-13 19:57:04 -0700</creation_ts>
          <short_desc>[WebGPU] https://playcanvas.github.io/#/graphics/post-effects fails shader compilation</short_desc>
          <delta_ts>2024-04-17 09:10:13 -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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mike Wyrzykowski">mwyrzykowski</reporter>
          <assigned_to name="Tadeu Zagallo">tzagallo</assigned_to>
          <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2028325</commentid>
    <comment_count>0</comment_count>
      <attachid>470915</attachid>
    <who name="Mike Wyrzykowski">mwyrzykowski</who>
    <bug_when>2024-04-13 19:57:04 -0700</bug_when>
    <thetext>Created attachment 470915
WGSL source which reproduces the issue

[WebGPU] https://playcanvas.github.io/#/graphics/post-effects fails shader compilation

1 error generated while compiling the shader:
264:0: missing return at end of function

Shader source attached, I don&apos;t completely understand the error since like 264 is (unless it refers to the previous line / function):

fn scalableAmbientObscurance_vf2_vf3_vf3_(uv_4 : ptr&lt;function, vec2&lt;f32&gt;&gt;, origin_1 : ptr&lt;function, vec3&lt;f32&gt;&gt;, normal_1 : ptr&lt;function, vec3&lt;f32&gt;&gt;) -&gt; f32 {</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2028326</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2024-04-13 19:57:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/126425833&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2028543</commentid>
    <comment_count>2</comment_count>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2024-04-15 09:45:27 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/27267</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2029152</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2024-04-17 09:10:11 -0700</bug_when>
    <thetext>Committed 277618@main (79d5e4f3dd8b): &lt;https://commits.webkit.org/277618@main&gt;

Reviewed commits have been landed. Closing PR #27267 and removing active labels.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>470915</attachid>
            <date>2024-04-13 19:57:04 -0700</date>
            <delta_ts>2024-04-13 19:57:04 -0700</delta_ts>
            <desc>WGSL source which reproduces the issue</desc>
            <filename>shaderSource.wgsl.txt</filename>
            <type>text/plain</type>
            <size>12282</size>
            <attacher name="Mike Wyrzykowski">mwyrzykowski</attacher>
            
              <data encoding="base64">c3RydWN0IHViX21lc2ggewogIC8qIEBvZmZzZXQoMCkgKi8KICB1U2NyZWVuU2l6ZSA6IHZlYzQ8
ZjMyPiwKICAvKiBAb2Zmc2V0KDE2KSAqLwogIG1hdHJpeF92aWV3IDogbWF0NHg0PGYzMj4sCiAg
LyogQG9mZnNldCg4MCkgKi8KICBjYW1lcmFfcGFyYW1zIDogdmVjNDxmMzI+LAogIC8qIEBvZmZz
ZXQoOTYpICovCiAgdVJlc29sdXRpb24gOiB2ZWM0PGYzMj4sCiAgLyogQG9mZnNldCgxMTIpICov
CiAgdUFzcGVjdCA6IGYzMiwKICAvKiBAb2Zmc2V0KDExNikgKi8KICB1SW52RmFyUGxhbmUgOiBm
MzIsCiAgLyogQG9mZnNldCgxMjApICovCiAgdVNhbXBsZUNvdW50IDogdmVjMjxmMzI+LAogIC8q
IEBvZmZzZXQoMTI4KSAqLwogIHVTcGlyYWxUdXJucyA6IGYzMiwKICAvKiBAb2Zmc2V0KDEzNikg
Ki8KICB1QW5nbGVJbmNDb3NTaW4gOiB2ZWMyPGYzMj4sCiAgLyogQG9mZnNldCgxNDQpICovCiAg
dU1heExldmVsIDogZjMyLAogIC8qIEBvZmZzZXQoMTQ4KSAqLwogIHVJbnZSYWRpdXNTcXVhcmVk
IDogZjMyLAogIC8qIEBvZmZzZXQoMTUyKSAqLwogIHVNaW5Ib3Jpem9uQW5nbGVTaW5lU3F1YXJl
ZCA6IGYzMiwKICAvKiBAb2Zmc2V0KDE1NikgKi8KICB1QmlhcyA6IGYzMiwKICAvKiBAb2Zmc2V0
KDE2MCkgKi8KICB1UGVhazIgOiBmMzIsCiAgLyogQG9mZnNldCgxNjQpICovCiAgdVByb2plY3Rp
b25TY2FsZVJhZGl1cyA6IGYzMiwKICAvKiBAb2Zmc2V0KDE2OCkgKi8KICB1SW50ZW5zaXR5IDog
ZjMyLAogIC8qIEBvZmZzZXQoMTcyKSAqLwogIHVQb3dlciA6IGYzMiwKfQoKQGdyb3VwKDApIEBi
aW5kaW5nKDApIHZhcjx1bmlmb3JtPiB4Xzc3IDogdWJfbWVzaDsKCkBncm91cCgwKSBAYmluZGlu
ZygxKSB2YXIgdVNjZW5lRGVwdGhNYXAgOiB0ZXh0dXJlXzJkPGYzMj47CgpAZ3JvdXAoMCkgQGJp
bmRpbmcoMikgdmFyIHVTY2VuZURlcHRoTWFwX3NhbXBsZXIgOiBzYW1wbGVyOwoKdmFyPHByaXZh
dGU+IGdsX0ZyYWdDb29yZCA6IHZlYzQ8ZjMyPjsKCnZhcjxwcml2YXRlPiB2VXYwIDogdmVjMjxm
MzI+OwoKdmFyPHByaXZhdGU+IHBjX2ZyYWdDb2xvciA6IHZlYzQ8ZjMyPjsKCnZhcjxwcml2YXRl
PiBwY19mcmFnQ29sb3IxIDogdmVjNDxmMzI+OwoKdmFyPHByaXZhdGU+IHBjX2ZyYWdDb2xvcjIg
OiB2ZWM0PGYzMj47Cgp2YXI8cHJpdmF0ZT4gcGNfZnJhZ0NvbG9yMyA6IHZlYzQ8ZjMyPjsKCnZh
cjxwcml2YXRlPiBwY19mcmFnQ29sb3I0IDogdmVjNDxmMzI+OwoKdmFyPHByaXZhdGU+IHBjX2Zy
YWdDb2xvcjUgOiB2ZWM0PGYzMj47Cgp2YXI8cHJpdmF0ZT4gcGNfZnJhZ0NvbG9yNiA6IHZlYzQ8
ZjMyPjsKCnZhcjxwcml2YXRlPiBwY19mcmFnQ29sb3I3IDogdmVjNDxmMzI+OwoKZm4gbGluZWFy
aXplRGVwdGhfZjFfKHogOiBwdHI8ZnVuY3Rpb24sIGYzMj4pIC0+IGYzMiB7CiAgbGV0IHhfODQg
OiBmMzIgPSB4Xzc3LmNhbWVyYV9wYXJhbXMudzsKICBpZiAoKHhfODQgPT0gMC4wZikpIHsKICAg
IGxldCB4XzkyIDogZjMyID0geF83Ny5jYW1lcmFfcGFyYW1zLno7CiAgICBsZXQgeF85NSA6IGYz
MiA9IHhfNzcuY2FtZXJhX3BhcmFtcy55OwogICAgbGV0IHhfOTggOiBmMzIgPSB4Xzc3LmNhbWVy
YV9wYXJhbXMueTsKICAgIGxldCB4Xzk5IDogZjMyID0gKih6KTsKICAgIGxldCB4XzEwMSA6IGYz
MiA9IHhfNzcuY2FtZXJhX3BhcmFtcy56OwogICAgbGV0IHhfMTAzIDogZjMyID0geF83Ny5jYW1l
cmFfcGFyYW1zLnk7CiAgICByZXR1cm4gKCh4XzkyICogeF85NSkgLyAoeF85OCArICh4Xzk5ICog
KHhfMTAxIC0geF8xMDMpKSkpOwogIH0gZWxzZSB7CiAgICBsZXQgeF8xMTEgOiBmMzIgPSB4Xzc3
LmNhbWVyYV9wYXJhbXMuejsKICAgIGxldCB4XzExMiA6IGYzMiA9ICooeik7CiAgICBsZXQgeF8x
MTQgOiBmMzIgPSB4Xzc3LmNhbWVyYV9wYXJhbXMueTsKICAgIGxldCB4XzExNiA6IGYzMiA9IHhf
NzcuY2FtZXJhX3BhcmFtcy56OwogICAgcmV0dXJuICh4XzExMSArICh4XzExMiAqICh4XzExNCAt
IHhfMTE2KSkpOwogIH0KfQoKZm4gZ2V0TGluZWFyU2NyZWVuRGVwdGhfdmYyXyh1diA6IHB0cjxm
dW5jdGlvbiwgdmVjMjxmMzI+PikgLT4gZjMyIHsKICB2YXIgcGFyYW0gOiBmMzI7CiAgbGV0IHhf
MTMyIDogdmVjMjxmMzI+ID0gKih1dik7CiAgbGV0IHhfMTMzIDogdmVjNDxmMzI+ID0gdGV4dHVy
ZVNhbXBsZSh1U2NlbmVEZXB0aE1hcCwgdVNjZW5lRGVwdGhNYXBfc2FtcGxlciwgeF8xMzIpOwog
IHBhcmFtID0geF8xMzMueDsKICBsZXQgeF8xMzcgOiBmMzIgPSBsaW5lYXJpemVEZXB0aF9mMV8o
JihwYXJhbSkpOwogIHJldHVybiB4XzEzNzsKfQoKZm4gY29tcHV0ZVZpZXdTcGFjZVBvc2l0aW9u
RnJvbURlcHRoX3ZmMl9mMV8odXZfMSA6IHB0cjxmdW5jdGlvbiwgdmVjMjxmMzI+PiwgbGluZWFy
RGVwdGggOiBwdHI8ZnVuY3Rpb24sIGYzMj4pIC0+IHZlYzM8ZjMyPiB7CiAgbGV0IHhfMTU3IDog
dmVjMjxmMzI+ID0gKih1dl8xKTsKICBsZXQgeF8xNjIgOiBmMzIgPSB4Xzc3LnVBc3BlY3Q7CiAg
bGV0IHhfMTY2IDogZjMyID0gKihsaW5lYXJEZXB0aCk7CiAgbGV0IHhfMTY3IDogdmVjMjxmMzI+
ID0gKCgodmVjMjxmMzI+KDAuNWYsIDAuNWYpIC0geF8xNTcpICogdmVjMjxmMzI+KHhfMTYyLCAx
LjBmKSkgKiB4XzE2Nik7CiAgbGV0IHhfMTY4IDogZjMyID0gKihsaW5lYXJEZXB0aCk7CiAgcmV0
dXJuIHZlYzM8ZjMyPih4XzE2Ny54LCB4XzE2Ny55LCB4XzE2OCk7Cn0KCmZuIGZhY2VOb3JtYWxf
dmYzX3ZmM18oZHBkeCA6IHB0cjxmdW5jdGlvbiwgdmVjMzxmMzI+PiwgZHBkeSA6IHB0cjxmdW5j
dGlvbiwgdmVjMzxmMzI+PikgLT4gdmVjMzxmMzI+IHsKICBsZXQgeF8xNzQgOiB2ZWMzPGYzMj4g
PSAqKGRwZHgpOwogIGxldCB4XzE3NSA6IHZlYzM8ZjMyPiA9ICooZHBkeSk7CiAgcmV0dXJuIG5v
cm1hbGl6ZShjcm9zcyh4XzE3NCwgeF8xNzUpKTsKfQoKZm4gY29tcHV0ZVZpZXdTcGFjZU5vcm1h
bF92ZjNfdmYyXyhwb3NpdGlvbl8xIDogdmVjMzxmMzI+LCB1dl8yIDogdmVjMjxmMzI+KSAtPiB2
ZWMzPGYzMj4gewogIHZhciB1dmR4IDogdmVjMjxmMzI+OwogIHZhciB1dmR5IDogdmVjMjxmMzI+
OwogIHZhciBweCA6IHZlYzM8ZjMyPjsKICB2YXIgcGFyYW1fMSA6IHZlYzI8ZjMyPjsKICB2YXIg
cGFyYW1fMiA6IHZlYzI8ZjMyPjsKICB2YXIgcGFyYW1fMyA6IGYzMjsKICB2YXIgcHkgOiB2ZWMz
PGYzMj47CiAgdmFyIHBhcmFtXzQgOiB2ZWMyPGYzMj47CiAgdmFyIHBhcmFtXzUgOiB2ZWMyPGYz
Mj47CiAgdmFyIHBhcmFtXzYgOiBmMzI7CiAgdmFyIGRwZHhfMSA6IHZlYzM8ZjMyPjsKICB2YXIg
ZHBkeV8xIDogdmVjMzxmMzI+OwogIHZhciBwYXJhbV83IDogdmVjMzxmMzI+OwogIHZhciBwYXJh
bV84IDogdmVjMzxmMzI+OwogIGxldCB4XzE4MyA6IGYzMiA9IHhfNzcudVJlc29sdXRpb24uejsK
ICB1dmR4ID0gKHV2XzIgKyB2ZWMyPGYzMj4oeF8xODMsIDAuMGYpKTsKICBsZXQgeF8xODggOiBm
MzIgPSB4Xzc3LnVSZXNvbHV0aW9uLnc7CiAgdXZkeSA9ICh1dl8yICsgdmVjMjxmMzI+KDAuMGYs
IHhfMTg4KSk7CiAgbGV0IHhfMTkzIDogdmVjMjxmMzI+ID0gdXZkeDsKICBwYXJhbV8xID0geF8x
OTM7CiAgbGV0IHhfMTk0IDogZjMyID0gZ2V0TGluZWFyU2NyZWVuRGVwdGhfdmYyXygmKHBhcmFt
XzEpKTsKICBsZXQgeF8xOTcgOiB2ZWMyPGYzMj4gPSB1dmR4OwogIHBhcmFtXzIgPSB4XzE5NzsK
ICBwYXJhbV8zID0gLSh4XzE5NCk7CiAgbGV0IHhfMTk5IDogdmVjMzxmMzI+ID0gY29tcHV0ZVZp
ZXdTcGFjZVBvc2l0aW9uRnJvbURlcHRoX3ZmMl9mMV8oJihwYXJhbV8yKSwgJihwYXJhbV8zKSk7
CiAgcHggPSB4XzE5OTsKICBsZXQgeF8yMDIgOiB2ZWMyPGYzMj4gPSB1dmR5OwogIHBhcmFtXzQg
PSB4XzIwMjsKICBsZXQgeF8yMDMgOiBmMzIgPSBnZXRMaW5lYXJTY3JlZW5EZXB0aF92ZjJfKCYo
cGFyYW1fNCkpOwogIGxldCB4XzIwNiA6IHZlYzI8ZjMyPiA9IHV2ZHk7CiAgcGFyYW1fNSA9IHhf
MjA2OwogIHBhcmFtXzYgPSAtKHhfMjAzKTsKICBsZXQgeF8yMDggOiB2ZWMzPGYzMj4gPSBjb21w
dXRlVmlld1NwYWNlUG9zaXRpb25Gcm9tRGVwdGhfdmYyX2YxXygmKHBhcmFtXzUpLCAmKHBhcmFt
XzYpKTsKICBweSA9IHhfMjA4OwogIGxldCB4XzIxMCA6IHZlYzM8ZjMyPiA9IHB4OwogIGRwZHhf
MSA9ICh4XzIxMCAtIHBvc2l0aW9uXzEpOwogIGxldCB4XzIxMyA6IHZlYzM8ZjMyPiA9IHB5Owog
IGRwZHlfMSA9ICh4XzIxMyAtIHBvc2l0aW9uXzEpOwogIGxldCB4XzIxNiA6IHZlYzM8ZjMyPiA9
IGRwZHhfMTsKICBwYXJhbV83ID0geF8yMTY7CiAgbGV0IHhfMjE4IDogdmVjMzxmMzI+ID0gZHBk
eV8xOwogIHBhcmFtXzggPSB4XzIxODsKICBsZXQgeF8yMTkgOiB2ZWMzPGYzMj4gPSBmYWNlTm9y
bWFsX3ZmM192ZjNfKCYocGFyYW1fNyksICYocGFyYW1fOCkpOwogIHJldHVybiB4XzIxOTsKfQoK
Zm4gZ2V0RnJhZ0Nvb3JkXygpIC0+IHZlYzI8ZjMyPiB7CiAgbGV0IHhfMTUyIDogdmVjNDxmMzI+
ID0gZ2xfRnJhZ0Nvb3JkOwogIHJldHVybiB2ZWMyPGYzMj4oeF8xNTIueCwgeF8xNTIueSk7Cn0K
CmZuIHJhbmRvbV92ZjJfKHcgOiB2ZWMyPGYzMj4pIC0+IGYzMiB7CiAgcmV0dXJuIGZyYWN0KCg1
Mi45ODI5MTc3ODU2NDQ1MzEyNWYgKiBmcmFjdChkb3QodywgdmVjMjxmMzI+KDAuMDY3MTEwNTYw
ODM0NDA3ODA2NGYsIDAuMDA1ODM3MTQ5OTE4MDc5Mzc2MjJmKSkpKSk7Cn0KCmZuIHN0YXJ0UG9z
aXRpb25fZjFfKG5vaXNlIDogZjMyKSAtPiB2ZWMyPGYzMj4gewogIHZhciBhbmdsZSA6IGYzMjsK
ICBhbmdsZSA9ICgxNS4wNzk2MzE4MDU0MTk5MjE4NzVmICogbm9pc2UpOwogIGxldCB4XzIyNSA6
IGYzMiA9IGFuZ2xlOwogIGxldCB4XzIyNyA6IGYzMiA9IGFuZ2xlOwogIHJldHVybiB2ZWMyPGYz
Mj4oY29zKHhfMjI1KSwgc2luKHhfMjI3KSk7Cn0KCmZuIHRhcEFuZ2xlU3RlcF8oKSAtPiBtYXQy
eDI8ZjMyPiB7CiAgdmFyIHQgOiB2ZWMyPGYzMj47CiAgbGV0IHhfMjM2IDogdmVjMjxmMzI+ID0g
eF83Ny51QW5nbGVJbmNDb3NTaW47CiAgdCA9IHhfMjM2OwogIGxldCB4XzIzOCA6IGYzMiA9IHQu
eDsKICBsZXQgeF8yNDAgOiBmMzIgPSB0Lnk7CiAgbGV0IHhfMjQyIDogZjMyID0gdC55OwogIGxl
dCB4XzI0NSA6IGYzMiA9IHQueDsKICByZXR1cm4gbWF0MngyPGYzMj4odmVjMjxmMzI+KHhfMjM4
LCB4XzI0MCksIHZlYzI8ZjMyPigtKHhfMjQyKSwgeF8yNDUpKTsKfQoKZm4gdGFwTG9jYXRpb25G
YXN0X2YxX3ZmMl9mMV8oaSA6IHB0cjxmdW5jdGlvbiwgZjMyPiwgcCA6IHB0cjxmdW5jdGlvbiwg
dmVjMjxmMzI+Piwgbm9pc2VfMSA6IGYzMikgLT4gdmVjMzxmMzI+IHsKICB2YXIgcmFkaXVzIDog
ZjMyOwogIGxldCB4XzI1MiA6IGYzMiA9ICooaSk7CiAgbGV0IHhfMjU3IDogZjMyID0geF83Ny51
U2FtcGxlQ291bnQueTsKICByYWRpdXMgPSAoKCh4XzI1MiArIG5vaXNlXzEpICsgMC41ZikgKiB4
XzI1Nyk7CiAgbGV0IHhfMjU5IDogdmVjMjxmMzI+ID0gKihwKTsKICBsZXQgeF8yNjAgOiBmMzIg
PSByYWRpdXM7CiAgbGV0IHhfMjYxIDogZjMyID0gcmFkaXVzOwogIHJldHVybiB2ZWMzPGYzMj4o
eF8yNTkueCwgeF8yNTkueSwgKHhfMjYwICogeF8yNjEpKTsKfQoKZm4gY29tcHV0ZUFtYmllbnRP
Y2NsdXNpb25TQU9fZjFfZjFfZjFfdmYyX3ZmM192ZjNfdmYyX2YxXyhvY2NsdXNpb24gOiBwdHI8
ZnVuY3Rpb24sIGYzMj4sIGlfMSA6IHB0cjxmdW5jdGlvbiwgZjMyPiwgc3NEaXNrUmFkaXVzIDog
cHRyPGZ1bmN0aW9uLCBmMzI+LCB1dl8zIDogdmVjMjxmMzI+LCBvcmlnaW4gOiB2ZWMzPGYzMj4s
IG5vcm1hbCA6IHZlYzM8ZjMyPiwgdGFwUG9zaXRpb24gOiB2ZWMyPGYzMj4sIG5vaXNlXzIgOiBm
MzIpIHsKICB2YXIgdGFwIDogdmVjMzxmMzI+OwogIHZhciBwYXJhbV85IDogZjMyOwogIHZhciBw
YXJhbV8xMCA6IHZlYzI8ZjMyPjsKICB2YXIgc3NSYWRpdXMgOiBmMzI7CiAgdmFyIHV2U2FtcGxl
UG9zIDogdmVjMjxmMzI+OwogIHZhciBsZXZlbCA6IGYzMjsKICB2YXIgb2NjbHVzaW9uRGVwdGgg
OiBmMzI7CiAgdmFyIHBhcmFtXzExIDogdmVjMjxmMzI+OwogIHZhciBwXzEgOiB2ZWMzPGYzMj47
CiAgdmFyIHBhcmFtXzEyIDogdmVjMjxmMzI+OwogIHZhciBwYXJhbV8xMyA6IGYzMjsKICB2YXIg
diA6IHZlYzM8ZjMyPjsKICB2YXIgdnYgOiBmMzI7CiAgdmFyIHZuIDogZjMyOwogIHZhciB3XzEg
OiBmMzI7CiAgbGV0IHhfMjcwIDogZjMyID0gKihpXzEpOwogIHBhcmFtXzkgPSB4XzI3MDsKICBw
YXJhbV8xMCA9IHRhcFBvc2l0aW9uOwogIGxldCB4XzI3MiA6IHZlYzM8ZjMyPiA9IHRhcExvY2F0
aW9uRmFzdF9mMV92ZjJfZjFfKCYocGFyYW1fOSksICYocGFyYW1fMTApLCBub2lzZV8yKTsKICB0
YXAgPSB4XzI3MjsKICBsZXQgeF8yNzUgOiBmMzIgPSB0YXAuejsKICBsZXQgeF8yNzYgOiBmMzIg
PSAqKHNzRGlza1JhZGl1cyk7CiAgc3NSYWRpdXMgPSBtYXgoMS4wZiwgKHhfMjc1ICogeF8yNzYp
KTsKICBsZXQgeF8yODAgOiBmMzIgPSBzc1JhZGl1czsKICBsZXQgeF8yODEgOiB2ZWMzPGYzMj4g
PSB0YXA7CiAgbGV0IHhfMjgzIDogdmVjMjxmMzI+ID0gKHZlYzI8ZjMyPih4XzI4MS54LCB4XzI4
MS55KSAqIHhfMjgwKTsKICBsZXQgeF8yODkgOiB2ZWM0PGYzMj4gPSB4Xzc3LnVSZXNvbHV0aW9u
OwogIHV2U2FtcGxlUG9zID0gKHV2XzMgKyAodmVjMjxmMzI+KHhfMjgzLngsIHhfMjgzLnkpICog
dmVjMjxmMzI+KHhfMjg5LnosIHhfMjg5LncpKSk7CiAgbGV0IHhfMjk0IDogZjMyID0gc3NSYWRp
dXM7CiAgbGV0IHhfMzAxIDogZjMyID0geF83Ny51TWF4TGV2ZWw7CiAgbGV2ZWwgPSBjbGFtcCgo
Zmxvb3IobG9nMih4XzI5NCkpIC0gMy4wZiksIDAuMGYsIHhfMzAxKTsKICBsZXQgeF8zMDUgOiB2
ZWMyPGYzMj4gPSB1dlNhbXBsZVBvczsKICBwYXJhbV8xMSA9IHhfMzA1OwogIGxldCB4XzMwNiA6
IGYzMiA9IGdldExpbmVhclNjcmVlbkRlcHRoX3ZmMl8oJihwYXJhbV8xMSkpOwogIG9jY2x1c2lv
bkRlcHRoID0gLSh4XzMwNik7CiAgbGV0IHhfMzEwIDogdmVjMjxmMzI+ID0gdXZTYW1wbGVQb3M7
CiAgcGFyYW1fMTIgPSB4XzMxMDsKICBsZXQgeF8zMTIgOiBmMzIgPSBvY2NsdXNpb25EZXB0aDsK
ICBwYXJhbV8xMyA9IHhfMzEyOwogIGxldCB4XzMxMyA6IHZlYzM8ZjMyPiA9IGNvbXB1dGVWaWV3
U3BhY2VQb3NpdGlvbkZyb21EZXB0aF92ZjJfZjFfKCYocGFyYW1fMTIpLCAmKHBhcmFtXzEzKSk7
CiAgcF8xID0geF8zMTM7CiAgbGV0IHhfMzE1IDogdmVjMzxmMzI+ID0gcF8xOwogIHYgPSAoeF8z
MTUgLSBvcmlnaW4pOwogIGxldCB4XzMxOCA6IHZlYzM8ZjMyPiA9IHY7CiAgbGV0IHhfMzE5IDog
dmVjMzxmMzI+ID0gdjsKICB2diA9IGRvdCh4XzMxOCwgeF8zMTkpOwogIGxldCB4XzMyMiA6IHZl
YzM8ZjMyPiA9IHY7CiAgdm4gPSBkb3QoeF8zMjIsIG5vcm1hbCk7CiAgbGV0IHhfMzI1IDogZjMy
ID0gdnY7CiAgbGV0IHhfMzI4IDogZjMyID0geF83Ny51SW52UmFkaXVzU3F1YXJlZDsKICB3XzEg
PSBtYXgoMC4wZiwgKDEuMGYgLSAoeF8zMjUgKiB4XzMyOCkpKTsKICBsZXQgeF8zMzIgOiBmMzIg
PSB3XzE7CiAgbGV0IHhfMzMzIDogZjMyID0gd18xOwogIHdfMSA9ICh4XzMzMiAqIHhfMzMzKTsK
ICBsZXQgeF8zMzUgOiBmMzIgPSB2djsKICBsZXQgeF8zMzggOiBmMzIgPSB4Xzc3LnVNaW5Ib3Jp
em9uQW5nbGVTaW5lU3F1YXJlZDsKICBsZXQgeF8zNDAgOiBmMzIgPSB2bjsKICBsZXQgeF8zNDEg
OiBmMzIgPSB2bjsKICBsZXQgeF8zNDQgOiBmMzIgPSB3XzE7CiAgd18xID0gKHhfMzQ0ICogc3Rl
cCgoeF8zMzUgKiB4XzMzOCksICh4XzM0MCAqIHhfMzQxKSkpOwogIGxldCB4XzM0NiA6IGYzMiA9
IHdfMTsKICBsZXQgeF8zNDcgOiBmMzIgPSB2bjsKICBsZXQgeF8zNTEgOiBmMzIgPSB4Xzc3LnVC
aWFzOwogIGxldCB4XzM1NiA6IGYzMiA9IHZ2OwogIGxldCB4XzM1OSA6IGYzMiA9IHhfNzcudVBl
YWsyOwogIGxldCB4XzM2MiA6IGYzMiA9ICoob2NjbHVzaW9uKTsKICAqKG9jY2x1c2lvbikgPSAo
eF8zNjIgKyAoKHhfMzQ2ICogbWF4KDAuMGYsICh4XzM0NyArIChvcmlnaW4ueiAqIHhfMzUxKSkp
KSAvICh4XzM1NiArIHhfMzU5KSkpOwogIHJldHVybjsKfQoKZm4gc2NhbGFibGVBbWJpZW50T2Jz
Y3VyYW5jZV92ZjJfdmYzX3ZmM18odXZfNCA6IHB0cjxmdW5jdGlvbiwgdmVjMjxmMzI+Piwgb3Jp
Z2luXzEgOiBwdHI8ZnVuY3Rpb24sIHZlYzM8ZjMyPj4sIG5vcm1hbF8xIDogcHRyPGZ1bmN0aW9u
LCB2ZWMzPGYzMj4+KSAtPiBmMzIgewogIHZhciBub2lzZV8zIDogZjMyOwogIHZhciB0YXBQb3Np
dGlvbl8xIDogdmVjMjxmMzI+OwogIHZhciBhbmdsZVN0ZXAgOiBtYXQyeDI8ZjMyPjsKICB2YXIg
c3NEaXNrUmFkaXVzXzEgOiBmMzI7CiAgdmFyIG9jY2x1c2lvbl8xIDogZjMyOwogIHZhciBpXzIg
OiBmMzI7CiAgdmFyIHBhcmFtXzE0IDogZjMyOwogIHZhciBwYXJhbV8xNSA6IGYzMjsKICB2YXIg
cGFyYW1fMTYgOiBmMzI7CiAgbGV0IHhfMzY1IDogdmVjMjxmMzI+ID0gZ2V0RnJhZ0Nvb3JkXygp
OwogIGxldCB4XzM2NiA6IGYzMiA9IHJhbmRvbV92ZjJfKHhfMzY1KTsKICBub2lzZV8zID0geF8z
NjY7CiAgbGV0IHhfMzY4IDogZjMyID0gbm9pc2VfMzsKICBsZXQgeF8zNjkgOiB2ZWMyPGYzMj4g
PSBzdGFydFBvc2l0aW9uX2YxXyh4XzM2OCk7CiAgdGFwUG9zaXRpb25fMSA9IHhfMzY5OwogIGxl
dCB4XzM3MiA6IG1hdDJ4MjxmMzI+ID0gdGFwQW5nbGVTdGVwXygpOwogIGFuZ2xlU3RlcCA9IHhf
MzcyOwogIGxldCB4XzM3NiA6IGYzMiA9IHhfNzcudVByb2plY3Rpb25TY2FsZVJhZGl1czsKICBs
ZXQgeF8zNzggOiBmMzIgPSAoKihvcmlnaW5fMSkpLno7CiAgc3NEaXNrUmFkaXVzXzEgPSAtKCh4
XzM3NiAvIHhfMzc4KSk7CiAgb2NjbHVzaW9uXzEgPSAwLjBmOwogIGlfMiA9IDAuMGY7CiAgbG9v
cCB7CiAgICBsZXQgeF8zODggOiBmMzIgPSBpXzI7CiAgICBpZiAoKHhfMzg4IDwgMjU2LjBmKSkg
ewogICAgfSBlbHNlIHsKICAgICAgYnJlYWs7CiAgICB9CiAgICBsZXQgeF8zOTEgOiBmMzIgPSBp
XzI7CiAgICBsZXQgeF8zOTMgOiBmMzIgPSB4Xzc3LnVTYW1wbGVDb3VudC54OwogICAgaWYgKCh4
XzM5MSA+PSB4XzM5MykpIHsKICAgICAgYnJlYWs7CiAgICB9CiAgICBsZXQgeF8zOTggOiB2ZWMy
PGYzMj4gPSAqKHV2XzQpOwogICAgbGV0IHhfMzk5IDogdmVjMzxmMzI+ID0gKihvcmlnaW5fMSk7
CiAgICBsZXQgeF80MDAgOiB2ZWMzPGYzMj4gPSAqKG5vcm1hbF8xKTsKICAgIGxldCB4XzQwMSA6
IHZlYzI8ZjMyPiA9IHRhcFBvc2l0aW9uXzE7CiAgICBsZXQgeF80MDIgOiBmMzIgPSBub2lzZV8z
OwogICAgbGV0IHhfNDA0IDogZjMyID0gb2NjbHVzaW9uXzE7CiAgICBwYXJhbV8xNCA9IHhfNDA0
OwogICAgbGV0IHhfNDA2IDogZjMyID0gaV8yOwogICAgcGFyYW1fMTUgPSB4XzQwNjsKICAgIGxl
dCB4XzQwOCA6IGYzMiA9IHNzRGlza1JhZGl1c18xOwogICAgcGFyYW1fMTYgPSB4XzQwODsKICAg
IGNvbXB1dGVBbWJpZW50T2NjbHVzaW9uU0FPX2YxX2YxX2YxX3ZmMl92ZjNfdmYzX3ZmMl9mMV8o
JihwYXJhbV8xNCksICYocGFyYW1fMTUpLCAmKHBhcmFtXzE2KSwgeF8zOTgsIHhfMzk5LCB4XzQw
MCwgeF80MDEsIHhfNDAyKTsKICAgIGxldCB4XzQxMCA6IGYzMiA9IHBhcmFtXzE0OwogICAgb2Nj
bHVzaW9uXzEgPSB4XzQxMDsKICAgIGxldCB4XzQxMSA6IG1hdDJ4MjxmMzI+ID0gYW5nbGVTdGVw
OwogICAgbGV0IHhfNDEyIDogdmVjMjxmMzI+ID0gdGFwUG9zaXRpb25fMTsKICAgIHRhcFBvc2l0
aW9uXzEgPSAoeF80MTEgKiB4XzQxMik7CgogICAgY29udGludWluZyB7CiAgICAgIGxldCB4XzQx
NCA6IGYzMiA9IGlfMjsKICAgICAgaV8yID0gKHhfNDE0ICsgMS4wZik7CiAgICB9CiAgfQogIGxl
dCB4XzQxNiA6IGYzMiA9IG9jY2x1c2lvbl8xOwogIGxldCB4XzQxOSA6IGYzMiA9IHhfNzcudUlu
dGVuc2l0eTsKICByZXR1cm4gc3FydCgoeF80MTYgKiB4XzQxOSkpOwp9CgpmbiBtYWluXzEoKSB7
CiAgdmFyIHV2XzUgOiB2ZWMyPGYzMj47CiAgdmFyIGRlcHRoIDogZjMyOwogIHZhciBwYXJhbV8x
NyA6IHZlYzI8ZjMyPjsKICB2YXIgb3JpZ2luXzIgOiB2ZWMzPGYzMj47CiAgdmFyIHBhcmFtXzE4
IDogdmVjMjxmMzI+OwogIHZhciBwYXJhbV8xOSA6IGYzMjsKICB2YXIgbm9ybWFsXzIgOiB2ZWMz
PGYzMj47CiAgdmFyIG9jY2x1c2lvbl8yIDogZjMyOwogIHZhciBwYXJhbV8yMCA6IHZlYzI8ZjMy
PjsKICB2YXIgcGFyYW1fMjEgOiB2ZWMzPGYzMj47CiAgdmFyIHBhcmFtXzIyIDogdmVjMzxmMzI+
OwogIHZhciBhb1Zpc2liaWxpdHkgOiBmMzI7CiAgdmFyIGluQ29sIDogdmVjNDxmMzI+OwogIGxl
dCB4XzQyNyA6IHZlYzI8ZjMyPiA9IHZVdjA7CiAgdXZfNSA9IHhfNDI3OwogIGxldCB4XzQzMCA6
IHZlYzI8ZjMyPiA9IHZVdjA7CiAgcGFyYW1fMTcgPSB4XzQzMDsKICBsZXQgeF80MzEgOiBmMzIg
PSBnZXRMaW5lYXJTY3JlZW5EZXB0aF92ZjJfKCYocGFyYW1fMTcpKTsKICBkZXB0aCA9IC0oeF80
MzEpOwogIGxldCB4XzQzNSA6IHZlYzI8ZjMyPiA9IHV2XzU7CiAgcGFyYW1fMTggPSB4XzQzNTsK
ICBsZXQgeF80MzcgOiBmMzIgPSBkZXB0aDsKICBwYXJhbV8xOSA9IHhfNDM3OwogIGxldCB4XzQz
OCA6IHZlYzM8ZjMyPiA9IGNvbXB1dGVWaWV3U3BhY2VQb3NpdGlvbkZyb21EZXB0aF92ZjJfZjFf
KCYocGFyYW1fMTgpLCAmKHBhcmFtXzE5KSk7CiAgb3JpZ2luXzIgPSB4XzQzODsKICBsZXQgeF80
NDAgOiB2ZWMzPGYzMj4gPSBvcmlnaW5fMjsKICBsZXQgeF80NDEgOiB2ZWMyPGYzMj4gPSB1dl81
OwogIGxldCB4XzQ0MiA6IHZlYzM8ZjMyPiA9IGNvbXB1dGVWaWV3U3BhY2VOb3JtYWxfdmYzX3Zm
Ml8oeF80NDAsIHhfNDQxKTsKICBub3JtYWxfMiA9IHhfNDQyOwogIG9jY2x1c2lvbl8yID0gMC4w
ZjsKICBsZXQgeF80NDUgOiBmMzIgPSB4Xzc3LnVJbnRlbnNpdHk7CiAgaWYgKCh4XzQ0NSA+IDAu
MGYpKSB7CiAgICBsZXQgeF80NTAgOiB2ZWMyPGYzMj4gPSB1dl81OwogICAgcGFyYW1fMjAgPSB4
XzQ1MDsKICAgIGxldCB4XzQ1MiA6IHZlYzM8ZjMyPiA9IG9yaWdpbl8yOwogICAgcGFyYW1fMjEg
PSB4XzQ1MjsKICAgIGxldCB4XzQ1NCA6IHZlYzM8ZjMyPiA9IG5vcm1hbF8yOwogICAgcGFyYW1f
MjIgPSB4XzQ1NDsKICAgIGxldCB4XzQ1NSA6IGYzMiA9IHNjYWxhYmxlQW1iaWVudE9ic2N1cmFu
Y2VfdmYyX3ZmM192ZjNfKCYocGFyYW1fMjApLCAmKHBhcmFtXzIxKSwgJihwYXJhbV8yMikpOwog
ICAgb2NjbHVzaW9uXzIgPSB4XzQ1NTsKICB9CiAgbGV0IHhfNDU3IDogZjMyID0gb2NjbHVzaW9u
XzI7CiAgbGV0IHhfNDYyIDogZjMyID0geF83Ny51UG93ZXI7CiAgYW9WaXNpYmlsaXR5ID0gcG93
KGNsYW1wKCgxLjBmIC0geF80NTcpLCAwLjBmLCAxLjBmKSwgeF80NjIpOwogIGluQ29sID0gdmVj
NDxmMzI+KDEuMGYsIDEuMGYsIDEuMGYsIDEuMGYpOwogIGxldCB4XzQ2OSA6IGYzMiA9IGFvVmlz
aWJpbGl0eTsKICBwY19mcmFnQ29sb3IueCA9IHhfNDY5OwogIHJldHVybjsKfQoKc3RydWN0IG1h
aW5fb3V0IHsKICBAbG9jYXRpb24oMCkKICBwY19mcmFnQ29sb3JfMSA6IHZlYzQ8ZjMyPiwKICBA
bG9jYXRpb24oMSkKICBwY19mcmFnQ29sb3IxXzEgOiB2ZWM0PGYzMj4sCiAgQGxvY2F0aW9uKDIp
CiAgcGNfZnJhZ0NvbG9yMl8xIDogdmVjNDxmMzI+LAogIEBsb2NhdGlvbigzKQogIHBjX2ZyYWdD
b2xvcjNfMSA6IHZlYzQ8ZjMyPiwKICBAbG9jYXRpb24oNCkKICBwY19mcmFnQ29sb3I0XzEgOiB2
ZWM0PGYzMj4sCiAgQGxvY2F0aW9uKDUpCiAgcGNfZnJhZ0NvbG9yNV8xIDogdmVjNDxmMzI+LAog
IEBsb2NhdGlvbig2KQogIHBjX2ZyYWdDb2xvcjZfMSA6IHZlYzQ8ZjMyPiwKICBAbG9jYXRpb24o
NykKICBwY19mcmFnQ29sb3I3XzEgOiB2ZWM0PGYzMj4sCn0KCkBmcmFnbWVudApmbiBtYWluKEBi
dWlsdGluKHBvc2l0aW9uKSBnbF9GcmFnQ29vcmRfcGFyYW0gOiB2ZWM0PGYzMj4sIEBsb2NhdGlv
bigwKSB2VXYwX3BhcmFtIDogdmVjMjxmMzI+KSAtPiBtYWluX291dCB7CiAgZ2xfRnJhZ0Nvb3Jk
ID0gZ2xfRnJhZ0Nvb3JkX3BhcmFtOwogIHZVdjAgPSB2VXYwX3BhcmFtOwogIG1haW5fMSgpOwog
IHJldHVybiBtYWluX291dChwY19mcmFnQ29sb3IsIHBjX2ZyYWdDb2xvcjEsIHBjX2ZyYWdDb2xv
cjIsIHBjX2ZyYWdDb2xvcjMsIHBjX2ZyYWdDb2xvcjQsIHBjX2ZyYWdDb2xvcjUsIHBjX2ZyYWdD
b2xvcjYsIHBjX2ZyYWdDb2xvcjcpOwp9CgoK
</data>

          </attachment>
      

    </bug>

</bugzilla>