<?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>234337</bug_id>
          
          <creation_ts>2021-12-15 01:26:29 -0800</creation_ts>
          <short_desc>[PlayStation] Use FileSystem instead of FileSystemPlayStation except several unsupported APIs</short_desc>
          <delta_ts>2021-12-15 09:52:17 -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>Web Template Framework</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Other</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="Tomoki Imai">tomoki.imai</reporter>
          <assigned_to name="Tomoki Imai">tomoki.imai</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>stephan.szabo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1824280</commentid>
    <comment_count>0</comment_count>
    <who name="Tomoki Imai">tomoki.imai</who>
    <bug_when>2021-12-15 01:26:29 -0800</bug_when>
    <thetext>PlayStation should use FileSystem as its current SDK supports std::filesystem.
We have to maintain FileSystemPlayStation for now to supply some of FileSystem APIs because the following functions are not supported yet.

- std::filesystem::space
- std::filesystem::rename
- std::filesystem::canonical
- std::filesystem::directory_iterator
- std::filesystem::remove_all</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824281</commentid>
    <comment_count>1</comment_count>
      <attachid>447210</attachid>
    <who name="Tomoki Imai">tomoki.imai</who>
    <bug_when>2021-12-15 01:33:32 -0800</bug_when>
    <thetext>Created attachment 447210
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824396</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-12-15 09:51:38 -0800</bug_when>
    <thetext>Committed r287080 (?): &lt;https://commits.webkit.org/r287080&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 447210.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824398</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-15 09:52:17 -0800</bug_when>
    <thetext>&lt;rdar://problem/86529098&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447210</attachid>
            <date>2021-12-15 01:33:32 -0800</date>
            <delta_ts>2021-12-15 09:51:41 -0800</delta_ts>
            <desc>patch</desc>
            <filename>filesystem-1.patch</filename>
            <type>text/plain</type>
            <size>14675</size>
            <attacher name="Tomoki Imai">tomoki.imai</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cK
