<?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>147610</bug_id>
          
          <creation_ts>2015-08-03 17:32:41 -0700</creation_ts>
          <short_desc>[INTL] Implement Number.prototype.toLocaleString in ECMA-402</short_desc>
          <delta_ts>2016-01-04 07:21:28 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>152689</dependson>
          <blocked>90906</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andy VanWagoner">andy</reporter>
          <assigned_to name="Andy VanWagoner">andy</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>efidler</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1114461</commentid>
    <comment_count>0</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-08-03 17:32:41 -0700</bug_when>
    <thetext>Implement ECMA-402 2.0 13.2.1 Number.prototype.toLocaleString ([locales [, options ]])
http://ecma-international.org/publications/standards/Ecma-402.htm

This definition supersedes the definition provided in ES2015, 20.1.3.4.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1145865</commentid>
    <comment_count>1</comment_count>
      <attachid>266511</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-02 21:34:28 -0800</bug_when>
    <thetext>Created attachment 266511
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1146055</commentid>
    <comment_count>2</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2015-12-03 14:27:45 -0800</bug_when>
    <thetext>Can you please fix GTK/EFL first?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1146059</commentid>
    <comment_count>3</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-03 14:30:47 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Can you please fix GTK/EFL first?

Yes, I just need to figure out why those platforms are not building NumberPrototype.js. Any ideas?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1146109</commentid>
    <comment_count>4</comment_count>
      <attachid>266570</attachid>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-03 15:50:23 -0800</bug_when>
    <thetext>Created attachment 266570
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1146134</commentid>
    <comment_count>5</comment_count>
    <who name="Andy VanWagoner">andy</who>
    <bug_when>2015-12-03 16:49:59 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; Can you please fix GTK/EFL first?
&gt; 
&gt; Yes, I just need to figure out why those platforms are not building
&gt; NumberPrototype.js. Any ideas?

I had missed CMakeLists.txt. Latest patch fixes the omission.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1146509</commentid>
    <comment_count>6</comment_count>
      <attachid>266570</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-04 17:14:19 -0800</bug_when>
    <thetext>Comment on attachment 266570
Patch

Clearing flags on attachment: 266570

Committed r193493: &lt;http://trac.webkit.org/changeset/193493&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1146510</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-12-04 17:14:22 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148861</commentid>
    <comment_count>8</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-12-13 16:35:34 -0800</bug_when>
    <thetext>Seems likely this implementation of toLocaleString does not respect the number separator settings from the System Preferences page called Language &amp; Region, under Advanced, on OS X. I don’t think it’s sufficient to call through to ICU without setting up ICU appropriately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148863</commentid>
    <comment_count>9</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-12-13 16:35:48 -0800</bug_when>
    <thetext>*** Bug 77018 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>266511</attachid>
            <date>2015-12-02 21:34:28 -0800</date>
            <delta_ts>2015-12-03 15:50:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147610-20151202223406.patch</filename>
            <type>text/plain</type>
            <size>20450</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkyOTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
ODE2NTBjNDc4ZmExZjJjZmNmMmU2YTA4Zjc2ZGVkNzc0NTA4NTE4Li4zNmUyOGQ3ZWFjOTJiN2Qw
YTVlZDg2ODJhYjJjNTUwMjcyZjY3ODZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMyBAQAorMjAxNS0xMi0wMiAgQW5keSBWYW5XYWdvbmVyICA8dGhldGFsZWNyYWZ0ZXJA
Z21haWwuY29tPgorCisgICAgICAgIFtJTlRMXSBJbXBsZW1lbnQgTnVtYmVyLnByb3RvdHlwZS50
b0xvY2FsZVN0cmluZyBpbiBFQ01BLTQwMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3NjEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIHRvTG9jYWxlU3RyaW5nIGluIGJ1aWx0aW4gSmF2YVNjcmlw
dCB0aGF0IGRlbGVnYXRlcyBmb3JtYXR0aW5nIHRvIEludGwuTnVtYmVyRm9ybWF0LgorICAgICAg
ICBLZWVwIGV4aXNpdGluZyBuYXRpdmUgaW1wbGVtZW50YXRpb24gZm9yIHVzZSBpZiBJTlRMIGZs
YWcgaXMgZGlzYWJsZWQuCisKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOiBBZGQgTnVt
YmVyUHJvdG90eXBlLmpzLgorICAgICAgICAqIEphdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisgICAgICAgICogYnVpbHRpbnMvTnVtYmVyUHJvdG90eXBlLmpzOiBBZGRl
ZC4KKyAgICAgICAgKHRvTG9jYWxlU3RyaW5nKToKKyAgICAgICAgKiBydW50aW1lL0NvbW1vbklk
ZW50aWZpZXJzLmg6IEFkZCBwcml2YXRlIG5hbWVzIGZvciBJbnRsIGNvbnN0cnVjdG9ycy4KKyAg
ICAgICAgKiBydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6SlNHbG9i
YWxPYmplY3Q6OmluaXQpOiBFeHBvc2UgSW50bCBjb25zdHJ1Y3RvcnMgdG8gYnVpbHRpbiBqcy4K
KyAgICAgICAgKiBydW50aW1lL051bWJlclByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6Ok51
bWJlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24pOiBSZXBsYWNlIHRvTG9jYWxlU3RyaW5nIGlt
cGxlbWVudGF0aW9uLgorCiAyMDE1LTEyLTAyICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0Bh
cHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihyMTkyNzUzKTogUmVtb3RlIFdlYiBJbnNw
ZWN0b3I6IEFwcGxpY2F0aW9ucyBhbmQgRGVidWdnYWJsZXMgbm90IHNob3dpbmcgdXAgaW4gZGVi
dWdnZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvRGVyaXZlZFNvdXJjZXMu
bWFrZSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDc2
OGViYWE2Mjk3NzJmNmRlZDc5OGE3ZTZkN2Y4MWRlZTBlYjZlODMuLmY0NTYwMTA0MDNkOWEzZWNj
YzhjYTM1YzVmNTZkNjUzMjk4NDNjOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9EZXJpdmVk
U291cmNlcy5tYWtlCkBAIC05MCw2ICs5MCw3IEBAIEphdmFTY3JpcHRDb3JlX0JVSUxUSU5TX1NP
VVJDRVMgPSBcCiAgICAgJChKYXZhU2NyaXB0Q29yZSkvYnVpbHRpbnMvSW50ZXJuYWxQcm9taXNl
Q29uc3RydWN0b3IuanMgXAogICAgICQoSmF2YVNjcmlwdENvcmUpL2J1aWx0aW5zL0l0ZXJhdG9y
UHJvdG90eXBlLmpzIFwKICAgICAkKEphdmFTY3JpcHRDb3JlKS9idWlsdGlucy9Nb2R1bGVMb2Fk
ZXJPYmplY3QuanMgXAorICAgICQoSmF2YVNjcmlwdENvcmUpL2J1aWx0aW5zL051bWJlclByb3Rv
dHlwZS5qcyBcCiAgICAgJChKYXZhU2NyaXB0Q29yZSkvYnVpbHRpbnMvT2JqZWN0Q29uc3RydWN0
b3IuanMgXAogICAgICQoSmF2YVNjcmlwdENvcmUpL2J1aWx0aW5zL1Byb21pc2VDb25zdHJ1Y3Rv
ci5qcyBcCiAgICAgJChKYXZhU2NyaXB0Q29yZSkvYnVpbHRpbnMvUHJvbWlzZU9wZXJhdGlvbnMu
anMgXApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlw
dENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBkMjNiMDgwOGNmNzBmZGE3MTdk
YzEwNDViNDVkYTgxOTg2Y2QyNmFjLi4wYmI3NjBlYjMzZmYyNjY4M2M2YTc0NDFhNDRiOGNmNDM0
OWNmNjlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2
YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTk4OCwxMiArMTk4OCwx
MiBAQAogCQlGRTEyMjAyODFCRTdGNTkxMDAzOUU2RjIgLyogSklUQWRkR2VuZXJhdG9yLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFMTIyMDI1MUJF
N0Y1NjQwMDM5RTZGMiAvKiBKSVRBZGRHZW5lcmF0b3IuY3BwICovOyB9OwogCQlGRTE4N0EwMTFC
RkJFNTVFMDAzOEJCQ0EgLyogSklUTXVsR2VuZXJhdG9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFMTg3OUZGMUJGQkM3M0MwMDM4QkJDQSAvKiBK
SVRNdWxHZW5lcmF0b3IuY3BwICovOyB9OwogCQlGRTE4N0EwMjFCRkJFNTYxMDAzOEJCQ0EgLyog
SklUTXVsR2VuZXJhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGRTE4N0EwMDFCRkJDNzNDMDAzOEJCQ0EgLyogSklUTXVsR2VuZXJhdG9yLmggKi87
IH07Ci0JCUZFMTg3QTBEMUMwMzBENUMwMDM4QkJDQSAvKiBKSVREaXZHZW5lcmF0b3IuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFMTg3QTBCMUMwMjI5
MjMwMDM4QkJDQSAvKiBKSVREaXZHZW5lcmF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVNTRVRfVEFH
UyA9ICgpOyB9OyB9OwotCQlGRTE4N0EwRTFDMDMwRDY0MDAzOEJCQ0EgLyogSklURGl2R2VuZXJh
dG9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZF
MTg3QTBBMUMwMjI5MjMwMDM4QkJDQSAvKiBKSVREaXZHZW5lcmF0b3IuY3BwICovOyBzZXR0aW5n
cyA9IHtBU1NFVF9UQUdTID0gKCk7IH07IH07Ci0JCUZFMTg3QTBGMUMwMzBENkMwMDM4QkJDQSAv
KiBTbmlwcGV0T3BlcmFuZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRkUxODdBMEMxQzAyRUJBNzAwMzhCQkNBIC8qIFNuaXBwZXRPcGVyYW5kLmggKi87
IHNldHRpbmdzID0ge0FTU0VUX1RBR1MgPSAoKTsgfTsgfTsKLQkJRkUxODdBMTgxQzBFMTNERDAw
MzhCQkNBIC8qIEZUTElubGluZUNhY2hlRGVzY3JpcHRvcklubGluZXMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFMTg3QTE3MUMwRTEzQzYwMDM4QkJD
QSAvKiBGVExJbmxpbmVDYWNoZURlc2NyaXB0b3JJbmxpbmVzLmggKi87IHNldHRpbmdzID0ge0FT
U0VUX1RBR1MgPSAoKTsgfTsgfTsKLQkJRkUxODdBMTkxQzBFMTNFMzAwMzhCQkNBIC8qIEZUTENv
bXBpbGVCaW5hcnlPcC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGRTE4N0ExNTFDMEUxM0M2MDAzOEJCQ0EgLyogRlRMQ29tcGlsZUJpbmFyeU9wLmNw
cCAqLzsgc2V0dGluZ3MgPSB7QVNTRVRfVEFHUyA9ICgpOyB9OyB9OwotCQlGRTE4N0ExQTFDMEUx
M0U2MDAzOEJCQ0EgLyogRlRMQ29tcGlsZUJpbmFyeU9wLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTE4N0ExNjFDMEUxM0M2MDAzOEJCQ0EgLyogRlRM
Q29tcGlsZUJpbmFyeU9wLmggKi87IHNldHRpbmdzID0ge0FTU0VUX1RBR1MgPSAoKTsgfTsgfTsK
KwkJRkUxODdBMEQxQzAzMEQ1QzAwMzhCQkNBIC8qIEpJVERpdkdlbmVyYXRvci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkUxODdBMEIxQzAyMjkyMzAw
MzhCQkNBIC8qIEpJVERpdkdlbmVyYXRvci5oICovOyB9OworCQlGRTE4N0EwRTFDMDMwRDY0MDAz
OEJCQ0EgLyogSklURGl2R2VuZXJhdG9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZFMTg3QTBBMUMwMjI5MjMwMDM4QkJDQSAvKiBKSVREaXZHZW5l
cmF0b3IuY3BwICovOyB9OworCQlGRTE4N0EwRjFDMDMwRDZDMDAzOEJCQ0EgLyogU25pcHBldE9w
ZXJhbmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZF
MTg3QTBDMUMwMkVCQTcwMDM4QkJDQSAvKiBTbmlwcGV0T3BlcmFuZC5oICovOyB9OworCQlGRTE4
N0ExODFDMEUxM0REMDAzOEJCQ0EgLyogRlRMSW5saW5lQ2FjaGVEZXNjcmlwdG9ySW5saW5lcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkUxODdBMTcx
QzBFMTNDNjAwMzhCQkNBIC8qIEZUTElubGluZUNhY2hlRGVzY3JpcHRvcklubGluZXMuaCAqLzsg
fTsKKwkJRkUxODdBMTkxQzBFMTNFMzAwMzhCQkNBIC8qIEZUTENvbXBpbGVCaW5hcnlPcC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTE4N0ExNTFD
MEUxM0M2MDAzOEJCQ0EgLyogRlRMQ29tcGlsZUJpbmFyeU9wLmNwcCAqLzsgfTsKKwkJRkUxODdB
MUExQzBFMTNFNjAwMzhCQkNBIC8qIEZUTENvbXBpbGVCaW5hcnlPcC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkUxODdBMTYxQzBFMTNDNjAwMzhCQkNB
IC8qIEZUTENvbXBpbGVCaW5hcnlPcC5oICovOyB9OwogCQlGRTFDMEZGRDFCMTkzRTk4MDBCNTNG
Q0EgLyogRXhjZXB0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGRTFDMEZGQzFCMTkzRTk4MDBCNTNGQ0EgLyogRXhjZXB0aW9uLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRkUxQzBGRkYxQjE5NEZE
MTAwQjUzRkNBIC8qIEV4Y2VwdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBGRTFDMEZGRTFCMTk0RkQxMDBCNTNGQ0EgLyogRXhjZXB0aW9uLmNw
cCAqLzsgfTsKIAkJRkUyMENFOUQxNUYwNEE5NTAwREYzNDMwIC8qIExMSW50Q0xvb3AuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkUyMENFOUIxNUYw
NEE5NTAwREYzNDMwIC8qIExMSW50Q0xvb3AuY3BwICovOyB9OwpAQCAtMzU5NSw2ICszNTk1LDcg
QEAKIAkJQTE1ODdENkMxQjREQzE0MTAwRDY5ODQ5IC8qIEludGxEYXRlVGltZUZvcm1hdFByb3Rv
dHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTE1ODdENzMxQjRE
QzFDNjAwRDY5ODQ5IC8qIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmx1dC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rv
ci5sdXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTE1ODdENzQxQjREQzFDNjAw
RDY5ODQ5IC8qIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5sdXQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmx1dC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTVERTVDNTFDMEZCRjhEMDA4OTEzM0QgLyog
TnVtYmVyUHJvdG90eXBlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRo
ID0gTnVtYmVyUHJvdG90eXBlLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMTcx
MkIzQTExQzdCMjEyMDA3QTUzMTUgLyogUmVnRXhwQ2FjaGUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gUmVnRXhwQ2FjaGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlBMTcxMkIzRTExQzdCMjI4MDA3QTUzMTUgLyogUmVnRXhwQ2FjaGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVnRXhwQ2FjaGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQTE3MTJCNDAxMUM3QjIzNTAwN0E1MzE1IC8qIFJlZ0V4cEtleS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZWdFeHBLZXkuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY2MzgsNiArNjYzOSw3IEBACiAJCQkJRTMzRjUwODgxQjg0
NEExQTAwNDEzODU2IC8qIEludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yLmpzICovLAogCQkJCTdD
RjlCQzVCMUI2NUQ5QTMwMDlEQjFFRiAvKiBJdGVyYXRvclByb3RvdHlwZS5qcyAqLywKIAkJCQlF
MzA2Nzc5NzFCOEJDNkY1MDAzRjg3RjAgLyogTW9kdWxlTG9hZGVyT2JqZWN0LmpzICovLAorCQkJ
CUExNURFNUM1MUMwRkJGOEQwMDg5MTMzRCAvKiBOdW1iZXJQcm90b3R5cGUuanMgKi8sCiAJCQkJ
N0NGOUJDNUMxQjY1RDlCMTAwOURCMUVGIC8qIE9iamVjdENvbnN0cnVjdG9yLmpzICovLAogCQkJ
CTdDRjlCQzVEMUI2NUQ5QjEwMDlEQjFFRiAvKiBQcm9taXNlT3BlcmF0aW9ucy5qcyAqLywKIAkJ
CQk3Q0ZCQUMxQzE4QjUzNUU1MDBEMDA3NTAgLyogUHJvbWlzZVByb3RvdHlwZS5qcyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9idWlsdGlucy9OdW1iZXJQcm90b3R5cGUu
anMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnVpbHRpbnMvTnVtYmVyUHJvdG90eXBlLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmQwMWMyMjMzYTYxMzcyMGQ3OGJkOGM5ZDYwOTNjYWFjZDQyZjFiYjgKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnVpbHRpbnMvTnVtYmVyUHJvdG90
eXBlLmpzCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQW5keSBW
YW5XYWdvbmVyIDx0aGV0YWxlY3JhZnRlckBnbWFpbC5jb20+LgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQor
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisvLyBAY29uZGl0aW9uYWw9RU5BQkxFKElOVEwpCisK
K2Z1bmN0aW9uIHRvTG9jYWxlU3RyaW5nKC8qIGxvY2FsZXMsIG9wdGlvbnMgKi8pCit7CisgICAg
InVzZSBzdHJpY3QiOworCisgICAgLy8gMTMuMi4xIE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVT
dHJpbmcgKFtsb2NhbGVzIFssIG9wdGlvbnMgXV0pIChFQ01BLTQwMiAyLjApCisgICAgLy8gaHR0
cDovL2VjbWEtaW50ZXJuYXRpb25hbC5vcmcvcHVibGljYXRpb25zL3N0YW5kYXJkcy9FY21hLTQw
Mi5odG0KKworICAgIC8vIDEuIExldCB4IGJlIHRoaXNOdW1iZXJWYWx1ZSh0aGlzIHZhbHVlKS4K
KyAgICAvLyAyLiBSZXR1cm5JZkFicnVwdCh4KS4KKyAgICB2YXIgbnVtYmVyID0gdGhpczsKKyAg
ICBpZiAoISh0eXBlb2YgbnVtYmVyID09PSAibnVtYmVyIiB8fCBudW1iZXIgaW5zdGFuY2VvZiBO
dW1iZXIpKQorICAgICAgICB0aHJvdyBuZXcgQFR5cGVFcnJvcigiTnVtYmVyLnByb3RvdHlwZS50
b0xvY2FsZVN0cmluZyBjYWxsZWQgb24gaW5jb21wYXRpYmxlICIgKyB0eXBlb2YgbnVtYmVyKTsK
KworICAgIC8vIDMuIExldCBudW1iZXJGb3JtYXQgYmUgQ29uc3RydWN0KCVOdW1iZXJGb3JtYXQl
LCDCq2xvY2FsZXMsIG9wdGlvbnPCuykuCisgICAgLy8gNC4gUmV0dXJuSWZBYnJ1cHQobnVtYmVy
Rm9ybWF0KS4KKyAgICB2YXIgbnVtYmVyRm9ybWF0ID0gbmV3IEBOdW1iZXJGb3JtYXQoYXJndW1l
bnRzWzBdLCBhcmd1bWVudHNbMV0pOworCisgICAgLy8gNS4gUmV0dXJuIEZvcm1hdE51bWJlcihu
dW1iZXJGb3JtYXQsIHgpLgorICAgIHJldHVybiBudW1iZXJGb3JtYXQuZm9ybWF0KG51bWJlcik7
Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVu
dGlmaWVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmll
cnMuaAppbmRleCA0NzNkNWE0MWNiZjcxOTM3OTY3N2ZhZTI0NDU5MjU1Yzc4MGIxYjVkLi4zN2M1
NGQyZmVkNTYyZDgwYmZiMDVmMmZmODk1MjkwODg2OGJlNjAwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKQEAgLTMzOCw2ICszMzgs
OSBAQAogICAgIG1hY3JvKGdlbmVyYXRvclZhbHVlKSBcCiAgICAgbWFjcm8oZ2VuZXJhdG9yVGhp
cykgXAogICAgIG1hY3JvKGdlbmVyYXRvclJlc3VtZU1vZGUpIFwKKyAgICBtYWNybyhDb2xsYXRv
cikgXAorICAgIG1hY3JvKERhdGVUaW1lRm9ybWF0KSBcCisgICAgbWFjcm8oTnVtYmVyRm9ybWF0
KSBcCiAKIAogbmFtZXNwYWNlIEpTQyB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0dsb2JhbE9iamVjdC5jcHAKaW5kZXggNmRkZTY2MDI3ODRiZjhkMTgzZDdiOTU2OGJk
ZmE4MzM4NDk2ZmU3ZS4uN2Q5OTY4MDExMjRlNWE1NGEyOTA5MTVlMTdkNGQwNjUwMzk2OGQ5MiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3Qu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNw
cApAQCAtNDY4LDcgKzQ2OCw4IEBAIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5w
cm9wZXJ0eU5hbWVzLT4ganNOYW1lLCBsb3dlck5hbWUgIyMgQ29uc3RydWN0CiAgICAgcHV0RGly
ZWN0V2l0aG91dFRyYW5zaXRpb24odm0sIHZtLnByb3BlcnR5TmFtZXMtPmV2YWwsIG1fZXZhbEZ1
bmN0aW9uLmdldCgpLCBEb250RW51bSk7CiAgICAgCiAjaWYgRU5BQkxFKElOVEwpCi0gICAgcHV0
RGlyZWN0V2l0aG91dFRyYW5zaXRpb24odm0sIHZtLnByb3BlcnR5TmFtZXMtPkludGwsIEludGxP
YmplY3Q6OmNyZWF0ZSh2bSwgdGhpcywgSW50bE9iamVjdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCB0
aGlzLCBtX29iamVjdFByb3RvdHlwZS5nZXQoKSkpLCBEb250RW51bSk7CisgICAgSW50bE9iamVj
dCogaW50bCA9IEludGxPYmplY3Q6OmNyZWF0ZSh2bSwgdGhpcywgSW50bE9iamVjdDo6Y3JlYXRl
U3RydWN0dXJlKHZtLCB0aGlzLCBtX29iamVjdFByb3RvdHlwZS5nZXQoKSkpOworICAgIHB1dERp
cmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5JbnRsLCBpbnRsLCBE
b250RW51bSk7CiAjZW5kaWYgLy8gRU5BQkxFKElOVEwpCiAgICAgcHV0RGlyZWN0V2l0aG91dFRy
YW5zaXRpb24odm0sIHZtLnByb3BlcnR5TmFtZXMtPkpTT04sIEpTT05PYmplY3Q6OmNyZWF0ZSh2
bSwgSlNPTk9iamVjdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCB0aGlzLCBtX29iamVjdFByb3RvdHlw
ZS5nZXQoKSkpLCBEb250RW51bSk7CiAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24odm0s
IHZtLnByb3BlcnR5TmFtZXMtPk1hdGgsIE1hdGhPYmplY3Q6OmNyZWF0ZSh2bSwgdGhpcywgTWF0
aE9iamVjdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCB0aGlzLCBtX29iamVjdFByb3RvdHlwZS5nZXQo
KSkpLCBEb250RW51bSk7CkBAIC01NjcsNiArNTY4LDExIEBAIHB1dERpcmVjdFdpdGhvdXRUcmFu
c2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT4ganNOYW1lLCBsb3dlck5hbWUgIyMgQ29uc3Ry
dWN0CiAgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyh2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGlu
TmFtZXMoKS5JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25Qcml2YXRlTmFtZSgpLCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb25PYmplY3Q6OmNyZWF0ZSh2bSwgdGhpcywgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1cmUodm0sIHRoaXMsIG1fb2JqZWN0UHJvdG90eXBl
LmdldCgpKSksIERvbnRFbnVtIHwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgR2xv
YmFsUHJvcGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPk1hcFByaXZhdGVOYW1lLCBtYXBDb25z
dHJ1Y3RvciwgRG9udEVudW0gfCBEb250RGVsZXRlIHwgUmVhZE9ubHkpLAogICAgICAgICBHbG9i
YWxQcm9wZXJ0eUluZm8odm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuZ2VuZXJhdG9y
UmVzdW1lUHJpdmF0ZU5hbWUoKSwgSlNGdW5jdGlvbjo6Y3JlYXRlQnVpbHRpbkZ1bmN0aW9uKHZt
LCBnZW5lcmF0b3JQcm90b3R5cGVHZW5lcmF0b3JSZXN1bWVDb2RlR2VuZXJhdG9yKHZtKSwgdGhp
cyksIERvbnRFbnVtIHwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyNpZiBFTkFCTEUoSU5UTCkK
KyAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1l
cygpLkNvbGxhdG9yUHJpdmF0ZU5hbWUoKSwgaW50bC0+Z2V0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0
eU5hbWVzLT5Db2xsYXRvciksIERvbnRFbnVtIHwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyAg
ICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygp
LkRhdGVUaW1lRm9ybWF0UHJpdmF0ZU5hbWUoKSwgaW50bC0+Z2V0RGlyZWN0KHZtLCB2bS5wcm9w
ZXJ0eU5hbWVzLT5EYXRlVGltZUZvcm1hdCksIERvbnRFbnVtIHwgRG9udERlbGV0ZSB8IFJlYWRP
bmx5KSwKKyAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0
aW5OYW1lcygpLk51bWJlckZvcm1hdFByaXZhdGVOYW1lKCksIGludGwtPmdldERpcmVjdCh2bSwg
dm0ucHJvcGVydHlOYW1lcy0+TnVtYmVyRm9ybWF0KSwgRG9udEVudW0gfCBEb250RGVsZXRlIHwg
UmVhZE9ubHkpLAorI2VuZGlmIC8vIEVOQUJMRShJTlRMKQogICAgIH07CiAgICAgYWRkU3RhdGlj
R2xvYmFscyhzdGF0aWNHbG9iYWxzLCBXVEZfQVJSQVlfTEVOR1RIKHN0YXRpY0dsb2JhbHMpKTsK
ICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclBy
b3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJQcm90b3R5
cGUuY3BwCmluZGV4IGVhNzExYzBmNzFlMWQ3MWRjZTIxMjIwYTc2YzljY2U1OGYzOWFjMDkuLmY5
NjlkODc2MjA0M2RkYzYxNDE0MjBlZWI1ZTgzYTMwZjZhNzZkYzAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcApAQCAtMjQsMTAgKzI0
LDExIEBACiAKICNpbmNsdWRlICJCaWdJbnRlZ2VyLmgiCiAjaW5jbHVkZSAiRXJyb3IuaCIKKyNp
bmNsdWRlICJKU0NCdWlsdGlucy5oIgorI2luY2x1ZGUgIkpTQ0lubGluZXMuaCIKICNpbmNsdWRl
ICJKU0Z1bmN0aW9uLmgiCiAjaW5jbHVkZSAiSlNHbG9iYWxPYmplY3QuaCIKICNpbmNsdWRlICJK
U1N0cmluZy5oIgotI2luY2x1ZGUgIkpTQ0lubGluZXMuaCIKICNpbmNsdWRlICJVaW50MTZXaXRo
RnJhY3Rpb24uaCIKICNpbmNsdWRlIDx3dGYvZHRvYS5oPgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRp
b25zLmg+CkBAIC03NSwxMSArNzYsMTUgQEAgTnVtYmVyUHJvdG90eXBlOjpOdW1iZXJQcm90b3R5
cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKIH0KIAotdm9pZCBOdW1iZXJQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqKQordm9pZCBOdW1i
ZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCkKIHsKICAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSk7CiAgICAgc2V0SW50ZXJu
YWxWYWx1ZSh2bSwganNOdW1iZXIoMCkpOwogCisjaWYgRU5BQkxFKElOVEwpCisgICAgSlNDX0JV
SUxUSU5fRlVOQ1RJT04oInRvTG9jYWxlU3RyaW5nIiwgbnVtYmVyUHJvdG90eXBlVG9Mb2NhbGVT
dHJpbmdDb2RlR2VuZXJhdG9yLCBEb250RW51bSk7CisjZW5kaWYgLy8gRU5BQkxFKElOVEwpCisK
ICAgICBBU1NFUlQoaW5oZXJpdHMoaW5mbygpKSk7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzNjA5YzE4YjAyZjZh
ODgzYjI5YzUyMmVhMWY0YTBmMjllNmZkNGVlLi5hNjE2YmM3MTEyODE4MzU2NTVhZTNhMDI3MTU2
MGNiZjlkZjU4MTBlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTUtMTItMDIgIEFuZHkgVmFu
V2Fnb25lciAgPHRoZXRhbGVjcmFmdGVyQGdtYWlsLmNvbT4KKworICAgICAgICBbSU5UTF0gSW1w
bGVtZW50IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcgaW4gRUNNQS00MDIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NzYxMAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCB0ZXN0cyBmb3Ig
RUNNQS00MDIgTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmluZy4KKyAgICAgICAgU2luY2Ug
TnVtYmVyRm9ybWF0IGlzIG5vdCBmdWxseSBpbXBsZW1lbnRlZCwgZG9uJ3QgdGVzdCBsb2NhbGUt
c3BlY2lmaWMgYmVoYXZpb3IgeWV0LgorCisgICAgICAgICoganMvbnVtYmVyLXRvTG9jYWxlU3Ry
aW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICoganMvbnVtYmVyLXRvTG9jYWxlU3Ry
aW5nLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9udW1iZXItdG9Mb2Nh
bGVTdHJpbmcuanM6IEFkZGVkLgorCiAyMDE1LTEyLTAyICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1t
YXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgVW5pZnkgZm9udC12YXJpYW50LSogd2l0aCBm
b250LXZhcmlhbnQgc2hvcnRoYW5kCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9udW1iZXIt
dG9Mb2NhbGVTdHJpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvanMvbnVtYmVyLXRvTG9j
YWxlU3RyaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNGRlMzYxOWYxZGVmYTE1YWRkMTNi
ZWZlN2YzN2Q5ZGMzZWQ3MjY0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvanMvbnVt
YmVyLXRvTG9jYWxlU3RyaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDI1IEBACitUaGlzIHRl
c3QgY2hlY2tzIHRoZSBiZWhhdmlvciBvZiBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5n
IGFzIGRlc2NyaWJlZCBpbiB0aGUgRUNNQVNjcmlwdCBJbnRlcm5hdGlvbmFsaXphdGlvbiBBUEkg
U3BlY2lmaWNhdGlvbiAoRUNNQS00MDIgMi4wKS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmluZy5sZW5ndGggaXMgMAor
UEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE51bWJlci5wcm90b3R5cGUsICd0
b0xvY2FsZVN0cmluZycpLmVudW1lcmFibGUgaXMgZmFsc2UKK1BBU1MgT2JqZWN0LmdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihOdW1iZXIucHJvdG90eXBlLCAndG9Mb2NhbGVTdHJpbmcnKS5jb25m
aWd1cmFibGUgaXMgdHJ1ZQorUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE51
bWJlci5wcm90b3R5cGUsICd0b0xvY2FsZVN0cmluZycpLndyaXRhYmxlIGlzIHRydWUKK1BBU1Mg
TnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmluZy5jYWxsKDApIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwoTmFOKSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0
cmluZy5jYWxsKEluZmluaXR5KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1MgTnVtYmVy
LnByb3RvdHlwZS50b0xvY2FsZVN0cmluZy5jYWxsKG5ldyBOdW1iZXIpIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwoKSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5n
IGNhbGxlZCBvbiBpbmNvbXBhdGlibGUgdW5kZWZpbmVkLgorUEFTUyBOdW1iZXIucHJvdG90eXBl
LnRvTG9jYWxlU3RyaW5nLmNhbGwodW5kZWZpbmVkKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nIGNhbGxlZCBvbiBpbmNvbXBhdGlibGUg
dW5kZWZpbmVkLgorUEFTUyBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwobnVs
bCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0
cmluZyBjYWxsZWQgb24gaW5jb21wYXRpYmxlIG9iamVjdC4KK1BBU1MgTnVtYmVyLnByb3RvdHlw
ZS50b0xvY2FsZVN0cmluZy5jYWxsKCcxJykgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTnVt
YmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmluZyBjYWxsZWQgb24gaW5jb21wYXRpYmxlIHN0cmlu
Zy4KK1BBU1MgTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmluZy5jYWxsKFtdKSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nIGNhbGxl
ZCBvbiBpbmNvbXBhdGlibGUgb2JqZWN0LgorUEFTUyBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxl
U3RyaW5nLmNhbGwoU3ltYm9sKCkpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE51bWJlci5w
cm90b3R5cGUudG9Mb2NhbGVTdHJpbmcgY2FsbGVkIG9uIGluY29tcGF0aWJsZSBzeW1ib2wuCitQ
QVNTICgwKS50b0xvY2FsZVN0cmluZygpIGlzICIwIgorUEFTUyBuZXcgTnVtYmVyKDEpLnRvTG9j
YWxlU3RyaW5nKCkgaXMgIjEiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvbnVtYmVyLXRvTG9jYWxl
U3RyaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9qcy9udW1iZXItdG9Mb2NhbGVTdHJpbmcuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi40NDBjNjczNTI0OTA1ODEyMjU3NDkzYzQyYTQ2ZTFjZTZjZTI2YmE4Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvanMvbnVtYmVyLXRvTG9jYWxlU3RyaW5nLmh0bWwK
QEAgLTAsMCArMSwxMSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRN
TC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxzY3JpcHQg
c3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL251bWJlci10b0xvY2FsZVN0cmluZy5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9zY3Jp
cHQtdGVzdHMvbnVtYmVyLXRvTG9jYWxlU3RyaW5nLmpzIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0
LXRlc3RzL251bWJlci10b0xvY2FsZVN0cmluZy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNWY2ZGQ5YjU0NTMx
YzRmMWUwMmMzYTQyMmEwZDk5OTQyNzIzYTliCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvanMvc2NyaXB0LXRlc3RzL251bWJlci10b0xvY2FsZVN0cmluZy5qcwpAQCAtMCwwICsxLDMy
IEBACitkZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGNoZWNrcyB0aGUgYmVoYXZpb3Igb2YgTnVtYmVy
LnByb3RvdHlwZS50b0xvY2FsZVN0cmluZyBhcyBkZXNjcmliZWQgaW4gdGhlIEVDTUFTY3JpcHQg
SW50ZXJuYXRpb25hbGl6YXRpb24gQVBJIFNwZWNpZmljYXRpb24gKEVDTUEtNDAyIDIuMCkuIik7
CisKK3Nob3VsZEJlKCJOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmxlbmd0aCIsICIw
Iik7CitzaG91bGRCZUZhbHNlKCJPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE51bWJl
ci5wcm90b3R5cGUsICd0b0xvY2FsZVN0cmluZycpLmVudW1lcmFibGUiKTsKK3Nob3VsZEJlVHJ1
ZSgiT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihOdW1iZXIucHJvdG90eXBlLCAndG9M
b2NhbGVTdHJpbmcnKS5jb25maWd1cmFibGUiKTsKK3Nob3VsZEJlVHJ1ZSgiT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcihOdW1iZXIucHJvdG90eXBlLCAndG9Mb2NhbGVTdHJpbmcnKS53
cml0YWJsZSIpOworCisvLyBUZXN0IHRoaXNOdW1iZXJWYWx1ZSBhYnJ1cHQgY29tcGxldGlvbi4K
K3Nob3VsZE5vdFRocm93KCJOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwoMCki
KTsKK3Nob3VsZE5vdFRocm93KCJOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwo
TmFOKSIpOworc2hvdWxkTm90VGhyb3coIk51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcu
Y2FsbChJbmZpbml0eSkiKTsKK3Nob3VsZE5vdFRocm93KCJOdW1iZXIucHJvdG90eXBlLnRvTG9j
YWxlU3RyaW5nLmNhbGwobmV3IE51bWJlcikiKTsKK3Nob3VsZFRocm93KCJOdW1iZXIucHJvdG90
eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwoKSIsICInVHlwZUVycm9yOiBOdW1iZXIucHJvdG90eXBl
LnRvTG9jYWxlU3RyaW5nIGNhbGxlZCBvbiBpbmNvbXBhdGlibGUgdW5kZWZpbmVkJyIpOworc2hv
dWxkVGhyb3coIk51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcuY2FsbCh1bmRlZmluZWQp
IiwgIidUeXBlRXJyb3I6IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcgY2FsbGVkIG9u
IGluY29tcGF0aWJsZSB1bmRlZmluZWQnIik7CitzaG91bGRUaHJvdygiTnVtYmVyLnByb3RvdHlw
ZS50b0xvY2FsZVN0cmluZy5jYWxsKG51bGwpIiwgIidUeXBlRXJyb3I6IE51bWJlci5wcm90b3R5
cGUudG9Mb2NhbGVTdHJpbmcgY2FsbGVkIG9uIGluY29tcGF0aWJsZSBvYmplY3QnIik7CitzaG91
bGRUaHJvdygiTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmluZy5jYWxsKCcxJykiLCAiJ1R5
cGVFcnJvcjogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmluZyBjYWxsZWQgb24gaW5jb21w
YXRpYmxlIHN0cmluZyciKTsKK3Nob3VsZFRocm93KCJOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxl
U3RyaW5nLmNhbGwoW10pIiwgIidUeXBlRXJyb3I6IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVT
dHJpbmcgY2FsbGVkIG9uIGluY29tcGF0aWJsZSBvYmplY3QnIik7CitzaG91bGRUaHJvdygiTnVt
YmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmluZy5jYWxsKFN5bWJvbCgpKSIsICInVHlwZUVycm9y
OiBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nIGNhbGxlZCBvbiBpbmNvbXBhdGlibGUg
c3ltYm9sJyIpOworCitzaG91bGRCZUVxdWFsVG9TdHJpbmcoIigwKS50b0xvY2FsZVN0cmluZygp
IiwgIjAiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygibmV3IE51bWJlcigxKS50b0xvY2FsZVN0
cmluZygpIiwgIjEiKTsKKworLy8gRklYTUU6IFRlc3QgZm9yIE51bWJlckZvcm1hdCBiZWhhdmlv
ciBvbmNlIGltcGxlbWVudGVkLgorLy8gc2hvdWxkVGhyb3coIigwKS50b0xvY2FsZVN0cmluZygn
aScpIik7CisvLyBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIkluZmluaXR5LnRvTG9jYWxlU3RyaW5n
KCkiLCAi4oieIik7CisKKy8vIFRlc3QgdGhhdCBsb2NhbGUgcGFyYW1ldGVyIGlzIHBhc3NlZCB0
aHJvdWdoIHByb3Blcmx5LgorLy8gc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCIoMTIzNDU2Ljc4OSku
dG9Mb2NhbGVTdHJpbmcoJ2FyJykiLCAi2aHZotmj2aTZpdmm2avZp9mo2akiKTsKKy8vIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygiKDEyMzQ1Ni43ODkpLnRvTG9jYWxlU3RyaW5nKCd6aC1IYW5zLUNO
LXUtbnUtaGFuaWRlYycpIiwgIuS4gOS6jOS4iSzlm5vkupTlha0u5LiD5YWr5LmdIik7CisKKy8v
IFRlc3QgdGhhdCBvcHRpb25zIHBhcmFtZXRlciBpcyBwYXNzZWQgdGhyb3VnaCBwcm9wZXJseS4K
Ky8vIHNob3VsZEJlRXF1YWxUb1N0cmluZygiKDEyMy40NTYpLnRvTG9jYWxlU3RyaW5nKCdlbics
IHsgbWF4aW11bVNpZ25pZmljYW50RGlnaXRzOiAzIH0pIiwgIjEyMyIpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>266570</attachid>
            <date>2015-12-03 15:50:23 -0800</date>
            <delta_ts>2015-12-04 17:14:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147610-20151203165003.patch</filename>
            <type>text/plain</type>
            <size>18187</size>
            <attacher name="Andy VanWagoner">andy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkzMzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