aW5kZXggYjU5MDU0MDI0YTA3Li5hMjFkOTQ3YTAzNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIw
MjEtMTItMTUgIFRvbW9raSBJbWFpICA8dG9tb2tpLmltYWlAc29ueS5jb20+CisKKyAgICAgICAg
W1BsYXlTdGF0aW9uXSBVc2UgRmlsZVN5c3RlbSBpbnN0ZWFkIG9mIEZpbGVTeXN0ZW1QbGF5U3Rh
dGlvbiBleGNlcHQgc2V2ZXJhbCB1bnN1cHBvcnRlZCBBUElzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzQzMzcKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQbGF5U3RhdGlvbiBzaG91bGQgdXNlIEZpbGVT
eXN0ZW0gYXMgaXRzIGN1cnJlbnQgU0RLIHN1cHBvcnRzIHN0ZDo6ZmlsZXN5c3RlbS4KKyAgICAg
ICAgV2UgaGF2ZSB0byBtYWludGFpbiBGaWxlU3lzdGVtUGxheVN0YXRpb24gZm9yIG5vdyB0byBz
dXBwbHkgc29tZSBvZiBGaWxlU3lzdGVtIEFQSXMKKyAgICAgICAgYmVjYXVzZSB0aGUgZm9sbG93
aW5nIGZ1bmN0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCB5ZXQuCisgICAgICAgIC0gc3RkOjpmaWxl
c3lzdGVtOjpzcGFjZQorICAgICAgICAtIHN0ZDo6ZmlsZXN5c3RlbTo6cmVuYW1lCisgICAgICAg
IC0gc3RkOjpmaWxlc3lzdGVtOjpjYW5vbmljYWwKKyAgICAgICAgLSBzdGQ6OmZpbGVzeXN0ZW06
OmRpcmVjdG9yeV9pdGVyYXRvcgorICAgICAgICAtIHN0ZDo6ZmlsZXN5c3RlbTo6cmVtb3ZlX2Fs
bAorCisgICAgICAgIFRoZSBwbGFuIGlzIHRvIHJlbW92ZSBGaWxlU3lzdGVtUGxheVN0YXRpb24g
ZW50aXJlbHkgYWZ0ZXIgdGhlIFNESyBzdXBwb3J0cyB0aGVzZSBmdW5jdGlvbnMuCisKKyAgICAg
ICAgVGhpcyBwYXRjaCBhbHNvIGZpeGVzIHRoZSBpbmNvbXBhdGlibGUgaXNzdWUgb2YgRmlsZVN5
c3RlbTo6bGlzdERpcmVjdG9yeSBvZiBGaWxlU3lzdGVtUGxheVN0YXRpb24uCisgICAgICAgIEZp
bGVTeXN0ZW06Omxpc3REaXJlY3RvcnkgaXMgZXhwZWN0ZWQgdG8gcmV0dXJuIG9ubHkgdGhlIG5h
bWVzLCBidXQgaXQgYWN0dWFsbHkgcmV0dXJucyBmdWxsIHBhdGhzLgorCisgICAgICAgIENvbmZp
cm1lZCB0aGF0IHRoZXJlIGlzIG5vIHJlZ3Jlc3Npb24gaW4gRmlsZVN5c3RlbSByZWxhdGVkIHRl
c3RjYXNlcyBpbiBUZXN0V1RGLgorCisgICAgICAgICogd3RmL0ZpbGVTeXN0ZW0uY3BwOiBBZGQg
UExBVEZPUk0oUExBWVNUQVRJT04pIGd1YXJkcyBub3QgdG8gdXNlIHVuc3VwcG9ydGVkIHN0ZDo6
ZmlsZXN5c3RlbSBBUElzLgorICAgICAgICAqIHd0Zi9wbGF5c3RhdGlvbi9GaWxlU3lzdGVtUGxh
eVN0YXRpb24uY3BwOiBSZW1vdmUgdGhlIGZ1bmN0aW9ucyBkdXBsaWNhdGVkIHdpdGggRmlsZVN5
c3RlbS4KKyAgICAgICAgTWFrZSBGaWxlU3lzdGVtOjpsaXN0RGlyZWN0b3J5IHJldHVybnMgb25s
eSBuYW1lcy4KKyAgICAgICAgQWRkIGxpc3REaXJlY3RvcnlTdWIgd2hpY2ggY2FuIHJldHVybiBh
IGZ1bGwgcGF0aCBiZWNhdXNlIGRlbGV0ZU5vbkVtcHR5RGlyZWN0b3J5IGRlcGVuZHMgb24gaXQu
CisKIDIwMjEtMTItMTQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9y
Zz4KIAogICAgICAgICBSZW1vdmUgcHJvcGVydGllcyBzZXQgYnkgTlNVUkxQcm90b2NvbCBvbiBO
U1VSTFJlcXVlc3QgYmVmb3JlIHNlcmlhbGl6aW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0
Zi9GaWxlU3lzdGVtLmNwcCBiL1NvdXJjZS9XVEYvd3RmL0ZpbGVTeXN0ZW0uY3BwCmluZGV4IDky
NDhiNGFmODc5Ni4uZDkwYTZhNTNmZjFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9GaWxl
U3lzdGVtLmNwcAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9GaWxlU3lzdGVtLmNwcApAQCAtNjEyLDYg
KzYxMiw3IEBAIGJvb2wgZGVsZXRlRW1wdHlEaXJlY3RvcnkoY29uc3QgU3RyaW5nJiBwYXRoKQog
ICAgIHJldHVybiBzdGQ6OmZpbGVzeXN0ZW06OnJlbW92ZShmc1BhdGgsIGVjKTsKIH0KIAorI2lm
ICFQTEFURk9STShQTEFZU1RBVElPTikKIGJvb2wgbW92ZUZpbGUoY29uc3QgU3RyaW5nJiBvbGRQ
YXRoLCBjb25zdCBTdHJpbmcmIG5ld1BhdGgpCiB7CiAgICAgYXV0byBmc09sZFBhdGggPSB0b1N0
ZEZpbGVTeXN0ZW1QYXRoKG9sZFBhdGgpOwpAQCAtNjI5LDYgKzYzMCw3IEBAIGJvb2wgbW92ZUZp
bGUoY29uc3QgU3RyaW5nJiBvbGRQYXRoLCBjb25zdCBTdHJpbmcmIG5ld1BhdGgpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICByZXR1cm4gc3RkOjpmaWxlc3lzdGVtOjpyZW1vdmVfYWxsKGZz
T2xkUGF0aCwgZWMpOwogfQorI2VuZGlmCiAKIHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IGZpbGVT
aXplKGNvbnN0IFN0cmluZyYgcGF0aCkKIHsKQEAgLTYzOSw2ICs2NDEsNyBAQCBzdGQ6Om9wdGlv
bmFsPHVpbnQ2NF90PiBmaWxlU2l6ZShjb25zdCBTdHJpbmcmIHBhdGgpCiAgICAgcmV0dXJuIHNp
emU7CiB9CiAKKyNpZiAhUExBVEZPUk0oUExBWVNUQVRJT04pCiBzdGQ6Om9wdGlvbmFsPHVpbnQ2
NF90PiB2b2x1bWVGcmVlU3BhY2UoY29uc3QgU3RyaW5nJiBwYXRoKQogewogICAgIHN0ZDo6ZXJy
b3JfY29kZSBlYzsKQEAgLTY0Nyw2ICs2NTAsNyBAQCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiB2
b2x1bWVGcmVlU3BhY2UoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgICAgICByZXR1cm4gc3RkOjpu
dWxsb3B0OwogICAgIHJldHVybiBzcGFjZUluZm8uYXZhaWxhYmxlOwogfQorI2VuZGlmCiAKIGJv
b2wgY3JlYXRlU3ltYm9saWNMaW5rKGNvbnN0IFN0cmluZyYgdGFyZ2V0UGF0aCwgY29uc3QgU3Ry
aW5nJiBzeW1ib2xpY0xpbmtQYXRoKQogewpAQCAtNjgzLDEyICs2ODcsMTQgQEAgc3RkOjpvcHRp
b25hbDx1aW50NjRfdD4gaGFyZExpbmtDb3VudChjb25zdCBTdHJpbmcmIHBhdGgpCiAgICAgcmV0
dXJuIGVjID8gc3RkOjpudWxsb3B0IDogc3RkOjptYWtlX29wdGlvbmFsKGxpbmtDb3VudCk7CiB9
CiAKKyNpZiAhUExBVEZPUk0oUExBWVNUQVRJT04pCiBib29sIGRlbGV0ZU5vbkVtcHR5RGlyZWN0
b3J5KGNvbnN0IFN0cmluZyYgcGF0aCkKIHsKICAgICBzdGQ6OmVycm9yX2NvZGUgZWM7CiAgICAg
c3RkOjpmaWxlc3lzdGVtOjpyZW1vdmVfYWxsKHRvU3RkRmlsZVN5c3RlbVBhdGgocGF0aCksIGVj
KTsKICAgICByZXR1cm4gIWVjOwogfQorI2VuZGlmCiAKIHN0ZDo6b3B0aW9uYWw8V2FsbFRpbWU+
IGZpbGVNb2RpZmljYXRpb25UaW1lKGNvbnN0IFN0cmluZyYgcGF0aCkKIHsKQEAgLTc1NiwxMyAr
NzYyLDE2IEBAIFN0cmluZyBwYXJlbnRQYXRoKGNvbnN0IFN0cmluZyYgcGF0aCkKICAgICByZXR1
cm4gZnJvbVN0ZEZpbGVTeXN0ZW1QYXRoKHRvU3RkRmlsZVN5c3RlbVBhdGgocGF0aCkucGFyZW50
X3BhdGgoKSk7CiB9CiAKKyNpZiAhUExBVEZPUk0oUExBWVNUQVRJT04pCiBTdHJpbmcgcmVhbFBh
dGgoY29uc3QgU3RyaW5nJiBwYXRoKQogewogICAgIHN0ZDo6ZXJyb3JfY29kZSBlYzsKICAgICBh
dXRvIGNhbm9uaWNhbFBhdGggPSBzdGQ6OmZpbGVzeXN0ZW06OmNhbm9uaWNhbCh0b1N0ZEZpbGVT
eXN0ZW1QYXRoKHBhdGgpLCBlYyk7CiAgICAgcmV0dXJuIGVjID8gcGF0aCA6IGZyb21TdGRGaWxl
U3lzdGVtUGF0aChjYW5vbmljYWxQYXRoKTsKIH0KKyNlbmRpZgogCisjaWYgIVBMQVRGT1JNKFBM
QVlTVEFUSU9OKQogVmVjdG9yPFN0cmluZz4gbGlzdERpcmVjdG9yeShjb25zdCBTdHJpbmcmIHBh
dGgpCiB7CiAgICAgVmVjdG9yPFN0cmluZz4gZmlsZU5hbWVzOwpAQCAtNzc1LDYgKzc4NCw3IEBA
IFZlY3RvcjxTdHJpbmc+IGxpc3REaXJlY3RvcnkoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgIH0K
ICAgICByZXR1cm4gZmlsZU5hbWVzOwogfQorI2VuZGlmCiAKICNpZiAhRU5BQkxFKEZJTEVTWVNU
RU1fUE9TSVhfRkFTVF9QQVRIKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9wbGF5c3Rh
dGlvbi9GaWxlU3lzdGVtUGxheVN0YXRpb24uY3BwIGIvU291cmNlL1dURi93dGYvcGxheXN0YXRp
b24vRmlsZVN5c3RlbVBsYXlTdGF0aW9uLmNwcAppbmRleCBiODgwZWI3N2RiMGIuLjI5YjI4MWIy
N2NlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvcGxheXN0YXRpb24vRmlsZVN5c3RlbVBs
YXlTdGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9wbGF5c3RhdGlvbi9GaWxlU3lzdGVt
UGxheVN0YXRpb24uY3BwCkBAIC0zMCwxNSArMzAsOCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgPHd0Zi9GaWxlU3lzdGVtLmg+CiAKLSNpZiAhSEFWRShTVERfRklMRVNZU1RFTSkg
JiYgIUhBVkUoU1REX0VYUEVSSU1FTlRBTF9GSUxFU1lTVEVNKQotCiAjaW5jbHVkZSA8ZGlyZW50
Lmg+Ci0jaW5jbHVkZSA8bGliZ2VuLmg+CiAjaW5jbHVkZSA8c3lzL3N0YXR2ZnMuaD4KLSNpbmNs
dWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDx1bmlzdGQuaD4KLSNpbmNsdWRlIDx3dGYvU2Fm
ZVN0cmVycm9yLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogCiBuYW1l
c3BhY2UgV1RGIHsKIApAQCAtNjQsNDcgKzU3LDYgQEAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8Rmls
ZVR5cGU+IGZpbGVUeXBlUG90ZW50aWFsbHlGb2xsb3dpbmdTeW1MaW5rcyhjb25zdCBTdHJpbmcK
ICAgICByZXR1cm4gRmlsZVR5cGU6OlJlZ3VsYXI7CiB9CiAKLWJvb2wgZmlsZUV4aXN0cyhjb25z
dCBTdHJpbmcmIHBhdGgpCi17Ci0gICAgaWYgKHBhdGguaXNOdWxsKCkpCi0gICAgICAgIHJldHVy
biBmYWxzZTsKLQotICAgIENTdHJpbmcgZnNSZXAgPSBmaWxlU3lzdGVtUmVwcmVzZW50YXRpb24o
cGF0aCk7Ci0KLSAgICBpZiAoIWZzUmVwLmRhdGEoKSB8fCBmc1JlcC5kYXRhKClbMF0gPT0gJ1ww
JykKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgcmV0dXJuIGFjY2Vzcyhmc1JlcC5kYXRh
KCksIEZfT0spICE9IC0xOwotfQotCi1ib29sIGRlbGV0ZUZpbGUoY29uc3QgU3RyaW5nJiBwYXRo
KQotewotICAgIENTdHJpbmcgZnNSZXAgPSBmaWxlU3lzdGVtUmVwcmVzZW50YXRpb24ocGF0aCk7
Ci0KLSAgICBpZiAoIWZzUmVwLmRhdGEoKSB8fCBmc1JlcC5kYXRhKClbMF0gPT0gJ1wwJykgewot
ICAgICAgICBMT0dfRVJST1IoIkZpbGUgZmFpbGVkIHRvIGRlbGV0ZS4gRmFpbGVkIHRvIGdldCBm
aWxlc3lzdGVtIHJlcHJlc2VudGF0aW9uIHRvIGNyZWF0ZSBDU3RyaW5nIGZyb20gY2ZTdHJpbmcg
b3IgZmlsZXN5c3RlbSByZXByZXNlbnRhdGlvbiBpcyBhIG51bGwgdmFsdWUiKTsKLSAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgIH0KLQotICAgIC8vIHVubGluayguLi4pIHJldHVybnMgMCBvbiBz
dWNjZXNzZnVsIGRlbGV0aW9uIG9mIHRoZSBwYXRoIGFuZCBub24temVybyBpbiBhbnkgb3RoZXIg
Y2FzZSAoaW5jbHVkaW5nIGludmFsaWQgcGVybWlzc2lvbnMgb3Igbm9uLWV4aXN0ZW50IGZpbGUp
Ci0gICAgYm9vbCB1bmxpbmtlZCA9ICF1bmxpbmsoZnNSZXAuZGF0YSgpKTsKLSAgICBpZiAoIXVu
bGlua2VkICYmIGVycm5vICE9IEVOT0VOVCkKLSAgICAgICAgTE9HX0VSUk9SKCJGaWxlIGZhaWxl
ZCB0byBkZWxldGUuIEVycm9yIG1lc3NhZ2U6ICVzIiwgc2FmZVN0cmVycm9yKGVycm5vKS5kYXRh
KCkpOwotCi0gICAgcmV0dXJuIHVubGlua2VkOwotfQotCi1ib29sIGRlbGV0ZUVtcHR5RGlyZWN0
b3J5KGNvbnN0IFN0cmluZyYgcGF0aCkKLXsKLSAgICBDU3RyaW5nIGZzUmVwID0gZmlsZVN5c3Rl
bVJlcHJlc2VudGF0aW9uKHBhdGgpOwotCi0gICAgaWYgKCFmc1JlcC5kYXRhKCkgfHwgZnNSZXAu
ZGF0YSgpWzBdID09ICdcMCcpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIC8vIHJtZGly
KC4uLikgcmV0dXJucyAwIG9uIHN1Y2Nlc3NmdWwgZGVsZXRpb24gb2YgdGhlIHBhdGggYW5kIG5v
bi16ZXJvIGluIGFueSBvdGhlciBjYXNlIChpbmNsdWRpbmcgaW52YWxpZCBwZXJtaXNzaW9ucyBv
ciBub24tZXhpc3RlbnQgZmlsZSkKLSAgICByZXR1cm4gIXJtZGlyKGZzUmVwLmRhdGEoKSk7Ci19
Ci0KIGJvb2wgbW92ZUZpbGUoY29uc3QgU3RyaW5nJiBvbGRQYXRoLCBjb25zdCBTdHJpbmcmIG5l
d1BhdGgpCiB7CiAgICAgYXV0byBvbGRGaWxlbmFtZSA9IGZpbGVTeXN0ZW1SZXByZXNlbnRhdGlv
bihvbGRQYXRoKTsKQEAgLTExOCw1MCArNzAsNiBAQCBib29sIG1vdmVGaWxlKGNvbnN0IFN0cmlu
ZyYgb2xkUGF0aCwgY29uc3QgU3RyaW5nJiBuZXdQYXRoKQogICAgIHJldHVybiByZW5hbWUob2xk
RmlsZW5hbWUuZGF0YSgpLCBuZXdGaWxlbmFtZS5kYXRhKCkpICE9IC0xOwogfQogCi1zdGQ6Om9w
dGlvbmFsPHVpbnQ2NF90PiBmaWxlU2l6ZShjb25zdCBTdHJpbmcmIHBhdGgpCi17Ci0gICAgQ1N0
cmluZyBmc1JlcCA9IGZpbGVTeXN0ZW1SZXByZXNlbnRhdGlvbihwYXRoKTsKLQotICAgIGlmICgh
ZnNSZXAuZGF0YSgpIHx8IGZzUmVwLmRhdGEoKVswXSA9PSAnXDAnKQotICAgICAgICByZXR1cm4g
c3RkOjpudWxsb3B0OwotCi0gICAgc3RydWN0IHN0YXQgZmlsZUluZm87Ci0KLSAgICBpZiAoc3Rh
dChmc1JlcC5kYXRhKCksICZmaWxlSW5mbykpCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7
Ci0KLSAgICByZXR1cm4gZmlsZUluZm8uc3Rfc2l6ZTsKLX0KLQotYm9vbCBtYWtlQWxsRGlyZWN0
b3JpZXMoY29uc3QgU3RyaW5nJiBwYXRoKQotewotICAgIENTdHJpbmcgZnVsbFBhdGggPSBmaWxl
U3lzdGVtUmVwcmVzZW50YXRpb24ocGF0aCk7Ci0gICAgaWYgKCFhY2Nlc3MoZnVsbFBhdGguZGF0
YSgpLCBGX09LKSkKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0KLSAgICBjaGFyKiBwID0gZnVsbFBh
dGgubXV0YWJsZURhdGEoKSArIDE7Ci0gICAgaW50IGxlbmd0aCA9IGZ1bGxQYXRoLmxlbmd0aCgp
OwotCi0gICAgaWYgKHBbbGVuZ3RoIC0gMV0gPT0gJy8nKQotICAgICAgICBwW2xlbmd0aCAtIDFd
ID0gJ1wwJzsKLSAgICBmb3IgKDsgKnA7ICsrcCkgewotICAgICAgICBpZiAoKnAgPT0gJy8nKSB7
Ci0gICAgICAgICAgICAqcCA9ICdcMCc7Ci0gICAgICAgICAgICBpZiAoYWNjZXNzKGZ1bGxQYXRo
LmRhdGEoKSwgRl9PSykpIHsKLSAgICAgICAgICAgICAgICBpZiAobWtkaXIoZnVsbFBhdGguZGF0
YSgpLCBTX0lSV1hVKSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAg
ICAgICAgfQotICAgICAgICAgICAgKnAgPSAnLyc7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgaWYg
KGFjY2VzcyhmdWxsUGF0aC5kYXRhKCksIEZfT0spKSB7Ci0gICAgICAgIGlmIChta2RpcihmdWxs
UGF0aC5kYXRhKCksIFNfSVJXWFUpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0K
LQotICAgIHJldHVybiB0cnVlOwotfQotCiBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiB2b2x1bWVG
cmVlU3BhY2UoY29uc3QgU3RyaW5nJiBwYXRoKQogewogICAgIHN0cnVjdCBzdGF0dmZzIGZpbGVT
eXN0ZW1TdGF0OwpAQCAtMTcwLDgwICs3OCw0NSBAQCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiB2
b2x1bWVGcmVlU3BhY2UoY29uc3QgU3RyaW5nJiBwYXRoKQogICAgIHJldHVybiBzdGQ6Om51bGxv
cHQ7CiB9CiAKLWJvb2wgY3JlYXRlU3ltYm9saWNMaW5rKGNvbnN0IFN0cmluZyYgdGFyZ2V0UGF0
aCwgY29uc3QgU3RyaW5nJiBzeW1ib2xpY0xpbmtQYXRoKQotewotICAgIENTdHJpbmcgdGFyZ2V0
UGF0aEZTUmVwID0gZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKHRhcmdldFBhdGgpOwotICAgIGlm
ICghdGFyZ2V0UGF0aEZTUmVwLmRhdGEoKSB8fCB0YXJnZXRQYXRoRlNSZXAuZGF0YSgpWzBdID09
ICdcMCcpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIENTdHJpbmcgc3ltYm9saWNMaW5r
UGF0aEZTUmVwID0gZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKHN5bWJvbGljTGlua1BhdGgpOwot
ICAgIGlmICghc3ltYm9saWNMaW5rUGF0aEZTUmVwLmRhdGEoKSB8fCBzeW1ib2xpY0xpbmtQYXRo
RlNSZXAuZGF0YSgpWzBdID09ICdcMCcpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIHJl
dHVybiAhc3ltbGluayh0YXJnZXRQYXRoRlNSZXAuZGF0YSgpLCBzeW1ib2xpY0xpbmtQYXRoRlNS
ZXAuZGF0YSgpKTsKLX0KLQotYm9vbCBoYXJkTGluayhjb25zdCBTdHJpbmcmIHNvdXJjZSwgY29u
c3QgU3RyaW5nJiBkZXN0aW5hdGlvbikKLXsKLSAgICBpZiAoc291cmNlLmlzRW1wdHkoKSB8fCBk
ZXN0aW5hdGlvbi5pc0VtcHR5KCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGF1dG8g
ZnNTb3VyY2UgPSBmaWxlU3lzdGVtUmVwcmVzZW50YXRpb24oc291cmNlKTsKLSAgICBpZiAoIWZz
U291cmNlLmRhdGEoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgYXV0byBmc0Rlc3Rp
bmF0aW9uID0gZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKGRlc3RpbmF0aW9uKTsKLSAgICBpZiAo
IWZzRGVzdGluYXRpb24uZGF0YSgpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICByZXR1
cm4gIWxpbmsoZnNTb3VyY2UuZGF0YSgpLCBmc0Rlc3RpbmF0aW9uLmRhdGEoKSk7Ci19Ci0KLWJv
b2wgaGFyZExpbmtPckNvcHlGaWxlKGNvbnN0IFN0cmluZyYgc291cmNlLCBjb25zdCBTdHJpbmcm
IGRlc3RpbmF0aW9uKQorVmVjdG9yPFN0cmluZz4gbGlzdERpcmVjdG9yeVN1Yihjb25zdCBTdHJp
bmcmIHBhdGgsIGJvb2wgZnVsbFBhdGgpCiB7Ci0gICAgaWYgKGhhcmRMaW5rKHNvdXJjZSwgZGVz
dGluYXRpb24pKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLQotICAgIC8vIEhhcmQgbGluayBmYWls
ZWQuIFBlcmZvcm0gYSBjb3B5IGluc3RlYWQuCi0gICAgaWYgKHNvdXJjZS5pc0VtcHR5KCkgfHwg
ZGVzdGluYXRpb24uaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBhdXRv
IGZzU291cmNlID0gZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKHNvdXJjZSk7Ci0gICAgaWYgKCFm
c1NvdXJjZS5kYXRhKCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIGF1dG8gZnNEZXN0
aW5hdGlvbiA9IGZpbGVTeXN0ZW1SZXByZXNlbnRhdGlvbihkZXN0aW5hdGlvbik7Ci0gICAgaWYg
KCFmc0Rlc3RpbmF0aW9uLmRhdGEoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgYXV0
byBoYW5kbGUgPSBvcGVuKGZzRGVzdGluYXRpb24uZGF0YSgpLCBPX1dST05MWSB8IE9fQ1JFQVQg
fCBPX0VYQ0wsIDA2NjYpOwotICAgIGlmIChoYW5kbGUgPT0gLTEpCi0gICAgICAgIHJldHVybiBm
YWxzZTsKLQotICAgIGJvb2wgYXBwZW5kUmVzdWx0ID0gYXBwZW5kRmlsZUNvbnRlbnRzVG9GaWxl
SGFuZGxlKHNvdXJjZSwgaGFuZGxlKTsKLSAgICBjbG9zZShoYW5kbGUpOworICAgIFZlY3RvcjxT
dHJpbmc+IGVudHJpZXM7CisgICAgQ1N0cmluZyBjcGF0aCA9IGZpbGVTeXN0ZW1SZXByZXNlbnRh
dGlvbihwYXRoKTsKKyAgICBESVIqIGRpciA9IG9wZW5kaXIoY3BhdGguZGF0YSgpKTsKKyAgICBp
ZiAoZGlyKSB7CisgICAgICAgIHN0cnVjdCBkaXJlbnQqIGRwOworICAgICAgICB3aGlsZSAoKGRw
ID0gcmVhZGRpcihkaXIpKSkgeworICAgICAgICAgICAgY29uc3QgY2hhciogbmFtZSA9IGRwLT5k
X25hbWU7CisgICAgICAgICAgICBpZiAoIXN0cmNtcChuYW1lLCAiLiIpIHx8ICFzdHJjbXAobmFt
ZSwgIi4uIikpCisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICBTdHJpbmcg
bmV3RW50cnk7CisgICAgICAgICAgICBpZiAoZnVsbFBhdGgpIHsKKyAgICAgICAgICAgICAgICBj
aGFyIGZpbGVQYXRoW1BBVEhfTUFYXTsKKyAgICAgICAgICAgICAgICBpZiAoZnVsbFBhdGggJiYg
c3RhdGljX2Nhc3Q8aW50PihzaXplb2YoZmlsZVBhdGgpIC0gMSkgPCBzbnByaW50ZihmaWxlUGF0
aCwgc2l6ZW9mKGZpbGVQYXRoKSwgIiVzLyVzIiwgY3BhdGguZGF0YSgpLCBuYW1lKSkKKyAgICAg
ICAgICAgICAgICAgICAgY29udGludWU7IC8vIGJ1ZmZlciBvdmVyZmxvdwogCi0gICAgLy8gSWYg
dGhlIGNvcHkgZmFpbGVkLCBkZWxldGUgdGhlIHVudXNhYmxlIGZpbGUuCi0gICAgaWYgKCFhcHBl
bmRSZXN1bHQpCi0gICAgICAgIHVubGluayhmc0Rlc3RpbmF0aW9uLmRhdGEoKSk7CisgICAgICAg
ICAgICAgICAgbmV3RW50cnkgPSBzdHJpbmdGcm9tRmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKGZp
bGVQYXRoKTsKKyAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgIG5ld0VudHJ5ID0g
c3RyaW5nRnJvbUZpbGVTeXN0ZW1SZXByZXNlbnRhdGlvbihuYW1lKTsKIAotICAgIHJldHVybiBh
cHBlbmRSZXN1bHQ7CisgICAgICAgICAgICAvLyBTb21lIGZpbGUgc3lzdGVtIHJlcHJlc2VudGF0
aW9ucyBjYW5ub3QgYmUgcmVwcmVzZW50ZWQgYXMgYSBVVEYtMTYgc3RyaW5nLAorICAgICAgICAg
ICAgLy8gc28gdGhpcyBuZXdFbnRyeSBtaWdodCBiZSBudWxsLgorICAgICAgICAgICAgaWYgKCFu
ZXdFbnRyeS5pc051bGwoKSkKKyAgICAgICAgICAgICAgICBlbnRyaWVzLmFwcGVuZChXVEZNb3Zl
KG5ld0VudHJ5KSk7CisgICAgICAgIH0KKyAgICAgICAgY2xvc2VkaXIoZGlyKTsKKyAgICB9Cisg
ICAgcmV0dXJuIGVudHJpZXM7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IGhhcmRMaW5r
Q291bnQoY29uc3QgU3RyaW5nJiBwYXRoKQorVmVjdG9yPFN0cmluZz4gbGlzdERpcmVjdG9yeShj
b25zdCBTdHJpbmcmIHBhdGgpCiB7Ci0gICAgYXV0byBsaW5rUGF0aCA9IGZpbGVTeXN0ZW1SZXBy
ZXNlbnRhdGlvbihwYXRoKTsKLSAgICBzdHJ1Y3Qgc3RhdCBzdGF0OwotICAgIGlmICg6OnN0YXQo
bGlua1BhdGguZGF0YSgpLCAmc3RhdCkgPCAwKQotICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0
OwotCi0gICAgLy8gTGluayBjb3VudCBpcyAyIGluIHRoZSBzaW5nbGUgY2xpZW50IGNhc2UgKHRo
ZSBibG9iIGZpbGUgYW5kIGEgbGluaykuCi0gICAgcmV0dXJuIHN0YXQuc3RfbmxpbmsgLSAxOwor
ICAgIHJldHVybiBsaXN0RGlyZWN0b3J5U3ViKHBhdGgsIGZhbHNlKTsKIH0KIAogYm9vbCBkZWxl
dGVOb25FbXB0eURpcmVjdG9yeShjb25zdCBTdHJpbmcmIHBhdGgpCiB7Ci0gICAgYXV0byBlbnRy
aWVzID0gbGlzdERpcmVjdG9yeShwYXRoKTsKKyAgICBhdXRvIGVudHJpZXMgPSBsaXN0RGlyZWN0
b3J5U3ViKHBhdGgsIHRydWUpOwogICAgIGZvciAoYXV0byYgZW50cnkgOiBlbnRyaWVzKSB7CiAg
ICAgICAgIGlmIChmaWxlVHlwZVBvdGVudGlhbGx5Rm9sbG93aW5nU3ltTGlua3MoZW50cnksIFNo
b3VsZEZvbGxvd1N5bWJvbGljTGlua3M6Ok5vKSA9PSBGaWxlVHlwZTo6RGlyZWN0b3J5KQogICAg
ICAgICAgICAgZGVsZXRlTm9uRW1wdHlEaXJlY3RvcnkoZW50cnkpOwpAQCAtMjUzLDYzICsxMjYs
NiBAQCBib29sIGRlbGV0ZU5vbkVtcHR5RGlyZWN0b3J5KGNvbnN0IFN0cmluZyYgcGF0aCkKICAg
ICByZXR1cm4gZGVsZXRlRW1wdHlEaXJlY3RvcnkocGF0aCk7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8
V2FsbFRpbWU+IGZpbGVNb2RpZmljYXRpb25UaW1lKGNvbnN0IFN0cmluZyYgcGF0aCkKLXsKLSAg
ICBDU3RyaW5nIGZzUmVwID0gZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKHBhdGgpOwotCi0gICAg
aWYgKCFmc1JlcC5kYXRhKCkgfHwgZnNSZXAuZGF0YSgpWzBdID09ICdcMCcpCi0gICAgICAgIHJl
dHVybiBzdGQ6Om51bGxvcHQ7Ci0KLSAgICBzdHJ1Y3Qgc3RhdCBmaWxlSW5mbzsKLQotICAgIGlm
IChzdGF0KGZzUmVwLmRhdGEoKSwgJmZpbGVJbmZvKSkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVs
bG9wdDsKLQotICAgIHJldHVybiBXYWxsVGltZTo6ZnJvbVJhd1NlY29uZHMoZmlsZUluZm8uc3Rf
bXRpbWUpOwotfQotCi1ib29sIHVwZGF0ZUZpbGVNb2RpZmljYXRpb25UaW1lKGNvbnN0IFN0cmlu
ZyYgcGF0aCkKLXsKLSAgICBDU3RyaW5nIGZzUmVwID0gZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9u
KHBhdGgpOwotCi0gICAgaWYgKCFmc1JlcC5kYXRhKCkgfHwgZnNSZXAuZGF0YSgpWzBdID09ICdc
MCcpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIC8vIFBhc3NpbmcgaW4gbnVsbCBzZXRz
IHRoZSBtb2RpZmljYXRpb24gdGltZSB0byBub3cKLSAgICByZXR1cm4gIXV0aW1lcyhmc1JlcC5k
YXRhKCksIG51bGxwdHIpOwotfQotCi1ib29sIGlzSGlkZGVuRmlsZShjb25zdCBTdHJpbmcmIHBh
dGgpCi17Ci0gICAgYXV0byBmaWxlbmFtZSA9IHBhdGhGaWxlTmFtZShwYXRoKTsKLQotICAgIHJl
dHVybiAhZmlsZW5hbWUuaXNFbXB0eSgpICYmIGZpbGVuYW1lWzBdID09ICcuJzsKLX0KLQotc3Rk
OjpvcHRpb25hbDxGaWxlVHlwZT4gZmlsZVR5cGUoY29uc3QgU3RyaW5nJiBwYXRoKQotewotICAg
IHJldHVybiBmaWxlVHlwZVBvdGVudGlhbGx5Rm9sbG93aW5nU3ltTGlua3MocGF0aCwgU2hvdWxk
Rm9sbG93U3ltYm9saWNMaW5rczo6Tm8pOwotfQotCi1zdGQ6Om9wdGlvbmFsPEZpbGVUeXBlPiBm
aWxlVHlwZUZvbGxvd2luZ1N5bWxpbmtzKGNvbnN0IFN0cmluZyYgcGF0aCkKLXsKLSAgICByZXR1
cm4gZmlsZVR5cGVQb3RlbnRpYWxseUZvbGxvd2luZ1N5bUxpbmtzKHBhdGgsIFNob3VsZEZvbGxv
d1N5bWJvbGljTGlua3M6Olllcyk7Ci19Ci0KLVN0cmluZyBwYXRoRmlsZU5hbWUoY29uc3QgU3Ry
aW5nJiBwYXRoKQotewotICAgIHJldHVybiBwYXRoLnN1YnN0cmluZyhwYXRoLnJldmVyc2VGaW5k
KCcvJykgKyAxKTsKLX0KLQotU3RyaW5nIHBhcmVudFBhdGgoY29uc3QgU3RyaW5nJiBwYXRoKQot
ewotICAgIENTdHJpbmcgZnNSZXAgPSBmaWxlU3lzdGVtUmVwcmVzZW50YXRpb24ocGF0aCk7Ci0K
LSAgICBpZiAoIWZzUmVwLmRhdGEoKSB8fCBmc1JlcC5kYXRhKClbMF0gPT0gJ1wwJykKLSAgICAg
ICAgcmV0dXJuIFN0cmluZygpOwotCi0gICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoZGlybmFt
ZShmc1JlcC5tdXRhYmxlRGF0YSgpKSk7Ci19CiAKIFN0cmluZyByZWFsUGF0aChjb25zdCBTdHJp
bmcmIGZpbGVQYXRoKQogewpAQCAtMzE5LDUwICsxMzUsOCBAQCBTdHJpbmcgcmVhbFBhdGgoY29u
c3QgU3RyaW5nJiBmaWxlUGF0aCkKICAgICByZXR1cm4gcmVzdWx0ID8gU3RyaW5nOjpmcm9tVVRG
OChyZXN1bHQpIDogZmlsZVBhdGg7CiB9CiAKLVN0cmluZyBwYXRoQnlBcHBlbmRpbmdDb21wb25l
bnQoY29uc3QgU3RyaW5nJiBwYXRoLCBjb25zdCBTdHJpbmcmIGNvbXBvbmVudCkKLXsKLSAgICBp
ZiAocGF0aC5lbmRzV2l0aCgnLycpKQotICAgICAgICByZXR1cm4gcGF0aCArIGNvbXBvbmVudDsK
LSAgICByZXR1cm4gcGF0aCArICIvIiArIGNvbXBvbmVudDsKLX0KLQotU3RyaW5nIHBhdGhCeUFw
cGVuZGluZ0NvbXBvbmVudHMoU3RyaW5nVmlldyBwYXRoLCBjb25zdCBWZWN0b3I8U3RyaW5nVmll
dz4mIGNvbXBvbmVudHMpCi17Ci0gICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOwotICAgIGJ1aWxk
ZXIuYXBwZW5kKHBhdGgpOwotICAgIGZvciAoYXV0byYgY29tcG9uZW50IDogY29tcG9uZW50cykK
LSAgICAgICAgYnVpbGRlci5hcHBlbmQoJy8nLCBjb21wb25lbnQpOwotICAgIHJldHVybiBidWls
ZGVyLnRvU3RyaW5nKCk7Ci19Ci0KLVZlY3RvcjxTdHJpbmc+IGxpc3REaXJlY3RvcnkoY29uc3Qg
U3RyaW5nJiBwYXRoKQotewotICAgIFZlY3RvcjxTdHJpbmc+IGVudHJpZXM7Ci0gICAgQ1N0cmlu
ZyBjcGF0aCA9IGZpbGVTeXN0ZW1SZXByZXNlbnRhdGlvbihwYXRoKTsKLSAgICBESVIqIGRpciA9
IG9wZW5kaXIoY3BhdGguZGF0YSgpKTsKLSAgICBpZiAoZGlyKSB7Ci0gICAgICAgIHN0cnVjdCBk
aXJlbnQqIGRwOwotICAgICAgICB3aGlsZSAoKGRwID0gcmVhZGRpcihkaXIpKSkgewotICAgICAg
ICAgICAgY29uc3QgY2hhciogbmFtZSA9IGRwLT5kX25hbWU7Ci0gICAgICAgICAgICBpZiAoIXN0
cmNtcChuYW1lLCAiLiIpIHx8ICFzdHJjbXAobmFtZSwgIi4uIikpCi0gICAgICAgICAgICAgICAg
Y29udGludWU7Ci0gICAgICAgICAgICBjaGFyIGZpbGVQYXRoW1BBVEhfTUFYXTsKLSAgICAgICAg
ICAgIGlmIChzdGF0aWNfY2FzdDxpbnQ+KHNpemVvZihmaWxlUGF0aCkgLSAxKSA8IHNucHJpbnRm
KGZpbGVQYXRoLCBzaXplb2YoZmlsZVBhdGgpLCAiJXMvJXMiLCBjcGF0aC5kYXRhKCksIG5hbWUp
KQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOyAvLyBidWZmZXIgb3ZlcmZsb3cKLQotICAgICAg
ICAgICAgYXV0byBzdHJpbmcgPSBzdHJpbmdGcm9tRmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKGZp
bGVQYXRoKTsKIAotICAgICAgICAgICAgLy8gU29tZSBmaWxlIHN5c3RlbSByZXByZXNlbnRhdGlv
bnMgY2Fubm90IGJlIHJlcHJlc2VudGVkIGFzIGEgVVRGLTE2IHN0cmluZywKLSAgICAgICAgICAg
IC8vIHNvIHRoaXMgc3RyaW5nIG1pZ2h0IGJlIG51bGwuCi0gICAgICAgICAgICBpZiAoIXN0cmlu
Zy5pc051bGwoKSkKLSAgICAgICAgICAgICAgICBlbnRyaWVzLmFwcGVuZChXVEZNb3ZlKHN0cmlu
ZykpOwotICAgICAgICB9Ci0gICAgICAgIGNsb3NlZGlyKGRpcik7Ci0gICAgfQotICAgIHJldHVy
biBlbnRyaWVzOwotfQogCiB9IC8vIG5hbWVzcGFjZSBGaWxlU3lzdGVtSW1wbAogfSAvLyBuYW1l
c3BhY2UgV1RGCiAKLSNlbmRpZiAvLyAhSEFWRShTVERfRklMRVNZU1RFTSkgJiYgIUhBVkUoU1RE
X0VYUEVSSU1FTlRBTF9GSUxFU1lTVEVNKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>