ZGFiMDg0Mjg4OTg1Mjc3MDdhOThiNTRiZWVkNDBjMjAyNGQ0OTA2Li5iNjNiMzViY2YyZWNhNWNk
Nzk2MDE2YTUzNDc4MzA1YmQ0NTg0NGFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAxNS0xMi0wMyAgQW5keSBWYW5XYWdvbmVyICA8dGhldGFsZWNyYWZ0ZXJA
Z21haWwuY29tPgorCisgICAgICAgIFtJTlRMXSBJbXBsZW1lbnQgTnVtYmVyLnByb3RvdHlwZS50
b0xvY2FsZVN0cmluZyBpbiBFQ01BLTQwMgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3NjEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIHRvTG9jYWxlU3RyaW5nIGluIGJ1aWx0aW4gSmF2YVNjcmlw
dCB0aGF0IGRlbGVnYXRlcyBmb3JtYXR0aW5nIHRvIEludGwuTnVtYmVyRm9ybWF0LgorICAgICAg
ICBLZWVwIGV4aXNpdGluZyBuYXRpdmUgaW1wbGVtZW50YXRpb24gZm9yIHVzZSBpZiBJTlRMIGZs
YWcgaXMgZGlzYWJsZWQuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDogQWRkIE51bWJlclBy
b3RvdHlwZS5qcy4KKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOiBBZGQgTnVtYmVyUHJv
dG90eXBlLmpzLgorICAgICAgICAqIEphdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2o6CisgICAgICAgICogYnVpbHRpbnMvTnVtYmVyUHJvdG90eXBlLmpzOiBBZGRlZC4KKyAg
ICAgICAgKHRvTG9jYWxlU3RyaW5nKToKKyAgICAgICAgKiBydW50aW1lL0NvbW1vbklkZW50aWZp
ZXJzLmg6IEFkZCBwcml2YXRlIG5hbWVzIGZvciBJbnRsIGNvbnN0cnVjdG9ycy4KKyAgICAgICAg
KiBydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6SlNHbG9iYWxPYmpl
Y3Q6OmluaXQpOiBFeHBvc2UgSW50bCBjb25zdHJ1Y3RvcnMgdG8gYnVpbHRpbiBqcy4KKyAgICAg
ICAgKiBydW50aW1lL051bWJlclByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6Ok51bWJlclBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24pOiBSZXBsYWNlIHRvTG9jYWxlU3RyaW5nIGltcGxlbWVu
dGF0aW9uLgorCiAyMDE1LTEyLTAzICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5j
b20+CiAKICAgICAgICAgUmVtb3ZlIE9iamVjdGl2ZS1DIEdDIHN1cHBvcnQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBhMTg2NmI1NWU4ZTJiMzRmM2YxYWEyNWNiMzc1NDBk
M2U1MjJiMzMwLi5jYzBjNWViOWFiNzIwMjEzMjlmMmU2ZDA3MzhmNmEzOGRjNzllNDg2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xMjIyLDYgKzEyMjIsNyBAQCBzZXQo
SmF2YVNjcmlwdENvcmVfQlVJTFRJTlNfU09VUkNFUwogICAgICR7SkFWQVNDUklQVENPUkVfRElS
fS9idWlsdGlucy9JbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5qcwogICAgICR7SkFWQVNDUklQ
VENPUkVfRElSfS9idWlsdGlucy9JdGVyYXRvclByb3RvdHlwZS5qcwogICAgICR7SkFWQVNDUklQ
VENPUkVfRElSfS9idWlsdGlucy9Nb2R1bGVMb2FkZXJPYmplY3QuanMKKyAgICAke0pBVkFTQ1JJ
UFRDT1JFX0RJUn0vYnVpbHRpbnMvTnVtYmVyUHJvdG90eXBlLmpzCiAgICAgJHtKQVZBU0NSSVBU
Q09SRV9ESVJ9L2J1aWx0aW5zL09iamVjdENvbnN0cnVjdG9yLmpzCiAgICAgJHtKQVZBU0NSSVBU
Q09SRV9ESVJ9L2J1aWx0aW5zL1Byb21pc2VDb25zdHJ1Y3Rvci5qcwogICAgICR7SkFWQVNDUklQ
VENPUkVfRElSfS9idWlsdGlucy9Qcm9taXNlT3BlcmF0aW9ucy5qcwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCA3NjhlYmFhNjI5NzcyZjZkZWQ3OThhN2U2
ZDdmODFkZWUwZWI2ZTgzLi5mNDU2MDEwNDAzZDlhM2VjY2M4Y2EzNWM1ZjU2ZDY1MzI5ODQzYzhi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtOTAsNiAr
OTAsNyBAQCBKYXZhU2NyaXB0Q29yZV9CVUlMVElOU19TT1VSQ0VTID0gXAogICAgICQoSmF2YVNj
cmlwdENvcmUpL2J1aWx0aW5zL0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yLmpzIFwKICAgICAk
KEphdmFTY3JpcHRDb3JlKS9idWlsdGlucy9JdGVyYXRvclByb3RvdHlwZS5qcyBcCiAgICAgJChK
YXZhU2NyaXB0Q29yZSkvYnVpbHRpbnMvTW9kdWxlTG9hZGVyT2JqZWN0LmpzIFwKKyAgICAkKEph
dmFTY3JpcHRDb3JlKS9idWlsdGlucy9OdW1iZXJQcm90b3R5cGUuanMgXAogICAgICQoSmF2YVNj
cmlwdENvcmUpL2J1aWx0aW5zL09iamVjdENvbnN0cnVjdG9yLmpzIFwKICAgICAkKEphdmFTY3Jp
cHRDb3JlKS9idWlsdGlucy9Qcm9taXNlQ29uc3RydWN0b3IuanMgXAogICAgICQoSmF2YVNjcmlw
dENvcmUpL2J1aWx0aW5zL1Byb21pc2VPcGVyYXRpb25zLmpzIFwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKaW5kZXggOTEyZGJiMGI5MWEyYzBmMDg1ZTk4ZjYzMTFhYmRiMzA1MDAwMTc1Yi4u
MGU4M2JkN2VhZDA4N2M2YzMxMzdjMWE3MzRlMjhkYmFlZjNjMmM1NiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKQEAgLTM1OTksNiArMzU5OSw3IEBACiAJCUExNTg3RDZDMUI0REMxNDEw
MEQ2OTg0OSAvKiBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExNTg3RDczMUI0REMxQzYwMEQ2OTg0OSAvKiBJbnRsRGF0
ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5sdXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IubHV0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUExNTg3RDc0MUI0REMxQzYwMEQ2OTg0OSAvKiBJbnRsRGF0ZVRpbWVG
b3JtYXRQcm90b3R5cGUubHV0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElu
dGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5sdXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQTE1REU1QzUxQzBGQkY4RDAwODkxMzNEIC8qIE51bWJlclByb3RvdHlwZS5qcyAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IE51bWJlclByb3RvdHlwZS5qczsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTE3MTJCM0ExMUM3QjIxMjAwN0E1MzE1IC8q
IFJlZ0V4cENhY2hlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJl
Z0V4cENhY2hlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTE3MTJCM0UxMUM3
QjIyODAwN0E1MzE1IC8qIFJlZ0V4cENhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFJlZ0V4cENhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExNzEy
QjQwMTFDN0IyMzUwMDdBNTMxNSAvKiBSZWdFeHBLZXkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUmVnRXhwS2V5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC02
NjQ1LDYgKzY2NDYsNyBAQAogCQkJCUUzM0Y1MDg4MUI4NDRBMUEwMDQxMzg1NiAvKiBJbnRlcm5h
bFByb21pc2VDb25zdHJ1Y3Rvci5qcyAqLywKIAkJCQk3Q0Y5QkM1QjFCNjVEOUEzMDA5REIxRUYg
LyogSXRlcmF0b3JQcm90b3R5cGUuanMgKi8sCiAJCQkJRTMwNjc3OTcxQjhCQzZGNTAwM0Y4N0Yw
IC8qIE1vZHVsZUxvYWRlck9iamVjdC5qcyAqLywKKwkJCQlBMTVERTVDNTFDMEZCRjhEMDA4OTEz
M0QgLyogTnVtYmVyUHJvdG90eXBlLmpzICovLAogCQkJCTdDRjlCQzVDMUI2NUQ5QjEwMDlEQjFF
RiAvKiBPYmplY3RDb25zdHJ1Y3Rvci5qcyAqLywKIAkJCQk3Q0Y5QkM1RDFCNjVEOUIxMDA5REIx
RUYgLyogUHJvbWlzZU9wZXJhdGlvbnMuanMgKi8sCiAJCQkJN0NGQkFDMUMxOEI1MzVFNTAwRDAw
NzUwIC8qIFByb21pc2VQcm90b3R5cGUuanMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYnVpbHRpbnMvTnVtYmVyUHJvdG90eXBlLmpzIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2J1aWx0aW5zL051bWJlclByb3RvdHlwZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMDFjMjIzM2E2MTM3
MjBkNzhiZDhjOWQ2MDkzY2FhY2Q0MmYxYmI4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J1aWx0aW5zL051bWJlclByb3RvdHlwZS5qcwpAQCAtMCwwICsxLDQ3IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IEFuZHkgVmFuV2Fnb25lciA8dGhldGFsZWNyYWZ0
ZXJAZ21haWwuY29tPi4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworLy8gQGNvbmRpdGlvbmFsPUVOQUJMRShJTlRMKQorCitmdW5jdGlvbiB0b0xvY2FsZVN0cmlu
ZygvKiBsb2NhbGVzLCBvcHRpb25zICovKQoreworICAgICJ1c2Ugc3RyaWN0IjsKKworICAgIC8v
IDEzLjIuMSBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nIChbbG9jYWxlcyBbLCBvcHRp
b25zIF1dKSAoRUNNQS00MDIgMi4wKQorICAgIC8vIGh0dHA6Ly9lY21hLWludGVybmF0aW9uYWwu
b3JnL3B1YmxpY2F0aW9ucy9zdGFuZGFyZHMvRWNtYS00MDIuaHRtCisKKyAgICAvLyAxLiBMZXQg
eCBiZSB0aGlzTnVtYmVyVmFsdWUodGhpcyB2YWx1ZSkuCisgICAgLy8gMi4gUmV0dXJuSWZBYnJ1
cHQoeCkuCisgICAgdmFyIG51bWJlciA9IHRoaXM7CisgICAgaWYgKCEodHlwZW9mIG51bWJlciA9
PT0gIm51bWJlciIgfHwgbnVtYmVyIGluc3RhbmNlb2YgTnVtYmVyKSkKKyAgICAgICAgdGhyb3cg
bmV3IEBUeXBlRXJyb3IoIk51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcgY2FsbGVkIG9u
IGluY29tcGF0aWJsZSAiICsgdHlwZW9mIG51bWJlcik7CisKKyAgICAvLyAzLiBMZXQgbnVtYmVy
Rm9ybWF0IGJlIENvbnN0cnVjdCglTnVtYmVyRm9ybWF0JSwgwqtsb2NhbGVzLCBvcHRpb25zwrsp
LgorICAgIC8vIDQuIFJldHVybklmQWJydXB0KG51bWJlckZvcm1hdCkuCisgICAgdmFyIG51bWJl
ckZvcm1hdCA9IG5ldyBATnVtYmVyRm9ybWF0KGFyZ3VtZW50c1swXSwgYXJndW1lbnRzWzFdKTsK
KworICAgIC8vIDUuIFJldHVybiBGb3JtYXROdW1iZXIobnVtYmVyRm9ybWF0LCB4KS4KKyAgICBy
ZXR1cm4gbnVtYmVyRm9ybWF0LmZvcm1hdChudW1iZXIpOworfQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKaW5kZXggNDczZDVhNDFjYmY3
MTkzNzk2NzdmYWUyNDQ1OTI1NWM3ODBiMWI1ZC4uMzdjNTRkMmZlZDU2MmQ4MGJmYjA1ZjJmZjg5
NTI5MDg4NjhiZTYwMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Q29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9D
b21tb25JZGVudGlmaWVycy5oCkBAIC0zMzgsNiArMzM4LDkgQEAKICAgICBtYWNybyhnZW5lcmF0
b3JWYWx1ZSkgXAogICAgIG1hY3JvKGdlbmVyYXRvclRoaXMpIFwKICAgICBtYWNybyhnZW5lcmF0
b3JSZXN1bWVNb2RlKSBcCisgICAgbWFjcm8oQ29sbGF0b3IpIFwKKyAgICBtYWNybyhEYXRlVGlt
ZUZvcm1hdCkgXAorICAgIG1hY3JvKE51bWJlckZvcm1hdCkgXAogCiAKIG5hbWVzcGFjZSBKU0Mg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmpl
Y3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3Bw
CmluZGV4IDZkZGU2NjAyNzg0YmY4ZDE4M2Q3Yjk1NjhiZGZhODMzODQ5NmZlN2UuLjdkOTk2ODAx
MTI0ZTVhNTRhMjkwOTE1ZTE3ZDRkMDY1MDM5NjhkOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAKQEAgLTQ2OCw3ICs0NjgsOCBAQCBw
dXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+IGpzTmFtZSwg
bG93ZXJOYW1lICMjIENvbnN0cnVjdAogICAgIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZt
LCB2bS5wcm9wZXJ0eU5hbWVzLT5ldmFsLCBtX2V2YWxGdW5jdGlvbi5nZXQoKSwgRG9udEVudW0p
OwogICAgIAogI2lmIEVOQUJMRShJTlRMKQotICAgIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9u
KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5JbnRsLCBJbnRsT2JqZWN0OjpjcmVhdGUodm0sIHRoaXMs
IEludGxPYmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUu
Z2V0KCkpKSwgRG9udEVudW0pOworICAgIEludGxPYmplY3QqIGludGwgPSBJbnRsT2JqZWN0Ojpj
cmVhdGUodm0sIHRoaXMsIEludGxPYmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9v
YmplY3RQcm90b3R5cGUuZ2V0KCkpKTsKKyAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2
bSwgdm0ucHJvcGVydHlOYW1lcy0+SW50bCwgaW50bCwgRG9udEVudW0pOwogI2VuZGlmIC8vIEVO
QUJMRShJTlRMKQogICAgIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0
eU5hbWVzLT5KU09OLCBKU09OT2JqZWN0OjpjcmVhdGUodm0sIEpTT05PYmplY3Q6OmNyZWF0ZVN0
cnVjdHVyZSh2bSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUuZ2V0KCkpKSwgRG9udEVudW0pOwog
ICAgIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5NYXRo
LCBNYXRoT2JqZWN0OjpjcmVhdGUodm0sIHRoaXMsIE1hdGhPYmplY3Q6OmNyZWF0ZVN0cnVjdHVy
ZSh2bSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUuZ2V0KCkpKSwgRG9udEVudW0pOwpAQCAtNTY3
LDYgKzU2OCwxMSBAQCBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlO
YW1lcy0+IGpzTmFtZSwgbG93ZXJOYW1lICMjIENvbnN0cnVjdAogICAgICAgICBHbG9iYWxQcm9w
ZXJ0eUluZm8odm0ucHJvcGVydHlOYW1lcy0+YnVpbHRpbk5hbWVzKCkuSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uUHJpdmF0ZU5hbWUoKSwgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uT2JqZWN0Ojpj
cmVhdGUodm0sIHRoaXMsIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbk9iamVjdDo6Y3JlYXRlU3Ry
dWN0dXJlKHZtLCB0aGlzLCBtX29iamVjdFByb3RvdHlwZS5nZXQoKSkpLCBEb250RW51bSB8IERv
bnREZWxldGUgfCBSZWFkT25seSksCiAgICAgICAgIEdsb2JhbFByb3BlcnR5SW5mbyh2bS5wcm9w
ZXJ0eU5hbWVzLT5NYXBQcml2YXRlTmFtZSwgbWFwQ29uc3RydWN0b3IsIERvbnRFbnVtIHwgRG9u
dERlbGV0ZSB8IFJlYWRPbmx5KSwKICAgICAgICAgR2xvYmFsUHJvcGVydHlJbmZvKHZtLnByb3Bl
cnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmdlbmVyYXRvclJlc3VtZVByaXZhdGVOYW1lKCksIEpT
RnVuY3Rpb246OmNyZWF0ZUJ1aWx0aW5GdW5jdGlvbih2bSwgZ2VuZXJhdG9yUHJvdG90eXBlR2Vu
ZXJhdG9yUmVzdW1lQ29kZUdlbmVyYXRvcih2bSksIHRoaXMpLCBEb250RW51bSB8IERvbnREZWxl
dGUgfCBSZWFkT25seSksCisjaWYgRU5BQkxFKElOVEwpCisgICAgICAgIEdsb2JhbFByb3BlcnR5
SW5mbyh2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5Db2xsYXRvclByaXZhdGVOYW1l
KCksIGludGwtPmdldERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+Q29sbGF0b3IpLCBEb250
RW51bSB8IERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFByb3BlcnR5SW5m
byh2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5EYXRlVGltZUZvcm1hdFByaXZhdGVO
YW1lKCksIGludGwtPmdldERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+RGF0ZVRpbWVGb3Jt
YXQpLCBEb250RW51bSB8IERvbnREZWxldGUgfCBSZWFkT25seSksCisgICAgICAgIEdsb2JhbFBy
b3BlcnR5SW5mbyh2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5OdW1iZXJGb3JtYXRQ
cml2YXRlTmFtZSgpLCBpbnRsLT5nZXREaXJlY3Qodm0sIHZtLnByb3BlcnR5TmFtZXMtPk51bWJl
ckZvcm1hdCksIERvbnRFbnVtIHwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KSwKKyNlbmRpZiAvLyBF
TkFCTEUoSU5UTCkKICAgICB9OwogICAgIGFkZFN0YXRpY0dsb2JhbHMoc3RhdGljR2xvYmFscywg
V1RGX0FSUkFZX0xFTkdUSChzdGF0aWNHbG9iYWxzKSk7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcAppbmRleCBlYTcxMWMwZjcx
ZTFkNzFkY2UyMTIyMGE3NmM5Y2NlNThmMzlhYzA5Li5mOTY5ZDg3NjIwNDNkZGM2MTQxNDIwZWVi
NWU4M2EzMGY2YTc2ZGMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9OdW1iZXJQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L051bWJlclByb3RvdHlwZS5jcHAKQEAgLTI0LDEwICsyNCwxMSBAQAogCiAjaW5jbHVkZSAiQmln
SW50ZWdlci5oIgogI2luY2x1ZGUgIkVycm9yLmgiCisjaW5jbHVkZSAiSlNDQnVpbHRpbnMuaCIK
KyNpbmNsdWRlICJKU0NJbmxpbmVzLmgiCiAjaW5jbHVkZSAiSlNGdW5jdGlvbi5oIgogI2luY2x1
ZGUgIkpTR2xvYmFsT2JqZWN0LmgiCiAjaW5jbHVkZSAiSlNTdHJpbmcuaCIKLSNpbmNsdWRlICJK
U0NJbmxpbmVzLmgiCiAjaW5jbHVkZSAiVWludDE2V2l0aEZyYWN0aW9uLmgiCiAjaW5jbHVkZSA8
d3RmL2R0b2EuaD4KICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgpAQCAtNzUsMTEgKzc2LDE1
IEBAIE51bWJlclByb3RvdHlwZTo6TnVtYmVyUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUpCiB7CiB9CiAKLXZvaWQgTnVtYmVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIEpTR2xvYmFsT2JqZWN0KikKK3ZvaWQgTnVtYmVyUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CiAgICAgQmFzZTo6
ZmluaXNoQ3JlYXRpb24odm0pOwogICAgIHNldEludGVybmFsVmFsdWUodm0sIGpzTnVtYmVyKDAp
KTsKIAorI2lmIEVOQUJMRShJTlRMKQorICAgIEpTQ19CVUlMVElOX0ZVTkNUSU9OKCJ0b0xvY2Fs
ZVN0cmluZyIsIG51bWJlclByb3RvdHlwZVRvTG9jYWxlU3RyaW5nQ29kZUdlbmVyYXRvciwgRG9u
dEVudW0pOworI2VuZGlmIC8vIEVOQUJMRShJTlRMKQorCiAgICAgQVNTRVJUKGluaGVyaXRzKGlu
Zm8oKSkpOwogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKaW5kZXggZjAzN2YyZGFjOGYwZjkwOGUzNmU5MmEwNjcxNDQxMGIyMmEy
ODgxMC4uM2M2NzU3NmY1YTg4OTkzNDk2MjEyMDA0OGI3NTk3OTc5ODA0YmI2MCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE3IEBACisyMDE1LTEyLTAzICBBbmR5IFZhbldhZ29uZXIgIDx0aGV0YWxlY3JhZnRl
ckBnbWFpbC5jb20+CisKKyAgICAgICAgW0lOVExdIEltcGxlbWVudCBOdW1iZXIucHJvdG90eXBl
LnRvTG9jYWxlU3RyaW5nIGluIEVDTUEtNDAyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNDc2MTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGQgdGVzdHMgZm9yIEVDTUEtNDAyIE51bWJlci5wcm90b3R5
cGUudG9Mb2NhbGVTdHJpbmcuCisgICAgICAgIFNpbmNlIE51bWJlckZvcm1hdCBpcyBub3QgZnVs
bHkgaW1wbGVtZW50ZWQsIGRvbid0IHRlc3QgbG9jYWxlLXNwZWNpZmljIGJlaGF2aW9yIHlldC4K
KworICAgICAgICAqIGpzL251bWJlci10b0xvY2FsZVN0cmluZy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGpzL251bWJlci10b0xvY2FsZVN0cmluZy5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBqcy9zY3JpcHQtdGVzdHMvbnVtYmVyLXRvTG9jYWxlU3RyaW5nLmpzOiBBZGRlZC4KKwog
MjAxNS0xMi0wMyAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4KIAogICAgICAg
ICBSZW1vdmluZyBkZWxldGVkIHRlc3Qgc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUta2V5
Y3Vyc29yLmh0bWwgZnJvbSBUZXN0RXhwZWN0YXRpb25zIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2pzL251bWJlci10b0xvY2FsZVN0cmluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9qcy9udW1iZXItdG9Mb2NhbGVTdHJpbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ0ZGUz
NjE5ZjFkZWZhMTVhZGQxM2JlZmU3ZjM3ZDlkYzNlZDcyNjQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9qcy9udW1iZXItdG9Mb2NhbGVTdHJpbmctZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMjUgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhlIGJlaGF2aW9yIG9mIE51bWJlci5wcm90b3R5
cGUudG9Mb2NhbGVTdHJpbmcgYXMgZGVzY3JpYmVkIGluIHRoZSBFQ01BU2NyaXB0IEludGVybmF0
aW9uYWxpemF0aW9uIEFQSSBTcGVjaWZpY2F0aW9uIChFQ01BLTQwMiAyLjApLgorCitPbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3Ry
aW5nLmxlbmd0aCBpcyAwCitQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoTnVt
YmVyLnByb3RvdHlwZSwgJ3RvTG9jYWxlU3RyaW5nJykuZW51bWVyYWJsZSBpcyBmYWxzZQorUEFT
UyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE51bWJlci5wcm90b3R5cGUsICd0b0xv
Y2FsZVN0cmluZycpLmNvbmZpZ3VyYWJsZSBpcyB0cnVlCitQQVNTIE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IoTnVtYmVyLnByb3RvdHlwZSwgJ3RvTG9jYWxlU3RyaW5nJykud3JpdGFi
bGUgaXMgdHJ1ZQorUEFTUyBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwoMCkg
ZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVT
dHJpbmcuY2FsbChOYU4pIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBOdW1iZXIucHJv
dG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwoSW5maW5pdHkpIGRpZCBub3QgdGhyb3cgZXhjZXB0
aW9uLgorUEFTUyBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwobmV3IE51bWJl
cikgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIE51bWJlci5wcm90b3R5cGUudG9Mb2Nh
bGVTdHJpbmcuY2FsbCgpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE51bWJlci5wcm90b3R5
cGUudG9Mb2NhbGVTdHJpbmcgY2FsbGVkIG9uIGluY29tcGF0aWJsZSB1bmRlZmluZWQuCitQQVNT
IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcuY2FsbCh1bmRlZmluZWQpIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcgY2FsbGVk
IG9uIGluY29tcGF0aWJsZSB1bmRlZmluZWQuCitQQVNTIE51bWJlci5wcm90b3R5cGUudG9Mb2Nh
bGVTdHJpbmcuY2FsbChudWxsKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOdW1iZXIucHJv
dG90eXBlLnRvTG9jYWxlU3RyaW5nIGNhbGxlZCBvbiBpbmNvbXBhdGlibGUgb2JqZWN0LgorUEFT
UyBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwoJzEnKSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nIGNhbGxlZCBvbiBp
bmNvbXBhdGlibGUgc3RyaW5nLgorUEFTUyBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5n
LmNhbGwoW10pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IE51bWJlci5wcm90b3R5cGUudG9M
b2NhbGVTdHJpbmcgY2FsbGVkIG9uIGluY29tcGF0aWJsZSBvYmplY3QuCitQQVNTIE51bWJlci5w
cm90b3R5cGUudG9Mb2NhbGVTdHJpbmcuY2FsbChTeW1ib2woKSkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmluZyBjYWxsZWQgb24gaW5jb21w
YXRpYmxlIHN5bWJvbC4KK1BBU1MgKDApLnRvTG9jYWxlU3RyaW5nKCkgaXMgIjAiCitQQVNTIG5l
dyBOdW1iZXIoMSkudG9Mb2NhbGVTdHJpbmcoKSBpcyAiMSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9q
cy9udW1iZXItdG9Mb2NhbGVTdHJpbmcuaHRtbCBiL0xheW91dFRlc3RzL2pzL251bWJlci10b0xv
Y2FsZVN0cmluZy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ0MGM2NzM1MjQ5MDU4MTIyNTc0OTNjNDJhNDZl
MWNlNmNlMjZiYTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9qcy9udW1iZXItdG9M
b2NhbGVTdHJpbmcuaHRtbApAQCAtMCwwICsxLDExIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMg
Ii0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0i
dXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvbnVtYmVyLXRv
TG9jYWxlU3RyaW5nLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9udW1iZXItdG9Mb2NhbGVTdHJpbmcuanMgYi9MYXlv
dXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvbnVtYmVyLXRvTG9jYWxlU3RyaW5nLmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmM1ZjZkZDliNTQ1MzFjNGYxZTAyYzNhNDIyYTBkOTk5NDI3MjNhOWIKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvbnVtYmVyLXRvTG9jYWxlU3RyaW5n
LmpzCkBAIC0wLDAgKzEsMzIgQEAKK2Rlc2NyaXB0aW9uKCJUaGlzIHRlc3QgY2hlY2tzIHRoZSBi
ZWhhdmlvciBvZiBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nIGFzIGRlc2NyaWJlZCBp
biB0aGUgRUNNQVNjcmlwdCBJbnRlcm5hdGlvbmFsaXphdGlvbiBBUEkgU3BlY2lmaWNhdGlvbiAo
RUNNQS00MDIgMi4wKS4iKTsKKworc2hvdWxkQmUoIk51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVT
dHJpbmcubGVuZ3RoIiwgIjAiKTsKK3Nob3VsZEJlRmFsc2UoIk9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoTnVtYmVyLnByb3RvdHlwZSwgJ3RvTG9jYWxlU3RyaW5nJykuZW51bWVyYWJs
ZSIpOworc2hvdWxkQmVUcnVlKCJPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE51bWJl
ci5wcm90b3R5cGUsICd0b0xvY2FsZVN0cmluZycpLmNvbmZpZ3VyYWJsZSIpOworc2hvdWxkQmVU
cnVlKCJPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE51bWJlci5wcm90b3R5cGUsICd0
b0xvY2FsZVN0cmluZycpLndyaXRhYmxlIik7CisKKy8vIFRlc3QgdGhpc051bWJlclZhbHVlIGFi
cnVwdCBjb21wbGV0aW9uLgorc2hvdWxkTm90VGhyb3coIk51bWJlci5wcm90b3R5cGUudG9Mb2Nh
bGVTdHJpbmcuY2FsbCgwKSIpOworc2hvdWxkTm90VGhyb3coIk51bWJlci5wcm90b3R5cGUudG9M
b2NhbGVTdHJpbmcuY2FsbChOYU4pIik7CitzaG91bGROb3RUaHJvdygiTnVtYmVyLnByb3RvdHlw
ZS50b0xvY2FsZVN0cmluZy5jYWxsKEluZmluaXR5KSIpOworc2hvdWxkTm90VGhyb3coIk51bWJl
ci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcuY2FsbChuZXcgTnVtYmVyKSIpOworc2hvdWxkVGhy
b3coIk51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcuY2FsbCgpIiwgIidUeXBlRXJyb3I6
IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcgY2FsbGVkIG9uIGluY29tcGF0aWJsZSB1
bmRlZmluZWQnIik7CitzaG91bGRUaHJvdygiTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmlu
Zy5jYWxsKHVuZGVmaW5lZCkiLCAiJ1R5cGVFcnJvcjogTnVtYmVyLnByb3RvdHlwZS50b0xvY2Fs
ZVN0cmluZyBjYWxsZWQgb24gaW5jb21wYXRpYmxlIHVuZGVmaW5lZCciKTsKK3Nob3VsZFRocm93
KCJOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwobnVsbCkiLCAiJ1R5cGVFcnJv
cjogTnVtYmVyLnByb3RvdHlwZS50b0xvY2FsZVN0cmluZyBjYWxsZWQgb24gaW5jb21wYXRpYmxl
IG9iamVjdCciKTsKK3Nob3VsZFRocm93KCJOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5n
LmNhbGwoJzEnKSIsICInVHlwZUVycm9yOiBOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5n
IGNhbGxlZCBvbiBpbmNvbXBhdGlibGUgc3RyaW5nJyIpOworc2hvdWxkVGhyb3coIk51bWJlci5w
cm90b3R5cGUudG9Mb2NhbGVTdHJpbmcuY2FsbChbXSkiLCAiJ1R5cGVFcnJvcjogTnVtYmVyLnBy
b3RvdHlwZS50b0xvY2FsZVN0cmluZyBjYWxsZWQgb24gaW5jb21wYXRpYmxlIG9iamVjdCciKTsK
K3Nob3VsZFRocm93KCJOdW1iZXIucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nLmNhbGwoU3ltYm9s
KCkpIiwgIidUeXBlRXJyb3I6IE51bWJlci5wcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcgY2FsbGVk
IG9uIGluY29tcGF0aWJsZSBzeW1ib2wnIik7CisKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygiKDAp
LnRvTG9jYWxlU3RyaW5nKCkiLCAiMCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJuZXcgTnVt
YmVyKDEpLnRvTG9jYWxlU3RyaW5nKCkiLCAiMSIpOworCisvLyBGSVhNRTogVGVzdCBmb3IgTnVt
YmVyRm9ybWF0IGJlaGF2aW9yIG9uY2UgaW1wbGVtZW50ZWQuCisvLyBzaG91bGRUaHJvdygiKDAp
LnRvTG9jYWxlU3RyaW5nKCdpJykiKTsKKy8vIHNob3VsZEJlRXF1YWxUb1N0cmluZygiSW5maW5p
dHkudG9Mb2NhbGVTdHJpbmcoKSIsICLiiJ4iKTsKKworLy8gVGVzdCB0aGF0IGxvY2FsZSBwYXJh
bWV0ZXIgaXMgcGFzc2VkIHRocm91Z2ggcHJvcGVybHkuCisvLyBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoIigxMjM0NTYuNzg5KS50b0xvY2FsZVN0cmluZygnYXInKSIsICLZodmi2aPZpNml2abZq9mn
2ajZqSIpOworLy8gc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCIoMTIzNDU2Ljc4OSkudG9Mb2NhbGVT
dHJpbmcoJ3poLUhhbnMtQ04tdS1udS1oYW5pZGVjJykiLCAi5LiA5LqM5LiJLOWbm+S6lOWFrS7k
uIPlhavkuZ0iKTsKKworLy8gVGVzdCB0aGF0IG9wdGlvbnMgcGFyYW1ldGVyIGlzIHBhc3NlZCB0
aHJvdWdoIHByb3Blcmx5LgorLy8gc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCIoMTIzLjQ1NikudG9M
b2NhbGVTdHJpbmcoJ2VuJywgeyBtYXhpbXVtU2lnbmlmaWNhbnREaWdpdHM6IDMgfSkiLCAiMTIz
Iik7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>